Feature Specs
Feature specifications (yqr-fNNN-*). Each spec carries a **Status:**
field; yqr-f0000-feature-status.md tracks every feature across epics.
In this section
-
Feature Status Tracker
Single source of truth for the state of every yqr-fNNN feature spec. Update this file in the same change that advances a feature (CLAUDE.md rule 17).
-
Feature f001 — `yqr`: a Swiss Army knife for YAML
Status: In progress (foundation landed) Owner: yqr maintainers Last updated: 2026-06-21
-
Feature f002 — Fidelity read floor (`FidelityEngine` seam + noyalib backend)
Status: Done Owner: yqr maintainers Last updated: 2026-07-03 Implements: yqr-m002 §4/§9 (read floor), yqr-a001 §4.1 (slice-on-emit) Related: yqr-b001 (the bug this closes for the engine path), yqr-r002 (backend evaluation), yqr-f004 (superseded the off-by-default gating below: the noyalib back...
-
Feature f003 — Fidelity backend A (rust-yaml fork `RoundTripDocument` adapter)
Status: Superseded by yqr-m005 (2026-07-10) — the rust-yaml fork RoundTripDocument backend (backend A) was removed when yqr consolidated on noyalib as its sole engine. (Was: Done.) Owner: yqr maintainers Last updated: 2026-07-04 Implements: yqr-m002 §7.1 (backend A), yqr-a001 §4.1 (slice-on-e...
-
Feature f004 — Engine parity: both fidelity backends default-on and runtime-switchable, from the zoosky forks
Status: Superseded by yqr-m005 (2026-07-10) — yqr consolidated on a single engine (noyalib); the two-backend, runtime-switchable engine-parity story no longer holds. The --engine flag itself was removed in yqr-f011 (2026-07-28). (Was: Done.) Owner: yqr maintainers Last updated: 2026-07-08 Imple...
-
Feature f005 — Decouple byte/comment preservation from backend selection (`--preserve`)
Status: Superseded (yqr-f009) Epic: Fidelity-first architecture (a001) Owner: yqr maintainers Related: yqr-f002 (fidelity read floor / engine seam), yqr-f004 (engine parity — superseded), yqr-f009 (fidelity-by-default; removes --preserve), yqr-m005 (single-engine consolidation)
-
Feature f006 — Write tier v1: value assignment and in-place edits (`--in-place`)
Status: Done Epic: Fidelity write tier (f006–f008) Owner: yqr maintainers Related: yqr-f007 (write tier: structural edits — the b004 gaps), yqr-f008 (write tier: computed updates |=), yqr-f002 (fidelity read floor / engine seam), yqr-f009 (fidelity-by-default read; supersedes the yqr-f005 --p...
-
Feature f007 — Write tier: structural edits (the `b004` gaps)
Status: In Progress (structural delete shipped, and since yqr-f013 it is yqr's whole delete path rather than a fallback; comment editing, key rename, and sequence reorder remain deferred) Epic: Fidelity write tier (f006–f008) Owner: yqr maintainers Related: yqr-f006 (write tier v1 — the value...
-
Feature f008 — Write tier: computed updates (`|=`)
Status: Draft (stub — gated on f001 M2) Epic: Fidelity write tier (f006–f008) Owner: yqr maintainers Related: yqr-f006 (write tier v1 — the assignment/-i core this extends), yqr.f001 M2 (arithmetic + builtins — the right-hand evaluator this needs), yqr-m002 §4/§6.2 (write-tier seam)
-
Feature f009 — Byte fidelity by default; classic pipeline behind `--normalize`
Status: Done Epic: Fidelity-first architecture (a001) Owner: yqr maintainers Related: yqr-f002 (fidelity read floor / engine seam), yqr-f005 (the --preserve/--engine split — superseded by this spec), yqr-f006 (write tier — already fidelity-by-default), yqr-b001 (the lossy-default bug this clo...
-
Feature f010 — Project website: Accent CMS site over docs/ and specs/, on GitHub Pages
Status: Done Epic: Project website (f010) Owner: yqr maintainers Related: yqr-m003 (the demo content served at /demo), the former docs/content/home.html (its markup now the body of content/index.md, its design the home template), benchmark.yml (shares the gh-pages branch with the site deploy), do...
-
Feature f011 — Remove `--engine`: noyalib is the only engine
Status: Done Epic: Fidelity-first architecture (a001) Owner: yqr maintainers Related: yqr-m005 (single-engine consolidation — this closes its §6 "engine plurality" provision), yqr-f004 (engine parity — superseded; the flag itself is removed here), yqr-f009 (which had repurposed --engine for ...
-
Feature f012 — `yqr validate`: actionable YAML correctness checking
Status: Done Epic: Editing-loop tooling (f012) Owner: yqr maintainers Related: yqr-a001 (the fidelity invariant validate re-uses), yqr-f006/yqr-f007 (the write tier — the editing loop this closes), yqr-m005 (noyalib is the one engine), yqr-r001 (jq feature gap — jq's empty-filter idiom belong...
-
Feature f013 — Adopt noyalib 0.0.18: pin bump and the released CST mutation API
Status: Done Epic: Fidelity write tier (f006–f008) Owner: yqr maintainers Related: yqr-b004 (the mutation-API gap catalog this closes; §6 is the measured scoping this spec implements), yqr-b006 (the structural-delete trivia fixes §3.2 must not regress), yqr-f007 (structural edits — its ship...