— execute_code spills long output to a file instead of dropping it (#3701).
— onboard_project(refresh=true) fetches and fast-forwards an existing clone (#3733).
— Langfuse: Claude Code coder runs now trace every model call. Its native OTel spans nest under the acp: span through a local relay that strips account identity and maps token usage (#3742).
— Model in-flight limiter settings (#3760).
— Per-lane in-flight limiter core for model calls (#3760).
— Model lane telemetry: queue depth, wait time, GET /api/telemetry/llm-lanes (#3760).
— Priority classes for the model in-flight limiter (#3760).
— Model calls acquire a per-lane in-flight slot when model.max_inflight is set (#3760).
— Fleet Room composer moves onto the design system (#3683).
— Remaining hand-rolled form controls move onto the design system (#3683).
— Fleet Room roster + diagnostics controls move onto the design system (#3683).
— Background-agents dialog markup moved to design-system Button + Accordion (#3684).
— Mobile session switcher rebuilt on the DS Drawer (#3684).
— Utility-bar pills use the design-system Button (#3684).
— Utility-bar chrome now uses DS Button (#3684).
— App chrome no longer re-implements the design system (#3684).
— App shell, tools rail and the protoLabs icon drop their dark-only token fallbacks and legacy --brand-* aliases (#3685).
— The last legacy --brand-* accent aliases are deleted and the token-hygiene invariants go tree-wide (#3685).
— Chat stylesheets drop dead literal fallbacks in var(--pl-*, …) reads (#3685).
— Code viewer, activity feed and schedule builder drop their dark-only token fallbacks (#3685).
— Settings and Memory stylesheets drop their dark-only hex fallbacks and legacy --brand-* aliases (#3685).
— Console: drop the dead literal var(--pl-X, …) fallbacks in fleet-room / fleet-activity / work / hitl CSS (#3685).
— Drop dead literal var(--pl-*) fallbacks in goals/memory CSS (#3685).
— The stale-fallback cleanup goes tree-wide: no var(--pl-…, <literal>) fallback may ship (#3685).
— Web: dropped dead literal var(--pl-*, <fallback>) font fallbacks in four DS-token sites (#3685).
— Telemetry, schedule and snapshot stylesheets drop their literal var(--pl-…, <literal>) fallbacks (#3685).
— Workflows surface CSS drops its stale dark-only hex fallbacks (#3685).
— Feed pill unread badge is now the DS Count primitive (#3688).
— Tabbed AppShell columns use the DS <Tabs attached> fused-surface layout (#3688).
— Chat ▸ chat / prompt-viewer / chat-component / HITL stylesheets adopt the DS type scale (#3688).
— Console: drop the app-wide .pl-dialog__body padding rule now that dialogs carry the DS padding prop (#3688).
— Console: edge-to-edge content dialogs opt into DS 0.63 <Dialog padding="none"> (#3688).
— Console: mcp-catalog, docviewer, knowledge & memory content dialogs opt into DS 0.63 <Dialog padding="roomy"> (#3688).
— Console: schedule & settings content dialogs opt into DS 0.63 <Dialog padding="roomy"> (#3688).
— Content dialogs opt into DS Dialog padding="roomy" (#3688).
— Console: content dialogs opt into DS Dialog padding="roomy" — utility pills (#3688).
— Console: playbook & plugin content dialogs opt into DS 0.63 <Dialog padding="roomy"> (#3688).
— Content dialogs opt into DS Dialog padding="roomy" (#3688).
— Console: bumped @protolabsai/design to ^0.10.0 and @protolabsai/ui to ^0.62.1 for the DS type scale (#3688).
— Console literal-font-size guard (#3688).
— Composer model menu adopts the DS base .pl-menu scroll cap and Menu className (#3688).
— Settings ▸ Path picker / Telemetry / Providers / Delegates stylesheets adopt the DS type scale (#3688).
— Settings ▸ Plugins / Snapshot / Devices / Keyboard stylesheets adopt the DS type scale (#3688).
— Schedule builder, activity feed and code-pane font-sizes move onto the DS type scale (#3688).
— Console: docviewer + fleet font-size onto the DS type scale (#3688).
— Console: app/theme.css font sizes move onto the DS type scale (#3688).
— Console: fleet-room / fleet-activity / app-drawer / work overview font sizes move onto the DS type scale (#3688).
— Console: shell / mobile font sizes move onto the DS type scale (#3688).
— Console: workflows / goals / watches / agent-identity font sizes move onto the DS type scale (#3688).
— Console DS foundation: bump @protolabsai/ui to ^0.63.0 and @protolabsai/design to ^0.10.1 (#3688).
— The shipped Design System Engineer persona preset now reflects the archetype's current reach (#3719).
— Theme, fleet and devices stylesheets drop their literal var(--pl-…, <literal>) fallbacks (#3774).
— App theme + docviewer stylesheets adopt the DS spacing scale (#3688).
— Workflows / plugins / path-picker stylesheets adopt the DS spacing scale (#3688).
— Providers connections stylesheet adopts the DS spacing scale (#3688).
— Chat + HITL stylesheets adopt the DS spacing scale (#3688).
— Chat-component + prompt-viewer stylesheets adopt the DS spacing scale (#3688).
— Fleet Room / Fleet Activity / Work overview / app drawer stylesheets adopt the DS spacing scale (#3688).
— Activity / code pane / identity / fleet stylesheets adopt the DS spacing scale (#3688).
— Snapshot / devices / schedule / telemetry stylesheets adopt the DS spacing scale (#3688).
— Goals / tools / settings / keybindings stylesheets adopt the DS spacing scale (#3688).
— Mobile-shell / tool-calls / delegates / watches stylesheets adopt the DS spacing scale (#3688).
— Theme / settings / memory stylesheets move rem/em font-sizes onto the DS type scale (#3688).
— Chat ▸ chat / tool-calls stylesheets move their rem font-sizes onto the DS type scale (#3688).
— fontSizeGuard now fails on rem/em CSS font-sizes and inline fontSize literals, not just px (#3688).
— Artifact plugin resolves its store through the instance plugin store, honouring the box root (#3644).
— Notes plugin resolves its note through the instance store, honouring the box root (#3644).
— Chat-scoped keyboard shortcuts now fire whenever the chat panel is the active region, not only while the composer holds focus (#3677).
— The code pane no longer drags a wheel-up back to the bottom after opening a file (#3679).
— execute_code: tools.* calls made from threads no longer cross responses (#3681).
— Memory, chat, workflows and the app-crash screen now follow the theme instead of a frozen dark fallback (#3682).
— Console --pl-* token-name guard (#3682).
— Plugin theming bridge: the six legacy curated keys now read the real --pl-color-* tokens instead of retired aliases (#3682).
— Chat accents now follow the workspace/theme accent instead of a frozen dark fallback (#3685).
— Chat, tool-call and prompt-viewer accents now follow the theme instead of a frozen dark fallback (#3685).
— The desktop launcher panel is now a solid surface and every focus ring is a 2px accent ring (#3687).
— browser_eval sends scripts over stdin (#3689).
— Langfuse: board-dispatched ACP coder runs now carry a session, the agent tag and their input; coder tool spans record the real arguments; and every turn records its output, even one with no final model reply (#3690).
— ACP tool cards now show the real file or command, not just the tool kind (read / execute) (#3691).
— Deleting a referenced delegate names its references (#3692).
— Langfuse: non-streaming turns (/v1, /api/chat, HOST.invoke()) now record their reply as the trace output on every path, not only when the turn ends on a final model reply (#3695).
— Langfuse: a coder run started under a non-exported OTel span (such as an a2a-sdk handler span) is now a proper root trace with its session and tags, not a child of a parent that never reaches Langfuse (#3696).
— Streaming model calls honor request_timeout (#3699).
— Background A2A delegations no longer lose a finished peer's reply (#3700).
— execute_code's Exposed-tools setting describes the real default; new additive extra_tools (#3701).
— ACP coder timeouts now count time the machine spends asleep. An 1800s bound no longer holds a board coder for hours on a Mac that sleeps (#3724).
— Langfuse: ACP coder runs trace their real tool durations, model usage and cost, and why they failed; work interrupted by a restart no longer orphans its trace (#3725).
— Removed the orphaned .util-btn CSS (#3684).
— Removed the now-unused shadcn/Tailwind npm deps and components.json from the console (#3686).
— Dropped the dead shadcn/Tailwind CSS wiring from the operator console (#3686).
— run_command runs project code with a scrubbed environment (#3801).
— ADR 0115: gateway in-flight limiter (#3760).
— Operator guide for the model in-flight limiter (#3760).