diff --git a/CHANGELOG.md b/CHANGELOG.md index 88f96016..5705097f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,36 @@ ## Unreleased +### Fixed (CI) + +- **Evidence Derivation:** Replaced artifact-directory-presence check for `DET-001` with + structured parsing and validation of `static-inspection.json`; `FAILED` static inspections + now correctly yield `UNVERIFIED` evidence instead of relying solely on artifact existence. + Adds `source_file`, `source_status`, and optional `error` fields to DET-001 evidence. +- **Evidence Script Hardening:** Added TypeError guard on `generateEvidence` input, + try/catch with `process.exit(1)` in CLI mode, truncated log interpolations to + 200 chars in `checkStaticInspection`, harmonized parameter naming, and tightened + JSDoc return types to `'VERIFIED'|'UNVERIFIED'` union. + +### Fixed (Docs) + +- **Docs Build:** Rewrote `ADR-0007-impl.md` from a 3185-line raw conversation + transcript into a proper 13-section ADR document. The Vue template compiler + was crashing on bare Rust generics (`BTreeMap`, etc.) + outside fenced code blocks. The new document preserves all architectural + knowledge as a structured implementation companion to ADR-0007. +- **Stale Hash Domain:** Updated three stale `DIND_STATE_HASH_V2` references in + `graph.rs` doc comment and `ADR-0007-impl.md` §2.1/§7 to match the actual + domain prefix `echo:state_root:v1` defined in `domain.rs`. Renamed the + adjacent `V2 Changes` subsection to `Layout Notes` to remove versioning + ambiguity. +- **Module Count:** Fixed off-by-one module count in `ADR-0007-impl.md` metadata + and §1 prose (36 → 37) and added qualifier noting tables cover key modules only. +- **Stale Design Doc:** Deleted `docs/WARP-GRAPH.md` (1,219-line chat transcript + fully superseded by `ADR-0007-impl.md` and `crates/warp-core/src/wsc/`). + Extracted all-zero-key caveat into ADR §9.6 and `save_wsc()` convenience + wrapper gap into `TASKS-DAG.md` backlog before removal. + ## [0.1.3] — 2026-02-21 ### Fixed (Sprint S1) diff --git a/TASKS-DAG.md b/TASKS-DAG.md index fef994b1..0f4622d7 100644 --- a/TASKS-DAG.md +++ b/TASKS-DAG.md @@ -698,7 +698,7 @@ This living list documents open issues and the inferred dependencies contributor - Blocked by: - [#286: CI: Add unit tests for classify_changes.cjs and matches()](https://github.com/flyingrobots/echo/issues/286) - Confidence: medium - - Evidence: Both scripts now export their main functions (M1/M2 in det-hard). Edge cases to cover: 'local' sentinel, missing artifacts, malformed evidence JSON. + - Evidence: Both scripts now export their main functions (M1/M2 in det-hard). `checkStaticInspection` is now module-scoped and exported (PR #288), enabling direct unit tests for all 5 behavioral branches: file-not-found, invalid JSON, null/non-object parse, wrong structure, and PASSED/FAILED status. Edge cases to cover: 'local' sentinel, missing artifacts, malformed evidence JSON. ## Backlog: Simplify docs crate path list in det-policy.yaml @@ -718,6 +718,48 @@ This living list documents open issues and the inferred dependencies contributor - Evidence: G3 (perf-regression) runs Criterion benchmarks and uploads `perf.log` but does not compare against a stored baseline. PRF-001 relies on Criterion's internal noise threshold. Adding `critcmp` or `bencher.dev` integration would enable regression detection across commits. - (No detected dependencies) +## Backlog: CI workflow lint — verify referenced scripts exist in repo + +- Status: Open +- Evidence: Commit `896c205` accidentally deleted `scripts/generate_evidence.cjs` while `det-gates.yml:304` still referenced it (`node scripts/generate_evidence.cjs gathered-artifacts`), breaking the Evidence schema job with `MODULE_NOT_FOUND`. A pre-commit hook or CI lint step that parses workflow YAML `run:` blocks for `node