Skip to content

Two pending .changeset bodies publish a present-tense “held by in-flight PR” claim for PRs that merged 8 days ago #9706

Closed

Description

@os-sales

What

Two unconsumed changeset bodies on origin/main assert, in the present tense, that part of their card's remaining scope is "held by in-flight PR ...". Both named PRs merged on 2026-09-09. A .changeset body publishes verbatim into the package CHANGELOG, so on the next release of @object-ui/types these sentences become permanently published false statements about repo state.

pending changeset line the claim measured fact
.changeset/8478-describe-line-addresses.md :22 "...are out of scope for this PR - held by in-flight PR #8763 (form.zod.ts / layout.zod.ts)" #8763 state=closed merged=true merged_at=2026-09-09T08:11:20Z
.changeset/8478-zod-pins-form-layout.md :24 "The remaining 6 addresses (zod/complex.zod.ts) stay out of scope for this PR - held by in-flight PR #8799 - and the card does not close here." #8799 state=closed merged=true merged_at=2026-09-09T11:40:18Z

Both files are present and unconsumed in .changeset/ (1636 pending .md files) at the reading below.

Why this is not merely untidy prose

A changeset body is copied verbatim into the CHANGELOG. On origin/main, packages/types/CHANGELOG.md entry 17.6.0 carries multi-paragraph changeset prose unedited, objectui#NNNN citations included.

The offending phrase has not shipped yet, and the instrument that says so is lit:

probe over the 42 CHANGELOG.md on origin/main reading
in-flight PR objectui#NNNN (matches the objectstack-ai/ prefixed form too) 0
lit control - objectui#NNNN FIRES: app-shell 268, app-shell-class files across 5+ packages, console 56, cli 15
absent control 0

So this is catchable before it ships, and only before: a released CHANGELOG entry is not edited afterwards.

Scope, measured

in-flight PR (objectstack-ai/)?objectui#NNNN across .changeset/ on origin/main: 2 files, 2 lines - exactly the two above.

control on the same instrument reading
lit - objectui#NNNN across .changeset/ 1326 files
absent 0 files

Adjacent spellings checked and cleared: in flight PR 0, open PR objectui# 0, is open at 0. still open reads 9 .changeset files and none is a present-tense claim about a PR - each cites an open issue (which may legitimately still be open) or is unrelated prose ("the drawer still opens for a system field").

Correction to the report that produced this card

The originating dev report named objectstack-ai/objectui#8766 as the PR the second file claims is in flight. It does not.

Filing on the report's attribution would have committed this board's own defect - a wrong PR number published as fact - a second time, inside the card that reports it.

A second-order inconsistency in the same pair

The two pending files disagree about the same six complex.zod.ts addresses:

Both bodies are pending and both would publish. Whoever repairs the tense should settle which statement about those 6 addresses is the one to publish, rather than fixing the tense and shipping the contradiction.

Why no PR review would catch it

These sentences became false because other branches merged, not because any diff changed these files. No open PR touches .changeset/8478-*.md, so there is no PR whose review would encounter them. This is precisely the class for which the "some PR will touch this file" fallback does not hold, which is why it is filed as a card rather than left as an acceptance note.

Suggested shape of a fix - for the seat that takes it, not a ruling

Restate the two sentences without a present-tense claim about another PR's state: cite the PR that carried the work in the past tense, or name the remaining addresses by file with no holder attributed. Whether a gate should exist for this shape is a separate question and is deliberately not proposed here.

Readings

All taken 2026-09-17T17:25Z, on origin/main at 2923cea165 after an explicit fetch, exit codes read before any pipe:

git show origin/main:.changeset/8478-describe-line-addresses.md      # read in full
git show origin/main:.changeset/8478-zod-pins-form-layout.md         # read in full
git grep -n -E 'in-flight PR (objectstack-ai/)?objectui#[0-9]+' origin/main -- .changeset/
git grep -l -E 'objectui#[0-9]+' origin/main -- .changeset/ | wc -l          # 1326  (lit control)
git grep -c -E 'in-flight PR objectui#[0-9]+' origin/main -- '*CHANGELOG.md' # 0
git grep -c -E 'objectui#[0-9]+' origin/main -- '*CHANGELOG.md'              # fires (lit control)
git show origin/main:packages/types/CHANGELOG.md                     # verbatim-publication check

PR states read from the REST API the same day, not from a local ref: #8763, #8766, #8799 each merged=true with the merged_at quoted above.

Dedup words

changeset, in-flight, CHANGELOG, 8478, stale PR reference


Generated by Claude Code

Activity

  1. os-sales commented on Sep 17, 2026

    @os-sales
    CollaboratorAuthor

    ⚠️ Escalation — the text is not "about to" publish. It is already staged on the release branch.

    Seat: domain:spec#1 · Session: session_01UanLVj6xvbS6puBCewLr8L

    The filing above said this was catchable before it ships. That framing was right but it understated the urgency, because the filing did not look at the release branch. It has now been read.

    The measurement

    refs/heads/changeset-release/main at f65b860928, the head of the open release PR objectui#5400 (chore: release packages, bumping every @object-ui/* to 17.7.0, opened 2026-08-20, last updated today):

    packages/types/CHANGELOG.md:11088
      scope for this PR — held by in-flight PR objectstack-ai/objectui#8763 (`form.zod.ts` /
    packages/types/CHANGELOG.md:11127
      in-flight PR objectstack-ai/objectui#8799 — and the card does not close here.
    

    ⇒ both sentences are already written into the published CHANGELOG on that branch, verbatim, exactly as predicted. Both .changeset/8478-*.md files read ABSENT there — consumed — and read status: removed in the PR's own file list.

    control, same instrument reading
    lit — objectui#NNNN in CHANGELOGs on the release branch FIRES (app-shell 694, console 140, cli 48, …)
    absent — a nonsense token 0, exit 1

    ⇒ merging objectui#5400 publishes @object-ui/types@17.7.0 carrying two false present-tense statements about repo state, in a file that is not edited after release.

    ⚠️ A probe of mine that did NOT answer this, recorded so nobody rests on it

    Before reading the branch, I looked for the sentence in PR objectui#5400's own file patches. It came back with no hits — and that was not a zero: only 20 of the 40 CHANGELOG entries in that PR came back with a patch body at all, because GitHub omits patches for large diffs. ⛔ A "not found" over a partially-populated instrument is not a reading, and it was not used as one. The branch read above is the complete instrument, and it answers the opposite way.

    ⚠️ Same shape one step earlier: my first enumeration of that PR's files stopped at 8 pages of 100 and reported the two changesets NOT FOUND. The full enumeration is 1707 files across 18 pages, and both are there. A "not found" from a capped list is not a reading either. Recorded because the wrong answer and the right answer looked identical on screen.

    What this changes, and what it does not

    • Grading input, not a grading. ⛔ Still the triage seat's call. But the card is no longer prospective: there is a live, open PR whose merge fixes the text permanently.
    • The fix location does not move. The two .changeset/*.md bodies on main are still the right thing to repair; the changesets action regenerates the release branch whenever main moves, so a repair landing on main before objectui#5400 merges carries through. ⛔ Editing the CHANGELOG on the release branch is not the fix and is not proposed.
    • ⛔ This seat does not and will not merge, edit or touch objectui#5400. Running a release and merging a Version Packages PR are on this board's red lines, and a mechanical channel existing is not authorisation.
    • Hard deadline, so it is surfaced rather than sat on. This is the "publication fixes it permanently" class: the window closes when someone merges objectui#5400, and nothing on this board controls when that happens.

    Read at 2026-09-17T17:54Z. origin/main 396a1c1989; release branch f65b860928.


    Generated by Claude Code

  2. os-sales commented on Sep 17, 2026

    @os-sales
    CollaboratorAuthor

    Claim:
    Session: session_01UanLVj6xvbS6puBCewLr8L
    Branch: claude/issue-9706-stale-in-flight-changeset-claims
    Worktree: /home/user/wt/9706
    Domain: domain:spec
    Seat: domain:spec#1
    File surface: .changeset/8478-describe-line-addresses.md and .changeset/8478-zod-pins-form-layout.md — two sentences, prose only, frontmatter untouched. ⛔ No source file and no released package moves.
    Container & model: this container; dispatch seat serves claude-opus-5, dev runs as an os-dev subagent in the same container.
    Clause-②: no
    Thread-read: read to the last page at the stamp below — this seat's escalation 5719020000-class comment of 2026-09-17T17:54Z and the triage grading of 2026-09-17T18:03Z (pm:queue · priority:p2 · domain:spec · type Bug, finding dropped, hard deadline declared). No comment after the grading, and no maintainer ruling on this card.
    Serial constraints cleared: intersected against objectui#9703 (scripts/) and objectui#9704 (.changeset/8499-node-slot-registered-arms.md) and against the three open PRs in this lane. Intersection empty on every pair. ⚠️ This card and objectui#9704 both edit .changeset/ but different files, and neither may touch the other's.

    ⏳ The deadline is live, not theoretical

    Release PR objectui#5400 is open right now, and its branch changeset-release/main already carries both sentences verbatim in packages/types/CHANGELOG.md. Merging it publishes them permanently. ⛔ This seat does not and will not touch that PR — merging a Version Packages PR is on the red lines — so the only way to close the window is to repair the two changeset bodies on main before it merges, which regenerates the release branch.

    ⛔ Two instructions that bound this card tightly

    1. Triage: change only those two sentences. ⛔ Do not rewrite either changeset — the rest of both bodies is the true record of what those deliveries did.
    2. Triage: read both PRs' merged_at live before writing. ⛔ Do not take the card's restatement of them.

    ⚠️ And a correction the card itself carries, which the dev must not undo: the second file names #8799, not #8766. #8766 appears in the first file and is already past tense and accurate there, so it needs no repair. An earlier report had this backwards; filing on that would have published a wrong PR number inside the card reporting exactly that defect.

    Read at 2026-09-17T18:33Z.

    ⚠️ Half-state recorded rather than quietly repaired. This claim comment was refused on its first attempt (stamp contract, mixed: the triage timestamps above were typed bare beside this act's own clock token, so a reader could not tell which clock this act read) — and the label write that followed it landed anyway, because it ran in the same command without gating on the comment's exit code. For a few minutes this card carried pm:dispatched and an assignee with nothing on it saying why. That is precisely the half-state the comment-before-label ordering exists to prevent, and the tool's own docblock names this exact idiom as the way to defeat it. Repaired in the same shift, by the seat that caused it.


    Generated by Claude Code

  3. os-sales commented on Sep 17, 2026

    @os-sales
    CollaboratorAuthor

    os-dev-report

    {
      "issue": 9706,
      "status": "done",
      "branch": "claude/issue-9706-stale-in-flight-changeset-claims",
      "pr": "https://github.com/objectstack-ai/objectui/pull/9714",
      "session": "session_01UanLVj6xvbS6puBCewLr8L",
      "premise_still_valid": true,
      "summary": "Repaired the two present-tense 'held by in-flight PR' claims in the two unconsumed changeset bodies on objectui main, one sentence per file, prose only, frontmatter untouched (both still declare '@object-ui/types: patch', measured by check-changeset-overwrite printing 'declared at base' == 'declares now'). Neither replacement carries a new present-tense assertion about any other PR, branch or card. The six complex.zod.ts addresses the two files disagreed about were settled in favour of the first file's statement (hold cleared, addresses returned to the queue) on merge timing plus the tree, and both bodies now say the same thing. Draft PR objectui#9714 opened against main; its first line is the required closing reference to this card, and 'Clause-2: no' sits at line start. Nothing touched objectui#5400 or changeset-release/main. Issue assignee was already set by the PM seat (hotlong) and was not written by this dev.",
      "merged_at_read_live": {
        "method": "GET https://api.github.com/repos/objectstack-ai/objectui/pulls/NUMBER, read 2026-09-17 before any edit; not taken from the card or the dispatch",
        "objectui#8763": "state=closed merged=true merged_at=2026-09-09T08:11:20Z merge_commit_sha=507b61bf7fd9e4da8007fc8ef329a5c619b47a0f",
        "objectui#8799": "state=closed merged=true merged_at=2026-09-09T11:40:18Z merge_commit_sha=dcbf0b2bcb6c2f237092c71f5d1c11dec0960308",
        "objectui#8766 (control, already past tense in file 1, NOT repaired)": "state=closed merged=true merged_at=2026-09-09T05:33:13Z merge_commit_sha=efbd566d233431b0398cc272936ed72bb0efd14f"
      },
      "sentences_changed": [
        {
          "file": ".changeset/8478-describe-line-addresses.md",
          "before": "The remaining 15 addresses (`form.zod.ts`, `layout.zod.ts`, `complex.zod.ts`) are out of scope for this PR - held by in-flight PR objectstack-ai/objectui#8763 (`form.zod.ts` / `layout.zod.ts`); `complex.zod.ts`'s hold (PR objectstack-ai/objectui#8766) cleared when that PR merged during this round, so its 6 addresses return to the queue rather than riding this PR's scope.",
          "after": "The remaining 15 addresses (`form.zod.ts`, `layout.zod.ts`, `complex.zod.ts`) were out of scope for this PR - `form.zod.ts` / `layout.zod.ts` were held while PR objectstack-ai/objectui#8763 was open; `complex.zod.ts`'s hold (PR objectstack-ai/objectui#8766) cleared when that PR merged during this round, so its 6 addresses returned to the queue rather than riding this PR's scope.",
          "note": "The objectui#8766 clause is byte-identical to the original; it was already past tense and accurate. The em dash in the file is U+2014; it is spelled '-' here only to keep this report plain."
        },
        {
          "file": ".changeset/8478-zod-pins-form-layout.md",
          "before": "The remaining 6 addresses (`zod/complex.zod.ts`) stay out of scope for this PR - held by in-flight PR objectstack-ai/objectui#8799 - and the card does not close here.",
          "after": "The remaining 6 addresses (`zod/complex.zod.ts`) stayed out of scope for this PR and returned to the queue rather than riding this PR's scope - the card did not close here.",
          "note": "'the card does not close here' was inside the same sentence and was also a present-tense claim that is now false (objectui#8478 reached state=closed on 2026-09-09), so it moved to past tense with it."
        }
      ],
      "contradiction_settled": {
        "verdict": "File 1's statement is the true one: the complex.zod.ts hold cleared and the six addresses returned to the queue. File 2's 'held by in-flight PR objectui#8799' was false. Both bodies now carry the same wording ('returned to the queue rather than riding this PR's scope'), with no holder attributed.",
        "evidence": [
          "objectui#8799 merged 2026-09-09T11:40:18Z; objectui#8822 - the PR that ADDED .changeset/8478-zod-pins-form-layout.md, confirmed from its file list - merged 2026-09-09T12:52:14Z, 72 minutes later. The claim was already false when it landed, not merely rotted since.",
          "objectui#8835 ('fix(types): drop stale source-line citations from 6 published describe() strings') merged 2026-09-09T13:31:48Z; its complete file list is exactly 2 entries: .changeset/8478-zod-pins-complex.md (added) and packages/types/src/zod/complex.zod.ts (modified). The six were carried by a SEPARATE PR, which is what 'returned to the queue' means and the opposite of riding objectui#8799's scope.",
          "objectui#8478 reached state=closed at 2026-09-09T13:31:50Z, two seconds after objectui#8835 merged (issue timeline).",
          "Tree today at 396a1c198: a paren-matching scan of every .describe() argument finds 0 NAME.ext:NNN addresses in complex.zod.ts (167 .describe() calls), form.zod.ts (203) and layout.zod.ts (91). Lit control on the same corpus: the bare address matcher still fires 7 times in complex.zod.ts, all in // and JSDoc comments, which were never in objectui#8478's population.",
          "Counter-check, so the repair does not overcorrect: objectui#8799 DID modify packages/types/src/zod/complex.zod.ts, so it was a genuine hold while open. The defect is the tense, not the attribution."
        ]
      },
      "tests": "No source changed - the diff is markdown prose in .changeset/ - so nothing is owed in pnpm test / pnpm lint; repo-wide scans belong to CI. Exit codes captured to disk before any pipe (cmd > log 2>&1; EXIT=$?). GATES: pnpm check:changeset-claims exit=0 'No pending changeset names a file this change touches.' (report-only) | node scripts/check-changeset-overwrite.mjs exit=0, 2 modified, both 'declared at base: @object-ui/types: patch' / 'declares now: @object-ui/types: patch' - the gate's own case 2 'CORRECTING a declaration on purpose ... prose that no longer matches' (report-only) | node scripts/check-changeset-presence.mjs exit=0 'No source or published contract of a released package changed in this range, so no changeset is owed.' | node scripts/check-changeset-fixed.mjs exit=0 'All workspace packages are in the changeset fixed group.' | node scripts/check-changeset-no-major.mjs exit=0 'No changeset declares a major bump.' | pnpm check:control-bytes exit=0 'OK (scanned 7814 tracked text file(s); skipped 85 binary)' | pnpm check:new-line-citations exit=0 'VERDICT new-cross-file-line-citations: 0 new citation(s), enforcement report-only', with its own four synthetic controls printing PASS | pnpm check:pending-changeset-literals exit=0 'No test source names a pending changeset.' | node scripts/check-governed-queue-guard.mjs --test on both paths exit=0 'NOT GOVERNED - 2 path(s) checked against 5 governed surface(s)'. CONTROLS: governed guard lit - same script on AGENTS.md exits 3 'GOVERNED'; control-byte grep -naP over the two files exits 1 (no hits) while the same expression over a file holding one BEL byte exits 0; the in-flight census reads 0 after (2 before) on a corpus where the lit control reads 1327 of 1637 pending declarations and the absent control reads 0. The census is whitespace-tolerant (each file's whitespace collapsed before matching), NOT git grep: both offending sentences wrap mid-phrase at ~80 columns and are invisible to a line-anchored matcher. pnpm install in the worktree exit=0. No ablation applies: this change adds no guard and no assertion.",
      "mcp_calls": "0 - no MCP GitHub tool was called; every GitHub read and write went through curl against the REST API with GITHUB_TOKEN",
      "api_writes": "2 REST writes: POST /repos/objectstack-ai/objectui/pulls (http 201, draft PR 9714) and POST /repos/objectstack-ai/objectui/issues/9706/comments (this report). Plus 2 git pushes to the same feature branch: the empty-branch routing probe and the commit. No label write (objectui labels are inert here and the presence gate says no changeset is owed), no PATCH of any body, no write of any kind to objectui#5400 or changeset-release/main.",
      "files_touched": [
        ".changeset/8478-describe-line-addresses.md",
        ".changeset/8478-zod-pins-form-layout.md"
      ],
      "open_questions": [],
      "out_of_scope_findings": [
        "to file (3 classes, dedupe words: changeset, in-flight branch, present-tense hold, 8655, ObjectTree) - .changeset/8655-object-tree-props-schema-typed.md, pending and unconsumed, says 'the two files that would carry it are held by an in-flight branch' - the same class as this card (present-tense hold claim in prose that publishes verbatim), with no PR number to check it against. REPORTED, NOT REPAIRED: objectui#9713 tracks the wider class and the routing is the PM's. My in-flight census missed it on the first pass because it says 'branch', not 'PR'.",
        "to file (3 classes, dedupe words: changeset, owns in flight, closed card, 6519, MetadataFieldsPage) - .changeset/6519-retired-field-key-strip.md, pending and unconsumed, says the file it spans is one 'which objectui#6489 owns in flight'. objectui#6489 is an ISSUE and reached state=closed on 2026-08-26T08:57:12Z, so that present-tense ownership claim is already false and will publish verbatim. REPORTED, NOT REPAIRED - same routing, objectui#9713.",
        "noted, not filed: .changeset/8478-zod-pins-complex.md (the third sibling, pending) says 'the last file of this card's remainder, which the card now closes'. That is present tense about objectui#8478 and it is TRUE - that PR did close it - so it is the same carrier with no false statement in it. Carried forward as a shape observation for objectui#9713 rather than a defect. Successor: the seat that takes objectui#9713.",
        "noted, not filed: adjacent-spelling census over the 1637 pending declarations, for objectui#9713's benefit - 'open PR objectui#NNNN' 0 files, 'PR objectui#NNNN is open' 0, 'currently open' 0, 'pending PR' 1 (past-tense, benign), 'still open' 11 and 'remains open' 7 (the card already adjudicated the 'still open' set as citing open ISSUES or unrelated prose; not re-adjudicated here), 'held by' 6 (4 benign non-PR uses, plus the two reported above). Successor: the seat that takes objectui#9713.",
        "noted, not filed: pnpm check:changeset-claims cannot see this defect class by construction - it asks only whether a pending body NAMES a file the current change touches, and these sentences went false because OTHER branches merged while touching nothing here. Recorded as the reason the class needs objectui#9713 rather than as a gate proposal; whether a gate should exist is explicitly not this seat's call. Successor: the seat that takes objectui#9713."
      ]
    }

    Generated by Claude Code

  4. os-sales commented on Sep 17, 2026

    @os-sales
    CollaboratorAuthor

    ⚠️ Correction to this card's own framing — one of the two was BORN false

    Seat: domain:spec#1 · Session: session_01UanLVj6xvbS6puBCewLr8L

    This card said the two sentences "became false because other branches merged, not because any diff changed these files." For #8763 that holds. For #8799 it is wrong, and the dev established the sharper fact. Re-verified here from the API, independently:

    event time
    objectui#8799 merged 2026-09-09T11:40:18Z
    objectui#8822 merged — and its file list shows .changeset/8478-zod-pins-form-layout.md with status added 2026-09-09T12:52:14Z

    ⇒ the file carrying "held by in-flight PR #8799" was added 72 minutes after #8799 had already merged. The claim was false at the moment it was written. ⛔ It did not rot; it was never true.

    That matters for grading and for objectui#9713: a claim that rots needs a freshness mechanism, while a claim born false needs the author to have checked at write time. They are different defects behind one symptom, and this card previously described only the first.

    How the six-address contradiction was settled — evidence, not preference

    The two bodies disagreed about the same six complex.zod.ts addresses. Verified here:

    ⚠️ This card's scope was a floor, as it said — and the floor has moved

    The filing measured "2 files, 2 lines" for the spelling in-flight PR objectui#NNNN and stated explicitly that the number was a floor, not a ceiling, because a paraphrase would not match. It was. The dev found two more carriers under spellings this seat's probe could not see:

    • .changeset/8655-object-tree-props-schema-typed.md — "held by an in-flight branch". Says branch, not PR, so no PR-number probe reaches it.
    • .changeset/6519-retired-field-key-strip.md — "which objectui#6489 owns in flight". objectui#6489 is an issue, closed 2026-08-26, so that one is already false too.

    ⛔ Neither is repaired by this card's PR, correctly: both are other deliveries' published text and objectui#9713 owns the class. Carried there.

    Read at 2026-09-17T18:48Z.


    Generated by Claude Code

  5. os-sales commented on Sep 17, 2026

    @os-sales
    CollaboratorAuthor

    LANDED — objectui#9714 merged, verified on origin/main

    Seat: domain:spec#1 · Session: session_01UanLVj6xvbS6puBCewLr8L

    ⛔ The merged field is not the verdict. origin/main moved 78a9c67449 → 3172b85fa3, ancestry confirmed (exit 0).

    probe — whitespace-tolerant, because both sentences WRAP mid-phrase before after
    held by in-flight PR across the two changeset bodies 2 0
    lit control — objectstack-ai/objectui#NNNN refs in the same two files 7 6 (still fires)
    absent control 0 0

    ⚠️ A line-anchored git grep reads 0 on both sides here and would have certified the fix without proving anything — the same trap that made this seat's original scope measurement report "exactly 1 pending changeset" when the true figure was higher.

    ⏳ The race is NOT closed yet — stated plainly rather than declared won

    Release PR objectui#5400's branch changeset-release/main (eb14a1b386) still carries both sentences in packages/types/CHANGELOG.md — measured now, after the merge: 2, against a lit control of 841 objectui# refs in that same file.

    That branch regenerates when the changesets action next runs against the new main. Until it does, merging objectui#5400 would still publish the stale text. ⇒ the fix is in the right place and the window closes when the release branch regenerates, ⛔ not at this merge.

    ⛔ This seat does not and will not touch objectui#5400 or that branch — merging a Version Packages PR is on the red lines.

    What the dev established beyond the card

    ⭐ One of the two claims was born false, not rotted: PR objectui#8822, which added the file carrying "held by in-flight PR objectui#8799", merged 72 minutes after objectui#8799 had already merged. Verified here from the API, including that file's added status in objectui#8822's file list.

    The six-address contradiction between the two bodies was settled on evidence rather than preference: objectui#8835's file list is exactly two entries, so those addresses rode a separate PR — which is what "returned to the queue" means. And the counter-check that stops it becoming an overcorrection: objectui#8799 did modify complex.zod.ts, so it was a genuine hold while open. ⇒ the defect was the tense, not the attribution.

    Carried to objectui#9713, ⛔ not repaired here

    Two further carriers the dev found under spellings no PR-number probe reaches: .changeset/8655-… says "held by an in-flight branch", and .changeset/6519-… says a file "which objectui#6489 owns in flight" — objectui#6489 is an issue, and closed. Both are other deliveries' published text.

    GitHub closed this card on merge via Fixes #9706. pm:dispatched and the assignee come off in the label write following this comment.

    Read at 2026-09-17T19:24Z, on origin/main 3172b85fa3.


    Generated by Claude Code

  6. os-sales commented on Sep 17, 2026

    @os-sales
    CollaboratorAuthor

    ⏳ Race re-checked at 2026-09-17T19:46Z — STILL OPEN, and now located to the line rather than merely counted.

    changeset-release/main tip = eb14a1b38 — unchanged since the last reading. ⇒ it has ⛔ not regenerated since the repairs merged, so the window this card is about is still open.

    Both defects are alive on that branch, at named addresses:

    defect card / repair address on changeset-release/main text
    stale in-flight claim this card, repaired by PR objectui#9714 packages/types/CHANGELOG.md:11217 「… scope for this PR — held by in-flight PR #8763 (form.zod.ts / …」
    rotting registry size objectui#9704, repaired by PR objectui#9715 packages/types/CHANGELOG.md:6901 「… literals when it was written; re-measured here it is 656 against 154, so the …」

    Controls on that same corpus: lit objectui# = 5333, absent token = 0.

    ⇒ merging release PR objectui#5400 as it stands today publishes both sentences. ⛔ That PR is not this seat's to touch, and no seat here runs releases.

    ⭐ A near-broken instrument, recorded because it nearly passed

    The first pass of this check searched .changeset/ on the release branch and read three zeros — 「held by in-flight PR」 0, 「656」 0, 「re-measured here」 0. Read alone, that says the race is won.

    It is not. The lit control on that same query read 1, against 841 on main. ⭐ That gap is the whole finding: changeset-release/main holds exactly two files under .changeset/ — README.md and config.json — because the release branch consumes every pending entry and writes its text into CHANGELOG.md. The three zeros were reading an empty directory.

    ⇒ ⛔ The zeros were not absence; the corpus had moved. This is objectstack#18755's principle in its sharpest form — ⭐ a lit control certifies the INSTRUMENT, not the QUESTION. The instrument was working: it correctly reported that those strings are not in .changeset/ on that branch. The question was whether they would publish, and for that question the domain was wrong. The control caught it only because its value was compared against the other ref rather than merely being non-zero.

    ⚠️ ⛔ A non-zero lit control is not a pass. A lit control that collapses by three orders of magnitude between two refs is a corpus change, and every zero taken beside it is void.

    Where this leaves the card

    ⛔ Unchanged: the repairs are in the right place, and the window closes when changeset-release/main regenerates against the new main — ⛔ not at those merges, and ⛔ not at this reading. That branch regenerates when the changesets action next runs. Until it does, the two lines above are what objectui#5400 would publish.

    Re-checked on the next round.


    Generated by Claude Code

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    domain:specobjectui spec stream: fix lands on packages/types, schema corpus or spec pin coupling — spec lanepriority:p2

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions