ci(admin): enforce ADR namespace custody [Story-840]

Story 840Epic None8 files · +323/−14

PR #184 · pramaan-io/pramaan-admin · merged 2026-05-24

How it flows

sequenceDiagram
  autonumber
  participant dev as Developer
  participant hook as Pre-commit
  participant ci as GitHub Actions
  participant rev as Reviewer
  dev->>hook: git commit
  hook->>hook: check-adr-namespace.mjs
  dev->>ci: push / pull request
  ci->>ci: adr-namespace-check.yml
  rev-->>ci: allow-adr-namespace-exception + rationale

What changed, file by file

New GitHub Actions workflow titled 'ADR namespace custody'. Runs the shared checker on push and pull request, providing the CI enforcement layer.

New fields: name : ADR namespace custodyrun : |

Proven with synthetic and deliberate tests

Positive control passed
`docs/notes/ADR-999-synthetic.md` accepted
Lint, type-check, tests all green
Synthetic pre-commit violation rejected
CI file-list violation rejected
PR #185 failed `adr-namespace-check`, then closed

Files changed (8)

File±
.githooks/pre-commit ★+5
.github/workflows/adr-namespace-check.yml ★+65
AGENTS.md+5 −9
docs/agent-rules/hard-rules.md+1 −1
docs/agent-rules/runtime-contract-validation.md+4 −4
docs/walkthroughs/story-840-walkthrough.html+210
package.json+1
scripts/check-adr-namespace.mjs ★+32