Files
DarkRoom/docs/traceability.md
T
dtourolle 4f31123b0c Let the user choose which SCRFD finds their faces
faces.md §12.3 measured what the cheapest detector costs: the small
faces in every group shot, and a dog embedded a dozen times. Which
trade is right depends on the machine doing the sweep — a desktop left
overnight and a tablet on a battery want different answers — so the
detector is now a per-device setting, Fast / Balanced / Thorough on
the settings page beside the indexing button, persisted with the rest
of the settings file.

A detector is half of a model id. Every face, marker, shard and
calibration is keyed on faces.model_id precisely so that a model change
is a new id and a re-index rather than a silent change under existing
data, and a detector change is a model change: it decides which faces
exist and where the landmarks that align them land. So each choice
names its own pipeline. 500M keeps the bare "w600k_mbf" every existing
library was written under, so an upgrade disturbs nothing; the others
are qualified. Choosing one restarts coverage from zero under the new
id, the sweep re-detects, confirmed names carry across by box overlap,
and the sync shards are keyed by the same id so a peer on another
setting neither adopts nor pollutes them. The library controller
carries the id into the sync the same way it carries the cache budget,
because the sync starts from places that have no settings in reach.

All three shape-fixed exports ship — APK, Arch, Flatpak — since a
tablet has no other way to obtain the one it was not installed with;
the APK grows by twenty megabytes for the choice.
2026-09-11 22:12:53 +02:00

134 KiB

Requirements traceability matrix

Denominators are parsed from requirements.md at run time, never hardcoded. Coverage is the intersection of tagged and defined IDs over defined IDs, so it cannot exceed 100%.

Summary

Metric Value
Source files scanned 350
TRACES tags found 1377
Requirements defined 187
Requirements covered 134
Coverage 71.7% (134/187)

By type

Type Covered Defined
FR 101 132
NFR 30 49
R 3 6

Orphan tags

A tag naming an ID requirements.md does not define — what renumbering produces, and what a typo produces.

None.

Tagged requirements

ID Tagged in
FR-CAT-1 core/dr-catalog/src/scan.rs:1, core/dr-catalog/src/walk.rs:109, core/dr-catalog/src/walk.rs:162, core/dr-catalog/src/walk.rs:1, core/dr-sync/src/scan.rs:118, core/dr-types/src/lib.rs:203, core/dr-types/src/lib.rs:272, core/dr-types/src/lib.rs:305, platform/dr-plat/src/storage.rs:1, platform/dr-plat/src/storage.rs:216, ui/dr-ui/src/activity.rs:1, ui/dr-ui/src/library.rs:1
FR-CAT-10 core/dr-ingest/src/layout.rs:1, core/dr-ingest/src/lib.rs:1, core/dr-ingest/src/lib.rs:733, core/dr-types/src/settings.rs:297, platform/dr-plat/src/storage.rs:287, platform/dr-plat/src/storage.rs:586, platform/dr-plat/src/volumes.rs:1, platform/dr-plat/src/volumes.rs:62, ui/dr-ui/src/import.rs:1, ui/dr-ui/src/import.rs:336, ui/dr-ui/src/import_ui.rs:1, ui/dr-ui/src/lib.rs:1428, ui/dr-ui/ui/import.slint:5, ui/dr-ui/ui/library.slint:1033, ui/dr-ui/ui/library.slint:1254, ui/dr-ui/ui/library.slint:979
FR-CAT-11 core/dr-catalog/src/dedup.rs:1, core/dr-ingest/src/lib.rs:1, core/dr-ingest/src/lib.rs:392, core/dr-sync/src/upload.rs:40, ui/dr-ui/src/import.rs:1, ui/dr-ui/src/import_ui.rs:1, ui/dr-ui/src/lib.rs:1428, ui/dr-ui/src/library.rs:183, ui/dr-ui/src/library.rs:2819, ui/dr-ui/ui/import.slint:5
FR-CAT-12 core/dr-pipeline/src/sidecar.rs:122
FR-CAT-13 core/dr-xmp/src/lib.rs:1, core/dr-xmp/src/lib.rs:331, core/dr-xmp/src/lib.rs:442, core/dr-xmp/src/lib.rs:535, core/dr-xmp/src/lib.rs:733, core/dr-xmp/src/lib.rs:746, core/dr-xmp/src/read.rs:1, core/dr-xmp/src/write.rs:1, core/dr-xmp/tests/round_trip.rs:1
FR-CAT-15 core/dr-catalog/src/schema.rs:886, core/dr-catalog/src/trash.rs:1, core/dr-sync-nextcloud/src/lib.rs:457, core/dr-sync/src/lib.rs:135, core/dr-sync/src/scan.rs:604, core/dr-sync/src/scan.rs:82, core/dr-thumbs/src/lib.rs:376, core/dr-types/src/place.rs:91, ui/dr-ui/src/collections_ui.rs:1435, ui/dr-ui/src/collections_ui.rs:2341, ui/dr-ui/src/library.rs:183, ui/dr-ui/src/library.rs:200, ui/dr-ui/src/library.rs:249, ui/dr-ui/src/library.rs:4610, ui/dr-ui/src/library.rs:4644, ui/dr-ui/src/library_ui.rs:238, ui/dr-ui/src/library_ui.rs:854, ui/dr-ui/src/trash.rs:1, ui/dr-ui/ui/collections.slint:745
FR-CAT-1a core/dr-catalog/src/walk.rs:1, core/dr-types/src/lib.rs:56, platform/dr-plat/src/storage.rs:1, platform/dr-plat/src/storage.rs:216, platform/dr-plat/src/storage.rs:46
FR-CAT-2 core/dr-catalog/src/lib.rs:1, core/dr-catalog/src/schema.rs:1
FR-CAT-3 core/dr-catalog/src/jobs.rs:1, core/dr-catalog/src/walk.rs:66, core/dr-sync/src/scan.rs:94, core/dr-thumbs/src/codec.rs:1, core/dr-thumbs/src/lib.rs:1, ui/dr-ui/src/derived_sync.rs:1, ui/dr-ui/src/import.rs:463, ui/dr-ui/src/import.rs:488, ui/dr-ui/src/library.rs:3292, ui/dr-ui/src/library.rs:4050, ui/dr-ui/src/library_ui.rs:177, ui/dr-ui/src/library_ui.rs:4253, ui/dr-ui/src/library_ui.rs:5752, ui/dr-ui/ui/app.slint:375, ui/dr-ui/ui/settings.slint:402, ui/dr-ui/ui/settings.slint:73
FR-CAT-4 core/dr-catalog/src/lib.rs:1, core/dr-catalog/src/query.rs:1, core/dr-catalog/src/schema.rs:374, ui/dr-ui/src/library.rs:1, ui/dr-ui/src/library.rs:230, ui/dr-ui/src/library_ui.rs:1
FR-CAT-5 core/dr-catalog/src/keywords.rs:1, core/dr-catalog/src/merge.rs:1, core/dr-catalog/src/rating.rs:1, core/dr-catalog/src/schema.rs:1304, core/dr-catalog/src/schema.rs:801, core/dr-decode/src/lib.rs:285, core/dr-decode/src/lib.rs:404, core/dr-pipeline/src/sidecar.rs:139, ui/dr-ui/src/collections_ui.rs:1731, ui/dr-ui/src/collections_ui.rs:1837, ui/dr-ui/src/collections_ui.rs:1886, ui/dr-ui/src/collections_ui.rs:275, ui/dr-ui/src/collections_ui.rs:484, ui/dr-ui/src/collections_ui.rs:87, ui/dr-ui/src/library.rs:4658, ui/dr-ui/src/library_ui.rs:729, ui/dr-ui/src/library_ui.rs:7711, ui/dr-ui/src/library_ui.rs:7722, ui/dr-ui/src/library_ui.rs:7735, ui/dr-ui/src/library_ui.rs:7750, ui/dr-ui/src/library_ui.rs:7759, ui/dr-ui/ui/app.slint:296, ui/dr-ui/ui/app.slint:561, ui/dr-ui/ui/library.slint:1360, ui/dr-ui/ui/library.slint:1384, ui/dr-ui/ui/library.slint:1437, ui/dr-ui/ui/library.slint:19, ui/dr-ui/ui/library.slint:4201
FR-CAT-6 core/dr-catalog/src/collections.rs:1, core/dr-catalog/src/keywords.rs:1, core/dr-catalog/src/lib.rs:1, core/dr-catalog/src/query.rs:1, core/dr-catalog/src/rating.rs:1, core/dr-catalog/src/schema.rs:801, core/dr-types/src/place.rs:1, core/dr-types/src/selector.rs:1, core/dr-types/src/settings.rs:64, core/dr-types/src/time.rs:67, core/dr-types/src/time.rs:90, ui/dr-ui/src/library.rs:254, ui/dr-ui/src/library.rs:5134, ui/dr-ui/src/library_ui.rs:384, ui/dr-ui/src/library_ui.rs:486, ui/dr-ui/src/library_ui.rs:6474, ui/dr-ui/src/library_ui.rs:6527, ui/dr-ui/src/library_ui.rs:7851, ui/dr-ui/ui/app.slint:308, ui/dr-ui/ui/app.slint:561, ui/dr-ui/ui/app.slint:837, ui/dr-ui/ui/library.slint:111, ui/dr-ui/ui/library.slint:1547, ui/dr-ui/ui/library.slint:4201, ui/dr-ui/ui/settings.slint:165
FR-CAT-7 core/dr-catalog/src/collections.rs:1, core/dr-catalog/src/merge.rs:1, core/dr-catalog/src/sync.rs:1, core/dr-types/src/selector.rs:1, ui/dr-ui/src/collections_ui.rs:1117, ui/dr-ui/src/collections_ui.rs:117, ui/dr-ui/src/collections_ui.rs:1225, ui/dr-ui/src/collections_ui.rs:1704, ui/dr-ui/src/collections_ui.rs:1750, ui/dr-ui/src/collections_ui.rs:1, ui/dr-ui/src/collections_ui.rs:2000, ui/dr-ui/src/collections_ui.rs:2065, ui/dr-ui/src/collections_ui.rs:2125, ui/dr-ui/src/collections_ui.rs:2701, ui/dr-ui/src/collections_ui.rs:2755, ui/dr-ui/src/collections_ui.rs:2801, ui/dr-ui/src/collections_ui.rs:2903, ui/dr-ui/src/collections_ui.rs:2959, ui/dr-ui/src/collections_ui.rs:3120, ui/dr-ui/src/collections_ui.rs:3142, ui/dr-ui/src/collections_ui.rs:3208, ui/dr-ui/src/collections_ui.rs:329, ui/dr-ui/src/collections_ui.rs:3328, ui/dr-ui/src/collections_ui.rs:339, ui/dr-ui/src/collections_ui.rs:362, ui/dr-ui/src/collections_ui.rs:3633, ui/dr-ui/src/collections_ui.rs:383, ui/dr-ui/src/collections_ui.rs:514, ui/dr-ui/src/collections_ui.rs:718, ui/dr-ui/src/derived_sync.rs:1, ui/dr-ui/src/library.rs:4939, ui/dr-ui/src/library.rs:4965, ui/dr-ui/src/library.rs:5020, ui/dr-ui/src/library_ui.rs:2716, ui/dr-ui/src/library_ui.rs:4115, ui/dr-ui/src/library_ui.rs:4866, ui/dr-ui/ui/app.slint:299, ui/dr-ui/ui/app.slint:3071, ui/dr-ui/ui/app.slint:556, ui/dr-ui/ui/app.slint:585, ui/dr-ui/ui/collections.slint:4, ui/dr-ui/ui/collections.slint:587, ui/dr-ui/ui/library.slint:1327, ui/dr-ui/ui/library.slint:2902, ui/dr-ui/ui/library.slint:4179, ui/dr-ui/ui/library.slint:4257, ui/dr-ui/ui/library.slint:998
FR-CAT-8 core/dr-catalog/src/schema.rs:550, core/dr-pipeline/src/coverage.rs:1, core/dr-pipeline/src/graph.rs:587, core/dr-pipeline/src/graph.rs:640, core/dr-pipeline/src/ops/curve.rs:137, core/dr-pipeline/src/ops/curve.rs:656, core/dr-pipeline/src/sidecar.rs:1288, core/dr-pipeline/src/sidecar.rs:2114, core/dr-pipeline/src/sidecar.rs:96, core/dr-pipeline/src/state.rs:1, core/dr-pipeline/src/state.rs:75, core/dr-pipeline/tests/tone_curve.rs:34, core/dr-sync/src/scan.rs:31, core/dr-sync/src/scan.rs:45, core/dr-sync/src/scan.rs:912, ui/dr-ui/src/develop.rs:2131, ui/dr-ui/src/develop.rs:5378, ui/dr-ui/src/develop.rs:5407, ui/dr-ui/src/develop.rs:6522, ui/dr-ui/src/develop.rs:6576, ui/dr-ui/src/develop.rs:6678, ui/dr-ui/src/export.rs:799, ui/dr-ui/src/lib.rs:1205, ui/dr-ui/src/lib.rs:1724, ui/dr-ui/src/lib.rs:2272, ui/dr-ui/src/lib.rs:2410, ui/dr-ui/src/lib.rs:744, ui/dr-ui/src/library.rs:1376, ui/dr-ui/src/library.rs:1411, ui/dr-ui/src/library.rs:2219, ui/dr-ui/src/library.rs:500, ui/dr-ui/src/library.rs:547, ui/dr-ui/src/library.rs:584, ui/dr-ui/src/library.rs:7364, ui/dr-ui/src/library.rs:73, ui/dr-ui/src/library.rs:845, ui/dr-ui/src/library_ui.rs:1281, ui/dr-ui/src/library_ui.rs:6075, ui/dr-ui/src/sidecar_cache.rs:1
FR-CAT-9 core/dr-catalog/src/cache.rs:1, core/dr-catalog/src/scan.rs:1, core/dr-catalog/src/schema.rs:858, core/dr-catalog/src/walk.rs:1022, core/dr-catalog/src/walk.rs:162, core/dr-catalog/src/walk.rs:1, core/dr-catalog/src/walk.rs:435, core/dr-catalog/src/walk.rs:728, core/dr-sync-nextcloud/src/desktop_client.rs:30, core/dr-sync/src/error.rs:113, core/dr-sync/src/reachability.rs:1, core/dr-sync/src/scan.rs:200, core/dr-sync/src/scan.rs:505, core/dr-types/src/lib.rs:122, ui/dr-ui/src/develop.rs:4667, ui/dr-ui/src/develop.rs:4710, ui/dr-ui/src/library.rs:1276, ui/dr-ui/src/library.rs:1329, ui/dr-ui/src/library.rs:1360, ui/dr-ui/src/library.rs:1411, ui/dr-ui/src/library.rs:169, ui/dr-ui/src/library.rs:1727, ui/dr-ui/src/library.rs:2179, ui/dr-ui/src/library.rs:2255, ui/dr-ui/src/library.rs:274, ui/dr-ui/src/library.rs:5242, ui/dr-ui/src/library.rs:584, ui/dr-ui/src/library.rs:829, ui/dr-ui/src/library.rs:845, ui/dr-ui/src/library.rs:899, ui/dr-ui/src/library_ui.rs:1348, ui/dr-ui/src/library_ui.rs:1939, ui/dr-ui/src/library_ui.rs:1983, ui/dr-ui/src/library_ui.rs:1999, ui/dr-ui/src/library_ui.rs:2093, ui/dr-ui/src/library_ui.rs:284, ui/dr-ui/src/library_ui.rs:2956, ui/dr-ui/src/library_ui.rs:317, ui/dr-ui/src/library_ui.rs:325, ui/dr-ui/src/library_ui.rs:3394, ui/dr-ui/src/library_ui.rs:3616, ui/dr-ui/src/library_ui.rs:3894, ui/dr-ui/src/library_ui.rs:3982, ui/dr-ui/src/library_ui.rs:4166, ui/dr-ui/src/library_ui.rs:4280, ui/dr-ui/src/library_ui.rs:539, ui/dr-ui/src/library_ui.rs:602, ui/dr-ui/src/library_ui.rs:6572, ui/dr-ui/src/library_ui.rs:6654, ui/dr-ui/src/presets.rs:468, ui/dr-ui/src/presets.rs:480, ui/dr-ui/src/sidecar_cache.rs:1, ui/dr-ui/tests/export_ignores_the_viewport.rs:1
FR-CULL-1 core/dr-decode/src/preview.rs:121
FR-CULL-10 core/dr-catalog/src/faces.rs:1, core/dr-catalog/src/schema.rs:413, core/dr-catalog/src/schema.rs:591, core/dr-catalog/src/schema.rs:687, core/dr-face/src/assign.rs:1, core/dr-face/src/neighbours.rs:1, core/dr-types/src/settings.rs:117, ui/dr-ui/src/develop.rs:121, ui/dr-ui/src/develop.rs:130, ui/dr-ui/src/develop.rs:196, ui/dr-ui/src/develop.rs:2392, ui/dr-ui/src/develop.rs:715, ui/dr-ui/src/faces.rs:1, ui/dr-ui/src/identity.rs:1, ui/dr-ui/src/identity_ui.rs:1, ui/dr-ui/src/lib.rs:2382, ui/dr-ui/ui/identity.slint:1
FR-CULL-11 core/dr-catalog/src/faces.rs:1, core/dr-catalog/src/schema.rs:687, ui/dr-ui/src/identity.rs:1, ui/dr-ui/src/identity_ui.rs:1, ui/dr-ui/src/library.rs:295, ui/dr-ui/src/library.rs:325, ui/dr-ui/ui/identity.slint:1
FR-CULL-12 core/dr-catalog/src/faces.rs:1, core/dr-catalog/src/schema.rs:413, core/dr-catalog/src/schema.rs:687, ui/dr-ui/src/identity.rs:1, ui/dr-ui/ui/identity.slint:1
FR-CULL-2 core/dr-decode/src/locate.rs:1, core/dr-decode/src/preview.rs:148, ui/dr-ui/src/import.rs:463
FR-CULL-3 core/dr-gpu/src/focus.rs:154, core/dr-gpu/src/focus.rs:186, core/dr-gpu/src/focus.rs:1, core/dr-gpu/src/focus.rs:317, core/dr-gpu/src/raw_histogram.rs:129, core/dr-gpu/src/raw_histogram.rs:1, core/dr-gpu/src/raw_histogram.rs:272, core/dr-gpu/src/raw_histogram.rs:407, core/dr-gpu/src/shaders/focus_peak.wgsl:1, core/dr-gpu/src/shaders/raw_histogram.wgsl:1, ui/dr-ui/src/develop.rs:4094, ui/dr-ui/src/develop.rs:4107, ui/dr-ui/src/develop.rs:4152, ui/dr-ui/src/develop.rs:4163, ui/dr-ui/src/develop.rs:4169, ui/dr-ui/src/develop.rs:4186, ui/dr-ui/src/develop.rs:789, ui/dr-ui/src/develop.rs:809, ui/dr-ui/src/develop.rs:815, ui/dr-ui/src/develop.rs:8432, ui/dr-ui/src/develop.rs:8496, ui/dr-ui/src/develop.rs:8519, ui/dr-ui/src/histogram.rs:1, ui/dr-ui/src/histogram.rs:208, ui/dr-ui/src/histogram.rs:228, ui/dr-ui/src/histogram.rs:272, ui/dr-ui/src/histogram.rs:544, ui/dr-ui/src/histogram.rs:565, ui/dr-ui/src/histogram.rs:593, ui/dr-ui/src/histogram.rs:621, ui/dr-ui/src/histogram.rs:658, ui/dr-ui/src/lib.rs:1763, ui/dr-ui/src/lib.rs:1860, ui/dr-ui/src/lib.rs:1969, ui/dr-ui/src/lib.rs:2010, ui/dr-ui/src/lib.rs:3419, ui/dr-ui/src/lib.rs:429, ui/dr-ui/src/peaking.rs:1, ui/dr-ui/ui/app.slint:1908, ui/dr-ui/ui/app.slint:2893, ui/dr-ui/ui/app.slint:79, ui/dr-ui/ui/peaking.slint:1, ui/dr-ui/ui/peaking.slint:25, ui/dr-ui/ui/peaking.slint:56, ui/dr-ui/ui/peaking.slint:91
FR-CULL-4 core/dr-catalog/src/rating.rs:1, core/dr-pipeline/src/sidecar.rs:139, core/dr-xmp/src/lib.rs:442, ui/dr-ui/src/library.rs:254, ui/dr-ui/src/library.rs:500
FR-CULL-5 core/dr-catalog/src/bursts.rs:1, core/dr-catalog/src/schema.rs:456, ui/dr-ui/src/bursts.rs:1, ui/dr-ui/src/library.rs:210, ui/dr-ui/src/library.rs:6023
FR-CULL-8 core/dr-catalog/src/face_shard.rs:1, core/dr-catalog/src/faces.rs:1, core/dr-catalog/src/schema.rs:524, core/dr-catalog/src/schema.rs:646, core/dr-catalog/src/schema.rs:687, core/dr-face/src/align.rs:291, core/dr-types/src/settings.rs:164, ui/dr-ui/examples/face_detectors.rs:1, ui/dr-ui/examples/face_native.rs:1, ui/dr-ui/src/derived_sync.rs:116, ui/dr-ui/src/faces.rs:1, ui/dr-ui/src/faces.rs:331, ui/dr-ui/src/faces.rs:347, ui/dr-ui/src/faces.rs:454, ui/dr-ui/src/identity_ui.rs:548, ui/dr-ui/src/lib.rs:1380, ui/dr-ui/src/lib.rs:3594, ui/dr-ui/src/library.rs:3293, ui/dr-ui/src/library.rs:3451, ui/dr-ui/src/library.rs:3698, ui/dr-ui/src/library.rs:3864, ui/dr-ui/src/library.rs:3900, ui/dr-ui/src/library.rs:3980, ui/dr-ui/src/library_ui.rs:394, ui/dr-ui/src/library_ui.rs:474, ui/dr-ui/src/settings_ui.rs:191, ui/dr-ui/src/settings_ui.rs:507, ui/dr-ui/ui/app.slint:882, ui/dr-ui/ui/settings.slint:434, ui/dr-ui/ui/settings.slint:82, ui/dr-ui/ui/settings.slint:94
FR-CULL-9 core/dr-catalog/src/faces.rs:1, core/dr-catalog/src/schema.rs:591, core/dr-catalog/src/schema.rs:687, core/dr-face/src/assign.rs:1, core/dr-face/src/neighbours.rs:1, core/dr-types/src/settings.rs:117, ui/dr-ui/src/faces.rs:1, ui/dr-ui/src/faces.rs:454, ui/dr-ui/src/identity_ui.rs:1, ui/dr-ui/src/library.rs:3397, ui/dr-ui/src/library.rs:3980, ui/dr-ui/ui/identity.slint:314
FR-DEV-1 core/dr-pipeline/src/graph.rs:1, core/dr-pipeline/src/sidecar.rs:1
FR-DEV-10 core/dr-gpu/src/mask.rs:1015, core/dr-gpu/src/mask.rs:1239, core/dr-gpu/src/mask.rs:1471, core/dr-gpu/src/mask.rs:421, core/dr-gpu/src/mask.rs:463, core/dr-gpu/src/mask.rs:58, core/dr-gpu/src/mask.rs:60, core/dr-gpu/src/mask.rs:822, core/dr-gpu/src/mask.rs:85, core/dr-gpu/src/mask.rs:901, core/dr-gpu/src/shaders/mask.wgsl:117, core/dr-gpu/src/shaders/mask.wgsl:59, core/dr-gpu/tests/range_masks.rs:119, core/dr-gpu/tests/range_masks.rs:147, core/dr-gpu/tests/range_masks.rs:175, core/dr-gpu/tests/range_masks.rs:1, core/dr-gpu/tests/range_masks.rs:94, core/dr-pipeline/src/mask.rs:125, core/dr-pipeline/src/mask.rs:2812, core/dr-pipeline/src/mask.rs:2825, core/dr-pipeline/src/mask.rs:2844, core/dr-pipeline/src/mask.rs:2858, core/dr-pipeline/src/mask.rs:2868, core/dr-pipeline/src/mask.rs:709, core/dr-pipeline/src/mask.rs:748, core/dr-pipeline/src/mask.rs:808, core/dr-pipeline/src/mask.rs:827, core/dr-pipeline/src/mask.rs:851, core/dr-pipeline/src/mask.rs:863, core/dr-pipeline/src/mask.rs:875, core/dr-pipeline/src/sidecar.rs:1224, core/dr-pipeline/src/sidecar.rs:1403, core/dr-pipeline/src/sidecar.rs:1490, core/dr-pipeline/src/sidecar.rs:1591, core/dr-pipeline/src/sidecar.rs:1798, core/dr-pipeline/tests/mask_sidecar.rs:1157, core/dr-pipeline/tests/mask_sidecar.rs:1186, core/dr-pipeline/tests/mask_sidecar.rs:1204, core/dr-pipeline/tests/mask_sidecar.rs:1234, ui/dr-ui/src/develop.rs:2294, ui/dr-ui/src/develop.rs:3614, ui/dr-ui/src/develop.rs:3641, ui/dr-ui/src/develop.rs:3673, ui/dr-ui/src/develop.rs:3697, ui/dr-ui/src/develop.rs:3703, ui/dr-ui/src/develop.rs:3710, ui/dr-ui/src/develop.rs:3730, ui/dr-ui/src/labels.rs:60, ui/dr-ui/src/masks_ui.rs:1102, ui/dr-ui/src/masks_ui.rs:719
FR-DEV-12 core/dr-pipeline/ops/colour_grading.yaml:1
FR-DEV-18 core/dr-pipeline/src/ops/dehaze.rs:1, core/dr-pipeline/src/ops/dehaze.rs:221
FR-DEV-19a ui/dr-ui/src/develop.rs:2897, ui/dr-ui/src/develop.rs:2958, ui/dr-ui/src/develop.rs:859, ui/dr-ui/src/labels.rs:70, ui/dr-ui/src/masks_ui.rs:1400, ui/dr-ui/src/masks_ui.rs:270, ui/dr-ui/src/masks_ui.rs:988, ui/dr-ui/ui/masks.slint:148, ui/dr-ui/ui/masks.slint:173, ui/dr-ui/ui/masks.slint:332, ui/dr-ui/ui/masks.slint:730, ui/dr-ui/ui/masks.slint:809
FR-DEV-19b ui/dr-ui/src/develop.rs:3039, ui/dr-ui/src/develop.rs:3582, ui/dr-ui/src/develop.rs:868, ui/dr-ui/src/develop.rs:875, ui/dr-ui/src/labels.rs:64, ui/dr-ui/src/masks_ui.rs:1074, ui/dr-ui/src/masks_ui.rs:1293, ui/dr-ui/src/masks_ui.rs:1321, ui/dr-ui/src/masks_ui.rs:1664, ui/dr-ui/src/masks_ui.rs:829, ui/dr-ui/ui/app.slint:2140, ui/dr-ui/ui/app.slint:992, ui/dr-ui/ui/masks.slint:1078, ui/dr-ui/ui/masks.slint:421, ui/dr-ui/ui/masks.slint:734, ui/dr-ui/ui/masks.slint:802, ui/dr-ui/ui/masks.slint:816
FR-DEV-19c core/dr-gpu/src/mask.rs:715, core/dr-gpu/tests/local_adjustments.rs:830, core/dr-gpu/tests/local_adjustments.rs:887, core/dr-gpu/tests/local_adjustments.rs:922, core/dr-gpu/tests/local_adjustments.rs:967, core/dr-pipeline/src/graph.rs:852, core/dr-pipeline/src/mask.rs:1763, core/dr-pipeline/src/mask.rs:1789, core/dr-pipeline/src/mask.rs:1804, core/dr-pipeline/src/mask.rs:1924, core/dr-pipeline/src/mask.rs:1972, core/dr-pipeline/src/mask.rs:2116, core/dr-pipeline/src/mask.rs:2353, core/dr-pipeline/src/operation.rs:1600, core/dr-pipeline/src/operation.rs:558, core/dr-pipeline/src/operation.rs:741, ui/dr-ui/src/develop.rs:2011, ui/dr-ui/src/develop.rs:2271, ui/dr-ui/src/develop.rs:2518, ui/dr-ui/src/develop.rs:2642, ui/dr-ui/src/develop.rs:4016, ui/dr-ui/src/develop.rs:6693, ui/dr-ui/src/develop.rs:6729, ui/dr-ui/src/develop.rs:686, ui/dr-ui/src/develop.rs:695, ui/dr-ui/src/develop.rs:894, ui/dr-ui/src/develop.rs:903, ui/dr-ui/src/masks_ui.rs:1293, ui/dr-ui/src/masks_ui.rs:152, ui/dr-ui/src/masks_ui.rs:1664, ui/dr-ui/src/masks_ui.rs:290, ui/dr-ui/src/masks_ui.rs:316, ui/dr-ui/src/masks_ui.rs:633, ui/dr-ui/src/masks_ui.rs:911, ui/dr-ui/src/masks_ui.rs:939, ui/dr-ui/ui/icons.slint:339, ui/dr-ui/ui/masks.slint:1043, ui/dr-ui/ui/masks.slint:180, ui/dr-ui/ui/masks.slint:287, ui/dr-ui/ui/masks.slint:485, ui/dr-ui/ui/masks.slint:70, ui/dr-ui/ui/masks.slint:742, ui/dr-ui/ui/masks.slint:804, ui/dr-ui/ui/masks.slint:890
FR-DEV-2 core/dr-pipeline/src/operation.rs:403
FR-DEV-3 core/dr-gpu/src/adjust.rs:2217, core/dr-gpu/src/adjust.rs:651, core/dr-gpu/src/adjust.rs:770, core/dr-gpu/src/adjust.rs:84, core/dr-gpu/tests/tone_curve.rs:1, core/dr-pipeline/src/coverage.rs:122, core/dr-pipeline/src/coverage.rs:1, core/dr-pipeline/src/detail.rs:434, core/dr-pipeline/src/detail.rs:524, core/dr-pipeline/src/framing.rs:177, core/dr-pipeline/src/framing.rs:234, core/dr-pipeline/src/framing.rs:314, core/dr-pipeline/src/framing.rs:498, core/dr-pipeline/src/framing.rs:753, core/dr-pipeline/src/graph.rs:1305, core/dr-pipeline/src/graph.rs:1336, core/dr-pipeline/src/graph.rs:1359, core/dr-pipeline/src/graph.rs:1397, core/dr-pipeline/src/graph.rs:1428, core/dr-pipeline/src/graph.rs:225, core/dr-pipeline/src/graph.rs:306, core/dr-pipeline/src/graph.rs:344, core/dr-pipeline/src/graph.rs:350, core/dr-pipeline/src/graph.rs:911, core/dr-pipeline/src/lens.rs:93, core/dr-pipeline/src/mask.rs:205, core/dr-pipeline/src/neutral.rs:1, core/dr-pipeline/src/neutral.rs:300, core/dr-pipeline/src/neutral.rs:316, core/dr-pipeline/src/neutral.rs:332, core/dr-pipeline/src/neutral.rs:354, core/dr-pipeline/src/neutral.rs:79, core/dr-pipeline/src/operation.rs:330, core/dr-pipeline/src/operation.rs:535, core/dr-pipeline/src/ops/capture_sharpen.rs:1, core/dr-pipeline/src/ops/capture_sharpen.rs:210, core/dr-pipeline/src/ops/curve.rs:100, core/dr-pipeline/src/ops/curve.rs:1, core/dr-pipeline/src/ops/curve.rs:219, core/dr-pipeline/src/ops/curve.rs:635, core/dr-pipeline/src/ops/local_contrast.rs:1, core/dr-pipeline/src/ops/noise_reduction.rs:1, core/dr-pipeline/src/ops/noise_reduction.rs:273, core/dr-pipeline/src/preset.rs:751, core/dr-pipeline/src/sidecar.rs:1288, core/dr-pipeline/src/sidecar.rs:160, core/dr-pipeline/src/sidecar.rs:2114, core/dr-pipeline/src/sidecar.rs:2174, core/dr-pipeline/tests/tone_curve.rs:1, core/dr-segment/src/refine.rs:937, ui/dr-ui/src/develop.rs:103, ui/dr-ui/src/develop.rs:1294, ui/dr-ui/src/develop.rs:1383, ui/dr-ui/src/develop.rs:1419, ui/dr-ui/src/develop.rs:165, ui/dr-ui/src/develop.rs:1690, ui/dr-ui/src/develop.rs:2131, ui/dr-ui/src/develop.rs:2374, ui/dr-ui/src/develop.rs:2392, ui/dr-ui/src/develop.rs:2406, ui/dr-ui/src/develop.rs:2428, ui/dr-ui/src/develop.rs:2728, ui/dr-ui/src/develop.rs:2826, ui/dr-ui/src/develop.rs:328, ui/dr-ui/src/develop.rs:365, ui/dr-ui/src/develop.rs:4357, ui/dr-ui/src/develop.rs:4513, ui/dr-ui/src/develop.rs:4573, ui/dr-ui/src/develop.rs:4978, ui/dr-ui/src/develop.rs:5008, ui/dr-ui/src/develop.rs:5074, ui/dr-ui/src/develop.rs:5088, ui/dr-ui/src/develop.rs:5290, ui/dr-ui/src/develop.rs:5378, ui/dr-ui/src/develop.rs:588, ui/dr-ui/src/develop.rs:6168, ui/dr-ui/src/develop.rs:6241, ui/dr-ui/src/develop.rs:6434, ui/dr-ui/src/develop.rs:649, ui/dr-ui/src/develop.rs:6522, ui/dr-ui/src/develop.rs:6678, ui/dr-ui/src/develop.rs:6834, ui/dr-ui/src/develop.rs:6878, ui/dr-ui/src/develop.rs:6928, ui/dr-ui/src/develop.rs:7353, ui/dr-ui/src/develop.rs:8081, ui/dr-ui/src/develop.rs:829, ui/dr-ui/src/develop.rs:922, ui/dr-ui/src/develop.rs:951, ui/dr-ui/src/labels.rs:32, ui/dr-ui/src/lib.rs:1841, ui/dr-ui/src/lib.rs:2707, ui/dr-ui/src/lib.rs:2914, ui/dr-ui/src/lib.rs:2973, ui/dr-ui/src/lib.rs:3178, ui/dr-ui/src/lib.rs:3242, ui/dr-ui/src/lib.rs:3296, ui/dr-ui/src/lib.rs:412, ui/dr-ui/src/lib.rs:435, ui/dr-ui/src/lib.rs:541, ui/dr-ui/src/lib.rs:565, ui/dr-ui/src/library.rs:547, ui/dr-ui/src/masks_ui.rs:1423, ui/dr-ui/src/masks_ui.rs:1537, ui/dr-ui/src/masks_ui.rs:338, ui/dr-ui/src/masks_ui.rs:44, ui/dr-ui/src/presets.rs:409, ui/dr-ui/src/segmentation.rs:116, ui/dr-ui/src/segmentation.rs:352, ui/dr-ui/src/segmentation.rs:368, ui/dr-ui/src/segmentation.rs:498, ui/dr-ui/src/segmentation.rs:526, ui/dr-ui/ui/adjust.slint:1007, ui/dr-ui/ui/adjust.slint:126, ui/dr-ui/ui/adjust.slint:1484, ui/dr-ui/ui/adjust.slint:171, ui/dr-ui/ui/adjust.slint:46, ui/dr-ui/ui/adjust.slint:624, ui/dr-ui/ui/adjust.slint:650, ui/dr-ui/ui/adjust.slint:669, ui/dr-ui/ui/adjust.slint:790, ui/dr-ui/ui/adjust.slint:947, ui/dr-ui/ui/app.slint:138, ui/dr-ui/ui/app.slint:2205, ui/dr-ui/ui/app.slint:2265, ui/dr-ui/ui/develop.slint:223, ui/dr-ui/ui/masks.slint:1167, ui/dr-ui/ui/masks.slint:713, ui/dr-ui/ui/masks.slint:772
FR-DEV-3a core/dr-pipeline/ops/exposure.yaml:1, core/dr-pipeline/src/descriptor.rs:212, core/dr-pipeline/src/descriptor.rs:252, core/dr-pipeline/src/descriptor.rs:276, core/dr-pipeline/src/descriptor.rs:331, core/dr-pipeline/src/framing.rs:395, core/dr-pipeline/src/graph.rs:25, core/dr-pipeline/src/graph.rs:393, core/dr-pipeline/src/graph.rs:47, core/dr-pipeline/src/graph.rs:534, core/dr-pipeline/src/graph.rs:60, core/dr-pipeline/src/mask.rs:1666, core/dr-pipeline/src/neutral.rs:1, core/dr-pipeline/src/neutral.rs:372, core/dr-pipeline/src/operation.rs:232, core/dr-pipeline/src/operation.rs:365, core/dr-pipeline/src/ops/curve.rs:319, ui/dr-ui/src/develop.rs:1306, ui/dr-ui/src/develop.rs:1585, ui/dr-ui/src/develop.rs:7353, ui/dr-ui/src/develop.rs:7551, ui/dr-ui/src/lib.rs:866, ui/dr-ui/tests/ui_names_no_operation.rs:1, ui/dr-ui/ui/app.slint:2449
FR-DEV-3b core/dr-pipeline/src/descriptor.rs:276, core/dr-pipeline/src/framing.rs:395, core/dr-pipeline/src/graph.rs:60, core/dr-pipeline/src/operation.rs:365, ui/dr-ui/ui/app.slint:2638
FR-DEV-3c core/dr-pipeline/ops/exposure.yaml:1, core/dr-pipeline/src/graph.rs:393, core/dr-pipeline/src/graph.rs:47, core/dr-pipeline/src/mask.rs:1666, core/dr-pipeline/src/preset.rs:751, ui/dr-ui/src/develop.rs:7602
FR-DEV-3d core/dr-gpu/src/adjust.rs:104, core/dr-gpu/src/adjust.rs:1079, core/dr-gpu/src/adjust.rs:770, core/dr-gpu/src/adjust.rs:84, core/dr-gpu/src/adjust.rs:986, core/dr-gpu/tests/capture_sharpen.rs:434, core/dr-gpu/tests/detail_stage.rs:242, core/dr-gpu/tests/local_contrast.rs:558, core/dr-gpu/tests/noise_reduction.rs:556, core/dr-pipeline/src/framing.rs:314, core/dr-pipeline/src/graph.rs:950, core/dr-pipeline/src/operation.rs:32, core/dr-pipeline/src/operation.rs:403, core/dr-pipeline/src/operation.rs:53, core/dr-pipeline/src/operation.rs:71
FR-DEV-3e core/dr-decode/src/base_curve.rs:145, core/dr-decode/src/base_curve.rs:158, core/dr-decode/src/base_curve.rs:1, core/dr-decode/src/base_curve.rs:267, core/dr-decode/src/base_curve.rs:347, core/dr-decode/src/base_curve.rs:55, core/dr-decode/src/lib.rs:121, core/dr-decode/src/lib.rs:708, core/dr-decode/src/lib.rs:748, core/dr-decode/src/profile.rs:102, core/dr-decode/src/profile.rs:151, core/dr-decode/src/profile.rs:1, core/dr-decode/src/profile.rs:235, core/dr-decode/src/profile.rs:286, core/dr-decode/src/profile.rs:343, core/dr-decode/src/profile.rs:458, core/dr-decode/src/profile.rs:492, core/dr-decode/src/profile.rs:630, core/dr-gpu/src/adjust.rs:37, core/dr-gpu/src/adjust.rs:967, core/dr-gpu/src/demosaic.rs:121, core/dr-gpu/src/demosaic.rs:86, core/dr-gpu/tests/base_curve.rs:1, core/dr-pipeline/src/operation.rs:1837, core/dr-pipeline/src/operation.rs:1918, core/dr-pipeline/src/operation.rs:1943, core/dr-pipeline/src/operation.rs:1958, core/dr-pipeline/src/operation.rs:1982, core/dr-pipeline/src/operation.rs:310, core/dr-pipeline/src/operation.rs:454, core/dr-pipeline/src/operation.rs:464, core/dr-pipeline/src/operation.rs:647
FR-DEV-3f core/dr-film/src/bake.rs:271, core/dr-film/src/bake.rs:62, core/dr-film/src/boolean_grain.rs:1, core/dr-film/src/boolean_grain.rs:78, core/dr-film/src/grain.rs:140, core/dr-film/src/grain.rs:1, core/dr-film/src/grain.rs:302, core/dr-film/src/grain.rs:79, core/dr-film/src/lib.rs:160, core/dr-film/src/lib.rs:1, core/dr-film/src/profile.rs:100, core/dr-film/src/profile.rs:142, core/dr-film/src/profile.rs:182, core/dr-film/src/profile.rs:259, core/dr-film/src/profile.rs:502, core/dr-film/src/profile.rs:73, core/dr-gpu/src/adjust.rs:139, core/dr-gpu/src/adjust.rs:196, core/dr-gpu/src/adjust.rs:357, core/dr-gpu/src/adjust.rs:483, core/dr-gpu/src/adjust.rs:77, core/dr-gpu/tests/film_sim.rs:191, core/dr-gpu/tests/film_sim.rs:1, core/dr-pipeline/src/graph.rs:103, core/dr-pipeline/src/graph.rs:168, core/dr-pipeline/src/graph.rs:566, core/dr-pipeline/src/operation.rs:1165, core/dr-pipeline/src/operation.rs:1193, core/dr-pipeline/src/operation.rs:1239, core/dr-pipeline/src/operation.rs:1837, core/dr-pipeline/src/operation.rs:296, core/dr-pipeline/src/operation.rs:310, core/dr-pipeline/src/ops/film_sim.rs:102, core/dr-pipeline/src/ops/film_sim.rs:139, core/dr-pipeline/src/ops/film_sim.rs:163, core/dr-pipeline/src/ops/film_sim.rs:1, core/dr-pipeline/src/ops/film_sim.rs:341, core/dr-pipeline/src/ops/film_sim.rs:43, core/dr-pipeline/src/ops/film_sim.rs:97, core/dr-pipeline/src/sidecar.rs:115, core/dr-pipeline/src/sidecar.rs:171, core/dr-pipeline/src/sidecar.rs:2460, core/dr-pipeline/src/sidecar.rs:2536, core/dr-pipeline/src/sidecar.rs:537, core/dr-pipeline/src/sidecar.rs:781, core/dr-pipeline/src/sidecar.rs:953, core/dr-pipeline/src/state.rs:100, core/dr-pipeline/src/state.rs:115, core/dr-pipeline/src/state.rs:60, ui/dr-ui/src/develop.rs:1146, ui/dr-ui/src/develop.rs:4725, ui/dr-ui/src/develop.rs:4742, ui/dr-ui/src/develop.rs:4754, ui/dr-ui/src/develop.rs:4792, ui/dr-ui/src/develop.rs:4801, ui/dr-ui/src/develop.rs:4904, ui/dr-ui/src/develop.rs:5415, ui/dr-ui/src/develop.rs:5430, ui/dr-ui/src/develop.rs:8093, ui/dr-ui/src/lib.rs:2679, ui/dr-ui/src/lib.rs:792, ui/dr-ui/src/lib.rs:857, ui/dr-ui/src/library.rs:538, ui/dr-ui/src/library.rs:800, ui/dr-ui/src/presets.rs:417, ui/dr-ui/ui/adjust.slint:1028, ui/dr-ui/ui/adjust.slint:1038, ui/dr-ui/ui/adjust.slint:1256
FR-DEV-3h core/dr-decode/src/lib.rs:404, core/dr-decode/src/preview.rs:29, core/dr-pipeline/src/framing.rs:1067, core/dr-pipeline/src/framing.rs:328, core/dr-pipeline/src/framing.rs:498, core/dr-types/src/lib.rs:339, core/dr-types/src/lib.rs:447, core/dr-types/src/lib.rs:459, core/dr-types/src/lib.rs:475, ui/dr-ui/src/develop.rs:140, ui/dr-ui/src/develop.rs:2745, ui/dr-ui/src/segmentation.rs:498
FR-DEV-4 core/dr-gpu/src/adjust.rs:770, core/dr-gpu/src/lib.rs:351, ui/dr-ui/ui/crop.slint:1
FR-DEV-5 core/dr-pipeline/src/graph.rs:1397, core/dr-pipeline/src/graph.rs:587, core/dr-pipeline/src/graph.rs:640, core/dr-pipeline/src/history.rs:102, core/dr-pipeline/src/history.rs:110, core/dr-pipeline/src/history.rs:127, core/dr-pipeline/src/history.rs:184, core/dr-pipeline/src/history.rs:1, core/dr-pipeline/src/history.rs:214, core/dr-pipeline/src/history.rs:234, core/dr-pipeline/src/history.rs:293, core/dr-pipeline/src/history.rs:479, core/dr-pipeline/src/history.rs:489, core/dr-pipeline/src/history.rs:499, core/dr-pipeline/src/history.rs:526, core/dr-pipeline/src/history.rs:86, core/dr-pipeline/src/state.rs:1, core/dr-pipeline/src/state.rs:75, ui/dr-ui/src/develop.rs:4357, ui/dr-ui/src/develop.rs:4754, ui/dr-ui/src/develop.rs:5430, ui/dr-ui/src/develop.rs:5460, ui/dr-ui/src/develop.rs:5473, ui/dr-ui/src/develop.rs:5485, ui/dr-ui/src/develop.rs:5501, ui/dr-ui/src/develop.rs:5533, ui/dr-ui/src/develop.rs:5537, ui/dr-ui/src/develop.rs:5556, ui/dr-ui/src/develop.rs:5572, ui/dr-ui/src/develop.rs:6414, ui/dr-ui/src/develop.rs:6434, ui/dr-ui/src/develop.rs:6465, ui/dr-ui/src/develop.rs:772, ui/dr-ui/src/labels.rs:12, ui/dr-ui/src/labels.rs:272, ui/dr-ui/src/lib.rs:1757, ui/dr-ui/src/lib.rs:1819, ui/dr-ui/src/lib.rs:1828, ui/dr-ui/src/lib.rs:2947, ui/dr-ui/ui/history.slint:1, ui/dr-ui/ui/history.slint:92
FR-DEV-6 core/dr-pipeline/src/preset.rs:1, core/dr-pipeline/src/preset.rs:390, core/dr-pipeline/src/preset.rs:423, core/dr-pipeline/src/starter.rs:1, core/dr-preset-xmp/src/lib.rs:1, core/dr-types/src/settings.rs:363, ui/dr-ui/src/develop.rs:5372, ui/dr-ui/src/develop.rs:5393, ui/dr-ui/src/lib.rs:1724, ui/dr-ui/src/lib.rs:2480, ui/dr-ui/src/lib.rs:2509, ui/dr-ui/src/library.rs:2219, ui/dr-ui/src/library.rs:500, ui/dr-ui/src/library.rs:528, ui/dr-ui/src/library_ui.rs:3216, ui/dr-ui/src/library_ui.rs:3616, ui/dr-ui/src/library_ui.rs:570, ui/dr-ui/src/preset_store.rs:1, ui/dr-ui/src/presets.rs:1, ui/dr-ui/src/presets.rs:680, ui/dr-ui/src/presets.rs:714, ui/dr-ui/ui/adjust.slint:853, ui/dr-ui/ui/adjust.slint:878, ui/dr-ui/ui/adjust.slint:889, ui/dr-ui/ui/adjust.slint:932, ui/dr-ui/ui/app.slint:1590, ui/dr-ui/ui/app.slint:2418, ui/dr-ui/ui/app.slint:3031, ui/dr-ui/ui/app.slint:747, ui/dr-ui/ui/app.slint:758, ui/dr-ui/ui/library.slint:1574, ui/dr-ui/ui/library.slint:1580, ui/dr-ui/ui/library.slint:4217, ui/dr-ui/ui/library.slint:4232, ui/dr-ui/ui/presets.slint:105, ui/dr-ui/ui/presets.slint:113, ui/dr-ui/ui/presets.slint:19, ui/dr-ui/ui/presets.slint:276, ui/dr-ui/ui/presets.slint:297, ui/dr-ui/ui/presets.slint:5, ui/dr-ui/ui/presets.slint:60, ui/dr-ui/ui/settings.slint:108, ui/dr-ui/ui/settings.slint:621
FR-DEV-7 core/dr-pipeline/src/history.rs:214, core/dr-pipeline/src/history.rs:499, core/dr-pipeline/src/history.rs:526, ui/dr-ui/src/develop.rs:4291, ui/dr-ui/src/develop.rs:4332, ui/dr-ui/src/develop.rs:5501, ui/dr-ui/src/develop.rs:5533, ui/dr-ui/src/develop.rs:6465, ui/dr-ui/src/lib.rs:1828, ui/dr-ui/src/lib.rs:1890, ui/dr-ui/src/lib.rs:2886, ui/dr-ui/src/lib.rs:2947, ui/dr-ui/src/lib.rs:404, ui/dr-ui/ui/app.slint:120, ui/dr-ui/ui/app.slint:2325, ui/dr-ui/ui/app.slint:2340, ui/dr-ui/ui/app.slint:2638, ui/dr-ui/ui/history.slint:1, ui/dr-ui/ui/widgets.slint:71
FR-DEV-8 core/dr-gpu/src/detail.rs:405, core/dr-gpu/src/detail.rs:623, core/dr-gpu/tests/detail_instances.rs:1, core/dr-gpu/tests/spot_removal.rs:1, core/dr-pipeline/src/detail.rs:410, core/dr-pipeline/src/detail.rs:434, core/dr-pipeline/src/detail.rs:469, core/dr-pipeline/src/detail.rs:555, core/dr-pipeline/src/graph.rs:1049, core/dr-pipeline/src/graph.rs:115, core/dr-pipeline/src/graph.rs:247, core/dr-pipeline/src/operation.rs:330, core/dr-pipeline/src/operation.rs:601, core/dr-pipeline/src/sidecar.rs:1023, core/dr-pipeline/src/sidecar.rs:1053, core/dr-pipeline/src/sidecar.rs:187, core/dr-pipeline/src/sidecar.rs:356, core/dr-pipeline/src/sidecar.rs:793, core/dr-pipeline/src/sidecar.rs:969, core/dr-pipeline/src/spot.rs:115, core/dr-pipeline/src/spot.rs:151, core/dr-pipeline/src/spot.rs:1, core/dr-pipeline/src/spot.rs:207, core/dr-pipeline/src/spot.rs:387, core/dr-pipeline/src/spot.rs:472, core/dr-pipeline/src/spot.rs:582, core/dr-pipeline/src/spot.rs:673, core/dr-pipeline/src/state.rs:103, core/dr-pipeline/tests/spot_sidecar.rs:1, core/dr-pipeline/tests/spots.rs:1, ui/dr-ui/src/develop.rs:3157, ui/dr-ui/src/develop.rs:3195, ui/dr-ui/src/develop.rs:3260, ui/dr-ui/src/develop.rs:3343, ui/dr-ui/src/develop.rs:3357, ui/dr-ui/src/develop.rs:883, ui/dr-ui/src/labels.rs:76, ui/dr-ui/src/lib.rs:1848, ui/dr-ui/src/lib.rs:3098, ui/dr-ui/src/lib.rs:440, ui/dr-ui/src/spots_ui.rs:19, ui/dr-ui/src/spots_ui.rs:1, ui/dr-ui/src/spots_ui.rs:265, ui/dr-ui/ui/app.slint:2181, ui/dr-ui/ui/app.slint:2383, ui/dr-ui/ui/app.slint:2937, ui/dr-ui/ui/icons.slint:366, ui/dr-ui/ui/session.slint:102, ui/dr-ui/ui/session.slint:52, ui/dr-ui/ui/spots.slint:191, ui/dr-ui/ui/spots.slint:49, ui/dr-ui/ui/spots.slint:6, ui/dr-ui/ui/spots.slint:91
FR-DSP-1 core/dr-gpu/src/adjust.rs:2140, core/dr-gpu/src/adjust.rs:2217, core/dr-gpu/src/adjust.rs:2302, core/dr-gpu/src/adjust.rs:54, core/dr-gpu/src/adjust.rs:770, core/dr-gpu/src/lib.rs:172, core/dr-gpu/src/lib.rs:192, core/dr-gpu/src/lib.rs:70, core/dr-gpu/src/lib.rs:93, core/dr-gpu/tests/capture_sharpen.rs:200, core/dr-gpu/tests/detail_stage.rs:328, core/dr-gpu/tests/local_contrast.rs:264, core/dr-gpu/tests/noise_reduction.rs:378, core/dr-pipeline/src/detail.rs:136, core/dr-pipeline/src/detail.rs:524, core/dr-pipeline/src/graph.rs:881, core/dr-pipeline/src/graph.rs:911, core/dr-pipeline/src/ops/capture_sharpen.rs:1, core/dr-pipeline/src/ops/capture_sharpen.rs:659, core/dr-pipeline/src/ops/dehaze.rs:1, core/dr-pipeline/src/ops/dehaze.rs:592, core/dr-pipeline/src/ops/local_contrast.rs:1, core/dr-pipeline/src/ops/local_contrast.rs:971, core/dr-pipeline/src/ops/noise_reduction.rs:700, core/dr-pipeline/src/spot.rs:673, ui/dr-ui/src/develop.rs:3978, ui/dr-ui/src/develop.rs:5240, ui/dr-ui/src/develop.rs:5827, ui/dr-ui/src/develop.rs:7052, ui/dr-ui/src/develop.rs:7086, ui/dr-ui/src/lib.rs:1013, ui/dr-ui/src/lib.rs:1072, ui/dr-ui/src/lib.rs:93
FR-DSP-3 core/dr-gpu/tests/frame_budget.rs:101, core/dr-gpu/tests/local_contrast.rs:329, core/dr-pipeline/src/ops/local_contrast.rs:447
FR-DSP-5 core/dr-gpu/tests/frame_budget.rs:101, core/dr-gpu/tests/zoom_resolution.rs:135, core/dr-gpu/tests/zoom_resolution.rs:166, core/dr-gpu/tests/zoom_resolution.rs:1, core/dr-gpu/tests/zoom_resolution.rs:216
FR-DSP-6 core/dr-pipeline/src/operation.rs:497, core/dr-types/src/colour.rs:1, ui/dr-ui/src/develop.rs:4008, ui/dr-ui/src/develop.rs:8665, ui/dr-ui/src/lib.rs:1804, ui/dr-ui/src/lib.rs:3489
FR-DSP-7 core/dr-gpu/src/histogram.rs:147, core/dr-gpu/src/histogram.rs:1, core/dr-gpu/src/histogram.rs:281, core/dr-gpu/src/histogram.rs:50, core/dr-gpu/src/shaders/histogram.wgsl:1, ui/dr-ui/src/develop.rs:4062, ui/dr-ui/src/develop.rs:783, ui/dr-ui/src/develop.rs:8339, ui/dr-ui/src/develop.rs:8371, ui/dr-ui/src/histogram.rs:1, ui/dr-ui/src/lib.rs:1924, ui/dr-ui/src/lib.rs:417, ui/dr-ui/ui/histogram.slint:184, ui/dr-ui/ui/histogram.slint:1
FR-DSP-8 platform/dr-plat/src/display.rs:1, platform/dr-plat/src/display/icc.rs:1, platform/dr-plat/src/display/wayland.rs:1, platform/dr-plat/src/display/x11.rs:1, ui/dr-ui/src/develop.rs:3954, ui/dr-ui/src/develop.rs:4008, ui/dr-ui/src/develop.rs:8665, ui/dr-ui/src/develop.rs:8711, ui/dr-ui/src/develop.rs:8730, ui/dr-ui/src/develop.rs:936, ui/dr-ui/src/display_ui.rs:192, ui/dr-ui/src/display_ui.rs:1, ui/dr-ui/src/display_ui.rs:325, ui/dr-ui/src/display_ui.rs:346, ui/dr-ui/src/display_ui.rs:379, ui/dr-ui/src/lib.rs:1746, ui/dr-ui/src/lib.rs:1804, ui/dr-ui/src/lib.rs:3396, ui/dr-ui/src/lib.rs:3489, ui/dr-ui/ui/app.slint:1861, ui/dr-ui/ui/app.slint:61, ui/dr-ui/ui/settings.slint:139, ui/dr-ui/ui/settings.slint:858
FR-EXP-1 core/dr-export/src/encode.rs:1, core/dr-export/src/lib.rs:1, core/dr-types/src/settings.rs:1, ui/dr-ui/src/settings_ui.rs:1
FR-EXP-2 core/dr-export/src/encode.rs:1, core/dr-export/src/error.rs:26, core/dr-export/src/icc.rs:1, core/dr-export/src/lib.rs:153, core/dr-export/src/lib.rs:1, core/dr-export/src/lib.rs:53, core/dr-gpu/src/adjust.rs:2450, core/dr-pipeline/src/graph.rs:835, core/dr-pipeline/src/graph.rs:925, core/dr-pipeline/src/operation.rs:497, core/dr-types/src/colour.rs:1, core/dr-types/src/settings.rs:1, core/dr-types/src/settings.rs:852, ui/dr-ui/src/develop.rs:8730, ui/dr-ui/src/settings_ui.rs:1
FR-EXP-3 core/dr-export/src/lib.rs:182, core/dr-export/src/lib.rs:1, core/dr-export/src/size.rs:136, core/dr-export/src/size.rs:1, core/dr-export/src/size.rs:25, core/dr-export/src/size.rs:84, core/dr-types/src/settings.rs:1018, core/dr-types/src/settings.rs:1029, core/dr-types/src/settings.rs:1035, core/dr-types/src/settings.rs:1, core/dr-types/src/settings.rs:897, core/dr-types/src/settings.rs:905, core/dr-types/src/settings.rs:921, core/dr-types/src/settings.rs:990, ui/dr-ui/src/settings_ui.rs:1, ui/dr-ui/src/settings_ui.rs:255, ui/dr-ui/src/settings_ui.rs:268, ui/dr-ui/src/settings_ui.rs:283, ui/dr-ui/src/settings_ui.rs:656, ui/dr-ui/ui/settings.slint:761, ui/dr-ui/ui/settings.slint:771
FR-EXP-4 core/dr-export/src/lib.rs:1, core/dr-export/src/sharpen.rs:1, core/dr-export/src/size.rs:1, ui/dr-ui/src/settings_ui.rs:1
FR-EXP-5 ui/dr-ui/src/settings_store.rs:1
FR-EXP-6 core/dr-export/src/lib.rs:1, core/dr-export/src/name.rs:1, core/dr-types/src/settings.rs:1, ui/dr-ui/src/export.rs:1, ui/dr-ui/src/lib.rs:594, ui/dr-ui/src/settings_ui.rs:1, ui/dr-ui/src/settings_ui.rs:49, ui/dr-ui/src/settings_ui.rs:770
FR-EXP-7 ui/dr-ui/src/activity.rs:83, ui/dr-ui/src/export.rs:1, ui/dr-ui/src/export.rs:992, ui/dr-ui/src/lib.rs:2619, ui/dr-ui/src/lib.rs:261, ui/dr-ui/src/lib.rs:594, ui/dr-ui/src/lib.rs:640, ui/dr-ui/src/lib.rs:667, ui/dr-ui/src/library_ui.rs:3999, ui/dr-ui/src/library_ui.rs:661, ui/dr-ui/src/library_ui.rs:761, ui/dr-ui/src/library_ui.rs:7693, ui/dr-ui/src/library_ui.rs:7770, ui/dr-ui/src/library_ui.rs:7782, ui/dr-ui/src/library_ui.rs:818, ui/dr-ui/ui/app.slint:1075, ui/dr-ui/ui/app.slint:1600, ui/dr-ui/ui/library.slint:1583, ui/dr-ui/ui/library.slint:4278
FR-EXP-8 core/dr-decode/src/lib.rs:326, core/dr-decode/src/lib.rs:350, core/dr-decode/src/lib.rs:364, core/dr-decode/src/lib.rs:71, core/dr-decode/src/lib.rs:79, core/dr-decode/src/lib.rs:82, core/dr-decode/src/locate.rs:1164, core/dr-decode/src/locate.rs:1223, core/dr-decode/src/locate.rs:316, core/dr-decode/src/locate.rs:487, core/dr-decode/src/locate.rs:571, core/dr-decode/src/locate.rs:584, core/dr-decode/src/locate.rs:667, core/dr-export/examples/export.rs:99, core/dr-export/src/encode.rs:117, core/dr-export/src/encode.rs:161, core/dr-export/src/encode.rs:1, core/dr-export/src/encode.rs:206, core/dr-export/src/encode.rs:235, core/dr-export/src/encode.rs:311, core/dr-export/src/encode.rs:325, core/dr-export/src/encode.rs:408, core/dr-export/src/encode.rs:456, core/dr-export/src/encode.rs:70, core/dr-export/src/encode.rs:795, core/dr-export/src/encode.rs:809, core/dr-export/src/encode.rs:850, core/dr-export/src/encode.rs:898, core/dr-export/src/exif.rs:1, core/dr-export/src/lib.rs:136, core/dr-export/src/metadata.rs:1, core/dr-export/src/metadata.rs:41, core/dr-export/src/metadata.rs:74, core/dr-types/src/lib.rs:655, core/dr-types/src/settings.rs:565, ui/dr-ui/src/develop.rs:4496, ui/dr-ui/src/develop.rs:4608, ui/dr-ui/src/develop.rs:729, ui/dr-ui/src/export.rs:467, ui/dr-ui/src/export.rs:634, ui/dr-ui/src/export.rs:680, ui/dr-ui/src/export.rs:702, ui/dr-ui/src/export.rs:826, ui/dr-ui/src/export.rs:844, ui/dr-ui/src/lib.rs:261, ui/dr-ui/src/lib.rs:284, ui/dr-ui/src/lib.rs:626, ui/dr-ui/src/settings_ui.rs:1
FR-EXP-9 core/dr-decode/src/lib.rs:506, core/dr-export/src/lib.rs:128, core/dr-export/src/lib.rs:1, core/dr-gpu/src/adjust.rs:1106, ui/dr-ui/examples/face_native.rs:1, ui/dr-ui/src/develop.rs:4629, ui/dr-ui/src/develop.rs:4667, ui/dr-ui/src/develop.rs:6576, ui/dr-ui/src/lib.rs:594, ui/dr-ui/src/library.rs:3451, ui/dr-ui/src/library.rs:3864, ui/dr-ui/src/library.rs:3900, ui/dr-ui/tests/export_ignores_the_viewport.rs:1
FR-NC-1 core/dr-sync-nextcloud/src/auth.rs:132, core/dr-sync-nextcloud/src/auth.rs:44, core/dr-sync-nextcloud/src/provider.rs:1, core/dr-sync/src/account.rs:355, ui/dr-ui/src/launch.rs:277, ui/dr-ui/src/launch.rs:61, ui/dr-ui/src/launch_ui.rs:417
FR-NC-10 core/dr-sync/src/account.rs:220, ui/dr-ui/src/export.rs:1, ui/dr-ui/src/lib.rs:667, ui/dr-ui/src/library.rs:1155, ui/dr-ui/src/library.rs:2255, ui/dr-ui/src/library.rs:584, ui/dr-ui/src/library.rs:899, ui/dr-ui/src/library_ui.rs:1999, ui/dr-ui/src/library_ui.rs:3999, ui/dr-ui/src/library_ui.rs:602, ui/dr-ui/src/sidecar_cache.rs:1
FR-NC-12 core/dr-sync-folder/src/lib.rs:1, core/dr-sync-nextcloud/src/lib.rs:40, core/dr-sync-nextcloud/src/lib.rs:914, core/dr-sync-nextcloud/src/provider.rs:1, core/dr-sync/src/account.rs:1, core/dr-sync/src/account.rs:81, core/dr-sync/src/lib.rs:218, core/dr-sync/src/lib.rs:51, core/dr-sync/src/provider.rs:106, core/dr-sync/src/provider.rs:1, core/dr-sync/src/provider.rs:53, core/dr-sync/src/reachability.rs:1, ui/dr-ui/src/remote.rs:1
FR-NC-13 core/dr-sync-folder/src/lib.rs:197, core/dr-sync-folder/src/lib.rs:1, core/dr-sync-folder/src/lib.rs:73, core/dr-sync/src/provider.rs:106, ui/dr-ui/src/launch_ui.rs:316, ui/dr-ui/src/remote.rs:1
FR-NC-2 core/dr-sync/src/account.rs:1, core/dr-sync/src/account.rs:298, core/dr-sync/src/account.rs:355, core/dr-sync/src/account.rs:59, platform/dr-plat/src/secrets.rs:82
FR-NC-3 core/dr-decode/src/locate.rs:1, core/dr-decode/src/preview.rs:148, core/dr-sync/src/capability.rs:85, core/dr-thumbs/src/lib.rs:1, core/dr-types/src/place.rs:1, ui/dr-ui/src/library.rs:1, ui/dr-ui/src/library.rs:3292, ui/dr-ui/src/library.rs:4050, ui/dr-ui/src/library_ui.rs:1, ui/dr-ui/src/library_ui.rs:4253, ui/dr-ui/src/library_ui.rs:5752, ui/dr-ui/ui/app.slint:375, ui/dr-ui/ui/settings.slint:402, ui/dr-ui/ui/settings.slint:73
FR-NC-4 core/dr-sync-folder/src/lib.rs:197, core/dr-sync-nextcloud/src/propfind.rs:103, core/dr-sync-nextcloud/src/propfind.rs:51, core/dr-sync/src/capability.rs:6, core/dr-sync/src/lib.rs:218, core/dr-sync/src/scan.rs:118, ui/dr-ui/src/launch.rs:61
FR-NC-5 core/dr-sync-nextcloud/src/propfind.rs:51, ui/dr-ui/src/import.rs:488
FR-NC-6 ui/dr-ui/src/activity.rs:1
FR-NC-6a core/dr-catalog/src/cache.rs:1, core/dr-catalog/src/cache.rs:225, core/dr-catalog/src/schema.rs:1259, core/dr-catalog/src/schema.rs:858, core/dr-sync-folder/src/borrow.rs:1, core/dr-types/src/selector.rs:1, core/dr-types/src/settings.rs:1, ui/dr-ui/src/collections_ui.rs:2940, ui/dr-ui/src/collections_ui.rs:3182, ui/dr-ui/src/collections_ui.rs:4083, ui/dr-ui/src/collections_ui.rs:785, ui/dr-ui/src/collections_ui.rs:856, ui/dr-ui/src/lib.rs:2302, ui/dr-ui/src/lib.rs:3586, ui/dr-ui/src/library.rs:1881, ui/dr-ui/src/library.rs:1904, ui/dr-ui/src/library.rs:2179, ui/dr-ui/src/library_ui.rs:1424, ui/dr-ui/src/library_ui.rs:1497, ui/dr-ui/src/library_ui.rs:1598, ui/dr-ui/src/library_ui.rs:1653, ui/dr-ui/src/library_ui.rs:1788, ui/dr-ui/src/library_ui.rs:1906, ui/dr-ui/src/library_ui.rs:2673, ui/dr-ui/src/library_ui.rs:341, ui/dr-ui/src/library_ui.rs:352, ui/dr-ui/src/library_ui.rs:367, ui/dr-ui/src/library_ui.rs:376, ui/dr-ui/src/library_ui.rs:498, ui/dr-ui/src/library_ui.rs:508, ui/dr-ui/src/library_ui.rs:555, ui/dr-ui/src/library_ui.rs:618, ui/dr-ui/src/library_ui.rs:649, ui/dr-ui/src/library_ui.rs:6589, ui/dr-ui/src/library_ui.rs:6607, ui/dr-ui/src/library_ui.rs:661, ui/dr-ui/src/settings_store.rs:1, ui/dr-ui/src/settings_ui.rs:1, ui/dr-ui/ui/app.slint:1494, ui/dr-ui/ui/app.slint:3021, ui/dr-ui/ui/app.slint:527, ui/dr-ui/ui/app.slint:535, ui/dr-ui/ui/app.slint:541, ui/dr-ui/ui/collections.slint:1037, ui/dr-ui/ui/collections.slint:1048, ui/dr-ui/ui/collections.slint:1127, ui/dr-ui/ui/collections.slint:272, ui/dr-ui/ui/collections.slint:424, ui/dr-ui/ui/collections.slint:433, ui/dr-ui/ui/collections.slint:436, ui/dr-ui/ui/collections.slint:482, ui/dr-ui/ui/collections.slint:52, ui/dr-ui/ui/collections.slint:720, ui/dr-ui/ui/collections.slint:877, ui/dr-ui/ui/collections.slint:91, ui/dr-ui/ui/icons.slint:262
FR-NC-6b ui/dr-ui/src/library_ui.rs:1653, ui/dr-ui/src/memory.rs:1
FR-NC-6c core/dr-catalog/src/cache.rs:225, core/dr-sync-folder/src/borrow.rs:1, core/dr-sync-folder/src/lib.rs:197, core/dr-sync-folder/src/lib.rs:73, core/dr-sync-folder/src/lib.rs:818, core/dr-sync-folder/src/lib.rs:857, core/dr-sync-folder/src/vfs.rs:1, core/dr-sync-nextcloud/src/desktop_client.rs:167, core/dr-sync-nextcloud/src/desktop_client.rs:30, core/dr-sync/src/capability.rs:41, core/dr-sync/src/error.rs:39, core/dr-sync/src/lib.rs:158, core/dr-sync/src/types.rs:101, core/dr-types/src/lib.rs:122, core/dr-types/src/lib.rs:204, ui/dr-ui/src/activity.rs:1, ui/dr-ui/src/collections_ui.rs:4083, ui/dr-ui/src/collections_ui.rs:785, ui/dr-ui/src/collections_ui.rs:856, ui/dr-ui/src/derived_sync.rs:606, ui/dr-ui/src/derived_sync.rs:826, ui/dr-ui/src/library.rs:1003, ui/dr-ui/src/library.rs:2001, ui/dr-ui/src/library.rs:2091, ui/dr-ui/src/library.rs:3661, ui/dr-ui/src/library.rs:4170, ui/dr-ui/src/library_ui.rs:1424, ui/dr-ui/src/library_ui.rs:1497, ui/dr-ui/src/library_ui.rs:1696, ui/dr-ui/src/remote.rs:40, ui/dr-ui/ui/collections.slint:272, ui/dr-ui/ui/collections.slint:877, ui/dr-ui/ui/icons.slint:262
FR-NC-6d core/dr-sync-folder/src/borrow.rs:1, core/dr-sync-folder/src/lib.rs:1, core/dr-sync-folder/src/vfs.rs:1
FR-NC-7 core/dr-catalog/src/face_shard.rs:1, core/dr-sync-nextcloud/src/lib.rs:105, ui/dr-ui/src/derived_sync.rs:1, ui/dr-ui/src/library.rs:4050, ui/dr-ui/src/library_ui.rs:4253, ui/dr-ui/ui/settings.slint:402
FR-NC-7a core/dr-ingest/src/layout.rs:1, core/dr-sync/src/upload.rs:1, core/dr-sync/src/upload.rs:40, core/dr-types/src/settings.rs:297, ui/dr-ui/src/import.rs:1, ui/dr-ui/src/import.rs:97, ui/dr-ui/src/import_ui.rs:1, ui/dr-ui/src/lib.rs:1428, ui/dr-ui/ui/import.slint:5
FR-NC-7b core/dr-ingest/src/lib.rs:733, core/dr-sync/src/upload.rs:1, ui/dr-ui/src/import.rs:122, ui/dr-ui/src/import.rs:336, ui/dr-ui/src/import.rs:584, ui/dr-ui/src/import.rs:97, ui/dr-ui/src/import_ui.rs:1, ui/dr-ui/src/lib.rs:1428
FR-NC-8 core/dr-catalog/src/rating.rs:204, core/dr-catalog/src/rating.rs:66, core/dr-catalog/src/rating.rs:900, core/dr-catalog/src/schema.rs:172, core/dr-pipeline/src/sidecar.rs:122, core/dr-pipeline/src/sidecar.rs:2770, core/dr-pipeline/src/sidecar.rs:621, core/dr-pipeline/src/sidecar.rs:651, core/dr-pipeline/src/sidecar.rs:96, ui/dr-ui/src/lib.rs:2272, ui/dr-ui/src/library.rs:1045, ui/dr-ui/src/library.rs:2310, ui/dr-ui/src/library.rs:500, ui/dr-ui/src/library.rs:7532, ui/dr-ui/src/library.rs:755, ui/dr-ui/src/library_ui.rs:570, ui/dr-ui/src/presets.rs:288, ui/dr-ui/src/presets.rs:335
FR-NC-9 core/dr-catalog/src/merge.rs:1, core/dr-catalog/src/rating.rs:204, core/dr-catalog/src/rating.rs:66, core/dr-catalog/src/rating.rs:900, core/dr-catalog/src/schema.rs:172, core/dr-catalog/src/schema.rs:550, core/dr-catalog/src/schema.rs:801, core/dr-catalog/src/sync.rs:1, core/dr-pipeline/src/sidecar.rs:160, core/dr-pipeline/src/sidecar.rs:187, core/dr-pipeline/src/sidecar.rs:2536, core/dr-pipeline/src/sidecar.rs:2770, core/dr-pipeline/src/sidecar.rs:356, core/dr-pipeline/src/sidecar.rs:454, core/dr-pipeline/src/sidecar.rs:621, core/dr-pipeline/src/sidecar.rs:651, core/dr-pipeline/src/spot.rs:245, core/dr-pipeline/tests/mask_sidecar.rs:1075, core/dr-pipeline/tests/spot_sidecar.rs:1, core/dr-sync/src/scan.rs:31, core/dr-sync/src/scan.rs:45, core/dr-sync/src/scan.rs:912, core/dr-xmp/src/lib.rs:733, core/dr-xmp/src/lib.rs:746, ui/dr-ui/src/derived_sync.rs:606, ui/dr-ui/src/library.rs:1045, ui/dr-ui/src/library.rs:1065, ui/dr-ui/src/library.rs:1376, ui/dr-ui/src/library.rs:1411, ui/dr-ui/src/library.rs:2310, ui/dr-ui/src/library.rs:7364, ui/dr-ui/src/library.rs:73, ui/dr-ui/src/library.rs:7532, ui/dr-ui/src/library.rs:755, ui/dr-ui/src/library.rs:899, ui/dr-ui/src/library_ui.rs:1281, ui/dr-ui/src/presets.rs:288, ui/dr-ui/src/presets.rs:335
FR-PLAT-AND-2 core/dr-catalog/src/walk.rs:1022, core/dr-catalog/src/walk.rs:435, core/dr-sync-folder/src/lib.rs:242, core/dr-sync-folder/src/tests.rs:51, core/dr-sync/src/error.rs:113, core/dr-sync/src/error.rs:195, core/dr-sync/src/scan.rs:200, core/dr-sync/src/scan.rs:505, core/dr-sync/src/scan.rs:531, core/dr-sync/src/scan.rs:560, ui/dr-ui/src/library.rs:1276, ui/dr-ui/src/library.rs:1329, ui/dr-ui/src/library.rs:1360, ui/dr-ui/src/library.rs:1727, ui/dr-ui/src/library_ui.rs:1257, ui/dr-ui/src/library_ui.rs:1348, ui/dr-ui/src/library_ui.rs:1947, ui/dr-ui/src/library_ui.rs:325, ui/dr-ui/src/library_ui.rs:539
FR-PLAT-AND-3 core/dr-catalog/src/jobs.rs:1, core/dr-catalog/src/runner.rs:1
FR-PLAT-AND-4 core/dr-catalog/src/runner.rs:1
FR-PLAT-AND-5 apps/darkroom-android/src/lib.rs:166, core/dr-gpu/src/adjust.rs:1029, core/dr-gpu/src/detail.rs:161, core/dr-gpu/src/detail.rs:547, core/dr-gpu/tests/detail_stage.rs:417, ui/dr-ui/src/develop.rs:4469, ui/dr-ui/src/identity_ui.rs:125, ui/dr-ui/src/lib.rs:1246, ui/dr-ui/src/lib.rs:1698, ui/dr-ui/src/memory.rs:163, ui/dr-ui/src/memory.rs:1
FR-PLAT-AND-6 apps/darkroom-android/src/lib.rs:397
FR-PLAT-LIN-1 core/dr-types/src/settings.rs:1, platform/dr-plat/src/storage.rs:344, ui/dr-ui/src/lib.rs:1122, ui/dr-ui/src/preset_store.rs:1, ui/dr-ui/src/settings_store.rs:1
FR-PLAT-LIN-2 platform/dr-plat/src/display.rs:1, platform/dr-plat/src/display/wayland.rs:1, platform/dr-plat/src/display/x11.rs:1
FR-PLG-2 core/dr-pipeline/src/declared/decl.rs:1, core/dr-pipeline/src/declared/expr.rs:152, core/dr-pipeline/src/declared/expr.rs:1, core/dr-pipeline/src/declared/mod.rs:1, core/dr-pipeline/src/declared/mod.rs:82, core/dr-pipeline/src/descriptor.rs:15, core/dr-pipeline/src/descriptor.rs:734, core/dr-pipeline/src/operation.rs:232, core/dr-pipeline/tests/declared_parity.rs:1, core/dr-pipeline/tests/declared_parity.rs:240, core/dr-pipeline/tests/declared_parity.rs:305, core/dr-pipeline/tests/declared_parity.rs:358, core/dr-pipeline/tests/declared_parity.rs:418
FR-PLG-2d core/dr-pipeline/src/declared/decl.rs:112, core/dr-pipeline/src/declared/decl.rs:154, core/dr-pipeline/src/declared/decl.rs:1, core/dr-pipeline/src/declared/decl.rs:422, core/dr-pipeline/src/declared/decl.rs:67, core/dr-pipeline/src/declared/mod.rs:1, core/dr-pipeline/src/declared/mod.rs:384, core/dr-pipeline/src/declared/mod.rs:403
FR-PLG-8 core/dr-pipeline/src/sidecar.rs:2207, core/dr-pipeline/src/sidecar.rs:2240
FR-RAW-1 core/dr-decode/src/lib.rs:243, core/dr-types/src/lib.rs:132, core/dr-types/src/lib.rs:203
FR-RAW-3 core/dr-decode/src/lib.rs:139, core/dr-decode/src/lib.rs:506, core/dr-decode/src/locate.rs:1366
FR-RAW-4 core/dr-decode/src/error.rs:1, ui/dr-ui/src/lib.rs:261
FR-RAW-5 core/dr-decode/src/lib.rs:167, core/dr-gpu/src/demosaic.rs:34, core/dr-gpu/src/demosaic.rs:602, core/dr-gpu/src/demosaic.rs:681, core/dr-gpu/src/demosaic.rs:805
FR-UI-1 core/dr-types/src/settings.rs:1257, core/dr-types/src/settings.rs:412, core/dr-types/src/settings.rs:432, ui/dr-ui/src/lib.rs:101, ui/dr-ui/src/lib.rs:116, ui/dr-ui/src/lib.rs:138, ui/dr-ui/src/lib.rs:2517, ui/dr-ui/src/lib.rs:3698, ui/dr-ui/src/lib.rs:3717, ui/dr-ui/src/lib.rs:3744, ui/dr-ui/src/lib.rs:3795, ui/dr-ui/src/lib.rs:3828, ui/dr-ui/src/masks_ui.rs:1423, ui/dr-ui/src/settings_ui.rs:160, ui/dr-ui/ui/adjust.slint:974, ui/dr-ui/ui/app.slint:2700, ui/dr-ui/ui/app.slint:842, ui/dr-ui/ui/app.slint:946, ui/dr-ui/ui/identity.slint:219, ui/dr-ui/ui/library.slint:1076, ui/dr-ui/ui/settings.slint:111, ui/dr-ui/ui/settings.slint:591, ui/dr-ui/ui/toolrail.slint:156, ui/dr-ui/ui/toolrail.slint:89
FR-UI-2 ui/dr-ui/src/collections_ui.rs:116, ui/dr-ui/src/collections_ui.rs:1197, ui/dr-ui/src/collections_ui.rs:1207, ui/dr-ui/src/collections_ui.rs:154, ui/dr-ui/src/collections_ui.rs:1704, ui/dr-ui/src/collections_ui.rs:1721, ui/dr-ui/src/collections_ui.rs:1973, ui/dr-ui/src/collections_ui.rs:2701, ui/dr-ui/src/collections_ui.rs:3596, ui/dr-ui/src/gestures.rs:1, ui/dr-ui/src/lib.rs:101, ui/dr-ui/src/library_ui.rs:6474, ui/dr-ui/src/library_ui.rs:7801, ui/dr-ui/ui/app.slint:580, ui/dr-ui/ui/app.slint:594, ui/dr-ui/ui/app.slint:68, ui/dr-ui/ui/app.slint:930, ui/dr-ui/ui/controls.slint:625, ui/dr-ui/ui/gestures.slint:1, ui/dr-ui/ui/library.slint:1287, ui/dr-ui/ui/library.slint:1294, ui/dr-ui/ui/library.slint:1391, ui/dr-ui/ui/library.slint:2581, ui/dr-ui/ui/library.slint:4316, ui/dr-ui/ui/library.slint:965, ui/dr-ui/ui/library.slint:998, ui/dr-ui/ui/presets.slint:19, ui/dr-ui/ui/settings.slint:125
FR-UI-3 ui/dr-ui/src/collections_ui.rs:209, ui/dr-ui/src/collections_ui.rs:2701, ui/dr-ui/src/collections_ui.rs:414, ui/dr-ui/src/collections_ui.rs:427, ui/dr-ui/src/develop.rs:2826, ui/dr-ui/src/develop.rs:3195, ui/dr-ui/src/library_ui.rs:5503, ui/dr-ui/src/masks_ui.rs:1515, ui/dr-ui/src/masks_ui.rs:1537, ui/dr-ui/src/masks_ui.rs:338, ui/dr-ui/src/spots_ui.rs:19, ui/dr-ui/ui/app.slint:2265, ui/dr-ui/ui/collections.slint:1127, ui/dr-ui/ui/collections.slint:4, ui/dr-ui/ui/collections.slint:75, ui/dr-ui/ui/collections.slint:877, ui/dr-ui/ui/masks.slint:1167, ui/dr-ui/ui/widgets.slint:71
FR-UI-4 tools/traceability/src/gestures.rs:1, ui/dr-ui/src/collections_ui.rs:116, ui/dr-ui/src/collections_ui.rs:117, ui/dr-ui/src/collections_ui.rs:1197, ui/dr-ui/src/collections_ui.rs:1207, ui/dr-ui/src/collections_ui.rs:126, ui/dr-ui/src/collections_ui.rs:154, ui/dr-ui/src/collections_ui.rs:1704, ui/dr-ui/src/collections_ui.rs:1721, ui/dr-ui/src/collections_ui.rs:1837, ui/dr-ui/src/collections_ui.rs:1973, ui/dr-ui/src/collections_ui.rs:2000, ui/dr-ui/src/collections_ui.rs:209, ui/dr-ui/src/collections_ui.rs:2116, ui/dr-ui/src/collections_ui.rs:2701, ui/dr-ui/src/collections_ui.rs:2755, ui/dr-ui/src/collections_ui.rs:3208, ui/dr-ui/src/collections_ui.rs:3596, ui/dr-ui/src/collections_ui.rs:3633, ui/dr-ui/src/collections_ui.rs:414, ui/dr-ui/src/collections_ui.rs:427, ui/dr-ui/src/collections_ui.rs:514, ui/dr-ui/src/collections_ui.rs:718, ui/dr-ui/src/collections_ui.rs:738, ui/dr-ui/src/develop.rs:5240, ui/dr-ui/src/develop.rs:5265, ui/dr-ui/src/develop.rs:5276, ui/dr-ui/src/develop.rs:5290, ui/dr-ui/src/develop.rs:6362, ui/dr-ui/src/develop.rs:6393, ui/dr-ui/src/develop.rs:6414, ui/dr-ui/src/gesture_book.rs:3, ui/dr-ui/src/gestures.rs:1, ui/dr-ui/src/lib.rs:1775, ui/dr-ui/src/lib.rs:2184, ui/dr-ui/src/lib.rs:2424, ui/dr-ui/src/lib.rs:3018, ui/dr-ui/src/lib.rs:3932, ui/dr-ui/src/lib.rs:447, ui/dr-ui/src/lib.rs:476, ui/dr-ui/src/library_ui.rs:5503, ui/dr-ui/src/library_ui.rs:5515, ui/dr-ui/src/library_ui.rs:5585, ui/dr-ui/src/library_ui.rs:5695, ui/dr-ui/src/library_ui.rs:5723, ui/dr-ui/src/library_ui.rs:6607, ui/dr-ui/ui/app.slint:160, ui/dr-ui/ui/app.slint:1960, ui/dr-ui/ui/app.slint:2082, ui/dr-ui/ui/app.slint:2489, ui/dr-ui/ui/app.slint:2600, ui/dr-ui/ui/app.slint:3071, ui/dr-ui/ui/app.slint:556, ui/dr-ui/ui/app.slint:585, ui/dr-ui/ui/app.slint:594, ui/dr-ui/ui/app.slint:694, ui/dr-ui/ui/collections.slint:75, ui/dr-ui/ui/gestures.slint:1, ui/dr-ui/ui/library.slint:1053, ui/dr-ui/ui/library.slint:1262, ui/dr-ui/ui/library.slint:1287, ui/dr-ui/ui/library.slint:1294, ui/dr-ui/ui/library.slint:1327, ui/dr-ui/ui/library.slint:1384, ui/dr-ui/ui/library.slint:1391, ui/dr-ui/ui/library.slint:2581, ui/dr-ui/ui/library.slint:4179, ui/dr-ui/ui/library.slint:4257, ui/dr-ui/ui/library.slint:4316, ui/dr-ui/ui/library.slint:965, ui/dr-ui/ui/library.slint:992, ui/dr-ui/ui/library.slint:998
FR-UI-5 ui/dr-ui/src/collections_ui.rs:1, ui/dr-ui/src/lib.rs:3063, ui/dr-ui/src/lib.rs:3892, ui/dr-ui/src/lib.rs:4083, ui/dr-ui/src/masks_ui.rs:1470, ui/dr-ui/ui/app.slint:2449, ui/dr-ui/ui/app.slint:2489, ui/dr-ui/ui/collections.slint:4, ui/dr-ui/ui/session.slint:75
FR-UI-6 ui/dr-ui/ui/widgets.slint:1
FR-UI-7 core/dr-pipeline/src/descriptor.rs:195, core/dr-pipeline/src/framing.rs:395, core/dr-types/src/settings.rs:412, ui/dr-ui/src/develop.rs:1306, ui/dr-ui/src/lib.rs:3717, ui/dr-ui/ui/adjust.slint:974, ui/dr-ui/ui/app.slint:2205, ui/dr-ui/ui/settings.slint:591, ui/dr-ui/ui/toolrail.slint:89
FR-UI-8 core/dr-catalog/src/collections.rs:654, core/dr-catalog/src/collections.rs:675, core/dr-types/src/place.rs:1, ui/dr-ui/src/derived_sync.rs:208, ui/dr-ui/src/derived_sync.rs:678, ui/dr-ui/src/derived_sync.rs:688, ui/dr-ui/src/derived_sync.rs:74, ui/dr-ui/src/derived_sync.rs:770, ui/dr-ui/src/library.rs:1106, ui/dr-ui/src/library.rs:4726, ui/dr-ui/src/library.rs:5444, ui/dr-ui/src/library.rs:5510, ui/dr-ui/src/library_ui.rs:195, ui/dr-ui/src/library_ui.rs:2134, ui/dr-ui/src/library_ui.rs:2323, ui/dr-ui/src/library_ui.rs:2340, ui/dr-ui/src/library_ui.rs:2438, ui/dr-ui/src/library_ui.rs:5536, ui/dr-ui/src/library_ui.rs:5576, ui/dr-ui/src/library_ui.rs:5605, ui/dr-ui/src/library_ui.rs:5868, ui/dr-ui/src/library_ui.rs:6091, ui/dr-ui/src/library_ui.rs:6815, ui/dr-ui/src/library_ui.rs:875, ui/dr-ui/src/library_ui.rs:908, ui/dr-ui/src/library_ui.rs:954, ui/dr-ui/src/place.rs:1
NFR-A11Y-2 ui/dr-ui/tests/ui_controls_are_accessible.rs:1, ui/dr-ui/ui/adjust.slint:171, ui/dr-ui/ui/app.slint:2600, ui/dr-ui/ui/app.slint:2638
NFR-A11Y-3 ui/dr-ui/src/histogram.rs:356, ui/dr-ui/ui/histogram.slint:137, ui/dr-ui/ui/library.slint:761, ui/dr-ui/ui/library.slint:909, ui/dr-ui/ui/peaking.slint:1
NFR-ARCH-2 core/dr-catalog/src/jobs.rs:1, ui/dr-ui/src/faces.rs:1, ui/dr-ui/src/library.rs:3451
NFR-ARCH-3 ui/dr-ui/src/export.rs:1809, ui/dr-ui/src/export.rs:1836, ui/dr-ui/src/export.rs:412, ui/dr-ui/src/export.rs:438, ui/dr-ui/src/lib.rs:2653, ui/dr-ui/ui/app.slint:1086, ui/dr-ui/ui/library.slint:4278
NFR-ARCH-4 core/dr-catalog/src/error.rs:1, core/dr-export/src/error.rs:1, core/dr-thumbs/src/error.rs:1, core/dr-xmp/src/lib.rs:798, platform/dr-plat/src/storage.rs:148, ui/dr-ui/src/export.rs:514
NFR-OPS-1 platform/dr-plat/src/diagnostics.rs:1, platform/dr-plat/src/state.rs:1
NFR-OPS-2 platform/dr-plat/src/crash.rs:1
NFR-OPS-3 core/dr-types/src/settings.rs:1, ui/dr-ui/src/settings_store.rs:1
NFR-P1 core/dr-catalog/src/lib.rs:1, core/dr-catalog/src/scan.rs:1, core/dr-catalog/src/walk.rs:162, core/dr-catalog/src/walk.rs:1, tools/bench/src/catalog_open.rs:1
NFR-P13 core/dr-decode/src/preview.rs:121
NFR-P14 core/dr-gpu/src/focus.rs:186, core/dr-gpu/src/focus.rs:1, core/dr-gpu/src/focus.rs:317, core/dr-gpu/src/shaders/focus_peak.wgsl:1, ui/dr-ui/src/develop.rs:4186, ui/dr-ui/src/lib.rs:1969
NFR-P3 tools/bench/src/thumbnails.rs:1
NFR-P5 core/dr-catalog/src/schema.rs:374, ui/dr-ui/src/library.rs:4833, ui/dr-ui/src/library.rs:5946, ui/dr-ui/src/library_ui.rs:4743, ui/dr-ui/src/library_ui.rs:64
NFR-P9 ui/dr-ui/src/collections_ui.rs:1, ui/dr-ui/src/export.rs:992, ui/dr-ui/src/library.rs:1, ui/dr-ui/src/library_ui.rs:1, ui/dr-ui/src/trash.rs:1
NFR-PORT-1 core/dr-catalog/src/walk.rs:1, core/dr-types/src/lib.rs:272, core/dr-types/src/lib.rs:305, platform/dr-plat/src/display.rs:1, platform/dr-plat/src/storage.rs:1, platform/dr-plat/src/storage.rs:216, platform/dr-plat/src/storage.rs:287, platform/dr-plat/src/storage.rs:344, platform/dr-plat/src/volumes.rs:1, platform/dr-plat/src/volumes.rs:62
NFR-PORT-2 core/dr-gpu/src/lib.rs:1
NFR-PORT-3 platform/dr-plat/src/storage.rs:1
NFR-R1 core/dr-catalog/src/sync.rs:1, core/dr-gpu/src/lib.rs:192, core/dr-sync/src/account.rs:220, ui/dr-ui/src/library.rs:1155
NFR-R2 core/dr-catalog/src/recovery.rs:1, core/dr-catalog/src/trash.rs:1
NFR-R5 core/dr-catalog/src/collections.rs:1, core/dr-catalog/src/error.rs:1, core/dr-catalog/src/keywords.rs:1, core/dr-catalog/src/schema.rs:1
NFR-R6 core/dr-catalog/src/error.rs:1, core/dr-catalog/src/lib.rs:255, core/dr-catalog/src/recovery.rs:1
NFR-R7 core/dr-gpu/src/error.rs:1
NFR-R8 core/dr-gpu/src/error.rs:1
NFR-RES-1 core/dr-gpu/src/adjust.rs:1029, core/dr-pipeline/src/history.rs:86, ui/dr-ui/src/develop.rs:4469, ui/dr-ui/src/identity_ui.rs:125, ui/dr-ui/src/lib.rs:93, ui/dr-ui/src/memory.rs:1
NFR-RES-2 ui/dr-ui/src/faces.rs:347, ui/dr-ui/src/library.rs:3451, ui/dr-ui/src/library.rs:3668
NFR-RES-4 core/dr-catalog/src/cache.rs:1, core/dr-catalog/src/face_shard.rs:1, core/dr-catalog/src/schema.rs:858, core/dr-gpu/src/lib.rs:93, core/dr-thumbs/src/codec.rs:1, core/dr-thumbs/src/lib.rs:1, core/dr-thumbs/src/lib.rs:376, ui/dr-ui/src/library.rs:3292
NFR-SEC-1 core/dr-decode/src/error.rs:1
NFR-SEC-2 core/dr-sync/src/account.rs:298, platform/dr-plat/src/crash.rs:1, platform/dr-plat/src/diagnostics.rs:1, platform/dr-plat/src/diagnostics/redact.rs:1, platform/dr-plat/src/secrets.rs:82
NFR-SEC-3 core/dr-sync-nextcloud/src/lib.rs:1, core/dr-sync-nextcloud/src/provider.rs:1
NFR-SEC-5 core/dr-catalog/src/faces.rs:1, core/dr-catalog/src/schema.rs:687, ui/dr-ui/src/faces.rs:1, ui/dr-ui/src/identity.rs:1, ui/dr-ui/src/identity_ui.rs:1, ui/dr-ui/ui/identity.slint:1
R3 core/dr-export/src/lib.rs:1, core/dr-pipeline/src/lib.rs:1
R4 core/dr-gpu/src/lib.rs:351
R6 core/dr-sync-nextcloud/src/lib.rs:1

Not yet tagged

53 of 187 requirements have no implementation tag. Expected while the codebase is young; each should gain one as it is built.

Show untagged requirements
  • FR-CAT-14
  • FR-CULL-6
  • FR-CULL-7
  • FR-DEV-19
  • FR-DEV-3g
  • FR-DSP-2
  • FR-DSP-4
  • FR-NC-11
  • FR-PLAT-AND-1
  • FR-PLAT-LIN-3
  • FR-PLG-1
  • FR-PLG-10
  • FR-PLG-11
  • FR-PLG-12
  • FR-PLG-1a
  • FR-PLG-2a
  • FR-PLG-2b
  • FR-PLG-2c
  • FR-PLG-3
  • FR-PLG-3a
  • FR-PLG-4
  • FR-PLG-4a
  • FR-PLG-5
  • FR-PLG-5a
  • FR-PLG-5b
  • FR-PLG-5c
  • FR-PLG-6
  • FR-PLG-6a
  • FR-PLG-7
  • FR-PLG-9
  • FR-RAW-2
  • NFR-A11Y-1
  • NFR-ARCH-1
  • NFR-COMPAT-1
  • NFR-COMPAT-2
  • NFR-OPS-4
  • NFR-P10
  • NFR-P11
  • NFR-P12
  • NFR-P15
  • NFR-P2
  • NFR-P4
  • NFR-P6
  • NFR-P7
  • NFR-P8
  • NFR-R3
  • NFR-R4
  • NFR-RES-3
  • NFR-SEC-4
  • NFR-SEC-6
  • R1
  • R2
  • R5