# Semantic keyed native fixture Open semantic-keyed.arcadia. This ignored fixture has 36 elements, 2 relationships, 2 named manual traces and pre-recorded explicit paired Annotation/Binding facts. The normal Traceability "Review semantics…" entry needs no trace creation. No diagram is required. All files here are local QA artifacts. ## 1. Take one qualified message value Select trace "Navigation origin latitude review" (alias navigation_latitude_review) and open Review semantics. Direction: Operational → System. Enable Show unchanged if the historical paired fact is hidden. Select the Annotation whose OA qualified field is "OA Navigation origin / OA Navigation latitude" and whose SA field is "SA Navigation origin / SA Navigation latitude". The destination-path annotation is a separate sibling and must remain unchanged. Click "Choose / change exact row identities…", retain the prefilled explicit OA/SA keys, then "Use these addresses and review row". This deliberately installs the typed path/field reference pairs; recorded history alone does not infer them. Click "Take Operational". The System expression should become `latitude_deg + 0.25` from `latitude_deg`. Additional changes: 0. Apply once. The sibling expression stays `second independent` at its original position. Compare the resulting accepted project with semantic-keyed.after-take.json and exact single-file source with semantic-keyed.after-take.arcadia. Undo restores semantic-keyed.json/source; Redo restores after-take. ## 2. Reject and repair one binding Candidate Continue from after-take. Select trace "Rendezvous participant binding review" (alias rendezvous_binding_review), Review semantics, Operational → System. Enable Show unchanged if needed. Select the paired Binding keyed by "OA Rendezvous referenced" / "SA Rendezvous referenced". Click "Choose / change exact row identities…" and then "Use these addresses and review row" to retain that explicit pair. Click "Set final value…"; leave Include in destination collection checked. Choose local lifeline "SA Rendezvous extra local". The sibling binding already uses it, so preview must reject with: `duplicate_lifeline_binding: Scenario-use lifeline bindings are one-to-one.` Apply must stay disabled; source/project/history remain exactly after-take. The chosen invalid local and presence draft must remain visible across tab changes. Repair the local picker to "SA Rendezvous alternate". Additional changes: 0. Apply once. Only the selected row's local lifeline changes; the sibling binding and row order remain intact. Compare accepted project/source with semantic-keyed.after-repair.json / semantic-keyed.after-repair.arcadia. One Undo restores after-take exactly; Redo restores after-repair. Save/reopen must preserve the exact leading comment and all typed review history. ## Validated core oracles `semantic-keyed.validation.txt`: all three projects pass core validation, production source and JSON decode round trips; successful plans have zero impacts. `semantic-keyed.take-request.json` and `semantic-keyed.take-plan.json`: direct core Take oracle against initial project. `semantic-keyed.invalid-request.json` and `semantic-keyed.invalid.txt`: rejected Candidate against after-take; the accepted project is unchanged. `semantic-keyed.repair-request.json` and `semantic-keyed.repair-plan.json`: repaired Candidate against after-take. `semantic-keyed.manifest.json`: exact trace, occurrence, field and lifeline IDs. Source oracles were generated through source_project::update_bundle, retaining unmodified declarations and the fixture comment, rather than replacing the whole file with a freshly formatted model. Generator source is generate-semantic-keyed.rs; it reuses the production-tested r3_semantic payload/scenario-use constructors. Standalone rustc output stays in this directory; Cargo and shared outputs untouched.