You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.1 KiB
1.1 KiB
Decision 0001: Composer Draft Sync
Status: Accepted Date: 2026-05-03
Context
The bottom composer edits node parameters through a local draft. If the user edits node A and then selects node B, the product needs a deterministic rule for the unsaved draft.
Options considered:
- autosave dirty draft before changing target
- discard dirty draft when changing target
- interrupt with a confirmation dialog
Decision
Use autosave.
Rules:
- On blur, write dirty draft fields back to the selected node.
- Before generate, write dirty draft fields back to the selected node.
- Before switching from node A to node B, write dirty draft fields back to node A, then load node B.
- If the draft target node no longer exists, discard the draft.
- Do not show a confirmation dialog in MVP.
Rationale
Autosave preserves user edits without adding modal friction to canvas exploration. It also keeps the selected node as the durable source of truth before execution.
Consequences
- Composer needs dirty-field tracking.
- Status/output/error updates must not reset dirty draft fields.
- Tests must cover selection changes with unsaved prompt/model edits.