Skip to content

Latest commit

 

History

History
45 lines (42 loc) · 4.66 KB

File metadata and controls

45 lines (42 loc) · 4.66 KB

Architecture Decision Records

Nygard format, in-repo, append-only (ADR-0009). After Accepted, an ADR is immutable; supersede it with a new one. New ADRs: copy 0000-template.md, use the next id, link it here.

ADR Title Status
0001 Use a Rust workspace with core/cli/plugin crates Accepted
0002 Adopt a canonical score model as the internal representation Accepted
0003 Master timeline is the single source of truth for transport Accepted
0004 Forbid unsafe_code at the workspace level Accepted
0005 griff is swancore-first, not a general-purpose riff generator Accepted
0006 Default to Standard E tuning, not Drop C Accepted
0007 CLAP is the plugin target; MIDI-out only; nih-plug Accepted
0008 Explainable heuristic phrase detection before any ML Accepted
0009 Use the Nygard ADR format, stored in-repo, append-only Accepted
0010 Fuzz-test format adapters and core invariants Accepted
0011 Retire the legacy linear model in favour of the canonical model Accepted
0012 Complementary part generation (ComplementArranger) Proposed
0013 DP/Viterbi traversal over the phrase hypergraph Accepted (amended by ADR-0030)
0014 Fretboard-aware canonical model (string/fret positions) Superseded by ADR-0018
0015 Separate structure controls and metrics from complexity Proposed
0016 Share one UI core across the ratatui and egui frontends Proposed
0017 Unify scoring into axes, weights, rationale, and a derived aggregate Proposed
0018 Rich note model — fretboard position and multi-technique with evidence Proposed
0019 Infer fretboard position with a small local DP Proposed
0020 Validate Guitar Pro import against a reference oracle Proposed
0021 Property-based invariants over the canonical Score Proposed
0022 Repeat unfolding is a projection, not a model rewrite Proposed
0023 Control pitch/contour spread of complementary parts Proposed
0024 Ship the egui frontend to the browser (WASM) for mobile testing Proposed (§2–3,6 superseded by ADR-0025)
0025 Guitar Pro in the browser needs wasm-bindgen (over the import-free web build) Accepted
0026 A minimal in-browser chunk.json capture tool (carve-out from "web curation — later") Accepted
0027 Grow the M1 playground into the egui M2 cockpit — curation dock + OPFS persistence Proposed
0028 Shared theme tokens in the UI core — one palette, two renderers, asserted contrast Proposed
0029 Adopt Swang as a deterministic authoring and verified lifting language Accepted (Phases 0–3 frozen)
0030 Reduced-state layered DP clients (amends ADR-0013) Accepted
0031 Add a curator-assigned canonical song identity to the corpus (schema v10) Accepted
0032 Filter holdout over LoadedChunk before corpus material, owned by the offline Reachability Lab Accepted
0033 Human-confirmed, transactional song-id curation workflow (standalone song-curation/ tool) Accepted
0034 Run generator experiments as variant × information regime, with separate identities and comparable-only metrics Accepted

See also: ../SPEC.md, ../glossary.md, ../decisions.log.md.