This release fixes critical issues in signup and billing workflows, streamlines the onboarding experience with a conversational interface, and adds new controls for managing subscription pricing and seat-based billing.
Candidate scheduling now shows available time slots and clarifies whose calendar they belong to
a subscription can bill a variable quantity
give the phone gate a card, so the conversation can end
close the open items β cohort assignment, verified codegen, an approver that cannot lie
explain the publish gate, and make the AI a conversation over the live draft
one surface, one AI funnel, and a gate that explains itself
capability layer, chat.post fan-out, and real interview times
monitor, price, suspend and transfer custom domains
give the create route a shell, and the editor a rhythm
assign in the context pane, and retire the two legacy inboxes
index fields, event lane, draft bar and gate strip β PARTIAL
make the client interviews list a working console
make the person axis a SOLD feature, not just a deploy-wide switch
rebuild the index as a hub with a rail, faces and real filters
make a candidate's next-available slots proposable, and say whose time they are
the calendar event stops saying "Interview"
rebuild the shared recipient view as a review deck
stop refusing submissions to protect data nothing reads
wire the detail shell this feature shipped the copy for but never built
reconcile the counts and the ratchet ceiling the consolidation moved
a drop at the bottom of a lane lands there, not back where it came from
register the engine, build its four missing workers, and gate it
four defects the adversarial review confirmed
an open link stops enrolling the opener's own workspace
stop calling everyone we know nothing about a company
a subscription can bill a variable quantity
core seats are counted, view-only seats are free
per-seat pricing is configurable, and a model flip needs two people
plans become versioned, and a subscription pins what it bought
versioned plans β checkpoint of the schema, publish RPC and resolver pin
wire per-seat billing end to end, with the sweep as the guarantee
close the two doors that walked around the seat cap
every workspace invitation accept was refused on every plan
finish the candidate_lifecycle seed the control plane expects
stop the MercadoPago webhook dispatching into a void
"Talk to sales" opens a calendar, and stops being env-gated into oblivion
give the phone gate a card, so the conversation can end
make the signup conversation read like a chat
mount the conversation as the first screen, behind a flag
the client arm β two questions where the wizard asked twelve
the prelude β role, name, terms and photo as cards
the recruiter arm β the one role where nothing is cut
a declined card claimed success, and a wrong file cost a try
a failed turn left the conversation with no way forward
card answers never reached the server, and cards died on reload
chat-native signup never spoke first, so it dead-ended
close the three holes the chat is about to stand on
the endpoint constant would have thrown on the first screen
the funnel looped, then the agent never spoke
the rΓ©sumΓ© card was a placebo, and a skip could close the identity check
the client settings shell renders again
close the open items β cohort assignment, verified codegen, an approver that cannot lie
grant what the price list already promises, and check it on every deploy
publishing gets a screen β diff, blast radius, rollout, reason
the console gets its screens, and the price list stops promising what we deny
the control plane's application layer β drafts, price book, impact, matrix
two people for a revenue-affecting publish