Repository navigation
feat(j5): one adjudication request in the Inbox and the Captain's chat - #760
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars.
|
Panel review: #760Live (Astra, stack tip): the dock appeared above the Captain's composer, and answering from the Inbox cleared both the dock and the exchange. The Captain received exactly one reply (dock, Inbox answer). Two simultaneous asks couldn't be produced, because the existing one-open-exchange rule blocks the second. Process: FORK.md. The only record of the Nit: the Inbox's answer controls use the Operate-scope Review panel for the #750–#762 stack, judged as the code that lands at |
e923f59 to
0884624
Compare
0884624 to
421433c
Compare
421433c to
667e5f9
Compare
|
Thanks. Where each one landed:
|
667e5f9 to
3fb8a7b
Compare
…rawn from both Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…the Inbox and its thread Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…ptions and a recommendation Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…nd answerable there Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
… and user docs Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
3fb8a7b to
45bb970
Compare
…n layer Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…n layer Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
#747) Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…ing exported Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Summary
When a Crew hits a decision only I can make, nothing tells me where to look. A Captain that uses its native question tool leaves the question in its own thread, and one that asks through
j5_send_messageleaves a bare tool-call row I can't answer from. This makes the Captain ask withj5_send_message, so the request reaches my Inbox, and pins that same request above the Captain's composer where I can answer it. Answering in either place closes the one exchange. Closes #747.This is stacked on #758, so the base is
j5/746-two-ways-to-get-help. The mockup I approved isartifacts/design/ui/08-adjudication-request.html(in the J5 artifacts store, linked on the issue).j5_send_messageandexpect_replyinstead of the native question tool, state the disagreement, the options and its recommendation, and keep working on what doesn't depend on my answer. The Captain notice's old "ask the user through the inbox" line now names the tool. Members' text is untouched, so they still go through their Captain.AdjudicationDockis pinned above the Captain's composer, in the same slot as the Crew roster gate. It shows the urgency, a three-line excerpt of the ask with "Show full question", and a reply box with an Answer button. With two open asks it shows the oldest in full and a "1 more question" row. It only appears for a thread that commands a live Crew, so asks from other agents keep today's behavior.Docs: the definition line in inbox.md, the adjudication prose in crews.md, and
docs/j5/user/personas.mdline 66.Evidence
At
45bb9703ac, on top of #758, after the stack was rebased onto j5/main.vp run -r typecheck(the CI command) exits 0 here, serversrc/j5/a2a src/j5/agents src/mcppasses (1292 tests), provider-core passes (205) and websrc/j5/a2apasses (100):HumanInboxService,crewGateNotice,spawnIdsandEnvelopeFormatter, and 18 provider-core tests for the instruction pins:cd apps/server && vp test run src/j5/a2a/HumanInboxService.test.ts src/j5/a2a/crewGateNotice.test.tscd apps/web && vp test run src/j5/a2a/adjudicationDock.logic.test.ts--report-unused-disable-directivesandvp fmt --checkexit 0 on every file I touched.Not verified: no component test for the dock beyond its logic; withdrawing an ask live, a refused second answer live, and answering from the Inbox instead of the card (the first two are unit-tested). I didn't run repo-wide checks.
Merge Danger
Door: two-way. No migration and no stored data. A revert restores the old guidance and removes the card.
Blast Radius: every Captain's standing instructions, and the thread view of every thread that commands a Crew. A Captain will now ask me through the Inbox instead of its native question tool.
Things worth knowing:
After merge: nothing.
UI changes
The pinned card is new, so there's no before.
Live testing
Ran on the whole stack at
da64b2795c, before the last rebase onto j5/main, in an isolated test home fromj5-live-test. Claude Haiku 5.5 for the Captain and members.j5_send_messageand the card appeared above its composer with the urgency badge, the excerpt, "Show full question", a reply box and Answer. The Inbox bell showed 1.Not exercised live: withdrawing an ask, a refused second answer, answering from the Inbox, two open asks, and a non-Captain's ask staying Inbox-only. Tests cover them. No mobile.
Upstream impact
apps/web/src/components/ChatView.tsxgets one import and one element, in the existing J5 fragment besideCrewRosterGate, andFORK.mdrecords it in the case that coversCrewRosterGate, with the file-table row updated. It uses the same banner mechanism as the roster gate, so it doesn't change what the composer does. Everything else is under J5-owned paths.Checklist
FORK.md(case text and file-table row) in this PRdocs/j5/product/upstream.md— no upstream behavior changesAGENTS.md) — web only (no mobile Crew surface); the Inbox and the card ran live on Claude; withdrawal and the refused second answer are covered by testsdocs/j5/product/and user docs rewritten where this changes themClaude Sonnet 5.5 through the Claude Code harness in J5 Code.
🤖 Generated with Claude Code