Repository navigation
chore: version packages - #25606
Merged
Merged
chore: version packages#25606
Conversation
github-actions
Bot
requested review from
hotlong and
os-zhuang
as code owners
October 24, 2026 06:15
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
October 24, 2026 06:37
50e5662 to
ab36629
Compare
This was referenced Oct 24, 2026
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
October 24, 2026 07:04
ab36629 to
22e7541
Compare
Contributor
Author
📓 Docs Drift Check
What this run could not see
Coarse fallback — 175 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): |
marchtian
enabled auto-merge
October 24, 2026 07:43
github-merge-queue
Bot
removed this pull request from the merge queue due to failed status checks
Oct 24, 2026
os-zhuang
approved these changes
Oct 24, 2026
This was referenced Oct 24, 2026
akarma-synetal
pushed a commit
to akarma-synetal/objectui
that referenced
this pull request
Oct 28, 2026
…commit e649c2d91e (objectui#13440) (objectstack-ai#13445) <!-- claude-projects-attribution: {"github_login":"os-sales"} --> _Requested by **Sales** · [project thread](https://claude.ai/code/project/chan_01D5bWFY3rFzgJcytD5gD4Uu?thread=cmsg_01D5bWFY3rFzgJcytD5gD4UuQx8xAyxeMnyWkn84sEzqVb)_ Closes objectstack-ai#13440 Clause-②: no Metadata-protocol: none Unblocks #13285 and #13305 (both wait for a pin that carries 18.1.0). ## The pin - `.objectstack-sha` moves from `915e94049922` to `e649c2d91e270e3da26820bcfe54a28445305a75`, the objectstack 18.1.0 release commit ("chore: version packages", objectstack-ai/objectstack#25606). It carries objectstack-ai/objectstack#25483 and objectstack-ai/objectstack#25564, which objectstack-ai/objectstack#25251 required to ship in one release, so the same-release hold is met. - **Ancestry, read in the objectstack checkout:** `git merge-base --is-ancestor e649c2d91e origin/main` exits 0, and the bump script reported "(on origin/main)". The `@objectstack/cli@18.1.0` tag peels to `e649c2d91e`. - **The path:** `scripts/bump-objectstack.sh e649c2d91e270e3da26820bcfe54a28445305a75 --no-commit` (so the commit carries the repo's trailer pair), which fetched the sha and built and packed the 7 packages, then `pnpm install`. - **What moved:** `.objectstack-sha` and the seven packed manifests in `.objectstack-pin/`. The manifests change only version strings, `18.0.0` to `18.1.0` (the package's own version and its `@objectstack/*` dependencies). - **`pnpm-lock.yaml` is unchanged.** `pnpm install` left it byte-identical, and `pnpm install --frozen-lockfile` exits 0. So the Dependabot lockfile PRs (objectstack-ai#13438, objectstack-ai#13439) do not overlap this one. - `pnpm objectstack:status` answers `✓ built at the pin e649c2d91e27`. ## What the move breaks, and the follow-through in this PR Each item below is red on the bare pin move and was fixed here because the failing check names its own fix. Nothing else changed. ### 1. The `external` tripwire in `@object-ui/auth` (objectui#13427) `packages/auth/src/__tests__/org-roles.test.ts` › "spells external itself only while the pin predates objectstack#25515" went red as designed. Its message prescribes the swap, and this PR does exactly that: - `packages/auth/src/org-roles.ts` re-exports the spec's `MEMBERSHIP_ROLE_EXTERNAL` as `ORG_ROLE_EXTERNAL` instead of spelling the literal. **The exported name and its value (`'external'`) are unchanged**, and its declared type is still the literal `"external"`, so `@object-ui/auth`'s public face does not move (Clause-② stays `no`). `ORG_ROLE_LABELS` is typed `Record<OrgRole, …>` again, with the `| typeof ORG_ROLE_EXTERNAL` union dropped. - The tripwire test is deleted, with its now unused `@objectstack/spec` namespace import. - `InviteMemberDialog.roleCap.test.tsx` and `org-i18n-holdouts-4474.test.tsx` now expect `external` in the invite dialog's role list. This is the spec's 18.1.0 vocabulary reaching `ORG_ROLES`, which objectui#13427's changeset already described: "Wherever the installed spec lists the role, the invite dialog offers it to every issuer who can invite". It is not a choice made by this card. The owner list gains `external`, and a delegated admin or an unloaded membership is offered `['member', 'external']`. The delegate test's name now says "offered member and external only". ### 2. `check:installed-pin-claims`: 34 present-tense "installed 18.0.0" stamps The gate is blocking through `scripts/__tests__/check-installed-spec-pin-claims.test.ts`. The packed manifests now say 18.1.0, so it flagged 34 lines in 24 files, all comments or test description strings. No code changes. **Every stamp was re-measured before it moved.** The method: - The spec SOURCE diff between the two pins, `git diff --name-only 915e9404 e649c2d91e -- packages/spec/src`, touches only `automation/flow.zod.ts` (the `runAs` description text and a comment), `data/object.zod.ts` (the new `membershipKeys` key and its extension refusal), `identity/*` (the `external` role), `kernel/execution-context.zod.ts` and `security/explain.zod.ts` (descriptions and comments), `security/rls.zod.ts` (`MembershipKeysSchema`), `stack.zod.ts` (the duplicate membership-key refusal), `index.ts` (two new exports) and one semantic migration entry, plus tests. - No claim's subject is in that set. The subjects are `ui/*` rows (`ViewDataSchema`, `ComponentPropsMap['object-calendar']` and `['object-kanban']`, list-view conditional formatting and card style rules, the chart and dashboard `aria` tombstones, record components, form section groups, master-detail details, the gantt `navigation` tombstone), `FieldSchema` and `SelectOptionSchema`, and flow node config (`waitForInput`, the single-brace mark, the canvas-seed save errors). The two claims about non-spec sources were checked at their own source: `packages/lint/src/validate-expressions.ts` (the `current_user` CEL message `celAuthoring.ts` quotes) has an empty diff between the pins, and the trigger packages changed only `CHANGELOG.md` and `package.json`. - The test files that carry a claim, or pin a source file's claim, ran green at the new pin (see the verification comment). Each stamp moves `18.0.0` to `18.1.0`. A stamp that carries its re-measure list (`objectui#12030, … objectui#13261`) gains `objectui#13440`, the same form objectui#13261 used. After the restamp the gate answers `34 at the pin` and `OK`. ### 3. `e2e/live/ci/backend.env` `scripts/__tests__/ci-cd-pipeline-doc.test.ts` › "pins OBJECTSTACK_VERSION to the version the lockfile resolves" went red. `OBJECTSTACK_VERSION` moves `18.0.0` to `18.1.0`. Its `@objectstack/cli@18.1.0` tag peels to this pin's commit, so the live lane's backend and the console's pin are the same release. ### 4. The `ObjectSchema` key-count guards in `app-shell` `MetadataService.retiredObjectEnabled.test.ts` (line 157) and `MetadataService.specKeyObjectPayload.test.ts` (line 171) count the keys `ObjectSchema` accepts, and both went red with `expected 47 to be 46`. Spec 18.1.0 adds one key, `membershipKeys` (objectstack-ai/objectstack#25513). **Measured, not assumed:** the spec's own `authorable-surface/data.json` gains exactly `data/Object:membershipKeys` between `915e9404` and `e649c2d91e`, and loses nothing. Both guards now expect 47, and each carries a comment with that basis, in the same form as the earlier re-point (objectui#12971). The two files pass, 25 tests. ## Changeset `.changeset/13440-objectstack-pin-e649c2d.md` declares `'@object-ui/auth': patch`. The published module now imports `MEMBERSHIP_ROLE_EXTERNAL` from `@objectstack/spec`, so it needs a spec that exports it (18.1.0 or later). `node scripts/objectstack-floor.mjs --dry-run` exits 0 and moves 37 ranges to `^18.1.0` at publish, so the published ranges will require that version. `check-changeset-presence.mjs` and `check-changeset-no-major.mjs` pass. ## Acceptance notes - The restamped comments in published packages (`types`, `core`, `plugin-calendar`, `plugin-designer`, `plugin-detail`, `plugin-kanban`, `app-shell`) change no behaviour, so the changeset names `@object-ui/auth` only. - After merge the seat reads #13285 and #13305 against the new pin, as the card says. - [x] Adds no product-specific widget, dialog, hook or string (see AGENTS.md › Product-neutral renderer) Session: `https://claude.ai/code/session_01CErMSwkRLW7c7jk23MHfVP` 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01CErMSwkRLW7c7jk23MHfVP --------- Co-authored-by: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and publish to npm yourself or setup this action to publish automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
@objectstack/hono@18.1.0
@objectstack/cli@18.1.0
@objectstack/cloud-connection@18.1.0
@objectstack/console@18.1.0
@objectstack/core@18.1.0
@objectstack/driver-memory@18.1.0
@objectstack/driver-sql@18.1.0
@objectstack/driver-turso@18.1.0
@objectstack/formula@18.1.0
@objectstack/lint@18.1.0
@objectstack/metadata-core@18.1.0
@objectstack/metadata-protocol@18.1.0
@objectstack/objectql@18.1.0
@objectstack/platform-objects@18.1.0
@objectstack/plugin-approvals@18.1.0
@objectstack/plugin-audit@18.1.0
@objectstack/plugin-auth@18.1.0
@objectstack/plugin-hono-server@18.1.0
@objectstack/plugin-security@18.1.0
@objectstack/plugin-sharing@18.1.0
@objectstack/rest@18.1.0
@objectstack/runtime@18.1.0
@objectstack/service-datasource@18.1.0
@objectstack/service-messaging@18.1.0
@objectstack/service-settings@18.1.0
@objectstack/spec@18.1.0
@objectstack/account@18.1.0
@objectstack/setup@18.1.0
@objectstack/studio@18.1.0
@objectstack/client@18.1.0
@objectstack/client-react@18.1.0
@objectstack/connector-mcp@18.1.0
@objectstack/connector-openapi@18.1.0
@objectstack/connector-rest@18.1.0
@objectstack/connector-slack@18.1.0
create-objectstack@18.1.0
@objectstack/driver-mongodb@18.1.0
@objectstack/driver-sqlite-wasm@18.1.0
@objectstack/mcp@18.1.0
@objectstack/metadata@18.1.0
@objectstack/metadata-fs@18.1.0
@objectstack/observability@18.1.0
@objectstack/embedder-openai@18.1.0
@objectstack/knowledge-memory@18.1.0
@objectstack/knowledge-ragflow@18.1.0
@objectstack/organizations@18.1.0
@objectstack/plugin-dev@18.1.0
@objectstack/plugin-email@18.1.0
@objectstack/plugin-pinyin-search@18.1.0
@objectstack/plugin-webhooks@18.1.0
@objectstack/service-analytics@18.1.0
@objectstack/service-automation@18.1.0
@objectstack/service-cache@18.1.0
@objectstack/service-cluster@18.1.0
@objectstack/service-cluster-redis@18.1.0
@objectstack/service-i18n@18.1.0
@objectstack/service-job@18.1.0
@objectstack/service-knowledge@18.1.0
@objectstack/service-mailbox@18.1.0
@objectstack/service-package@18.1.0
@objectstack/service-print@18.1.0
@objectstack/service-queue@18.1.0
@objectstack/service-realtime@18.1.0
@objectstack/service-sms@18.1.0
@objectstack/service-storage@18.1.0
@objectstack/skills@18.1.0
@objectstack/trigger-api@18.1.0
@objectstack/trigger-record-change@18.1.0
@objectstack/trigger-schedule@18.1.0
@objectstack/types@18.1.0
@objectstack/verify@18.1.0
@objectstack/connector-imap@18.1.0
@objectstack/sdui-parser@18.1.0
@objectstack/example-crm@4.0.101
@objectstack/example-multi-package@0.0.8
@objectstack/example-showcase@0.3.23
@objectstack/example-todo@4.0.101
@objectstack/example-embed-objectql@0.0.41
@objectstack/dogfood@0.0.49
@objectstack/downstream-contract@0.0.47
@objectstack/http-conformance@0.1.9