FR-DEV-7 — Before/after against the original is unimplemented #14

Closed
opened 2026-09-05 16:09:21 +00:00 by dtourolle · 2 comments
Owner

FR-DEV-7 specifies "Compare current edit state against the unedited original or against a chosen history state." Only the second half exists, and only as navigation.

Gap

Traced in docs/traceability.md to History::entries, History::go_to, develop.rs::history_rows, develop.rs::go_to_history and ui/history.slint.

Jumping to a history state is the edit changing. Comparison means seeing the other state without leaving this one. The requirement's first clause — against the unedited original — has no implementation at all, and the workaround (walk the list to step zero, look, walk back) is exactly the wrong interaction at the moment it is needed, which is when a photographer suspects they have overcooked the frame.

Why this is filed separately

The two implementing tickets are already open — hold-to-compare, and named snapshots. This exists so the requirement has a home, can be closed as a unit, and so the traceability matrix stops claiming coverage the behaviour does not provide.

Closes when

  • Hold-to-compare against the unedited original ships → first clause.
  • Named snapshots ship and the same gesture accepts one → second clause, properly rather than as navigation.

Part of the Develop Ergonomics spec (FR-DEV series proposal), 2026-09-05.

FR-DEV-7 specifies "Compare current edit state against the **unedited original** or against a chosen history state." Only the second half exists, and only as navigation. ## Gap Traced in `docs/traceability.md` to `History::entries`, `History::go_to`, `develop.rs::history_rows`, `develop.rs::go_to_history` and `ui/history.slint`. Jumping to a history state **is** the edit changing. Comparison means seeing the other state without leaving this one. The requirement's first clause — against the unedited original — has no implementation at all, and the workaround (walk the list to step zero, look, walk back) is exactly the wrong interaction at the moment it is needed, which is when a photographer suspects they have overcooked the frame. ## Why this is filed separately The two implementing tickets are already open — hold-to-compare, and named snapshots. This exists so the *requirement* has a home, can be closed as a unit, and so the traceability matrix stops claiming coverage the behaviour does not provide. ## Closes when - Hold-to-compare against the unedited original ships → first clause. - Named snapshots ship and the same gesture accepts one → second clause, properly rather than as navigation. --- Part of the Develop Ergonomics spec (FR-DEV series proposal), 2026-09-05.
dtourolle added the developergonomicsunmet-requirementsize:S labels 2026-09-05 16:09:21 +00:00
Author
Owner

Closed by #3 (first clause: against the unedited original) and #8 + #3 (second clause: against a chosen snapshot, properly rather than as history navigation).
Until then, docs/traceability.md claims coverage this behaviour does not provide.

**Closed by** #3 (first clause: against the unedited original) and #8 + #3 (second clause: against a chosen snapshot, properly rather than as history navigation). Until then, `docs/traceability.md` claims coverage this behaviour does not provide.
Author
Owner

Landed in d3b6127 (2026-09-12) with the snapshot work: comparison against the original and against a chosen snapshot. FR-DEV-7 is tagged in six files.

Landed in d3b6127 (2026-09-12) with the snapshot work: comparison against the original and against a chosen snapshot. FR-DEV-7 is tagged in six files.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: dtourolle/DarkRoom#14