Treat a project as spent once its song has been exported
Opening an exported song starts a fresh session from detection instead of resuming: cuts, discards and metadata do not carry over, so a re-cut never inherits decisions that have already shipped. --resume overrides it on edit, export and project. This reverses what was agreed in planning and written into docs/spec.md and CONTEXT.md, which promised resume-across-sessions and re-export. Both are corrected. The cost is deliberate and worth stating: changing the width cap or adding the SVG renderer later now means re-cutting each song by hand rather than regenerating every bundle from its project file. Export records the flag in bundle.write, so no caller can forget it. Also removed --refit and the Auto-fit buttons, which were added without being asked for and whose only purpose - migrating projects made before the content rectangle was proposed - disappears once exported projects start fresh. Reset now restores detection's proposal rather than the whole page: clearing to full width would undo the thing the rectangle exists for, so one button covers it. open_project() replaces four copies of load-or-detect across the CLI and the editor.
This commit is contained in:
+6
-3
@@ -51,9 +51,12 @@ two repos.
|
||||
**Project**:
|
||||
The persistent state of slicing one song: the source PDF it points at, its cuts,
|
||||
discards, content rectangle, levels, staff-height overrides, markers and
|
||||
metadata. Autosaved beside the PDF; the bundle is generated from it, so any
|
||||
export can be regenerated without repeating human work. One PDF, one song, one
|
||||
project, one bundle — never a many-to-one in any direction.
|
||||
metadata. Autosaved beside the PDF; the bundle is generated from it. One PDF,
|
||||
one song, one project, one bundle — never a many-to-one in any direction.
|
||||
|
||||
**Spent** once its song has been exported: opening the PDF again begins a fresh
|
||||
session from detection rather than resuming, so a re-cut never inherits
|
||||
decisions that have already shipped.
|
||||
_Avoid_: session, document, edit list
|
||||
|
||||
**Bundle**:
|
||||
|
||||
Reference in New Issue
Block a user