diff options
| author | Craig Jennings <c@cjennings.net> | 2026-06-05 00:15:31 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-06-05 00:15:31 -0500 |
| commit | 4779ce8a64560e68b34311ced309013c50706d39 (patch) | |
| tree | 596ca26819de9e365947cf1cf8c6ece6d5306bd8 /voice | |
| parent | 46e1d3791c97fde0b931120a5cb8d1d6b1829c02 (diff) | |
| download | rulesets-4779ce8a64560e68b34311ced309013c50706d39.tar.gz rulesets-4779ce8a64560e68b34311ced309013c50706d39.zip | |
fix(voice): make the terse cut a mandatory final pass
Pattern #38 (omit needless words) was one of 41 walked mid-list, so it got glossed as a checkbox instead of the real "cut it in half" sweep. A commit message went out today needing two manual Orwell-walk requests before it read terse, even though /voice personal had run.
The rule already said to cut hard. The gap was position. Buried in the middle of the walk, #38 lost to the categorical detectors that come back clean while the text still runs a third too long.
I moved it to an explicit standalone last step in the SKILL.md Process, run after every other pattern and right before the draft is shown. Now the first draft the user sees is already terse, not terse only after they ask. Profile §38 gains an execution-position rule and a history entry. The commits.md publish gate points at #38 as the last pass.
Diffstat (limited to 'voice')
| -rw-r--r-- | voice/SKILL.md | 4 | ||||
| -rw-r--r-- | voice/references/voice-profile.org | 4 |
2 files changed, 7 insertions, 1 deletions
diff --git a/voice/SKILL.md b/voice/SKILL.md index 1ed40a4..664a6a6 100644 --- a/voice/SKILL.md +++ b/voice/SKILL.md @@ -355,7 +355,8 @@ See `voice/references/voice-profile.org` §41 for problem, basis, examples, and - Maintains appropriate tone for the register 5. Present a draft humanized version. 6. Run a final anti-AI pass: prompt "What makes the below so obviously AI generated?" Answer briefly with remaining tells. Then prompt "Now make it not obviously AI generated" and revise. -7. Present the final version. +7. **Terse pass — mandatory and last (prose + personal modes).** Before presenting any draft, walk pattern #38 again as a standalone final action: read each sentence and try to cut it in half, keeping only the words that change meaning. Run it on its own here, not folded into step 3's walk — it is the most-skipped pattern and the bloat it catches is the first thing a reader notices, so a draft that cleared the other 40 patterns still routinely runs a third too long. A draft that has not been through this pass is not ready to show; presenting one is a defect in the same class as skipping the skill. General mode skips this step — academic and third-party registers keep their transition markers. +8. Present the final version. ## Output Format @@ -366,6 +367,7 @@ Provide: 4. **Final rewrite** — revised after the anti-AI audit 5. **Pattern-39 warnings** (personal mode only) — any public-artifact scope flags 6. **Summary of changes** — list of patterns that fired (e.g., "patterns 4, 7, 13, 22 in general mode") +7. **Terse pass** (prose + personal) — state that the mandatory final #38 cut ran on the draft being presented. ## Full Example — Personal Mode diff --git a/voice/references/voice-profile.org b/voice/references/voice-profile.org index 1490fae..ab37ba1 100644 --- a/voice/references/voice-profile.org +++ b/voice/references/voice-profile.org @@ -1232,6 +1232,9 @@ Prose and personal modes. General mode keeps the softer §22 because academic re *** Rule Two cuts. First strip the soft rhetorical padding ("worth noting", "it's important to understand", "as you can see", "needless to say", "obviously", "of course", "in essence", "fundamentally"). Then run the general omit-needless-words sweep the padding list only samples: read each sentence and cut or collapse every word and clause that can go without losing meaning, not only the named phrases. Forcing test, per sentence: try to delete half of it and keep only what changes meaning. +*** Execution position (prose + personal) +§38 is not just one pattern in the walk — it is the mandatory *last* pass before any draft is presented. The SKILL.md Process makes it an explicit standalone final step, run after every other pattern. The reason is empirical: a draft that cleared the other 40 patterns still routinely runs a third too long, because ordinary verbosity matches no named trigger and the categorical detectors come back clean while the text is still bloated. Folded into the general walk, §38 gets glossed as a wordlist match. As a separate final step it gets the real per-sentence "delete half of it" sweep. A public draft shown without this pass is a defect in the same class as skipping the skill entirely. + *** Problem Tier 1 omit-needless-words (§26) catches rigid offenders ("the fact that", "in order to"). The original §38 added a named padding list ("worth noting", "obviously"). But a draft can clear both and still run a third too long, because ordinary verbosity matches no named trigger: "that already merged via" for "landed on", "with it still in the PR, the same fix lands" for "keeping it re-lands the fix", restated subjects, throat-clearing lead-ins, clauses the reader already has. Those slip the categorical detectors silently — the walk comes back clean while the text is still bloated. So §38 is a real walk step, not a wordlist match: after the named padding, read each sentence and try to delete half of it. Academic registers keep the transition markers, so the aggressive cut stays prose and personal only. @@ -1267,6 +1270,7 @@ Two passes. (1) Named padding phrases: "worth noting", "it's important to unders - Original SKILL.md entry: rhetorical-padding cut for Craig's authored prose. - 2026-05-29: migrated to this file as the canonical home per the pairing rule. - 2026-06-02: generalized from a named-padding-list detector to a real omit-needless-words walk step. A PR-review comment cleared the §22/§23/§26/§38-padding patterns yet still ran a third too long on ordinary verbosity; the wordlist matched none of it. Renamed "Rhetorical Padding" to "Omit Needless Words", added the per-sentence "delete half of it" forcing test and the generic-verbosity example pair above. Craig's call. +- 2026-06-05: elevated to the mandatory final pass in the SKILL.md Process (new step 7). The pattern existed and was being walked, but got glossed as one of 41; a commit message went out needing two manual Orwell-walk requests before it read terse. Made it an explicit standalone last step that runs before any draft is shown, so the terse cut happens before Craig sees the draft rather than after he asks for it. Added the "Execution position" subsection above. Craig's call. ** §39 Public-Artifact Scope Check |
