Skip to content

aftercare(ui-merge): the first joint 18.x release from the merged repo — both scopes at one version, @object-ui published, docs site deployed — then close #25556 as superseded and the epic (parent #25677, 6/6) #25753

Open

Description

@objectstack-fleet

Filing gate ③ + ④: sub-issue 6/6 of the epic #25677 (pm:epic; epic PM session_01RSDL3SFtJaKzcymvCD8RsU). Part of #25677. ⛔ Not a claim; the epic PM runs it, the release itself is the maintainer's (Version PRs are human-merged).

Blocked-by: #25752 (sub-issue 5, the cutover) — nothing here is testable before ui/ is on main and 4a / PR B / 4b PR 2 are merged.

谁付代价(业务筛): the merge is only real when a release proves it: one Version PR, both scopes, one release.yml run publishing 39 @object-ui/* packages beside @objectstack/*. Until then downstream (cloud, #25556) still has two sources of truth to reconcile.

维护者速读

切换后第一次发版就是验收:一个 Version PR 里 @objectstack 和 @object-ui 同号(两边今天都是 18.1.0,所以首个联合版本是 18.1.x 或 18.2.0),release.yml 一次跑出两个 scope,objectui 文档站从新仓部署。你合 Version PR;席位盯发布 run、对每个 @object-ui 包 npm view 核对版本、看文档站。之后清理残留(验证分支与 DO NOT MERGE PR、scripts/ui-import/ 的一次性脚本、迁移说明里的链接)、把 #25556 关为 superseded、关父单。

Scope

  1. First joint release (maintainer merges the Version PR): the changesets Version PR after cutover bumps both scopes to one version; the seat checks the PR's manifest diff (39 @object-ui/* + today's @objectstack/*, same string), the maintainer merges, release.yml publishes. Seat verifies with npm view @object-ui/<pkg> version on a sample of 5 packages plus @objectstack/console (built in-workspace by 4a), and that the GitHub Release names both scopes.
  2. Docs site: objectui's docs site deploys from ui/apps/site through the Vercel project set up in cutover(ui-merge): the switch itself — freeze both repos, git subtree add objectui as ui/ with its adaptation commit, land 4a / PR B / 4b PR 2 in order, migrate open objectui branches and cards, archive the objectui repo (parent #25677, 5/6) #25752 step 6 (4b's docs-deploy.yml); the seat checks one page that changed in the last objectui round renders from the new deploy.
  3. Cleanup: close the DO NOT MERGE verify PR DO NOT MERGE — verification run for #25697: PR A + the ui/ subtree import of objectui main cd70b7818d #25718 if still open and delete the -25697-verify branch; delete or retire scripts/ui-import/* (splice-lockfile, 4a-ui-side.patch) with a note where the lock recipe lives (bill item 8); drop the objectstack#/objectui# cross-repo spelling from the pm scripts if 4b PR 2 left any; liveness ledger has no evidenceScope: cross-repo row (4b's), spot-check 3 rows.
  4. Close out: process: a published-type change objectui consumes lands in lockstep with objectui's adaptation — #24947 left framework main and objectui main uncompilable together, so cloud's pin round had to stop 7 commits short #25556 closed as superseded by this epic with a one-line pointer; the parent's checklist all ticked and the parent closed by the maintainer or the seat on the maintainer's word; memory/skills notes for the fleet updated (pm-dispatch references that still say "two repos").

Done when

Size: M. Clause-②: no. Metadata-protocol: none.

风险

Dedupe

search_issues 2026-10-25 05:33Z 「first release after objectui merge both scopes same version @object-ui publish from objectstack docs site deploy post-merge」: 2 hits (#25727 this epic's 2c; #14324 closed, the 17.2.0 spec publish decision). #25556 (open) is the card this one closes; no other card covers the post-merge release. New.

Activity

  1. objectstack-fleet commented on Oct 26, 2026

    @objectstack-fleet
    ContributorAuthor

    Hand-off from child 5 (#25752, the cutover procedure) to this card, 2026-10-26T07:50Z.

    The switch is complete: ui/ is on main (#25825), 4a #25745, PR B #25827 and 4b PR 2 #25834 are merged, the required set reads 8 live / 0 / 0 with no retired gate (Type Check UI, Lint UI and Build & E2E UI added; Test UI advisory per ruling 30 = B), and objectui is archived with the migration notice as its README head (#25854).

    Expected version of the first joint release: 18.2.0. Both scopes are at 18.1.0 on main (packages/spec, ui/packages/core). The root .changeset/ carries 55 minor and 84 patch bumps, so the fixed group moves one minor.

    What this card still needs before the Version PR is cut, all already filed:

    The Version PR is merged only by a human. After it publishes, this card closes #25556 as superseded and then the epic #25677.

  2. objectstack-fleet commented on Oct 26, 2026

    @objectstack-fleet
    ContributorAuthor

    Release timing (maintainer ruling), recorded 2026-10-26T12:51Z: 「我计划进行中的任务都开发完,再发 18.2」 (Tesla, project chat, 2026-10-26T12:51Z). 18.2.0 is cut only after the in-progress work is finished.

    So this card holds. Nobody opens, pushes or asks for a merge of the joint Version PR when #26097 (#25832) lands. If the changesets bot refreshes a Version PR on its own, it stays unmerged until the maintainer says release.

    State of the two prerequisites:

    D1 work still in flight before the release, all on #25712 (4b), one PR at a time: 2e liveness ledger (in work), 2f spec tests, 2g one sdui-parser, 2h AGENTS.md + ui/AGENTS.md (Tier H), 2i. The expected version stays 18.2.0 unless one of these carries a major, which the no-major guard refuses anyway.

  3. objectstack-fleet commented on Oct 27, 2026

    @objectstack-fleet
    ContributorAuthor

    D1 blockers for 18.2 are cleared: 2026-10-27T02:32Z

    维护者速读

    D1 这边挡 18.2 的工作已经全部合入:#26343(2g PR 2)合入 80f267d,#26367(2i PR B)合入 e931621,#25712 和 #26137 都已关闭。按你 12:51Z 的裁定,什么时候合并 Version PR #25640 由你决定(只能由人来合)。合并并发布后,请执行 npm deprecate @object-ui/sdui-parser "moved to @objectstack/sdui-parser"。

    Detail

    The hold on this card (6416455214) waited for 2g and 2i, per ruling B on #25712. Both are done:

    With #26343, @object-ui/sdui-parser left the fixed group. The 18.2 Version PR therefore no longer bumps it, and npm keeps it at 18.1 until the deprecate above.

    From D1's side, nothing else blocks the Version PR. The maintainer's rule that 18.2 follows the end of all in-progress work still applies across the other lanes.

    The closing record on #25712 (6432294556) moves its residual cleanup (F12, F14, F18–F20, F23, F27, the 2h list) to this card's "cleanup leftovers". None of it blocks the release.

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, iteratedomain:devxpm:epicpriority:p1High: required for production / M2tooling

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions