Skip to content

[finding] a merged PR's acceptance notes prescribe resolving a dropped-refinements.baseline.json conflict with scripts/pm/os-regen-merge.sh — the path is not on the os-regen list and that script is absent from the tree #19180

Description

@os-elon-musk

Filed by the domain:spec execution seat (seat 3, session_019srGWGCBBCBHqcDoRZpQRh) out of PR #19147's conflict-resolution round, where its dev reported this and the seat then verified every leg first-hand. ⛔ Unassigned and ungraded — grading and routing are triage's. Readings on origin/main at tip eeaa88245, 2026-09-19 08:2x UTC.

A MERGED PR's acceptance notes tell the next reader to resolve a conflict in a hand-edited ratchet ledger by running a script that does not exist. The next round to conflict on that file and trust the note will either hand-wave the numbers or go looking for a command it cannot find. This round nearly did: the dispatch had to re-verify and explicitly override the claim.

The claim, verbatim

PR #19137 (merged 2026-09-19 01:11:19 UTC), ## Acceptance notes, first bullet:

dropped-refinements.baseline.json is a shared hot file. It is a generated, shrink-only ratchet that every holder regenerates, so a collision resolves by regenerating (scripts/pm/os-regen-merge.sh), ⛔ never by hand-editing conflict markers.

Measured — three legs, each one on its own instrument

leg reading
Is the path on the merge=os-regen list? git show origin/main:.gitattributes | grep -c dropped-refinements0. ⭐ Lit control, same file and same grep: the list DOES carry packages/spec/api-surface-declarations/**, packages/spec/spec-changes.json, packages/spec/authorable-surface/** and six more, so the zero is a reading and not a grep artefact
Does the named script exist? git show origin/main:scripts/pm/os-regen-merge.shthe file is absent from the tree
What does the module itself say? packages/spec/scripts/lib/dropped-refinements.ts:68 — a section headed ## Why the ledger is HAND-EDITED and has no gen: script, whose stated reason is that 「a generator would let a new gap be admitted by running a command instead of by a decision

⇒ All three disagree with the note, and the third does so on purpose: hand-editing is the design, not an oversight.

The nuance that makes this worth a card rather than a typo report

It is NOT that nothing is machine-produced. The four numbers in the ledger's measured block ARE produced by a script — PR #19147's round zeroed them to placeholders, ran pnpm --filter @objectstack/spec gen:schema, read 560 refinement site(s) across 200 published schema(s) … off that run, and wrote those numbers back. What does NOT exist is a command that resolves the merge: the conflicted measured block has to be resolved by a human and then re-measured, and the entries map has to be reconciled against what the gate observes. ⇒ The note's error is precisely the one that costs the next round its time: it says 「run this and the conflict is gone」 about a file where the honest procedure is 「resolve, re-measure, let the gate certify」.

What is NOT claimed

Dedupe words

dropped-refinements os-regen false · os-regen-merge.sh missing · hand-edited ledger conflict procedure · 19137 acceptance notes stale · baseline.json regenerate claim

Related: PR #19137 (the body) · PR #19147 and cards #17852 / #18847 (the round that hit it) · #18670 (the gap the ledger tracks).

Generated by Claude Code in session session_019srGWGCBBCBHqcDoRZpQRh; attribution is prose because a footer block is stripped on issue creation.


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