Skip to content

Commit 1030325

Browse files
docs: re-base the policy audit matrix on the 44-policy corpus (#310)
Merge PR #310
1 parent dce75e3 commit 1030325

5 files changed

Lines changed: 330 additions & 169 deletions

File tree

‎README.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -475,7 +475,7 @@ claude-workflow-engine/ # 369 Python files total
475475
│ ├── e2e/ # 3 end-to-end scenario tests
476476
│ └── load/ # 1 concurrency / load test
477477
│
478-
├── docs/ # 255 files — architecture docs, ADRs, runbooks, ALL policy/rule
478+
├── docs/ # 253 files — architecture docs, ADRs, runbooks, ALL policy/rule
479479
│ # .md files (flattened here, no subfolders), CONTRIBUTING.md,
480480
│ # CODE_OF_CONDUCT.md, and the GitHub issue/PR templates
481481
├── uml/ # Regenerated per pipeline run (13 types, Mermaid/PlantUML)
@@ -850,4 +850,4 @@ Key rules:
850850

851851
---
852852

853-
**Version:** 2.1.0 | **Last Updated:** 2026-08-08
853+
**Version:** 2.1.0 | **Last Updated:** 2026-08-10

‎docs/README.md‎

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ permits: `README.md`, `CLAUDE.md`, `SRS.md`, `CHANGELOG.md` and `VERSION`.
1919
| [`phase-6-sprint/`](phase-6-sprint/) | Sprint plan and issue drafts | 4 |
2020
| [`phase-7-routing/`](phase-7-routing/) | Issue-to-agent routing | 4 |
2121
| [`phase-8-alignment/`](phase-8-alignment/) | Pre-implementation alignment | 4 |
22-
| [`policies/`](policies/) | Pipeline policies | 46 |
22+
| [`policies/`](policies/) | Pipeline policies | 44 |
2323
| [`releases/`](releases/) | Per-release design notes | 7 |
2424
| [`reports/`](reports/) | Investigations and audits | 26 |
2525
| [`standards/`](standards/) | Coding and testing standards | 52 |
@@ -89,9 +89,12 @@ Numbered rules 01-46 plus per-language standards. These mirror `~/.claude/rules/
8989

9090
## `policies/` -- Pipeline policies
9191

92-
One document per policy the SDLC pipeline enforces. These mirror `~/.claude/policies/`, which is the directory `get_policies_dir()` actually reads.
92+
One document per policy the SDLC pipeline enforces. `~/.claude/policies/` is the directory
93+
`get_policies_dir()` actually reads; it is **not** a mirror of this one -- the two are different
94+
sets and nothing keeps them in step. See `docs/reports/policy-implementation-audit-v2.md`
95+
section 4.
9396

94-
<details><summary>46 file(s)</summary>
97+
<details><summary>44 file(s)</summary>
9598

9699
- [EXECUTION-SYSTEM-FIXES-SUMMARY.md](policies/EXECUTION-SYSTEM-FIXES-SUMMARY.md)
97100
- [INTELLIGENT-PROMPT-GENERATION-UPGRADE.md](policies/INTELLIGENT-PROMPT-GENERATION-UPGRADE.md)
@@ -126,9 +129,7 @@ One document per policy the SDLC pipeline enforces. These mirror `~/.claude/poli
126129
- [prompt-generation-policy.md](policies/prompt-generation-policy.md)
127130
- [quality-gate-policy.md](policies/quality-gate-policy.md)
128131
- [recovery-policy.md](policies/recovery-policy.md)
129-
- [session-chaining-policy.md](policies/session-chaining-policy.md)
130-
- [session-memory-policy.md](policies/session-memory-policy.md)
131-
- [session-pruning-policy.md](policies/session-pruning-policy.md)
132+
- [session-management-policy.md](policies/session-management-policy.md)
132133
- [task-phase-enforcement-policy.md](policies/task-phase-enforcement-policy.md)
133134
- [task-progress-tracking-policy.md](policies/task-progress-tracking-policy.md)
134135
- [test-case-policy.md](policies/test-case-policy.md)

‎docs/phase-0-reverse-engineering/as-built-prd.md‎

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ That is an absence-of-literal-token finding, not an absence-of-relationship find
182182
semantic-intent correlation (`docs/policies/*.md` intent field vs. SRS.md's 9 FR + 6 NFR = 15 entries),
183183
each mapping backed by the specific evidence already gathered in `policy_enforcement_raw.json`.
184184

185-
### 4.1 Mapped policies (32 of 46)
185+
### 4.1 Mapped policies (32 of 44)
186186

187187
| Policy | Status | Maps to |
188188
|---|---|---|
@@ -209,7 +209,7 @@ each mapping backed by the specific evidence already gathered in `policy_enforce
209209
| prompt-generation-policy.md | ENFORCED | FR-2 (Step 1) |
210210
| quality-gate-policy.md | ENFORCED | FR-2 (Step 5) |
211211
| recovery-policy.md | ENFORCED | FR-1 (Level 0) |
212-
| session-memory-policy.md | CONTRADICTED | NFR-3 |
212+
| session-management-policy.md | PARTIAL | NFR-3 |
213213
| task-phase-enforcement-policy.md | ENFORCED | FR-9 |
214214
| task-progress-tracking-policy.md | PARTIAL | NFR-3 |
215215
| test-generation-policy.md | ENFORCED | FR-2 (Step 5) |
@@ -227,7 +227,7 @@ rather than evidenced. Treated as a genuine orphan for that reason, not merely b
227227
CONTRADICTED (compare `callgraph-analysis-policy.md`, also CONTRADICTED, which *does* map cleanly to
228228
FR-3's explicit text).
229229

230-
### 4.2 Genuine orphans (14 of 46) -- policies supporting no SRS FR/NFR
230+
### 4.2 Genuine orphans (12 of 44) -- policies supporting no SRS FR/NFR
231231

232232
| Policy | Status | Reason it maps to NONE |
233233
|---|---|---|
@@ -241,18 +241,32 @@ FR-3's explicit text).
241241
| intelligent-decision-engine-policy.md | CONTRADICTED | Describes a consolidation that was never built (systems it claims to unify were deleted in v1.13); no current-topology equivalent exists to map to any FR. |
242242
| parallel-execution-policy.md | DOCUMENTED-ONLY | Describes calling-agent behavior (multiple Task/Agent tool calls), not a pipeline capability; no SRS FR covers subagent parallelism. |
243243
| proactive-consultation-policy.md | DOCUMENTED-ONLY | Self-declared deprecated; its stated replacement is two other Steps, not a distinct capability. |
244-
| session-chaining-policy.md | PARTIAL | Session parent/child/related chaining is a session-mgr MCP-server feature (external repo); no SRS FR in this repo's 15-entry corpus addresses it. |
245-
| session-pruning-policy.md | CONTRADICTED | No SRS FR governs session retention windows; NFR-3 covers checkpoint recovery, not pruning, and the mechanism is a no-op regardless. |
246244
| test-case-policy.md | DOCUMENTED-ONLY | Describes a manual-testing-mandatory-vs-optional distinction that is a behavioral instruction to the calling agent, not a pipeline gate; no SRS FR addresses it. |
247245
| user-preferences-policy.md | DOCUMENTED-ONLY | Describes a 3+-occurrence learning threshold with no SRS FR counterpart; only a passthrough context field exists in code. |
248246

249-
**Genuine orphan count: 14 of 46 (30.4%)** -- not 46 of 46. Six of the 14 (anti-hallucination,
250-
architecture-script-mapping, git-auto-commit, intelligent-decision-engine, session-pruning, plus
247+
**Genuine orphan count: 12 of 44 (27.3%)** -- not 46 of 46. Five of the 12 (anti-hallucination,
248+
architecture-script-mapping, git-auto-commit, intelligent-decision-engine, plus
251249
cross-project-patterns as the one live-but-unmapped exception) are independently CONTRADICTED or
252250
ENFORCED-but-unmapped for reasons unrelated to the SRS-ingestion gap -- i.e., even a perfect SRS
253251
correlation pass would still classify them as NONE, because the capability they describe is either
254252
broken or genuinely out of the current SRS's stated scope.
255253

254+
**Adjusted 2026-08-10 from 14 of 46; six of the 14 became five of the 12.** PR #308 replaced
255+
`session-chaining-policy.md`, `session-memory-policy.md` and `session-pruning-policy.md` with one
256+
`session-management-policy.md`. Two of the three (`session-chaining`, `session-pruning`) were
257+
orphans in the table above; the third was mapped to NFR-3 in section 4.1. **The one policy that
258+
replaced all three is mapped, not an orphan**: it is the state-persistence layer NFR-3
259+
(Reliability) covers, and it inherits that mapping directly -- so section 4.1 stays at 32 and the
260+
orphan list loses two names without gaining one. `session-pruning` was one of the six that would
261+
have stayed orphaned under perfect SRS coverage, which is why that sub-count falls to five.
262+
263+
**This is arithmetic on the existing correlation, not a new one.** No surviving policy's mapping
264+
was re-decided, and the SRS correlation that produced the 14 figure was not re-run. The findings
265+
recorded for the three superseded policies are preserved in
266+
`docs/reports/policy-implementation-audit-v2.md` section 1.4, not withdrawn: the two CONTRADICTED
267+
classifications rested on measured absences of spawn targets, and a policy being rewritten does
268+
not make that measurement false.
269+
256270
---
257271

258272
## 5. Six-Gate Validation Results

0 commit comments

Comments
 (0)