Features
- feat(setup): add incremental Chat setup (#7043)
- feat(secrets): let workspace secrets opt out of redaction (#7045)
- feat(tables): confirm view deletion (#7041)
Improvements
- refactor: remove five more dead prop chains (#7046)
- refactor(renderer): drop the isWorkflowRunning prop the views never read (#7040)
- improvement(provenance): attribute stored-envelope display reads to their execution (#7039)
- improvement(ui): standardize modal default actions (#7029)
- refactor: delete code nothing reaches (#7019)
- refactor(utils): add slugify and adopt it at the eight sites that hand-rolled it (#7018)
- refactor: replace hand-rolled utilities and dead code with the shared forms (#7021)
- perf(db): optimize recurring query paths (#7014)
- improvement(provenance): aggregate and attribute unrecorded durable reads (#7017)
- improvement(chat): speed up conversation navigation (#7011)
- improvement(pricing): list Sandboxes as a Max and Enterprise feature (#7013)
Bug Fixes
- fix(copilot): show custom block names in read tool rows (#7044)
- fix(consent): enforce consent-aware analytics (#7049)
- fix(ci): make the utils gate see the wrapped forms of what it bans (#7047)
- fix(oauth): bind update access to selected credential (#6999)
- fix(webhooks): requeue deliveries dropped by retryable setup infrastructure failures (#7038)
- fix(vllm): support LM Studio endpoints (#7036)
- fix(files): normalize encoded embedded ids (#7035)
- fix(ci): give push builds a base their audits can actually read (#7033)
- fix(workflow): hide idle nested subflow end handles (#6976)
- fix(ci): require a default export before treating a file as a route entry (#7028)
- fix(ci): stop failing the API audit for adding a compliant route (#7027)
- fix(ci): walk every route entry the workspace app composes, not just pages and layouts (#7026)
- fix(react-query): close the lint's blind spots, and the drift they hid (#7020)
- fix: surface an unbilled run, and clamp the google-docs page cap (#7025)
- fix(settings): report a failed settings write instead of reporting success (#7023)
- fix(ci): stop the migration safety audit from passing on a branch it never read (#7022)
- fix(api): withhold internal failure messages from internal route responses (#7015)
- fix(files): download a markdown file as a zip only when it really has assets (#7009)
- fix(files): allowlist the schemes a markdown link may target (#7012)
- fix(settings): keep billing header stable (#7010)
Other Changes
- chore(legal): update privacy policy (#7050)
- chore(lint): turn on the rules that would have caught the dead code (#7037)