feat(harness): render live Agent Map proposals - #777
Conversation
Add strict caller schemas and a pure prospective-graph validator with batch-local reference resolution, deterministic touch sets, and post-validation ID materialization. Closes: SAP-3061
Refs: SAP-3061
Closes: SAP-3059
Refs: SAP-3059
Refs: SAP-3061
…hared-versioned-map-proposal
Refs: SAP-3059
Refs: SAP-3059
Closes: SAP-3060
Refs: SAP-3059
…-scoped-agent-map-planning-tools
Refs: SAP-3059
…-scoped-agent-map-planning-tools
Closes: SAP-3064
…path-proposal-live
Renew live-session capabilities on authenticated use, return bounded project recovery, close failed MCP initializations, and preserve original session persistence failures. Extend full-server SDK coverage and document the embedded endpoint. Refs SAP-3060
Closes: SAP-3064
…path-proposal-live
Closes: SAP-3064
Review — PR #777
|
Closes: SAP-3064
|
Addressed all four findings in bce1a41:
Fresh gates: focused Vitest 70/70, full Agent Map Playwright 11/11, typecheck, lint, build, and diff check all pass. |
Follow-up review — PR #777 (delta since
|
Closes: SAP-3064
|
/review |
Follow-up review — PR #777 (delta since
|
Refs: SAP-3064
|
Implemented the user-confirmed Studio UI contract at
Fresh verification: Agent Map Playwright 11/11, focused Vitest 70/70, harness typecheck, lint, production build, scoped Prettier, and diff check all pass. |
|
/review |
Follow-up review — PR #777 (delta since
|
Follow-up review — PR #777 (delta since
|
Keep planner onboarding in hidden launch context so the raw Claude Code transcript begins with the user's real input. Use the stable local principal for signed-out capability issuance so scoped Agent Map tools are present under --no-auth.\n\nRefs: SAP-3064
|
/review |
Follow-up review — PR #777 (delta since
|
Avoid replaying introductory guidance after resume or rehydration, document the compatibility-only greeting lifecycle, and cover signed-out builder capabilities.\n\nRefs: SAP-3064
|
/review |
Follow-up review — PR #777 (delta since
|
|
/review |
Follow-up review — PR #777 (delta since
|
|
/review |
Follow-up review — PR #777 (delta since
|
|
Final planner-bootstrap follow-up handoff at
Fresh final evidence:
The substantive follow-up review approved the behavior/privacy head. This final commit implements its last two nonblocking requests; the current automatic check completed successfully with the expected configured round-cap skip. The dedicated Mac checkout is synced and built at this exact SHA; its existing Studio process was intentionally not restarted. |
Refs: SAP-3060
Refs: SAP-3060
Refs: SAP-3064
Refs: SAP-3064
Refs: SAP-3064
…ckend-persist-one-shared-versioned-map-proposal # Conflicts: # packages/harness/src/core/agent-map-proposal-schema.ts # packages/harness/src/core/agent-map-proposal-validator.ts # packages/harness/src/shared/agent-map.ts
…st-one-shared-versioned-map-proposal' into yashnadge/sap-3060-infrastructure-expose-scoped-agent-map-planning-tools
…e-expose-scoped-agent-map-planning-tools' into yashnadge/sap-3064-ui-render-the-golden-path-proposal-live # Conflicts: # packages/harness/src/server/index.ts
…-render-the-golden-path-proposal-live # Conflicts: # packages/harness/src/core/planning-session.ts # packages/harness/src/core/session-manager.ts # packages/harness/src/server/agent-map-mcp-tools.ts # packages/harness/src/server/agent-map-mcp-wiring.test.ts # packages/harness/src/server/agent-map-mcp.test.ts # packages/harness/src/server/index.ts # packages/harness/src/shared/agent-map-codec.ts # packages/harness/web/src/lib/agent-map.ts
Summary
Stack
This is the fourth E2 PR and is based on #776.
Verification
The changed implementation and regression hunks match project formatting. Whole-file Prettier still reports unrelated pre-existing formatting in the four touched legacy TypeScript files; broad formatter churn was deliberately excluded.
Design and fixture evidence
Implementation follows the E2.4 journey/interface contract, existing AgentMapPane and SystemGraph anatomy, and the available neutral token contract. No new color, tone, type role, size, or permission vocabulary was added. The vendored design-system widget guide and design-source checkout were not present in this repository.
The golden browser case renders the deterministic stock-research proposal within one second, covers all five node kinds and six relationship kinds, verifies planner provenance, applies a contiguous coding-agent rename live without resetting the viewport, and preserves attribution across a second delta. No screenshot artifact is uploaded.
Planner bootstrap follow-up
Claude Code's interactive CLI has no supported hidden assistant-first turn. Studio now keeps trusted planning identity, onboarding behavior, and map-tool instructions in the existing system-prompt appendix and does not submit a synthetic control prompt through the PTY. The first visible conversation turn is therefore the developer's actual input.
Signed-out Studio uses the same stable
local:<machineId>principal for planner ownership and private MCP capability issuance. A full-server regression opens a real no-auth planner, inspects its private generated config, connects through the bearer capability, and listsagent_map_read,agent_map_validate, andagent_map_propose.Known limitations
--no-auth, the remotesapiomMCP remains intentionally unauthenticated, and Claude may also report inherited user-level MCPs that need authentication. That banner is independent of the privateagent-mapserver, which is now present and capability-authenticated.Closes: SAP-3064
Linear: https://linear.app/sapiom/issue/SAP-3064
Immediate planner contract follow-up
Live proposal delivery follow-up
Inspector dismissal follow-up
Planner SessionStart orientation follow-up
Post-#774 stack sync
net::ERR_INSUFFICIENT_RESOURCESwhile loading unchanged Vite modules in the failed-greeting case; that exact case passed 1/1 in isolation. The trace showed an empty root caused by resource fetch failures before planner behavior, not an application assertion or source regression.Agent Map full-view follow-up
Expand Agent Maplabel.Full-view resize isolation follow-up
Terminology-guard follow-up
Workflowicon identifier used for Agent Map subagent nodes, consistent with existing icon exceptions.