From 84c4be2d7704fb8c47d69725c6eacea6317c719e Mon Sep 17 00:00:00 2001 From: Codeman maintainer Date: Sun, 18 Oct 2026 17:56:55 +0200 Subject: [PATCH] fix(story-mode): a long caption makes its panel taller instead of covering the art MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit From review round 11: a long caption ("Claude writes pyproject.toml and changes test_csvstat.py; the tests pass, then Claude starts a git repository and saves the work on a new branch …") covered the test board, the POW and the code card's file name on a two-column panel. A caption that reaches past the band above the art now makes its panel taller by the difference (re-fitted on resize and on the Director's cut toggle). Every scene keeps the panel's usual height as its stage and stands at the bottom, the background filling the space above, the way the final panel already did; Claude's balloon is placed against the moved head. The browser test forces a long caption and checks the panel grew and the caption ends above the art. Co-Authored-By: Claude Opus 5.5 (1M context) --- src/web/CLAUDE.md | 2 +- src/web/public/story-mode.css | 14 ++++++++---- src/web/public/story-mode.js | 39 ++++++++++++++++++++++++++------- test/story-mode.browser.test.ts | 17 ++++++++++++++ 4 files changed, 59 insertions(+), 13 deletions(-) diff --git a/src/web/CLAUDE.md b/src/web/CLAUDE.md index 43b3d14f..c7a7aaf3 100644 --- a/src/web/CLAUDE.md +++ b/src/web/CLAUDE.md @@ -54,7 +54,7 @@ Frontend JS modules have `@fileoverview` with `@dependency`/`@loadorder` tags. L **Settings surface** (`#appSettingsModal` + `#sessionOptionsModal` + `#createCaseModal`): one `set-*` language shared through a single `:is(...)` id scope in styles.css. App Settings' rail is a table of contents over ONE scrolling document (`switchSettingsTab` scrolls); Session Options and Add Case really switch (`switchOptionsTab` / `switchCaseModalTab`), and their larger per-modal size blocks are the design, not drift. ⚠️ **The load/save contract is `getElementById` by id**: renaming or dropping a control id silently stops it loading or saving. ⚠️ The Session Options "Session" entry still keys off `context` (label-only rename). ⚠️ Add Case keeps its legacy `.form-row` markup via an adapter; every `
` there needs `.set-adv-chev` plus both marker suppressions. ⚠️ Model cards and the effort segment are views over hidden `