(MOT-4326) feat(console): session chip slot in the chat header for injectable UI - #684
Conversation
…jectable UI
Fourth injectable slot: host.chat.registerSessionChip({ id, render })
renders worker-owned per-session chips in the chat header's right
cluster. Chips receive session id, resolved model id, and the model's
context window; they fetch their own data over host.iii. Duplicate ids
last-win, and a chip with id context supersedes the built-in
estimate-based ContextUsage meter so workers with real per-turn numbers
own the surface. Mirrored in @iii-dev/console-ui, covered by a slot
registry test and a playground story, documented in the SOP and SKILL.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Warning Review limit reached
Next review available in: 59 minutes You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (9)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
skill-check — worker0 verified, 54 skipped (no docs/).
Four for four. Nicely done. |
…hat namespace Review cleanups. useExtSessionChips memoizes the dedupe on the store snapshot so ChatView's chip memo actually holds between registrations instead of rebuilding per streamed token. The published Host type declares chat optional, matching the feature-detection story workers are told to follow. The SOP status table no longer lists a shipped slot under the not-shipped heading.
What
A fourth injectable-UI slot:
host.chat.registerSessionChip({ id, render }). Worker-shipped chips render in the chat header's right cluster beside the export button and status dot, receiving{ sessionId, modelId?, contextWindow? }and fetching their own data overhost.iii.contextsupersedes the built-in estimate-basedContextUsagemeter, which now renders only as a fallback. A worker with real per-turn numbers owns the surface; consoles without such a worker keep today's estimate.@iii-dev/console-ui(packages/console-ui/index.d.ts); worker scripts feature-detect withhost.chat?.registerSessionChipon older consoles.Why
Workers had no way to put a small live per-session affordance in chat without forking the console. First consumer is the harness context chip (MOT-4327).
Testing
Playground/SessionChipsrenders a democontextchip in the live ChatView harness and demonstrates the supersede rule.Docs updated:
docs/sops/injectable-console-ui.md(new slot section, status table row) andconsole/SKILL.md. Part of MOT-4324.