diff --git a/docs/dev/outstanding.md b/docs/dev/outstanding.md index 8440972..b2bf348 100644 --- a/docs/dev/outstanding.md +++ b/docs/dev/outstanding.md @@ -91,7 +91,7 @@ somebody reads the matrix. ## 2. Culling — the stated differentiator, half built [D11](requirements.md) names culling "the core differentiator". FR-CULL-1 through -5 and -8 through --13 are built. Two are not. +-12 are built, and FR-CULL-13 is half built. Two are not built at all. **FR-CULL-3 — Raw-truth overlays. Built, all three bullets.** Focus peaking is `core/dr-gpu/src/focus.rs` and `ui/dr-ui/src/peaking.rs`; the raw histogram and the raw clipping @@ -133,6 +133,17 @@ capture instant and size), `ui/dr-ui/src/duplicates.rs` proves each group the sa compares their edits, and a group is folded onto one survivor with the others trashed in one transaction, from the Duplicate originals review in the sidebar and in Settings. +**FR-CULL-13 — Evidence, never verdicts. The write-path half.** Every write of a rating, flag, +colour label or trash membership in the shipped code is enumerated by +`tools/traceability/src/verdicts.rs`, which parses the tree with `syn` and holds each site to a +reviewed list with its reason: a key, click or tap, a function writing for callers that are checked +in turn, or a verdict carried from elsewhere (a sidecar or `.xmp` pull, the sync merge, the catalog +mirrored to a file, duplicates consolidation). An unlisted write, or a listed one that is gone, +fails `cargo test -p traceability`. What is not built is the evidence itself: chips for clipping, +focus, burst membership and face counts on the grid cell and in FR-CULL-4's mode, shown as absent +rather than zero, with a filter per signal. Eye state is the one signal shown today, on People's +face cells and as a library filter. + **FR-CULL-6 — Compare and survey.** Absent. No side-by-side view, no synchronised zoom or pan. This is the one of the four with no adjacent machinery at all, and it is also the one that most directly distinguishes culling from browsing.