Skip to content

fix(release): revert the red 18.1.0 version commit and fix the dogfood proof that reddened it - #25605

Merged
objectstack-fleet[bot] merged 2 commits into
mainfrom
claude/project-thread-2iyh8e
Oct 24, 2026
Merged

objectstack-fleet[bot] merged 2 commits into
mainfrom
claude/project-thread-2iyh8e

Conversation

@objectstack-fleet

Copy link
Copy Markdown
Contributor

Clause-②: no
Metadata-protocol: none

Release fix for 18.1.0. The maintainer chose to revert the version commit and re-cut 18.1.0. This pull is the one landing the merge freeze lets through.

What happened

The diff

  1. test(dogfood): the contrast now matches the public-OWD sentence sharing: a share or sharing rule to an external member is refused as inert on a public_read_write or model-less system object, though the external OWD floor would consult it #25549 writes, up to "consulted only for an external member". The object and the code stay asserted, and a comment records why the wording moved. Locally, vitest run test/showcase-d3-d4-capabilities.dogfood.test.ts in packages/qa/dogfood gives 5 passed (5).
  2. Revert "chore: version packages (#24876)": a plain git revert 74fa3cb6d with no conflicts. Every package version goes back to 18.0.0, and the 265 changesets it consumed come back.

Nothing was published. npm view @objectstack/cli version still answers 18.0.0, and no 18.1.0 tag or GitHub Release exists.

After it lands

  • The fleet relay's refresh stroke (release.yml, refresh_version_pr: true) regenerates the Version Packages PR.
  • The maintainer approves its checks and merges it, then approves the release deployment once Full battery green at the version commit reads the new version commit green.

Out of scope

No product code, content/docs/releases/, or workflow changes. The 18.1 release page (#25460, #25553, #25590) already describes 18.1.0.


🤖 Generated with Claude Code

…25549 words

#25591 (#25549) made a public object's share row reachable by an external
member of the record's organization, so SharingService.grant's refusal on a
public object now names the recipient's standing. The showcase D3/D4 proof
still pinned the pre-#25549 sentence and failed the Dogfood Regression Gate on
main from a57643d, which refused the 18.1.0 release at its version commit.

Claude-Session: https://claude.ai/code/session_014C7q5Hm34g4EPdirar9SzN
Co-authored-by: Claude <noreply@anthropic.com>
This reverts commit 74fa3cb.

The 18.1.0 publish was refused at that version commit: its full battery is red
(Dogfood Regression Gate, the showcase D3/D4 proof pinning the pre-#25549
refusal sentence), and the release gate reads only runs at or before the
version commit, so no re-run on it can go green. Reverting restores the 265
changesets it consumed, including the five that landed after the Version
Packages PR was generated (#25591, #25592, #25596 and two patches), so the
regenerated Version Packages PR versions 18.1.0 again from a tree whose
battery can be read green, with a changelog that names everything it ships.
Nothing was published: npm still has 18.0.0 and no 18.1.0 tag exists.

Claude-Session: https://claude.ai/code/session_014C7q5Hm34g4EPdirar9SzN
Co-authored-by: Claude <noreply@anthropic.com>
@github-actions github-actions Bot added size/xl dependencies Pull requests that update a dependency file documentation Improvements or additions to documentation tests tooling labels Oct 24, 2026
@objectstack-fleet
objectstack-fleet Bot marked this pull request as ready for review October 24, 2026 05:30
@github-actions

Copy link
Copy Markdown
Contributor

📓 Docs Drift Check

⚠️ 152 changed file(s) yielded no anchor (packages/adapters/hono/CHANGELOG.md, packages/adapters/hono/package.json, packages/apps/account/CHANGELOG.md, …), so the pages documenting them are NOT COVERED by this run — this is not a clean bill of health for those files. Nothing else in this diff resolved to a documentable surface (no symbol, route or SDK anchor derived from 76 changed package(s)).

What this run could not see
  • 152 changed file(s) yielded no anchor (packages/adapters/hono/CHANGELOG.md, packages/adapters/hono/package.json, packages/apps/account/CHANGELOG.md, …) — pages documenting those are invisible to this run
  • a page that states a rule by its inputs shares no identifier with the emitter that implements the rule, so an emitter-only diff cannot list it — not on this run and not on any run. Measured on fix(driver-sql): emit varchar(maxLength) for a text field a declared index keys on #11430: content/docs/protocol/objectql/types.mdx documents the text-family column mapping by the ObjectQL type names it maps FROM (text / textarea / html) while the diff changed createColumn; it went unlisted, and it was the page that diff falsified, in four places. No shared token exists to detect this on, so a rule your change carries has to be re-read by hand in the pages that restate it.
  • a key NAME is not a key, so the hand re-read the line above prescribes can land on the wrong schema. The same spelling is authorable on one governed type and a [REMOVED] tombstone on another for each of active, aria, joins, objects, template, tools and version (censused on [finding] tools is a key on BOTH AgentSchema (tombstoned, dead) and SkillSchema (live, cloud-attested), so a name-based search attributes skill examples to the agent key — it produced a false stop-the-line alarm on PR #19059 #19093 over the liveness ledger's governed types, top-level keys); nothing in a search result distinguishes the two, so a grep hit on a LIVE example reads as evidence about the DEAD key. Measured on fix(spec): the agent.tools liveness row says dead — it claimed live on a key the schema tombstoned #19059: content/docs/ai/agents.mdx was reported as contradicting the agent.tools tombstone over its tools: example at :161, which is inside the defineSkill({ block opened at :155 — the page was already correct. Settle ownership by PARSING the value against both schemas, never by the name: that literal PASSES SkillSchema, and as an AgentSchema it FAILS at tools with the tombstone prescription. ⛔ These names are not the whole class — a key retired through a .strict() guidance map leaves no tombstone in the walked shape and none of them here (tool.category, live as AIToolDefinition.category).

Coarse fallback — 175 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): node scripts/docs-audit/affected-docs.mjs --json 74fa3cb6dfd3723c1871ee020486d3b548d85735 → packageMentionDocs.

@objectstack-fleet
objectstack-fleet Bot enabled auto-merge October 24, 2026 05:31
@objectstack-fleet

Copy link
Copy Markdown
Contributor Author

Check Changeset red: expected for this revert, left red on purpose · 2026-10-24T05:32Z

The level axis reads the .changeset/*.md files this diff adds and finds minor entries, such as 25554-runas-identity-assignment-wording.md and console-cf153eb2e535.md. It then asks this body to declare a metadata-protocol kind. None of those entries are new: they are the 265 notes 74fa3cb6d consumed, restored byte for byte by git revert. Each one already passed this gate on its own PR with its own declaration lines.

This PR's own changes release nothing: a dogfood test in a private package, plus package versions going back to 18.0.0. Declaring added, narrowed or semantic here would be false. skip-changeset would also be false, because the restored notes are pending releases. So the check stays red. It is not a required context and does not block the merge, and the regenerated Version Packages PR consumes these notes again.


Generated by Claude Code

@objectstack-fleet
objectstack-fleet Bot added this pull request to the merge queue Oct 24, 2026
Merged via the queue into main with commit 3937697 Oct 24, 2026
44 of 46 checks passed
@objectstack-fleet
objectstack-fleet Bot deleted the claude/project-thread-2iyh8e branch October 24, 2026 06:34
os-sales pushed a commit that referenced this pull request Oct 24, 2026
…-pluvu5

One conflict, in showcase-d3-d4-capabilities.dogfood.test.ts: #25605
loosened the same contrast to the prefix "consulted only for an external
member" on the absent record. Kept this branch's side, which grants on a
real showcase_project to a staff member of its organization and pins
"and the recipient is not one". Main's other incoming change (#25607) is
scripts/release-pending-publish.mjs only.

Claude-Session: https://claude.ai/code/session_014rFBGqoBLiroi35e82xEa7
Co-authored-by: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file documentation Improvements or additions to documentation size/xl tests tooling

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants