Skip to content

#9872 residue: 6 non-comment sites still date the #3290 removal to v11 — split governed / spec surface #9991

Description

@claude

Follow-on from PR #9990 (#9872), filed by the domain:devx PM seat under that card's Q1 → B. PR #9990 fixed 20 of 26 sites and used Part of #9872 rather than a closing keyword, so #9872 stays open until these land.

Why these 6 could not ride in #9990

That PR was scoped comment text only and declared Clause-②: no on that basis. These six are not comment text, and each carries a different review path — a mixed diff would fork the whole PR under AGENTS.md #14 and hold 20 correct fixes hostage.

Split A — governed surface, its own PR

  • skills/objectstack-ui/SKILL.md:1934

⚠️skills/** is a governed surface: human-merge-only, ⛔ never armed, never flipped out of draft. One file, one PR.

Split B — spec surface, its own PR (and it owes a changeset)

  • packages/spec/src/ui/action-params.zod.ts:376 and :409.describe() strings
  • packages/spec/src/migrations/registry.ts:1555 — migration rationale
  • packages/spec/src/migrations/entries/semantic/17.action-session-roles-to-positions.ts:23

These are runtime data, not prose. They regenerate:

  • content/docs/references/ui/action-params.mdx:58,59 — marked AUTO-GENERATED DO NOT EDIT
  • spec-changes.json
  • docs/protocol-upgrade-guide.md:317

⇒ the wrong version string is published, not merely commented, which is why it outranks the 20 already fixed. A changeset is owed here (PR #9990's ruling 6 forbade one because nothing it touched published).

⚠️.changeset/** is inside the #9465 epic fence: add only your own new file; never edit existing changesets, the changeset scripts, or the release workflows.

⛔ Two sites that look like they belong here and DO NOT — leave them

PR #9990's dev flagged both and correctly did not touch them. Ruled: they stay as they are.

  • packages/plugins/plugin-audit/src/audit-writers.test.ts:1653 — a test title (does not resolve the v11-removed tenantId alias)
  • scripts/check-org-identifier.mjs:596,600,602,640 — the gate's own self-test fixture corpus

Both are behaviourally inert (the detector never reads version tokens; expected counts stay 0). That inertness is the reason to leave them: the fixture corpus is deliberately a museum of the removed dialect, and the test title describes the fixture rather than the release. Editing them would be changing evidence to match prose. Recorded here so nobody re-opens it as an oversight.

The correct version, and how it was established

v16, on two positive legs (PR #9990 replaced the card's original third leg, which was false — see below):

  1. 6c270a6: **BREAKING: remove the deprecated ctx.session.tenantId … sits under ## 16.0.0 in the packages/spec, packages/runtimeandpackages/objectql CHANGELOGs;
  2. docs/upgrading-to-11.md — the complete 10.x→11.x breaking-change guide — contains no tenantId, no Unify the developer-facing org identifier: hooks expose session.tenantId while RLS/seed/columns use organizationId (add organizationId as the blessed name) #3280 and no Remove the deprecated hook/action ctx.session.tenantId alias in the next major (converge on organizationId) #3290 at all.

Corroborated by skills/objectstack-data/references/data-hooks.md:627, the one site that was always right (governed — read, never edited).

Do not repeat the card's original leg 3 ("there is no v11.mdx, so v11 is not a real major"). It is false: v11 is a real major (docs/upgrading-to-11.md, @objectstack/*@11.0.0), and its release page is absent by policyscripts/check-release-notes.mjs:39, const KNOWN_MISSING = new Set([10, 11]).

⛔ Do not run a mechanical v11 → v16 sweep

PR #9990 found two sites that date a DIFFERENT removal to v11 correctlycontent/docs/kernel/contracts/metadata-service.mdx:311 (IUIService) and docs/audits/2026-07-security-props-liveness-recheck.md:26 (PolicySchema) — both listed as their own items in docs/upgrading-to-11.md. A blanket sweep corrupts both. objectui#3290 is also a different repo's issue and is not in the population.

Also out of scope

content/docs/releases/** (release-owned; evidence only), published CHANGELOG history, and the two pending changesets inside the #9465 fence.

Refs: PR #9990 / #9872 (source, method, and the falsified leg) · #9465 (changeset fence) · AGENTS.md #14 (mixed-surface fork).


Generated by Claude Code

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