Drag the right edge from 480 up to leaving 240 of the canvas; the width is remembered and a double-click restores 660. The limits live in the CSS, so they hold when the browser window shrinks too. Going through every page at 480 turned up what this needed: - Workflow cards shrank into strips instead of the list scrolling: a card clips its content, so plain grid rows fit the height. - The Prompts page's own columns beat the narrow stacked rule, leaving half a page empty, in a narrow floating window too. - The Models header pushed the close button out. - The Workflows bar only wrapped on a small screen, not a small window. - The AI tabs kept a gap for their hidden icons and wrapped. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Architecture Topic Guide
Start with the repository-root ARCHITECTURE.md, then
open only the topic needed for the current task.
ui-flows.md: the UI map's hand-written part, in Chinese: what each part of a page is for, what a click does and why, and one name per thing (a glossary the structure check enforces). Where a word on screen is drawn and what it calls comes from the code:node tools/ui_map.mjs find <words>(tools/ui_map.mjs, its indextools/ui_map_scan.mjs;buildwrites the whole map to the untrackeddocs/ui-map.md).backend.md: Python routes, filesystem safety, persistence, scan state, model sidecars, and backend performance.frontend.md: extension bootstrap, UI ownership, localization, media lifecycle, panel state, and graph mutations.recipes.md: Workflow Recipes, packages, galleries, Parameter Notebooks, prompt roles, and recipe-to-model transitions.material-library.md: saved prompts and node values (material files), keeping an output image, and dragging prompts onto the canvas.recipe-model-lifecycle.md: authoritative model fields, Hash synchronization, local matching, partial append, and note privacy.model-resolution.md: model provenance, Model Check, hash injection, model scanning, and recovery policy.../decisions/README.md: concise records of product and architectural decisions that still explain current behavior.
These documents describe current contracts rather than implementation history.
For exact changes, use Git history. For user-visible releases, use
CHANGELOG.md. For recurring implementation traps, use
lessons.md.