sub-editor
Grammar, punctuation and structure sub-editing of legal drafting — register-independent correctness pass mapped to three indexed books: Practical English Usage (Swan), Oxford A-Z of Grammar and Punctuation (Seely), Oxford Guide to Plain English (Cutts). Use for the sub-editor pass on any drafted or rewritten passage, for grammar/punctuation queries on legal text, or to verify grammar claims against a real book pinpoint. Built standalone — does not depend on the biber register skills and does not alter their pipeline.
Source: .opencode/skills/sub-editor/SKILL.md — site rebuilt 2026-09-05.
sub-editor — grammar, punctuation & structure for legal drafting¶
The correctness and clarity pass on drafted text, backed by three indexed books. It applies to any document — letters, contracts, pleadings, submissions, advices, emails — regardless of register. It is knowingly kept separate from the biber register skills: those control register (dimension profiles); this controls defect (grammar, punctuation, structure). A sentence can be perfectly in-register and still defective.
The three books (division of labour)¶
| Book | ID | Role | Citation |
|---|---|---|---|
| Practical English Usage, 3rd edn (Swan 2005) | PEU |
correctness: agreement, tense, prepositions, articles, countability, idiom | PEU <entry_no> e.g. PEU 96 |
| Oxford A-Z of Grammar and Punctuation, rev. 2nd edn (Seely 2013) | AZ |
terminology & punctuation: what the categories are, punctuation rules | AZ <headword> e.g. AZ active voice |
| Oxford Guide to Plain English, 5th edn (Cutts 2020) | CUTTS |
clarity & structure: short sentences, smothered verbs, noun strings, word order, punctuation choices | CUTTS <chapter> e.g. CUTTS 6 |
Do not use a fourth book to answer grammar questions. If the indexed books cannot answer, say so — do not improvise.
Indexes (all in references/)¶
| File | Contents |
|---|---|
references/peu_index.csv |
613 entries: entry_no, title, snippet |
references/az_index.csv |
637 alphabetised headwords: headword |
references/cutts_index.csv |
30 of 30 chapters: chapter_no, title, printed_page, words, snippet |
references/text/peu.txt |
full text layer with <<<PAGE N>>> markers (pdf page) |
references/text/az.txt |
full text layer |
references/text/cutts.txt |
full text layer |
references/books/*.pdf |
the three source PDFs |
Verified pinpoints (confirmed during build)¶
| Claim | Pinpoint |
|---|---|
PEU entries are numbered; body shows 34 alike, cross-refs see 96, see 97-98 |
PEU 34, PEU 96, PEU 97-98 |
| "count back from the present" (ago/before) | PEU 34 vicinity |
| Smothered verbs: "make an application" instead of "apply" | CUTTS 7 p. 78 (PDF p. 117) |
| Passive percentage formula 100 × (passives ÷ sentences) | CUTTS 6 p. 68 |
| Semicolons in lists with internal commas | CUTTS 10 p. 98 |
| "abstract noun"/"concrete noun" distinction | AZ abstract noun |
| Attributive vs predicative adjectives ("only predicative" cases) | AZ adjective |
| Active voice entry exists | AZ active voice |
Index gaps (known — check before citing)¶
- The indexes were auto-extracted. Always quote verbatim from the text file; never rely on a snippet alone. If the verbatim quote does not support the claim, the claim is wrong.
- Cutts chapter titles may show OCR garble in the CSV (e.g. "clichés"
reads as
clich�s); the chapter numbers and printed page numbers are the reliable keys. The published Contents list is at<<<PAGE 8>>>. - Peu index may miss a few entries whose titles broke across lines.
- The A-Z headword list was filtered heuristically; a few headwords may
be missing or spurious. If a headword is absent, search
az.txtfor a distinctive phrase before concluding the book lacks the entry.
Workflow (auditor model — audit, never edit-in-pass)¶
The sub-editor is an AUDITOR, not an in-pass editor. A single agent that edits while checking misses defect classes in documents of any size (lesson: "The 2019 Rules ... does not provide" — plural subject, singular verb — slipped a whole-document pass because short sentences were not reviewed). The pass is therefore split:
Pass 0 — Mechanical screen (always)¶
Run the screen before anything else:
python tools/se_screen.py <draft.md> (this folder's tools/se_screen.py).
It flags: subject-verb agreement candidates, cross-sentence pronoun shifts,
unanchored paragraph-initial pronouns (It/This/That/They), comma splices,
smothered verbs, doubled words, word-level classics, double spaces,
hyphen-as-dash, missing intro commas, >35-word sentences.
It over-flags deliberately — every flag is verified, not adopted.
Pass 1 — Defect pass (grammar, punctuation, clarity)¶
Invoke the sub-editor auditor subagent (sub-editor, the agent at
.opencode/agent/sub-editor.md); it runs the screen, then reads the whole
draft — long AND short sentences — and returns findings with pinpoints.
If the auditor is unavailable, run the pass yourself with the same
discipline: every sentence, short included; no skipping by length.
Run the Seven Defect Checks on every sentence:
- Agreement (subject-verb, pronoun-antecedent, singular/plural) —
PEUagreement entries. Legal drafting fails this most often on "the pursuer's... they" shifts, on compound subjects, and on plural-subject + singular-verb ("the Rules ... does"). 1a. Unanchored paragraph-initial pronoun — a paragraph may not open with a bare definite pronoun ("It is incompetent in its own terms.", "This is misleading.", "They are not said to be incompetent.") unless the antecedent is stated in the same paragraph. Every paragraph carries its own subject: "The Motion is incompetent in its own terms." (lesson: para 3 of the opposition, 2026-08-15 — "It" never resolved). Applies toIt / This / That / They / These / Thosein paragraph-initial position. - Smothered verbs / nominalization overreach — action buried in a
noun phrase with a weak verb.
CUTTS 7. - Missing or wrong prepositions —
PEUpreposition entries (e.g. "different from", "comply with"). - False formality — heavy formal sequences that buy nothing.
CUTTS 4. - Punctuation of the sentence (comma splice, missing comma after
introductory elements, apostrophes, semicolon misuse) —
AZpunctuation headwords,CUTTS 10. - Noun strings / knotty modifier stacks —
CUTTS 15. - Wordiness — filler, redundancy, pleonasm, "it is submitted that"
bloat where the verb can carry the load.
CUTTS 5,CUTTS 9.
For each defect found: original sentence → corrected sentence → pinpoint
(PEU <no> / AZ <headword> / CUTTS <chapter>) → one-line reason.
Add a [VERIFY] mark when the pinpoint needs checking against the text
file before an agent may rely on it.
Pass 2 — Structure pass (paragraphs, lists, cross-refs) — inside the auditor¶
- Paragraph logic: one job per paragraph; the first sentence anchors
the point.
CUTTS 2,CUTTS 3. - Lists: when 3+ parallel items appear in prose, propose a vertical
list.
CUTTS 8. - Cross-references: reduce them; repeat the short phrase instead.
CUTTS 16. - Sentence length: flag any sentence over 35 words for split or
re-timing.
CUTTS 3. - Negative-to-positive: recast "not...unless" where a positive form
exists.
CUTTS 9.
Citation rules (the no-fabrication contract)¶
- Cite only index IDs you have checked in the text file.
- Quote verbatim. Paraphrase only after quoting.
- Never cite a page number you have not read from a
<<<PAGE N>>>marker. - If the index lacks the entry, search the text file for a distinctive phrase before concluding the book lacks it.
- Never cite a fourth book. If the three cannot answer, say so.
Output format¶
DEFECTS:
1. [original] -> [corrected] (PEU 96 / AZ semicolon / CUTTS 7) reason
2. ...
VERIFY: [pinpoints that need a text-file check before use]
STRUCTURE:
- [paragraph/list/cross-ref finding with CUTTS chapter]
SUMMARY: [count of defects, count of verify-pending pinpoints]
Short query: AZ comma → answer + verbatim quote + pinpoint.
Verdict gate (mandatory)¶
- The auditor returns PASS only with zero findings. Non-zero findings = FAIL; the principal applies the fixes deliberately (never blindly) and re-audits until PASS.
- The auditor never edits. Fixes are applied outside the audit, then the document returns for re-audit.
Known limitation¶
The books are indexed but the index is uncurated auto-extraction. Until a manual QA pass over the CSVs is done, treat every pinpoint as verify-before-quote. The built-in Verify step is mandatory, not optional.