Commit Graph

4 Commits

Author SHA1 Message Date
Boden Fuller 3e870eb148 fix(validation): close postmortem follow-up beads 2026-05-17 01:46:45 -04:00
Boden Fuller ee763750ba docs: rename PRACTICE.md to PRACTICE-REGISTRY.md + add CDLC narrow-waist doctrine
Rescope PRACTICE.md into PRACTICE-REGISTRY.md: it now owns only the
practice-slug lineage registry, not product positioning or CDLC doctrine.
Update all references (schema, validate-practice-citations.sh, bats test,
architecture-terms.md, documentation-index.md, aggregate.go comment).

Introduce the Context Density Rule as a canonical domain concept: every
high-value context token carries intent, boundary, evidence, decision,
constraint, or next action. New domain entry context-density-rule.md (+
codex mirror). Thread the BDD/Gherkin + DDD + Hexagonal + TDD narrow waist
through cdlc.md, README.md, PRODUCT.md, GOALS.md, and the rpi/domain/
post-mortem skills. Sync codex artifacts.
2026-05-15 20:16:53 -04:00
Boden Fuller 9e981d5907 fix(ci): close practice provenance validator gaps 2026-05-12 19:09:20 -04:00
Boden Fuller 254138fabe feat(practice): practice-citation derivation graph + advisory CI gate
Makes PRACTICE.md the derivation root for every Primitive in the repo. Each
skill, hook, eval suite, CLI command, and schema will declare a
`practices: [slug, slug, ...]` derivation citing kebab-case slugs from
PRACTICE.md's canonical registry.

Adds:
- PRACTICE.md "## Practice slugs (canonical registry)" — 45 stable slugs
  across six eras (2024-2026, 2018-2023, 2013-2017, 2003-2012, 1996-2003,
  pre-1996). Each cites the engineer/book that proved the practice.
- scripts/validate-practice-citations.sh — walks skills/, hooks/, evals/,
  cli/cmd/ao/, schemas/ and reports primitives missing or invalid-citing.
  Report-only by default; --strict exits 1 on findings; --json for CI.
- .github/workflows/validate.yml practice-citations advisory job:
  continue-on-error: true, uploads JSON artifact, path-filtered to the
  Primitive-producing dirs.

CI policy parity satisfied per soc-9zr learning:
- summary.needs[] includes practice-citations
- summary echo block includes the job
- AGENTS.md "Advisory Job Triage SLAs" row added (14d SLA)
- AGENTS.md "non-blocking jobs" prose updated (7 advisory total)
- AGENTS.md "CI Jobs and What They Check" row added

Bootstrap order is (a): ship the gate in report-only, observe the
backfill cost (current state: 754 primitives scanned, 0 declared,
754 missing), backfill in slices, then promote to required.

Local gates:
- YAML lint OK
- validate-ci-policy-parity: PASS (47 jobs; 7 non-blocking)
- scripts/validate-practice-citations.sh: 45 slugs parsed
- scripts/pre-push-gate.sh --fast: passed
2026-05-10 18:09:11 -04:00