Skip to content

ruling 5560224701 assigned a contract-review input row naming the snapshot diff as a Clause-② signal, and nothing carries it #18976

Description

@os-elon-musk

What the ruling assigned, and what appears to have no carrier

Ruling 5560224701 (director batch #60, 2026-09-06, maintainer verbatim 「同意」) chose a readable declaration-text snapshot for every @objectstack/spec export, and it named the mechanism that makes such a snapshot mean anything, verbatim:

A snapshot diff is not something a PR "accepts": it makes the PR a Clause-② carrier (needs:contract-review), and the contract-review seat reads the diff and rules minor/major. The existing review discipline is the guard against blind acceptance that a hash snapshot lacks.

and assigned the follow-up, also verbatim:

The contract-review reference (references/contract-review.md, skills seat) needs one input row naming the snapshot diff as a Clause-② signal; the director will raise it with the skills seat — not this card's scope.

The snapshot itself has now landed work behind it: PR #18971 (card #16045) creates packages/spec/api-surface-declarations/** (17 shards, 5,336 declaration blocks) and retires api-surface-signatures.json. That PR correctly did NOT wire the new artefact into any Clause-② detector, because the ruling put that row out of its scope by name.

Measured consequence: the guard is currently inert

Measured by the at-tier contract reviewer on PR #18971's head b33898f5d8d0dc8eff732eb8ac26452506b8622e (2026-09-18T0902Z), and recorded here because it is the ruling's own load-bearing mechanism:

  • PUBLISHED_SURFACES in scripts/pm/check-widening-tells.mjs is REGEN_ARTIFACTS.filter(row => row.check === 'check:api-surface') — a literal filter on the check name.
  • The new artefact's REGEN_ARTIFACTS row carries check: 'check:api-surface-declarations', so it is off that surface by construction, not by omission.

⇒ Until the assigned row exists, a pull request that regenerates the shards beside a reshaped declaration and declares Clause-②: no raises no tell and passes check-clause2-carriers. The snapshot is readable, but nothing turns reading it into an obligation — which is precisely the "blind acceptance" the ruling chose text over a hash to prevent.

Why this is filed rather than asked in a comment

A cross-seat request is work, and work belongs on a card in the target lane's queue rather than in a comment that no sweep reads. The ruling says "the director will raise it"; this card exists so that the assignment has a carrier regardless of whether that hand-off happened.

⛔ This card does not prescribe the mechanism. Whether the signal should be the reference-doc input row alone (as the ruling says), or additionally something mechanised such as a PUBLISHED_SURFACES entry or a dedicated tell, is the skills seat's call — the domain:spec seat has no standing to design it, and the ruling did not delegate that choice here.

Dedup note

⚠️ I did not dedupe this, and my one instrument was weak — do not read it as an absence. I listed 49 open domain:skills cards and matched TITLES only against snapshot|contract-review|clause|api-surface; 6 titles matched and none was this assignment (they concern check-clause2-carriers defects, check-single-claim-paths, os-dev.md, and a separate charter conflict). Bodies were not read, closed cards were not read, and /search/* is 403 in this session (sessions are bound to their configured repositories), so a card with a differently-worded title would not have shown up. If this duplicates an existing card, close it as the duplicate and keep the older one.

Dedup words: contract-review.md, snapshot diff, Clause-② signal, PUBLISHED_SURFACES, api-surface-declarations

Provenance: filed by the domain:spec seat 3 (session_019srGWGCBBCBHqcDoRZpQRh) out of the at-tier contract review of PR #18971, 2026-09-18T0913Z. ⛔ No domain:* or priority set here — this seat is an execution seat and does not route or grade bare cards; the ruling quoted above names the owning seat, so the routing is the ruling's, not a judgement of mine.


Generated by Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions