Commit 9d288d4
feat(pm): patrol row H64 — a seat- or dev-signed artefact authored by a user account (#18073)
Fixes #18069
Lock 5 of the mechanism-layer plan. Maintainer, skills seat chat
2026-09-13T16:14Z, verbatim: 「机制层的五道锁 现在就派发处理」.
One REPORT-ONLY patrol row in `scripts/pm/check-half-states.mjs` (the
whole file surface). **H64** fires on an artefact that carries a
seat/dev signature while GitHub records its author as a USER account
rather than the App. A suspended user account hides everything it
authored, so the artefact's text and its account field disagree about
who wrote it and the record is held by an account the protocol does not
control. ⛔ No new listing, ⛔ no label, ⛔ no write path, ⛔ no roster of
seat accounts — the artefact is recognised structurally (H44's refusal,
taken for H44's reason) and the author is read only as the defect.
## Two of the card's five signature forms were measured and widened
| form | the card | measured | now |
|---|---|---|---|
| claim | `Claim:` block **with a `Session:` line** | comment 5652138683
— the card's own os-tesla fixture — carries no `Session:` line in its 35
| `CLAIM_COMMENT_MARKER` alone, the marker H2/H33/H34/H37 already share
|
| session id | bare id **in the first three lines** | PR #18051's only
session token is line 45 of 45, in the attribution footer; the head
window fires on 0 of 9 open PRs, the footer form on 4 | head window
stays narrow, the `claude.ai/code/session_…` footer is a SIXTH form; ⛔
the platform's own bare footer is not a signature |
## Two mechanisms the live measurement forced
- **A pin (H55's shape).** 870 of 1075 signed texts on this board are
user-authored. `created_at` before `USER_AUTHORED_WRITE_SINCE`
(2026-09-13) is a CENSUS count and files no row — 816 of them, reaching
back to 2026-08-05 — because "re-post it through the proxy" is not a
remedy anyone performs 816 times.
- **A 10-row cap, newest first.** `renderMarkdown` sorts by card number
ASCENDING and the body trim eats the tail, so for this family the newest
write — the one the lock exists to surface within the hour — is the
first row removed. Changing that sort belongs to every family, so the
family bounds itself instead; the clause prints the full judged count on
every run.
`user.type` is the test, `user.login` is printed and never tested: the
login form is a one-name roster wearing an equality sign and judges
`github-actions[bot]` (2 open cards, 1 open PR here) as a user account.
## Verification
- `--self-test` 3915 → 4042 cases, green. Ablation, both legs restored
byte-identical to the HEAD blob: removing the author test reddens 4
cases, removing the footer form reddens 11.
- Live read-only run on today's objectstack board: 2073 texts read, 1075
signed, 870 user-authored, **54 judged, 10 filed, 816 census, 0
declined**. Rows name PR #18051 and 9 newer artefacts; nothing authored
`claude[bot]`.
- All four specimens fire against their LIVE payloads — #18045
(`session`), PR #18051 (`footer`), objectui#9404 (`filer`), comment
5652138683 (`claim`); comment 5654046782, the same claim shape authored
`claude[bot]`, is silent. #18045 is inside the judged 54 and outside the
rendered 10: the cap, working.
- Every family from `dispatch-gates.mjs --commands --repo
objectstack-ai/objectstack` run in the foreground at this head, exit
codes captured before any pipe. Full list and readings in the
`os-dev-report` on #18069.
## Acceptance notes
- Declared residuals, both stated in the row's banner and in the summary
clause: a PULL-REQUEST comment thread is outside the corpus (H44's
declared residual, restated), and an EDIT re-writes a body through the
same channel without moving `created_at`.
- Noted, not filed: the self-test's row-wrapper discipline covers the
three-valued PREDICATES but nothing states it for three-valued HELPERS;
this row's own ablation aborted 4042 cases at a bare
`seatSignature(...).kind` before the wrappers went in. Carrier: the next
row that exports a nullable helper.
`skip-changeset`: `scripts/pm/**` ships in no package's `files[]`.
---
_Generated by [Claude
Code](https://claude.ai/code/session_01DAcomhvR9kKizeYgg89Vo8)_
---------
Co-authored-by: Claude <noreply@anthropic.com>1 parent 4e3a496 commit 9d288d4
1 file changed
Lines changed: 819 additions & 0 deletions
0 commit comments