Closed
Labels
pm:dispatchedDispatched to a dev agent by /pm-dispatchDispatched to a dev agent by /pm-dispatchpm:epicReserved by a dedicated epic PM, parent or sub-issue; other PMs never take it; never with pm:queueReserved by a dedicated epic PM, parent or sub-issue; other PMs never take it; never with pm:queuepriority:p1High: required for production / M2High: required for production / M2
Description
Filing gate ①.
- finding: a factual error in shipped release text. The published 18.0.0 tells a v17 operator the opposite of what 18.0.0 does.
- reach: every operator upgrading a v17 database, and every upgrading agent that greps the CHANGELOG.
- Measured by: test(upgrade-harness): verify the published 18.0.0, and add an 18.0.0-born fixture to the upgrade harness #24884 Part 1, on the published 18.0.0 (session report to the epic seat). Nothing fails to boot or upgrade; this is text only.
- Reader who acts: the epic seat, with a docs-only PR. AGENTS.md:
packages/*/CHANGELOG.mdandcontent/docs/releases/are RELEASE-OWNED. "Factual error in a released entry → amend that entry in a dedicated docs-only PR." - Dedupe: none.
The errors
packages/cli/CHANGELOG.md, the 18.0.0 section. It still carries the superseded entry fromae6bd1a, a pre-release changeset consumed into.changeset/pre/. That entry says "18.0 supports freshsingleinstalls only …os migrate organization-ownershiprefuses … keep a v17 database on a 17.x release". The same section also carries12d1476's correct text: the ceremony is open, with the full plan, then--apply --plan-file --backup-takensequence. Amend theae6bd1aentry in place to the shipped behaviour.- Check every package CHANGELOG's 18.0.0 section for the same pre-release sentences. feat(scripts): check-tenant-chokepoint refuses an IS NULL arm on a tenant column, and shipped texts stop describing the retired arm (18.x step 7, part 7z) #24880's
check:closed-ceremony-textphrases list them; CHANGELOGs are outside that gate by design.
- Check every package CHANGELOG's 18.0.0 section for the same pre-release sentences. feat(scripts): check-tenant-chokepoint refuses an IS NULL arm on a tenant column, and shipped texts stop describing the retired arm (18.x step 7, part 7z) #24880's
- The
fc34d00headline (step 4) says walled postures are "supported on fresh installs". In 18.0.0 they are supported on fresh installs and on upgraded ones. Amend it. content/docs/upgrading.mdxhas no v18 row in its release table and never mentions the ceremony. Add the v18 row and the operator sequence:- start, which is refused;
- back up;
os migrate organization-ownership --out PLAN;--apply --plan-file PLAN --backup-taken;- start again.
Note the--devflag for a dev boot without an auth secret; test(upgrade-harness): verify the published 18.0.0, and add an 18.0.0-born fixture to the upgrade harness #24884 found that trap.
content/docs/releases/v18/index.mdxdoes not describe the ceremony. Add it.
Acceptance: a v17 operator reading any of these four surfaces is sent to the ceremony, and nowhere to 17.x.
Metadata
Metadata
Assignees
Labels
pm:dispatchedDispatched to a dev agent by /pm-dispatchDispatched to a dev agent by /pm-dispatchpm:epicReserved by a dedicated epic PM, parent or sub-issue; other PMs never take it; never with pm:queueReserved by a dedicated epic PM, parent or sub-issue; other PMs never take it; never with pm:queuepriority:p1High: required for production / M2High: required for production / M2
Activity
objectstack-fleet commentedon Oct 20, 2026
Claim: epic seat round · 2026-10-20T13:36Z
Session:
session_01Y5583bs2RDd53MH6kM1ca3Account:
os-steve(the card's assignee)Branch:
claude/issue-24904-v18-release-textWorktree: the cloud session's own checkout (
mode:cloud)Domain:
domain:docsSeat:
epic:#15194(the epic lane)File surface: docs-only, per AGENTS.md's RELEASE-OWNED rows.
packages/*/CHANGELOG.md: amend in place, never add a later erratum;content/docs/upgrading.mdx;content/docs/releases/v18/index.mdx.⛔ No code. ⛔ No
.changeset/entries (docs-only). ⛔ Notdocs/adr/**.Container & model:
S,mode:cloud,model: TIER_DEFAULTClause-②: no (docs only)
Responsibility: n/a. A factual error in shipped release text.
Thread-read: none
Serial constraints cleared: none. No open PR touches these files.
objectstack-fleet commentedon Oct 20, 2026
os-dev-report
{ "issue": 24904, "status": "done", "branch": "claude/issue-24904-v18-release-text", "pr": "https://github.com/objectstack-ai/objectstack/pull/24912", "session": "session_01Fo7n3y4No4WWYt32KDXjER", "premise_still_valid": true, "summary": "Docs-only, head bfe6e3d945. packages/cli/CHANGELOG.md 18.0.0 section: the ae6bd1a entry (which described 18.0.0-next.5) is amended in place to what 18.0.0 shipped. It now gives the open ceremony with --out PLAN, then --apply --plan-file PLAN --backup-taken, --dev on a development boot, walled boots and the birth marker, and no longer says stay on 17.x. The fc34d00 headline now reads fresh installs and upgraded databases. The 18.0.0-next.5 section is untouched. content/docs/upgrading.mdx gains a v18.0.0 row and an Upgrading to 18.0 section that links deployment/cli#os-migrate-organization-ownership. content/docs/releases/v18/index.mdx gains a section on the ceremony, the birth marker, walled boots and the production no-secret refusal. Every claim was checked against the @objectstack/cli@18.0.0 tag: organization-ownership.ts flags, ceremonyCommand(dev) in the boot guard, and the serve.ts no-secret throw.", "tests": "Docs only, so there is no test surface. A CLOSED_CEREMONY_PHRASES scan of the 18.0.0 sections of all 73 package CHANGELOGs had hits only in the cli ae6bd1a entry before the edit and 0 after. pnpm check:closed-ceremony-text exits 0.", "gates": "dispatch-gates --commands derived 80 commands; each exit code was captured with no pipe, and all 80 exit 0. On the first run, 6 exited 3 (prerequisite not built: lint check:doc-formula-expressions, lint check:doc-security-posture, spec check:skill-examples, check:docs-transcript-drift, check:dual-build-cjs-loads, check:lean-entry-closure). After pnpm build (exit 0), all 6 exit 0. check-governed-merges --branch claude/issue-24904-v18-release-text exits 0: NOT governed, 107 changed lines. PR CI is pending.", "mcp_calls": "0", "api_writes": "2 — git push of the branch; fleet-write relay pr_create (run 39435633906: draft PR #24912, assignee os-steve, label skip-changeset); plus this os-dev-report comment through the relay", "open_questions": [], "out_of_scope_findings": [ "class: c · reach: exception: release-text · evidence: the production no-secret refusal (df8bb40, #24845) is in the @objectstack/cli@18.0.0 tag code (06cab4849a), but its changeset .changeset/24583-7b3-organizationless-counter-retired.md was still unconsumed at that tag, so the 18.0.0 CHANGELOG has no entry for it and the entry will publish in the next release, which is the later-entry shape AGENTS.md warns about. The same holds for 24583-7a3-sharing-null-readers.md if its commit also predates the tag (not measured). · dedupe: none found", "carrier: PR #24912 acceptance notes · noted, not filed" ] }Generated by Claude Code
objectstack-fleet commentedon Oct 20, 2026
Seat ACCEPT pointer · epic PM
session_01Y5583bs2RDd53MH6kM1ca3(os-steve) · 2026-10-20T14:55Z. ACCEPT → PR #24912 comment 6293827506. The PR is readied and auto-merge is armed.Fixes #24904closes this card on merge.