Skip to content

Commit 47ad4fb

Browse files
committed
Standardize workspace: Justfile migration and A2ML directive cleanup
1 parent a1cbb29 commit 47ad4fb

4 files changed

Lines changed: 255 additions & 4 deletions

File tree

.machine_readable/6a2/STATE.a2ml

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,18 @@
55
[metadata]
66
project = "sanctify-php"
77
version = "0.2.0"
8-
last-updated = "2026-04-04"
8+
last-updated = "2026-04-18"
99
status = "active"
10-
crg-grade = "C"
10+
crg-grade = "E"
11+
crg-grade-previous = "C"
12+
crg-grade-demoted = "2026-04-18"
13+
crg-grade-notes = "Demoted C->E per docs/governance/CRG-AUDIT-2026-04-18.adoc: build/test at HEAD fails (Parser module-header break), no canonical dogfooding section, and no READINESS document."
1114

1215
[project-context]
1316
name = "sanctify-php"
1417
completion-percentage = 95
15-
phase = "CRG C Complete - Comprehensive Test Coverage"
16-
crg-status = "C (Unit + Smoke + Build + P2P + E2E + Reflexive + Contract + Aspect + Benchmarks)"
18+
phase = "Build recovery after CRG demotion"
19+
crg-status = "E (build break at HEAD; see docs/governance/CRG-AUDIT-2026-04-18.adoc)"
1720

1821
[recent-work]
1922
completed-date = "2026-04-04"
Lines changed: 172 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,172 @@
1+
// SPDX-License-Identifier: PMPL-1.0-or-later
2+
3+
= Sanctify-PHP — CRG Audit (2026-04-18)
4+
Codex
5+
2026-04-18
6+
:toc:
7+
:sectnums:
8+
9+
== Scope and Standard
10+
11+
Evaluates `verification-ecosystem/sanctify-php` against *Component Readiness
12+
Grades v2.0 (STRICT)*.
13+
14+
- Standard: `standards/component-readiness-grades/COMPONENT-READINESS-GRADES.md`
15+
- Criteria boilerplate: `rsr-template-repo/docs/governance/CRG-CRITERIA.adoc`
16+
- Self-declared grade source:
17+
* `.machine_readable/6a2/STATE.a2ml` -> `crg-grade = "C"`, `version = "0.2.0"`, `completion-percentage = 95`
18+
- Audit date: 2026-04-18
19+
20+
This audit grades the repo *as-is today*, not aspirationally.
21+
22+
== v2.0 Strictness Recap
23+
24+
[cols="1,3,4"]
25+
|===
26+
| Grade | Release Stage | Hard Requirement (v2.0)
27+
28+
| X | None | Untested.
29+
| F | Reject | Harmful, wasteful, or superseded.
30+
| E | Pre-alpha | >=1 test, failures documented.
31+
| D | Alpha | Test matrix + scope documented + *RSR compliance mandatory*.
32+
| C | Alpha-stable | Dogfooded, CI green, *deep per-file + per-directory annotation*.
33+
| B | Beta | 6+ *diverse* external targets, issues fed back.
34+
| A | Stable | Real-world external feedback confirms value; no harm.
35+
|===
36+
37+
== Evidence Inventory (verified 2026-04-18)
38+
39+
=== Structural compliance
40+
41+
[cols="2,1,3"]
42+
|===
43+
| Item | State | Source
44+
45+
| RSR workflows (17+)
46+
| PRESENT (22)
47+
| `.github/workflows/`
48+
49+
| `.machine_readable/6a2/` canonical A2ML
50+
| PRESENT
51+
| `STATE/META/ECOSYSTEM/AGENTIC/NEUROSYM/PLAYBOOK`
52+
53+
| `0-AI-MANIFEST.a2ml`
54+
| PRESENT
55+
| Root
56+
57+
| `EXPLAINME` + READINESS
58+
| PARTIAL
59+
| `EXPLAINME.adoc` present; no `docs/READINESS.md` or `docs/READINESS.adoc`
60+
61+
| `guix.scm` + `flake.nix`
62+
| PRESENT
63+
| Root
64+
65+
| `.well-known` baseline (`security.txt`, `ai.txt`, `humans.txt`)
66+
| PRESENT
67+
| `.well-known/`
68+
69+
| Container policy
70+
| N/A
71+
| No `Containerfile`/`Dockerfile` artifacts in this repo
72+
73+
| Contractile trident
74+
| PRESENT
75+
| `.machine_readable/INTENT/TRUST/MUST/ADJUST.contractile`
76+
77+
| `Justfile` + no `Makefile`
78+
| PRESENT
79+
| Root `Justfile`; root `Mustfile`; no `Makefile`
80+
|===
81+
82+
=== Test/build evidence
83+
84+
Declared evidence:
85+
86+
- `TEST-NEEDS.md` claims CRG-C with 150+ tests and benchmarks.
87+
- CI `haskell.yml` runs `cabal build --enable-tests --enable-benchmarks all` and `cabal test all` on push/PR to `main`.
88+
89+
Executable evidence (local, 2026-04-18):
90+
91+
- `cabal test all --test-show-details=direct` run to mirror CI intent.
92+
- Dependency resolution succeeded, but build failed at HEAD:
93+
* `src/Sanctify/Parser.hs:1:1: File name does not match module name: Saw 'Main', Expected 'Sanctify.Parser'`
94+
* Root cause in-file: non-comment token (`//! ...`) appears before `module Sanctify.Parser`, invalidating module-header placement.
95+
96+
Current state is build-broken, so C claims are not currently valid.
97+
98+
=== Annotation depth and dogfooding evidence
99+
100+
- No canonical `[dogfooding-status]` section in `STATE.a2ml`.
101+
- No `DOGFOOD-LOG` found.
102+
- Implementation-subtree orientation coverage is weak (`7/24` first-level dirs under key roots have local README files).
103+
104+
These fail C strictness even if build were green.
105+
106+
=== External validation
107+
108+
- No `[external-targets]`, `[issues-fed-back]`, or `[field-signal]` sections in `STATE.a2ml`.
109+
110+
B/A are unsupported.
111+
112+
== Grade x Evidence Matrix
113+
114+
[cols="1,1,3,3"]
115+
|===
116+
| Grade | Met? | Evidence supporting | Evidence against / gaps
117+
118+
| X
119+
| n/a
120+
| Tests and CI scripts exist
121+
| —
122+
123+
| F
124+
| n/a
125+
| No harmful/superseded signal in this audit
126+
| —
127+
128+
| E
129+
| ✓
130+
| Repo has substantial tests and failures are now concretely documented
131+
| —
132+
133+
| D
134+
| ✗
135+
| Structural baseline mostly present
136+
| Build/test at HEAD fails; cannot presently claim Alpha stability floor
137+
138+
| C
139+
| ✗
140+
| Historical test inventory is substantial
141+
| Build broken, no canonical dogfooding evidence, no READINESS doc, weak subtree orientation
142+
143+
| B
144+
| ✗
145+
| —
146+
| No external-target evidence
147+
148+
| A
149+
| ✗
150+
| —
151+
| No field-signal evidence
152+
|===
153+
154+
== Verdict
155+
156+
*Current CRG grade: **E (Pre-alpha)**.*
157+
158+
The self-declared `C` is an overclaim under v2.0 STRICT.
159+
160+
Key blockers:
161+
162+
1. Fix compile break in `src/Sanctify/Parser.hs` so `cabal build/test` runs cleanly.
163+
2. Add canonical dogfooding evidence (`[dogfooding-status]` + log).
164+
3. Add canonical `docs/READINESS.md`/`.adoc`.
165+
4. Improve per-directory orientation coverage in implementation subtrees.
166+
167+
== Related Files
168+
169+
- `.machine_readable/6a2/STATE.a2ml` — updated `C -> E` with audit reference.
170+
- `docs/governance/CRG-LIFT-PLAN-2026-04-18.adoc` — E->D->C remediation path.
171+
172+
_End of audit._
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
// SPDX-License-Identifier: PMPL-1.0-or-later
2+
3+
= Sanctify-PHP — CRG Lift Plan (E -> D -> C)
4+
Codex
5+
2026-04-18
6+
:toc:
7+
:sectnums:
8+
9+
== Context
10+
11+
`docs/governance/CRG-AUDIT-2026-04-18.adoc` demoted Sanctify-PHP from `C` to
12+
`E` under CRG v2.0 STRICT.
13+
14+
This plan defines the minimum path to recover to `D`, then to `C`.
15+
16+
== Exit Criteria for D
17+
18+
1. `cabal build --enable-tests --enable-benchmarks all` succeeds at HEAD.
19+
2. `cabal test all` succeeds at HEAD (locally and in CI).
20+
3. Build break in `src/Sanctify/Parser.hs` is fixed (module-header placement issue removed).
21+
4. Current state is reflected honestly in `.machine_readable/6a2/STATE.a2ml`.
22+
23+
== Exit Criteria for C
24+
25+
1. Canonical `[dogfooding-status]` exists in `STATE.a2ml` with dated evidence.
26+
2. Dogfooding log exists (`docs/practice/DOGFOOD-LOG.adoc` or equivalent).
27+
3. Canonical `docs/READINESS.md`/`.adoc` exists and is aligned to v2.0 strict criteria.
28+
4. Per-directory orientation coverage is improved in key implementation trees (`src/`, `app/`, `test/`, `tests/`).
29+
5. CI green evidence is current and linked from state/readiness docs.
30+
31+
== Work Packages
32+
33+
=== WP1 — Build Recovery (E -> D blocker)
34+
35+
- Remove or correct the pre-module token in `src/Sanctify/Parser.hs` so `module Sanctify.Parser` is the first declaration context.
36+
- Re-run:
37+
* `cabal build --enable-tests --enable-benchmarks all`
38+
* `cabal test all --test-show-details=direct`
39+
- Record pass/fail outputs in an audit note.
40+
41+
=== WP2 — Canonical State and Readiness
42+
43+
- Add `docs/READINESS.md` or `docs/READINESS.adoc` with:
44+
* current grade/date
45+
* criteria-by-criteria evidence
46+
* blockers to next grade
47+
- Keep `.machine_readable/6a2/STATE.a2ml` synchronized with audit outcomes.
48+
49+
=== WP3 — Dogfooding Evidence (D -> C blocker)
50+
51+
- Add `[dogfooding-status]` section to `STATE.a2ml`.
52+
- Start dogfood log with dated, reproducible runs and links to evidence.
53+
54+
=== WP4 — Annotation Depth
55+
56+
- Add local README orientation files for missing first-level implementation subdirs.
57+
- Minimum content:
58+
* purpose/boundary
59+
* entrypoints
60+
* invariants/safety constraints
61+
* how to run tests
62+
63+
== Sequencing
64+
65+
1. WP1 first (build recovery is hard gate).
66+
2. WP2 in parallel with WP1 once build is green.
67+
3. WP3 and WP4 for C readiness.
68+
4. Re-run CRG audit after each gate (E->D, then D->C).
69+
70+
_End of lift plan._

docs/governance/README.adoc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
= Governance
2+
3+
CRG governance artifacts:
4+
5+
* link:CRG-AUDIT-2026-04-18.adoc[CRG-AUDIT-2026-04-18.adoc]
6+
* link:CRG-LIFT-PLAN-2026-04-18.adoc[CRG-LIFT-PLAN-2026-04-18.adoc]

0 commit comments

Comments
 (0)