[#488] Redesign cartoon lettering review workflow#491
Conversation
project7-interns
left a comment
There was a problem hiding this comment.
Verdict: APPROVE
Summary
PR #491 implements the #488 lettering redesign around a vertical full-cut review board and focused editor mode. The updated flow keeps per-cut saved/exported/uploaded state visible, makes between-scene cards selectable/editable as first-class targets, and scopes AI draft prompting inside the focused editor.
Findings
- No blocking findings.
Decision
Approved. I reviewed the live PR diff at ee3f7d7422223a5b067be25c99067d451d7c1608, issue #488, and the changed CutListPanel / LetteringEditor paths. The implementation preserves existing export/upload/readiness flows while moving lettering work into the focused editor and adding regression coverage for focused cut editing, between-scene card creation, review-state display, and scoped AI draft prompting. Live CI lint-and-typecheck was still pending when checked. I attempted the reported local focused test command in this checkout, but it could not run because vitest is not installed here (sh: 1: vitest: not found).
project7-interns
left a comment
There was a problem hiding this comment.
Verdict: REQUEST CHANGES
Summary
PR #491 delivers the two-mode review/editor structure, but it does not update the shared lettering-completion logic for the new first-class between-scene cards. An empty text panel can be present while the workflow coach and checklist advance to export, so the standardized Next Action can skip required between-scene lettering.
Findings
- [high] Empty between-scene cards are not counted as lettering work before the workflow advances to export.
- File:
app/lib/cartoon-readiness.ts:522 - Details:
summarizeCutProgressonly incrementsneedClean/withTextfor non-text image cuts. ThencartoonChecklistmarks theletterstep done whenp.withText === p.needClean(app/lib/cartoon-readiness.ts:591), andderiveCartoonCoachadvances past lettering with the samec.withText < c.needCleangate (app/lib/cartoon-coach.ts:171). With this PR, a user can click aBetween-scene letteringslot, creating a text panel with no overlays. If the image cuts are already lettered, that text panel still showsBetween-scene card · Open to add narration or title textin the review board, but the checklist/coach move toExport final images/Finish and export the final images. That violates #488's requirement that inter-cut areas are first-class lettering targets and that the Next Action advances only after all required lettering is complete. - Suggestion: Extend the progress model used by
cartoonChecklistandderiveCartoonCoachso text panels participate in the lettering gate. For example, count text panels as lettering targets and count them complete only when they have saved overlays or an exported final, then add a regression covering image cuts lettered + one empty text panel: the review board should still route to focused editing for that card and the coach/checklist should remain at lettering, not export.
- File:
Decision
Requested changes. Reviewed live PR #491 at ee3f7d7422223a5b067be25c99067d451d7c1608, issue #488, and live CI. CI lint-and-typecheck was still pending when checked.
project7-interns
left a comment
There was a problem hiding this comment.
Verdict: APPROVE
Summary
The requested text-panel workflow gate fix is present at d894966056cb4478533d6d1b5e89a73b694fe8b9. Text panels now remain first-class lettering targets in the shared progress/checklist/coach path, so an empty between-scene card no longer lets the workflow advance to export while the review board still says it needs text.
Findings
- No blocking findings.
Decision
Approved. I re-reviewed the live PR diff, issue #488, and the updated cartoon-readiness, cartoon-coach, story progress, preview, and publish-checklist paths. summarizeCutProgress now keeps clean-image accounting image-cut-only while counting lettering/export/upload against all cuts, and the added regressions cover image cuts lettered plus an empty text panel staying at open-lettering instead of export. Live CI lint-and-typecheck was still pending when checked for the current commit.
project7-interns
left a comment
There was a problem hiding this comment.
Verdict: APPROVE
Summary
The requested text-panel lettering gate fix is present at d894966056cb4478533d6d1b5e89a73b694fe8b9. Empty between-scene cards now keep the shared workflow at lettering instead of advancing to export.
Findings
- No blocking findings.
Decision
Approved. summarizeCutProgress now counts text-panel overlays toward withText while preserving the clean-image exemption for text panels; cartoonChecklist gates lettering on withText === total; and deriveCartoonCoach uses the total-cut lettering gate before export. Regression coverage covers both checklist and coach for image-cuts-lettered plus an empty text panel. Live CI lint-and-typecheck was still pending when checked for the current commit.
Summary
SaveandCancelflows; successful Save can return to the review board while preserving export/upload semantics.Verification
TMPDIR=/home/quadwork/plotlink-ows-dev/.tmp/vitest npm test -- app/web/components/CutListPanel.test.tsx app/web/components/LetteringEditor.test.tsx app/web/components/export-upload-state.test.tsx app/web/components/PreviewPanel.test.tsx app/web/components/WorkflowCoach.test.tsxpassed: 101 tests.npm run typecheckpassed.npm run lintpassed with existing warnings only.npm run app:buildpassed; rebuilt tracked Vite dist assets.Closes #488.