Skip to content

FE-1506: Show captures and completion while a panel elicitation runs - #9346

Open
lunelson wants to merge 4 commits into
ln/fe-1504-panelfrom
ln/fe-1506-legible-panel-status
Open

FE-1506: Show captures and completion while a panel elicitation runs#9346
lunelson wants to merge 4 commits into
ln/fe-1504-panelfrom
ln/fe-1506-legible-panel-status

Conversation

@lunelson

Copy link
Copy Markdown
Contributor

🌟 What is the purpose of this PR?

The first human elicitation from the Petrinaut panel (FE-1503) needs the person at the panel to see what the interviewer has captured and whether the interview is complete while it runs. This branch surfaces capture and completion facts in the sweep results, keeps their presentation in the Petrinaut host, and states the attach contract between Petrinaut and the Brunch server.

Draft: opened so the stack is visible end to end. The description is completed when the branch is tied off.

🔗 Related links

🚫 Blocked by

  • Stacks on ln/fe-1504-panel; lands after it.

🔍 What does this change?

Capture and completion facts flow into sweep results; the Petrinaut host renders them; docs/specs/petrinaut-integration.md states the attach contract.

Pre-Merge Checklist 🚀

🚢 Has this modified a publishable library?

This PR:

  • does not modify any publishable blocks or libraries, or modifications do not need publishing

📜 Does this require a change to the docs?

The changes in this PR:

  • are internal and do not require a docs change

@vercel

vercel Bot commented Aug 26, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
hash Ready Ready Preview Aug 27, 2026 5:56pm
petrinaut Ready Ready Preview Aug 27, 2026 5:56pm
petrinaut-docs Ready Ready Preview Aug 27, 2026 5:56pm
1 Skipped Deployment
Project Deployment Actions Updated (UTC)
hashdotdesign-tokens Ignored Ignored Preview Aug 27, 2026 5:56pm

Request Review

lunelson commented Aug 26, 2026

Copy link
Copy Markdown
Contributor Author

@cursor

cursor Bot commented Aug 26, 2026

Copy link
Copy Markdown

PR Summary

Low Risk
Demo-app transport decoration and richer sweep payloads; no auth or persistence changes, with behavior locked by harness and transport tests.

Overview
Sweep tool results now carry the full capture list (with derived active/superseded/retracted status) and the completion report, so panel users can see what was elicited and what still blocks completion while the interview runs.

The local-storage demo wraps the chat transport with createBrunchPanelTransport, which intercepts brunch_sweep stream chunks and merges human-readable title, detail, and items onto the raw output (refused, no-settled-range, and applied paths). SWEEP_TOOL_NAME is exported from transport-aisdk for that hook.

Tests and docs follow: the baseline harness test asserts captures, evidence, and completion failures on the applied sweep part in message history; a Vitest covers the transport decorator; petrinaut-integration.md adds the stable attach contract (chat stream, brunch_ask, principal header) and related wording; user-facing assistant docs mention inline sweep cards.

Reviewed by Cursor Bugbot for commit aa0c7f4. Bugbot is set up for automated code reviews on this repo. Configure here.

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 9697f14. Configure here.

Comment thread apps/petrinaut-website/src/main/app/local-storage-demo/brunch-panel-transport.ts Outdated
lunelson and others added 4 commits August 27, 2026 19:41
Expose current captures and the full completion report through readable sweep output so Petrinaut's existing generic tool renderer can display live elicitation state.

Co-authored-by: Cursor <cursoragent@cursor.com>
Pin the chat stream, structured ask schema, and principal identity as the stable UI and voice integration surface that changes only with notice.

Co-authored-by: Cursor <cursoragent@cursor.com>
Move readable sweep summaries to the app-owned transport so the reusable binding exposes raw capture history and completion facts without renderer coupling.

Co-authored-by: Cursor <cursoragent@cursor.com>
Lowercasing the whole formatFailure string also folded node, slot, and capture ids, so a sweep card could show the same node under two identities.

Co-authored-by: Cursor <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/apps area/infra Relates to version control, CI, CD or IaC (area) area/libs Relates to first-party libraries/crates/packages (area) area/tests New or updated tests type/eng > frontend Owned by the @frontend team

Development

Successfully merging this pull request may close these issues.

1 participant