```
- [ ] **Step 3: Recompose resume markup**
In `GuidedProductMoment.tsx`, replace the resume grid content:
```tsx
{moment === "resume" && runResume ? (
) : null}
```
- [ ] **Step 4: Rebalance resume CSS**
In `styles/demo-workflow.css`, replace resume grid rules:
```css
.guided-product-moment__resume-grid {
display: grid;
grid-template-columns: minmax(18rem, 0.62fr) minmax(0, 1.38fr);
gap: 0.85rem;
min-height: 0;
}
.guided-product-moment__resume-support {
display: grid;
grid-template-rows: minmax(0, 0.75fr) auto;
gap: 0.75rem;
min-width: 0;
min-height: 0;
overflow: hidden;
}
.guided-product-moment__resume-support .operation-block--expanded {
padding: 1rem;
}
.guided-product-moment__resume-support .operation-command {
margin: 0.65rem 0;
}
.run-facts-card[data-output-priority="report"] {
display: grid;
grid-template-rows: auto auto minmax(0, 1fr);
min-height: 0;
}
.run-facts-card[data-output-priority="report"] .run-facts-scroll-region--markdown {
min-height: 0;
max-height: none;
}
```
- [ ] **Step 5: Run focused tests**
Run:
```bash
pnpm --dir web --filter @lda/console test -- src/presentation/GuidedProductMoment.test.tsx src/presentation/RunFactsPanel.test.tsx
```
Expected: PASS.
- [ ] **Step 6: Capture resume/output screenshots**
Run:
```bash
npx --no-install playwright-cli goto "http://127.0.0.1:5173/present#scene/resume-output-evidence/resume"
npx --no-install playwright-cli screenshot --filename=web/apps/console/.visual-smoke/guided-proof-resume.png
npx --no-install playwright-cli goto "http://127.0.0.1:5173/present#scene/resume-output-evidence/output"
npx --no-install playwright-cli screenshot --filename=web/apps/console/.visual-smoke/guided-proof-output.png
```
Expected visual: resume support on the left, report/output large on the right; output beat should be a full report pane, not a cramped card.
- [ ] **Step 7: Commit**
```bash
git add web/apps/console/src/presentation/GuidedProductMoment.tsx web/apps/console/src/presentation/GuidedProductMoment.test.tsx web/apps/console/src/presentation/RunFactsPanel.tsx web/apps/console/src/presentation/styles/demo-workflow.css
git commit -m "feat: emphasize resume output proof"
```
---
### Task 4: Make Trace Full-Stage And Scroll-Safe
**Files:**
- Modify: `web/apps/console/src/presentation/GuidedProductMoment.tsx`
- Modify: `web/apps/console/src/presentation/GuidedProductMoment.test.tsx`
- Modify: `web/apps/console/src/presentation/RunFactsPanel.tsx`
- Modify: `web/apps/console/src/presentation/RunFactsPanel.test.tsx`
- Modify: `web/apps/console/src/presentation/styles/demo-workflow.css`
**Interfaces:**
- Consumes: `RunTraceFacts`, `RunOutputFacts`
- Produces: Trace beat with primary trace list, compact output receipt, and no chat dock
- [ ] **Step 1: Add failing trace hierarchy test**
In `GuidedProductMoment.test.tsx`, add:
```tsx
it("trace makes trace frames primary with compact output support", () => {
const tracedDemo = demoWithAppliedCount(5);
render(
,
);
expect(screen.getByRole("region", { name: /workflow trace proof/i })).toBeInTheDocument();
expect(screen.getByRole("region", { name: /workflow output summary/i })).toHaveAttribute("data-output-priority", "summary");
expect(screen.queryByText("No trace frames captured.")).not.toBeInTheDocument();
});
```
- [ ] **Step 2: Label trace root**
In `RunFactsPanel.tsx`, update `RunTraceFacts` root:
```tsx
```
- [ ] **Step 3: Keep trace markup simple**
In `GuidedProductMoment.tsx`, keep trace as:
```tsx
{moment === "trace" ? (
) : null}
```
Do not include chat or operation cards in this beat.
- [ ] **Step 4: Replace trace CSS**
In `styles/demo-workflow.css`, update trace grid and facts:
```css
.guided-product-moment__trace-grid {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(15rem, 0.32fr);
gap: 0.85rem;
min-height: 0;
}
.run-trace-facts {
display: grid;
grid-template-rows: auto minmax(0, 1fr);
min-height: 0;
}
.run-trace-facts .run-facts-scroll-region--trace {
min-height: 0;
max-height: none;
}
.run-trace-frame {
display: grid;
grid-template-columns: minmax(8rem, 0.35fr) auto auto minmax(0, 1fr);
gap: 0.5rem 0.75rem;
align-items: start;
}
.run-trace-frame .run-facts-dl {
grid-column: 4;
}
```
- [ ] **Step 5: Run focused tests**
Run:
```bash
pnpm --dir web --filter @lda/console test -- src/presentation/GuidedProductMoment.test.tsx src/presentation/RunFactsPanel.test.tsx src/presentation/storyboard.test.ts
```
Expected: PASS.
- [ ] **Step 6: Capture trace screenshot**
Run:
```bash
npx --no-install playwright-cli goto "http://127.0.0.1:5173/present#scene/resume-output-evidence/trace"
npx --no-install playwright-cli screenshot --filename=web/apps/console/.visual-smoke/guided-proof-trace.png
```
Expected visual: no left chat dock, trace frames visible without bottom clipping, compact output support on the right.
- [ ] **Step 7: Commit**
```bash
git add web/apps/console/src/presentation/GuidedProductMoment.tsx web/apps/console/src/presentation/GuidedProductMoment.test.tsx web/apps/console/src/presentation/RunFactsPanel.tsx web/apps/console/src/presentation/RunFactsPanel.test.tsx web/apps/console/src/presentation/styles/demo-workflow.css web/apps/console/src/presentation/storyboard.ts web/apps/console/src/presentation/storyboard.test.ts
git commit -m "feat: make trace evidence full stage"
```
---
### Task 5: Final Visual Smoke, Roadmap, And Review
**Files:**
- Modify: `docs/current_roadmap.md`
- Move: `docs/superpowers/plans/2026-07-10-guided-proof-scene-composition-cleanup.md` to `docs/historical/superpowers/plans/2026-07-10-guided-proof-scene-composition-cleanup.md`
**Interfaces:**
- Consumes: completed Tasks 1-4
- Produces: verified, documented slice
- [ ] **Step 1: Run focused presentation suite**
Run:
```bash
pnpm --dir web --filter @lda/console test -- src/presentation
```
Expected: PASS.
- [ ] **Step 2: Run typecheck and build**
Run:
```bash
pnpm --dir web --filter @lda/console typecheck
pnpm --dir web --filter @lda/console build
```
Expected: PASS. The existing Vite chunk-size warning is acceptable.
- [ ] **Step 3: Capture 720p and 1024x768 smoke screenshots**
Run:
```bash
npx --no-install playwright-cli resize 1280 720
npx --no-install playwright-cli goto "http://127.0.0.1:5173/present#scene/typed-human-boundary/approval"
npx --no-install playwright-cli screenshot --filename=web/apps/console/.visual-smoke/guided-proof-final-approval-720.png
npx --no-install playwright-cli goto "http://127.0.0.1:5173/present#scene/resume-output-evidence/resume"
npx --no-install playwright-cli screenshot --filename=web/apps/console/.visual-smoke/guided-proof-final-resume-720.png
npx --no-install playwright-cli goto "http://127.0.0.1:5173/present#scene/resume-output-evidence/trace"
npx --no-install playwright-cli screenshot --filename=web/apps/console/.visual-smoke/guided-proof-final-trace-720.png
npx --no-install playwright-cli resize 1024 768
npx --no-install playwright-cli goto "http://127.0.0.1:5173/present#scene/typed-human-boundary/approval"
npx --no-install playwright-cli screenshot --filename=web/apps/console/.visual-smoke/guided-proof-final-approval-1024.png
```
Expected: no blank scenes, no clipped primary panels, no chat dock on trace, approval/report text readable enough for projector use.
- [ ] **Step 4: Update roadmap**
In `docs/current_roadmap.md`, mark the active slice completed:
```md
4. Completed: guided proof scene composition cleanup made approval, resume,
output, and trace beats read as product evidence without chat competing for
space. Implementation:
[`guided proof scene composition cleanup`](historical/superpowers/plans/2026-07-10-guided-proof-scene-composition-cleanup.md).
```
Renumber the previous future item if necessary.
- [ ] **Step 5: Archive the plan**
Run:
```bash
Move-Item -LiteralPath docs/superpowers/plans/2026-07-10-guided-proof-scene-composition-cleanup.md -Destination docs/historical/superpowers/plans/2026-07-10-guided-proof-scene-composition-cleanup.md
```
- [ ] **Step 6: Run diff hygiene**
Run:
```bash
git diff --check
git status --short
```
Expected: no whitespace errors. Status should show only intended source/doc changes.
- [ ] **Step 7: Request review**
Run the project’s review process or `/review` if available. The review focus should be:
- Standards: no new hand-rolled generic chat UI; no stale route names; no unreadable CSS hacks.
- Spec: approval shows input/report/decision only; resume emphasizes same-run output; trace is full-stage and scroll-safe; chat hidden on proof-heavy beats.
- [ ] **Step 8: Commit docs and review fixes**
```bash
git add web/apps/console/src/presentation docs/current_roadmap.md docs/historical/superpowers/plans/2026-07-10-guided-proof-scene-composition-cleanup.md
git commit -m "docs: complete guided proof scene cleanup"
```
---
## Self-Review
- Spec coverage: Tasks cover route policy, approval composition, resume/output hierarchy, trace full-stage behavior, screenshots, roadmap, and review.
- Placeholder scan: no TBD/TODO placeholders; all commands and paths are concrete.
- Type consistency: `density`, `priority`, and region labels are introduced before tests rely on them.
- Scope check: this is one visual/product proof slice. It does not implement live LLM chat, new assistant-ui runtime, phone control, or evaluation/closing visuals.