feat: unify prepared authoring lifecycle visual

This commit is contained in:
lda
2026-07-13 12:42:04 +07:00 Verified
parent 3eef7e35c0
commit 8414b07272
7 changed files with 382 additions and 80 deletions
+36
View File
@@ -0,0 +1,36 @@
# Task 3 Report
## Changes
- Replaced the old five-item phase rail in `PreparedAuthoringLifecycleScene` with the six-step Prepared Lifecycle rail: Discover, Author, Diagnose, Repair, Artifact, Deployment.
- Added ordinal, readable label, short detail, active underline state, and completion state to each rail item.
- Migrated the scene to Task 2's `projectPreparedLifecycleStep`, including the distinct validate and output-map commands for Diagnose and Repair.
- Added one active operation frame containing the beat caption, factual method, equivalent CLI, and existing phase visual.
- Kept the prepared assistant/composer behavior and the 26/74 desktop, 28/72 compact hierarchy.
- Added editorial frame/rail styling, scoped content motion, reduced-motion handling, and narrow horizontal rail overflow at the 1050px container breakpoint.
- Added regression tests for the six-step rail, frame evidence, diagnose/repair rerender choreography, recorded validate phase marker, CSS hierarchy, and narrow behavior.
- Left room for the Task 4 bottom Q&A lane; no lower dock or duplicate Scene 7 shell was added.
## Verification
- RED: the first focused run failed on the stale Scene 9 message-state import, missing frame/rail CSS, and missing recorded-phase visual marker.
- GREEN: `pnpm --dir web --filter @lda/console test -- src/presentation/authoring/PreparedAuthoringLifecycleScene.test.tsx src/presentation/authoring/AuthoringPhaseVisual.test.tsx src/presentation/presentation-css.test.ts` -> 3 files, 60 tests passed.
- Adjacent authoring regressions -> 4 files, 30 tests passed.
- `npx react-doctor@latest --verbose --scope changed` -> no issues, 100/100.
- `git diff --check` -> clean.
- `pnpm --dir web test` -> 799 passed, 22 failed across 6 files. The failures are stale shared Task 1/2 route, Scene 7, presenter-note, and old Scene 9 expectations, including removed `validate` beat routes and the old `authoring phase rail` label.
## Deviations
- The Task 2 transitional `SceneView` union was not tightened in this task. The remaining 9 typecheck diagnostics are in unowned `SceneBody`, presenter notes, route, and related tests, and changing that union here would cross ownership and risk Scene 8 recording-oriented callers. The lifecycle scene itself now consumes the typed `PreparedLifecycleStepId` projection.
- Browser smoke was not run. Responsive verification is encoded in CSS tests and rules: the primary split remains 26/74 on the editorial surface, compact mode uses 28/72, and the rail switches to 9.5rem minimum-width horizontal items at 1050px.
## Bugs And Concerns
- No Task 3-specific functional bug was found in the focused or adjacent suites.
- Full console typecheck remains blocked by the pre-existing 9 `SceneView` union diagnostics described above.
- A real 720p and narrow browser pass would still be useful to confirm the evidence header and visual region feel balanced at presentation zoom; the code keeps the frame scrollable and the rail horizontally scrollable.
## Commit
PENDING