From 239d4a0fc5b49fd7622d66ba66f1444461a9d83d Mon Sep 17 00:00:00 2001 From: David F Glidden Date: Wed, 26 Aug 2026 18:28:55 +0200 Subject: [PATCH] docs(governance): stage REVIEWED-130 for steward placement Jurist draft, verbatim and copy-paste-clean. The executor cannot write REVIEWED.md (Constitutional Constraint #1), so this is staged rather than placed. Carries an executor note that JOINS rather than edits: section 9 clause about the git-lfs hook pollution is still true as written (it WAS unfiled at time of writing, it DID recur twice on 2026-08-26), but it is now PENDING-165 and the history runs back to 2026-03-20, when the shims were committed and tracked for four weeks. Recorded so placement is not silently placing a clause already known to be superseded in scope. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01NvZAKSf9aqratbqHbU9LK5 --- .../REVIEWED-130-draft-for-placement.md | 121 ++++++++++++++++++ 1 file changed, 121 insertions(+) create mode 100644 claude/governance/REVIEWED-130-draft-for-placement.md diff --git a/claude/governance/REVIEWED-130-draft-for-placement.md b/claude/governance/REVIEWED-130-draft-for-placement.md new file mode 100644 index 0000000..2f21a11 --- /dev/null +++ b/claude/governance/REVIEWED-130-draft-for-placement.md @@ -0,0 +1,121 @@ +# REVIEWED-130 — draft for placement + +Drafted by the jurist 2026-08-26. **Place verbatim** — copy the fenced block below into +`~/REVIEWED.md`. The executor cannot write that file (Constitutional Constraint #1). + +⚠ The executor has NOT edited the block. One clause dated itself and remains accurate; see the +executor note beneath it, which **joins and does not replace**. + +``` +## REVIEWED-130 — PENDING-163 — The pre-commit size guard's printed remedy +**Date:** 2026-08-26 +**Decision:** AUTHORIZED — option (i), reworded per two jurist edits. Option (ii) REJECTED on the +merits. Option (iii) withdrawn as already built. +**Notes:** + +1. RETROSPECTIVE IN PART, and recorded as such. The message change landed at 2408032 on the +steward's in-session 'go', before this block was drafted. This ruling records that authorization; +it does not precede it. The line-45 whitespace [FIX] (ecee76b) landed earlier under executor +authority and required no ruling. + +2. WHAT WAS WITHDRAWN, and it is the reason the item reached the steward at all. The item's claim +that option (ii) 'widens what may be committed everywhere' is false by a category: +`git cat-file -s :"$file"` reads the staged blob, so an LFS-tracked file measures ~133 bytes and a +plain file still measures its full size and is still refused. (ii) admits exactly what someone +deliberately declared. Withdrawn by the executor as false (Amendment 2). The error made (i) look +safer and (ii) costlier than either was, and that mis-sizing is what constituted the 'policy +question'. + +3. OPTION (ii) REJECTED ON THE MERITS, NOT DEFERRED ON THE ENDPOINT. Two grounds exist and they +have different lifespans. The contingent one — git.skemantix.com serves no LFS endpoint — would +support only a DEFERRAL, since a repo pointing elsewhere changes it. The merits ground does not: +LFS stores a full opaque blob per version and cannot delta, measured today at 6 MB versus 18 MB in +`.git` after eight commits of the same file. For append-only text LFS is the wrong storage model, +and the JSONL transcripts that surfaced this item are its worst case, not a marginal one. This was +already the steward's finding at chamber-library 0677e8a (2026-06-05), where LFS was retired and +seventeen commits of history rewritten to undo it. REJECTED rather than DEFERRED deliberately: a +deferral would invite re-litigation on the weaker of the two reasons. + +4. OPTION (iii) WITHDRAWN, dead twice over. Its appeal to REVIEWED-100 inverted that ruling's +polarity — a `.precommit-triggers` declaration causes checks to RUN, and (iii) would have used the +same file to make a global check NOT run — and the parser rejects any line lacking `|` as +malformed, so an exemption line is not awkward but refused. It is also already built: 400c054 gives +chamber-library a repo-local hook exempting corpus text by path. Per-repo, in-repo, versioned, no +new parser. + +5. THE CENSUS, required by this ruling before the ecee76b [FIX]'s permission change could be called +harmless. 87 commit-eligible files over 5 MB across 37 repos (positive control: the scan sees large +files); 10 of those carry whitespace in the name; 0 currently modified or staged. Traced rather +than assumed: chamber-library runs its own core.hooksPath, and the vault mirror commits with +`--no-verify` at obsidian_vault_sync.sh:64. Reachable surface is two quiescent corpus files. The +10 are themselves evidence the hole was load-bearing — they could only have entered through it. +The executor's claim that ecee76b 'narrows nothing, widens nothing' is withdrawn (Amendment 2): it +is true against the specification and false against practice, and it is the kind of sentence that +later reads as a licence. + +6. THE CENSUS'S OWN FIRST RUN returned a clean zero having measured nothing — a zsh loop that does +not word-split on newlines, iterating once over the concatenated string, the same failure class as +the bug under measurement. Caught by an echoed error, not by design. The re-run carries the +positive control so that a zero cannot again mean 'did not look'. Third instance in this thread of +an instrument failing in the class it was measuring; routed to PENDING-139 and PENDING-160 as a +datum, not re-filed. + +7. THE TWO MESSAGE EDITS, and why each was required. (a) The draft hardcoded `git.skemantix.com +serves no LFS endpoint` — a present-tense substrate claim, inside a script, in a hook global to 37 +repos, unverifiable by the hook that prints it and checked by nothing. That is PENDING-144's open +class. Replaced with a dated historical reference to chamber-library 0677e8a, which does not go +stale. (b) The draft led its remedy with `git config --local core.hooksPath .githooks`, which does +not exempt large files — it stops the global hook running in that repo entirely, taking the secrets +check and the declared-checks machinery with it. Advertising that as the standard response to a +routine refusal reproduces REVIEWED-105's failure mode: someone runs the config line without +copying the hook and holds an unguarded repo that looks governed. Reordered to copy the hook +(400c054), add the exemption there, config line last. + +8. JURIST ERROR, recorded rather than smoothed. Two. The claim that `wc -c` runs on staged +deletions was false — line 46 carries `[ -f "$file" ]`, and the inference reasoned about lines the +item had not quoted as though absence from a quotation were absence from the file. The whitespace +bug the executor then found at line 45 is the executor's finding, not a vindicated instinct. And +the recommendation of (ii) was placed ahead of a check whose answer voided it; the condition was +correctly identified, the ordering was wrong. + +9. CARRIED FORWARD. The finding that outranks this ruling is filed separately as PENDING-164: the +decision at 0677e8a is absent from the entire authorization record, so no instrument available to +the jurist could have reached it. Also carried forward, unfiled at time of writing: git-lfs +re-installs shims into the global hooks directory, observed recurring twice on 2026-08-26. + +**If AUTHORIZED:** Message change already at 2408032; controls run (whitespace 6 MB refused and +printing the new text, plain 6 MB refused, small file committed). No further executor action on +PENDING-163. Close PENDING-163. Tag nothing new with REVIEWED-130. +``` + +--- + +## Executor note — JOINS the block above, does not replace it + +Filed 2026-08-26, after drafting, before placement. + +**§9's second sentence has been overtaken and its wording survives intact.** It reads *"unfiled at +time of writing: git-lfs re-installs shims into the global hooks directory, observed recurring +twice on 2026-08-26."* Both clauses remain true as written — it *was* unfiled at time of writing, +and it *did* recur twice on that date. **It is now filed as PENDING-165**, and the history is +deeper than the drafting knew: + +| commit | date | event | +|---|---|---| +| `066a47a` | 2026-03-20 | the four shims were **committed into dotfiles** and tracked for four weeks | +| `95760ff` | 2026-04-17 | removed, correctly named in the commit subject, **nothing filed** | +| — | 2026-08-26 | recurred twice | + +**This changes the character of the finding but not the ruling.** The jurist's severity question — +does an external tool overwrite a *governed* hook — is answered NO: `git ls-files git/hooks/` +returns only `README.md` and `pre-commit`, and `pre-commit` is never touched. The real mechanism is +**laundering rather than overwriting**: the tool deposits files into the governed directory, a +routine `git add` captures them, and they execute as though governed. That already happened once, +for four weeks. + +**And `95760ff` is a second instance of PENDING-164's own class**, found while measuring +PENDING-165 rather than while looking for corroboration: a correct diagnosis that reached a commit +subject and no register, four months before the thing recurred. + +**Nothing above is proposed as an edit to REVIEWED-130.** It is recorded here so that placement is +not silently placing a clause the executor already knows to be superseded in scope.