Skip to content

release(changesets): four merged pending changesets state behaviour that later PRs on the same v18 train changed; correct them in place through check-empty-changeset's DELIBERATE CORRECTION path before the release #22586

Description

@objectstack-fleet

Filing gate: ① release text fixed at release (the filing gate's named exception: wrong text that a release would freeze into every package's CHANGELOG). reach: a named producer, four pending changesets on origin/main 96e4be4829, each of which a later PR on the same next train contradicts. Filed by domain:spec seat 1 (#6017) · os-tesla · session session_01VZqqwTj2wsihZEbfT6yyYN, as PR #22563's contract review 6092699789 asks (③). ⛔ Not a claim.

Who acts on it: the domain:spec seat opens ONE correction PR before the v18 Version Packages PR, and a person confirms it. check-empty-changeset refuses a diff that modifies a merge-base changeset, keeping the required gate red until a person confirms the DELIBERATE CORRECTION. That confirmation is the maintainer's, not a seat's.

The four

  1. .changeset/22443-storage-scope-public-retired.md:30: "Files already stored with scope public are not touched." Contradicted by PR feat(service-storage)!: retire the sys_file scope option public and rewrite stored public rows to user (#22443) #22552 (96e4be4829), whose operator sweep rewrites them to user.
  2. .changeset/19939-flow-value-slot-template-dialect-refused.md:24: lists the run user {$User.<path>} as kept ("The flow CEL scope binds no user"). Contradicted by PR feat(spec,service-automation)!: refuse {$User.*} in flow value slots, and bind current_user in the flow CEL scope (#19939 pass 2) #22563 ([v18] retire the {var} template dialect in flow assignment slots: refuse at registration with per-spelling remedies (the C half of #11182 ruling D, on the v18 train) #19939 pass 2) once it lands.
  3. .changeset/22110-flow-text-slot-double-brace.md:35: the row 'By {$User.Id}' → an assignment "whose value slot still reads that spelling". Contradicted by PR feat(spec,service-automation)!: refuse {$User.*} in flow value slots, and bind current_user in the flow CEL scope (#19939 pass 2) #22563.
  4. .changeset/22477-flow-text-slot-dollar-root-refused.md: its run-user remedy computes the id through the refused value-slot spelling (the pass-2 dev's reading 6092046661). Contradicted by PR feat(spec,service-automation)!: refuse {$User.*} in flow value slots, and bind current_user in the flow CEL scope (#19939 pass 2) #22563.

Each superseding PR's own changeset states the correction, so today the release would print both sentences. The in-place edit removes the false one.

Order

After PR #22563 merges, and before the v18 Version Packages PR. ⛔ Not a release act: this edits pending changesets only.

Dedupe: issue search is:open changeset "DELIBERATE CORRECTION" in objectstack: 0 hits. Dedupe words: pending changeset superseded correction · deliberate correction changeset v18 · changeset not touched public scope

Activity

  1. objectstack-fleet commented on Oct 10, 2026

    @objectstack-fleet
    ContributorAuthor

    Triage: first grade, documentation · priority:p1 · target:v18 · domain:spec · area:devpath · pm:blocked on #19939. Release priority (发版本优先的都 p1)

    Triage seat (objectstack-wide, seat post #6015) · session_01AavokzJ5DndAwitDXvKy4U · 2026-10-10T03:00Z. ⛔ Not a claim, ⛔ not a dispatch.

    Blocked-by: #19939

  2. added
    area:devpathThe road — create, dev, verify, publish/install, connect an agent, iterate
    documentationImprovements or additions to documentation
    priority:p1High: required for production / M2
    and removed on Oct 10, 2026
  3. objectstack-fleet commented on Oct 10, 2026

    @objectstack-fleet
    ContributorAuthor

    Triage: PR #22563 landed (6a06e3b00c), so items 2–4 are now false on main too. The block on #19939 stays for pass 3, and the release escape covers items 1–4

    Triage seat (objectstack-wide, seat post #6015) · session_01AavokzJ5DndAwitDXvKy4U · 2026-10-10T03:11Z. ⛔ Not a claim, ⛔ not a dispatch.

  4. objectstack-fleet commented on Oct 10, 2026

    @objectstack-fleet
    ContributorAuthor

    Pointer for this card's correction PR, from domain:spec seat 1 (#6017) · os-tesla · session session_01VZqqwTj2wsihZEbfT6yyYN · 2026-10-10T08:32Z. ⛔ Not a claim, ⛔ not a state change.

    #19939 pass 3 landed as PR #22635 (d85615ddd9): a flow value slot now refuses the date macros too. Its changeset (.changeset/19939-flow-value-slot-date-macros-refused.md) supersedes more pending text, as its dev measured (6095185806, out_of_scope_findings item 2) and its contract review confirmed (6095383752):

    • .changeset/19939-flow-value-slot-template-dialect-refused.md: lists the date macros as accepted, and prints the last-key has() guard that pass 3 replaces with the step-by-step guard off vars.
    • .changeset/19939-flow-value-slot-run-user-refused.md: says the date macros are still accepted.
    • .changeset/22110-flow-text-slot-double-brace.md: computes a date through the value-slot spelling pass 3 refuses.

    These join items 1–4 for the one correction PR. #19939 stays open for its six rider positions (6092730938), so the block and the triage's escape (6093174403) are unchanged.

  5. objectstack-fleet commented on Oct 10, 2026

    @objectstack-fleet
    ContributorAuthor

    Pointer for this card's correction PR, from domain:spec seat 2 (#18549) · marchtian · session session_016njDy8ozy9B9Ns5Y8kAWEK · 2026-10-10T14:12Z. ⛔ Not a claim, ⛔ not a state change.

    #22627 landed as PR #22673 (d973c34cdd): a translated flow screen title is now judged by the text-slot judge. One more pending line is false on main from that commit:

    • .changeset/22507-screen-copy-engine-pick-spec.md, its last bullet: "A translated screen title is not judged by the text-slot rule yet."

    PR #22673's own changeset (.changeset/22627-flow-screen-title-translation-text-slot.md) supersedes it in the same release ("An earlier entry in this release says …"), so the compiled CHANGELOG reads correctly in order. The cleaner text deletes the bullet in this card's one DELIBERATE CORRECTION PR. Source: PR #22673's dev report 6096446823 (out_of_scope_findings item 1) and its contract review 6098095681 (③).


    Generated by Claude Code

  6. objectstack-fleet commented on Oct 11, 2026

    @objectstack-fleet
    ContributorAuthor

    Pointer for this card's correction PR, from domain:spec seat 2 (#18549) · marchtian · session session_016njDy8ozy9B9Ns5Y8kAWEK · 2026-10-11T14:13Z. ⛔ Not a claim, ⛔ not a state change.

    #19939 pass 4 S2 landed as PR #22832 (12b9daf749). A screen's defaults.*, a field's defaultValue and recordId are now value slots, and the {…} token is refused there. The dev measured this (6109593912, out_of_scope_findings item 1) and the contract review confirmed it (6109673563): two more lines of pending text now state the old dialect.

    These join the items above for the one correction PR. #19939 stays open for S3–S7 (stage plan 6096263424; S3 is loop.collection / map.collection, still single-brace), so this card's block is unchanged.

  7. objectstack-fleet commented on Oct 11, 2026

    @objectstack-fleet
    ContributorAuthor

    Pointer for this card's correction PR, from domain:spec seat 3 (#18883) · zhuangjianguo · session session_01KNKBCRDJCu5tGy3TEbvtrF · 2026-10-11T23:10Z. ⛔ Not a claim, ⛔ not a state change.

    #19939 pass 4 S3 landed as PR #22883 (9fdb12752c). A loop (with a body) and a map node's collection are now value slots, and every string there is refused. Three more lines of pending text, read on main 9fdb12752c, still list them under the single brace:

    • .changeset/22110-flow-text-slot-double-brace.md:24 ("Unchanged: every other flow string keeps the single-brace dialect — …"): "loop / map collection".
    • .changeset/19939-flow-callee-input-value-slots.md:32 (S1's "Still accepted, unchanged."): "a map or loop collection".
    • .changeset/19939-flow-screen-value-slots.md:41 (S2's "Still accepted, unchanged."): "a map or loop collection".

    S3's own changeset (.changeset/19939-flow-collection-value-slots.md:38) says it supersedes that line, so the compiled CHANGELOG reads correctly in order. The cleaner text drops collection from all three in this card's one correction PR. #19939 stays open for S4–S7 (stage plan 6096263424), so this card's block is unchanged.


    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

    area:devpathThe road — create, dev, verify, publish/install, connect an agent, iteratedocumentationImprovements or additions to documentationdomain:specpm:blockedpriority:p1High: required for production / M2target:v18

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions