Implements the 4-phase documentation reorganization master plan. - Consolidation: Merged brief/, handoff/, planning/, and decisions/ into briefs/, handoffs/, plans/, and adr/ respectively (101 ADRs relocated) - Root Cleanup: Relocated HANDOFF-gpt55-*.md and key top-level docs (runtime_contracts.md, etc.) to canonical folders. Added superseded alerts. - Indices & Navigation: Created docs/README.md navigation document, docs/sessions/README.md index, docs/adr/README.md index - Note: Also includes prior commit adding ADR-0200+ corpus hygiene governance (ADR-0225, dependency map, backfilled cross-references)
7 KiB
ADR-0085 Content Style Pass v2 — Brief
Audience: Same cheaper dev agent that did PR #73 (v1 fluency pass). You can re-read ADR-0085-content-style-pass-brief.md for context but most of it still applies — this v2 narrows scope to the two patterns v1 deferred or missed.
Mission: Apply targeted 3sg-agreement and plural-after-quantifier fixes to the existing gloss entries. ~18 candidate entries identified up front. No other patterns in scope.
Estimated effort: very small — ~18 one-character edits.
What v1 covered (already on main as PR #73)
- Article insertion (
Light is a visible medium...←Light is visible medium...) - Infinitive insertion (
To recall means to get memory...←To recall means get memory...) - Copula insertion (
Something is bad when it is different...←... when it different)
All shipped. Closure verifier exits 0, cognition eval byte-identical. The composer surfaces now read well except for two remaining patterns.
What v2 covers
Pattern A — 3sg present-tense agreement after relative pronouns
Glosses with what {VERB}, who {VERB}, that {VERB}, or which {VERB} where {VERB} is in bare form and the implied subject is singular. The verb needs an s.
| pack | lemma | before | after |
|---|---|---|---|
| en_core_causation_v1 | effect | "what cause make" |
"what causes make" (and make → makes too — see note) |
| en_core_cognition_v1 | beginning | "start before what follow" |
"start before what follows" |
| en_core_cognition_v1 | creation | "start of what make" |
"start of what makes" |
| en_core_cognition_v1 | definition | "word that explain meaning" |
"word that explains meaning" |
| en_core_cognition_v1 | evidence | "what support truth" |
"what supports truth" |
| en_core_cognition_v1 | light | "a visible medium that reveal truth" |
"a visible medium that reveals truth" |
| en_core_cognition_v1 | reason | "what explain why" |
"what explains why" |
| en_core_cognition_v1 | symbol | "image that mean more" |
"image that means more" |
| en_core_meta_v1 | example | "one case that make a point visible" |
"one case that makes a point visible" |
| en_core_meta_v1 | mind | "part that think and know" |
"part that thinks and knows" |
Note on effect — both verbs need the s: "what causes makes" reads wrong (looks like two finite verbs). The actual fix is "what a cause makes" (insert article) — that converts the second verb to make the gloss grammatical. Worth your judgment: either rewrite OR accept the slight awkwardness OR leave effect for a future pass.
Modal verbs are NOT 3sg. Glosses like "who can know and do" (en_core_cognition_v1/person) are CORRECT — can is a modal, the bare verbs after it (know, do) take no s. Do NOT change those.
Pattern B — Plural agreement after quantifier / preposition
Glosses with between {N}, among {N}, of {N}, two {N}, three {N}, many {N}, etc., where {N} is a count noun in singular form. The noun needs an s.
| pack | lemma | before | after |
|---|---|---|---|
| en_core_attitude_v1 | broad | "is general in many part" |
"is general in many parts" |
| en_core_cognition_v1 | context | "relation between word" |
"relation between words" |
| en_core_cognition_v1 | order | "relation of part to part" |
"relation of parts to parts" |
| en_core_cognition_v1 | style | "way of voice and word" |
"way of voice and words" (note: voice is mass, leave it) |
| en_core_spatial_v1 | between | "in relation to two place" |
"in relation to two places" |
Three borderline cases — apply your judgment, default to leave-alone if uncertain:
| pack | lemma | gloss | judgment |
|---|---|---|---|
| en_core_attitude_v1 | factual | "is of fact and truth" |
Both fact and truth are mass-noun-ish in this context. Probably leave. |
| en_core_cognition_v1 | therefore | "then because of reason" |
reason here is mass-noun-ish ("reasoning"). Probably leave. |
| en_core_meta_v1 | argument | "group of reason for a point" |
reason here is count ("group of reasons"). Apply fix → "group of reasons for a point". |
What v2 does NOT do
- No edits beyond the patterns above. Other awkward surfaces (if any) are out of scope.
- No edits to
definitional_atoms,predicates_invited,pos,lemma,definition_version— same rules as v1. - No edits to Greek/Hebrew packs.
- No edits to the primitives pack.
- No new fluency patterns invented in this pass.
Phase 0 — Baseline (mandatory)
PYTHONPATH=. python3 -m core.cli eval cognition > baseline.json
Phase 1 — Apply Pattern A edits (10 entries)
For each row in the Pattern A table above, edit the gloss in place. Append "adr-0085-style-v2:reviewed:2026-05-22" to provenance_ids.
Phase 2 — Apply Pattern B edits (5 confident + 1 borderline-accepted entry = 6 total)
For each row in the Pattern B table where the column says "→ ...", edit the gloss in place. Append the same provenance tag.
Phase 3 — Refresh checksums
Same per-pack checksum-refresh shell snippet as v1 (in ADR-0085-content-style-pass-brief.md Phase 3).
Phase 4 — Verify
All four must pass:
PYTHONPATH=. python3 scripts/verify_definitional_closure.py
# Expected: 0 unresolved / 0 mismatches
PYTHONPATH=. python3 -m pytest tests/test_adr_0084_integration_closure.py -q
# Expected: 30 passed
PYTHONPATH=. python3 -m core.cli eval cognition > /tmp/eval_post.json
diff /tmp/eval_post.json baseline.json
# Expected: empty diff
PYTHONPATH=. python3 -m core.cli test --suite smoke -q
PYTHONPATH=. python3 -m core.cli test --suite packs -q
If core eval cognition drifts byte-from-byte from baseline.json, STOP and roll back the edit that caused it.
Why this v2 exists separately from a single bigger v1
v1 covered the patterns that could be reliably detected via simple substring search (missing articles, missing infinitives, missing copulas). 3sg-agreement and plural-after-quantifier need a small POS-aware classifier that wasn't worth building for the v1 scope. v2 ships the concrete row-by-row edit list up front so no classifier is required — you just apply the table.
Deliverables
- Edits on branch
feat/adr-0085-content-style-pass-v2. - Draft PR titled
feat(packs): ADR-0085 content style pass v2 (3sg + plural agreement)with this report:
## v2 fluency summary
- pattern A (3sg): N of 10 applied, M skipped (list which + why)
- pattern B (plural): N of 5+1 applied, M skipped
- closure verifier: exit 0
- integration test: 30/30
- cognition eval: byte-identical to baseline
- packs lane: pass
## sample 10 surfaces post-v2
(framed via the composer's POS table — same format as v1's report)
- Mark Draft. Human reviews before merge.
Hard rules
Same as v1. Do not touch code. Do not change atoms / predicates / pos / lemma / definition_version. Cognition eval must stay byte-identical. Closure verifier must exit 0.