chore: phase-1 feature-matrix closure, golden fixtures, e2e isolation #54

Merged
jesse merged 4 commits from phase-1/feature-matrix-closure into main 2026-04-28 22:58:17 +02:00
Owner

Summary

  • Add golden fixture infrastructure for compression stages (PrivacyStage, SectionSummaryStage) so regressions surface as fixture diffs.
  • Isolate cache_stats MCP e2e by spawning cognix-think with COGNIX_STORAGE_BACKEND=memory (no SQLite artifacts; per .claude/rules/testing.md).
  • Expand cognix-server registration test coverage.
  • Add Phase-1 feature-matrix closure docs: 05a-feature-matrix-todo.md, 04b-token-economics-inventory.md, FM-6A/6B + Q-04 callouts in 05-feature-matrix* and docs/RUNNING.md.
  • Capture macOS arm64 D-01 install-smoke evidence under notes/evaluation-260423/evidence/.
  • Pin install commands to per-crate --locked; allowlist compression privacy file in pre-commit secret scanner (mirrors existing cognix-core/src/privacy/ exemption).

Phase

Phase 1 — feature-matrix closure

Test Plan

  • cargo test --workspace
  • cargo fmt --all -- --check
  • cargo clippy --workspace --all-targets -- -D warnings
  • CI green on Forgejo before merge

Self-Review Checklist

  • No hardcoded secrets (synthetic test patterns only, file allowlisted)
  • No unwrap() in library code
  • No println!/dbg!
  • Fail-open degradation preserved
  • Tests cover happy path and error cases (fixture-driven)
## Summary - Add golden fixture infrastructure for compression stages (`PrivacyStage`, `SectionSummaryStage`) so regressions surface as fixture diffs. - Isolate `cache_stats` MCP e2e by spawning `cognix-think` with `COGNIX_STORAGE_BACKEND=memory` (no SQLite artifacts; per `.claude/rules/testing.md`). - Expand `cognix-server` registration test coverage. - Add Phase-1 feature-matrix closure docs: `05a-feature-matrix-todo.md`, `04b-token-economics-inventory.md`, FM-6A/6B + Q-04 callouts in `05-feature-matrix*` and `docs/RUNNING.md`. - Capture macOS arm64 D-01 install-smoke evidence under `notes/evaluation-260423/evidence/`. - Pin install commands to per-crate `--locked`; allowlist compression privacy file in pre-commit secret scanner (mirrors existing `cognix-core/src/privacy/` exemption). ## Phase Phase 1 — feature-matrix closure ## Test Plan - [ ] `cargo test --workspace` - [ ] `cargo fmt --all -- --check` - [ ] `cargo clippy --workspace --all-targets -- -D warnings` - [ ] CI green on Forgejo before merge ## Self-Review Checklist - [x] No hardcoded secrets (synthetic test patterns only, file allowlisted) - [x] No `unwrap()` in library code - [x] No `println!`/`dbg!` - [x] Fail-open degradation preserved - [x] Tests cover happy path and error cases (fixture-driven)
- Introduce golden.rs test helper to load input/expected fixture pairs
  from testdata/compression/stages/<stage>/, applied to PrivacyStage and
  SectionSummaryStage so regressions surface as fixture diffs.
- Seed initial fixtures: synthetic secrets + <private> tags for privacy;
  multi-section + nested-headings for section_summary.
- Switch cache_stats MCP e2e to spawn cognix-think with
  COGNIX_STORAGE_BACKEND=memory so each test gets its own resources and
  leaves no SQLite artifacts (per .claude/rules/testing.md).
- Expand registration tests coverage.
- Allowlist the compression privacy stage file in the secret-detection
  pre-commit hook (synthetic test secrets, mirrors the existing
  cognix-core/src/privacy/ exemption).
- Ignore .claude/handoffs/ in .gitignore.
docs: feature-matrix closure plan, evidence, and install-guide refinements
Some checks failed
CI / Detect Changes (pull_request) Successful in 11s
CI / Format (pull_request) Successful in 13s
CI / Conventional Validation (pull_request) Failing after 37s
CI / Security Scan (pull_request) Failing after 17s
CI / Integration Tests (pull_request) Has been skipped
CI / Clean Build Sample 1 (pull_request) Has been skipped
CI / Benchmarks (pull_request) Has been skipped
CI / Clean Build Sample 2 (pull_request) Has been skipped
CI / Clean Build Sample 3 (pull_request) Has been skipped
CI / Clean Build Summary (pull_request) Has been skipped
CI / PR Size Check (pull_request) Successful in 30s
CI / Check file lengths (pull_request) Successful in 35s
CI / Documentation (pull_request) Successful in 2m0s
CI / Clippy (pull_request) Successful in 2m15s
CI / Check (linux-aarch64 compile-validation) (pull_request) Successful in 2m48s
CI / Deny (pull_request) Successful in 5m21s
CI / Audit (CVEs) (pull_request) Successful in 5m44s
CI / D-02 Clean Build Gate (pull_request) Successful in 5m54s
CI / Test (pull_request) Successful in 6m18s
CI / Coverage (80% gate) (pull_request) Successful in 6m54s
CI / Build (release) (pull_request) Successful in 4m42s
CI / CI Report (pull_request) Successful in 5s
0f398789f8
- Add notes/evaluation-260423/05a-feature-matrix-todo.md and
  04b-token-economics-inventory.md to drive Phase-1 closure work.
- Update 05-feature-matrix and 05-feature-matrix-plan with revised
  status, FM-6A/6B decisions, and Q-04 open-target callouts.
- Refresh evaluation-260417 summary and devex notes for current state.
- Pin install commands in docs/RUNNING.md to per-crate paths with
  --locked; document FM-6A baseline and remaining Q-04 scope.
- Capture macOS arm64 D-01 install smoke evidence under
  notes/evaluation-260423/evidence/.
- Minor refresh to README, CLAUDE.md, PUBLISHING.md, success-criteria,
  and phase-8 hardening doc to track the new commands and decisions.
jesse changed title from phase-1: feature-matrix closure — golden fixtures, e2e isolation, FM-6 docs to chore: phase-1 feature-matrix closure, golden fixtures, e2e isolation 2026-04-28 19:09:27 +02:00
ci: exclude privacy.rs from secret scan
Some checks failed
CI / Detect Changes (pull_request) Successful in 11s
CI / Check file lengths (pull_request) Failing after 3s
CI / Check (linux-aarch64 compile-validation) (pull_request) Failing after 2s
CI / Integration Tests (pull_request) Has been skipped
CI / Benchmarks (pull_request) Has been skipped
CI / PR Size Check (pull_request) Failing after 1s
CI / D-02 Clean Build Gate (pull_request) Failing after 1s
CI / Security Scan (pull_request) Successful in 17s
CI / Conventional Validation (pull_request) Successful in 35s
CI / Format (pull_request) Successful in 21s
CI / Documentation (pull_request) Successful in 2m32s
CI / Clippy (pull_request) Successful in 3m17s
CI / Deny (pull_request) Successful in 6m21s
CI / Test (pull_request) Successful in 8m18s
CI / Clean Build Sample 2 (pull_request) Successful in 7m57s
CI / Audit (CVEs) (pull_request) Successful in 8m23s
CI / Clean Build Sample 3 (pull_request) Successful in 8m1s
CI / Clean Build Sample 1 (pull_request) Successful in 8m10s
CI / Clean Build Summary (pull_request) Has been skipped
CI / Build (release) (pull_request) Successful in 5m46s
CI / Coverage (80% gate) (pull_request) Successful in 9m24s
CI / CI Report (pull_request) Successful in 4s
131d021360
privacy.rs is the privacy filter implementation; it must contain
fake test secrets to verify its own detection logic.
ci: retrigger CI (Docker network pool exhaustion on previous run)
All checks were successful
CI / Detect Changes (pull_request) Successful in 10s
CI / Clippy (pull_request) Has been skipped
CI / Format (pull_request) Has been skipped
CI / Integration Tests (pull_request) Has been skipped
CI / Benchmarks (pull_request) Has been skipped
CI / Build (release) (pull_request) Has been skipped
CI / PR Size Check (pull_request) Successful in 15s
CI / Check file lengths (pull_request) Successful in 18s
CI / Security Scan (pull_request) Successful in 21s
CI / Conventional Validation (pull_request) Successful in 41s
CI / Documentation (pull_request) Successful in 2m29s
CI / Check (linux-aarch64 compile-validation) (pull_request) Successful in 2m59s
CI / Deny (pull_request) Successful in 6m2s
CI / Audit (CVEs) (pull_request) Successful in 7m21s
CI / Test (pull_request) Successful in 7m33s
CI / Clean Build Sample 3 (pull_request) Successful in 7m15s
CI / Clean Build Sample 2 (pull_request) Successful in 7m16s
CI / Clean Build Sample 1 (pull_request) Successful in 7m16s
CI / Clean Build Summary (pull_request) Has been skipped
CI / D-02 Clean Build Gate (pull_request) Successful in 7m51s
CI / Coverage (80% gate) (pull_request) Successful in 8m10s
CI / CI Report (pull_request) Successful in 4s
3325e1acc2
jesse merged commit 9b731182ec into main 2026-04-28 22:58:17 +02:00
jesse deleted branch phase-1/feature-matrix-closure 2026-04-28 22:58:18 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
jesse/cognix!54
No description provided.