docs(spec): the 17.4.0 entry no longer records the paid packages/rest follow-up as owed - #21014
Conversation
… follow-up as owed The 094b8fd entry in @objectstack/spec 17.4.0 closed its batch.maxBatchSize note with "it is owed to a follow-up in packages/rest" and anchored the quoted docblock at packages/rest/src/rest-server.ts:2071. ec5db7b paid that follow-up eleven hours later and shipped in @objectstack/rest 17.4.0, the same release, so the note was false as published and the line anchor has since drifted onto unrelated JSDoc. Amended in place, the way this file's earlier errata were: the clause and the anchor are corrected in the passage, and one dated erratum line at the end of the entry quotes the old words. No changeset: a changeset would compile the correction into a new release note, the erratum-in-a-later-entry shape the CHANGELOG guardrail forbids. Claude-Session: https://claude.ai/code/session_01JAhu8u8QfBvRjVZDox7CP9 Co-authored-by: Claude <noreply@anthropic.com>
📓 Docs Drift Check
What this run could not see
Coarse fallback — 137 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): |
Contract reviewServed-tier: Face: CHANGELOG prose ( ① Derived judgmentsAccept set and public surface: none moves. The diff touches no schema, export, default, bound or refusal; it rewrites one prose paragraph and appends one italic paragraph inside one already-published CHANGELOG entry. The only thing that changes for a consumer is the text of Every factual claim the amended passage and the appended erratum make, checked against git and the published releases (not the PR body):
Check-runs on this head: 39, all ② Semver levelNo changeset owed; ③ Boundary flags
The dev's acceptance note on the entry's retained present tense is judged in ① item 9. Nothing is escalated to the maintainer. Implemented-by: VERDICT: PASS |
Fixes #18858
Clause-②: no
What
packages/spec/CHANGELOG.md, inside the released@objectstack/spec17.4.0 entry for 094b8fd, closed itsbatch.maxBatchSizenote with "it is owed to a follow-up inpackages/rest" and anchored the quoted docblock atpackages/rest/src/rest-server.ts:2071. Both are false today, and the first was already false when it was published:enforceBatchSize's docblock to call the cap embedder policy. It landed 2026-09-08T18:05Z, eleven hours after 094b8fd (06:54Z), and shipped in@objectstack/rest17.4.0, the same release as the note. The npm registry'stimefield shows spec 17.4.0 published at 2026-09-09T03:57:51Z and rest 17.4.0 at 03:58:13Z.:2071was correct at 094b8fd and has drifted since. Ata5bce4088that line is JSDoc onresolveRequestEnvironmentId.This PR amends that one entry in place. It uses the shape this file's own errata already use (
*Erratum, DATE — … (Corrected after publication, #N.)*, six instances in this file). The closest is the 2026-09-18 batch-cap erratum on the same subject, which puts the line at the end of the entry and says how many passages above it were corrected in place:enforceBatchSizedocblock ofpackages/rest/src/rest-server.ts) instead of by line number. Its last clause names ec5db7b as the follow-up that was paid.No other sentence in the entry is touched. This PR has no changeset. The
packages/*/CHANGELOG.mdrow of the AGENTS.md Documentation Guardrails says a factual error in a released entry is amended in place in a docs-only PR. A changeset would compile the correction into a new release note, which is the erratum-in-a-later-entry shape that row rules out. The amended text reaches npm with the next@objectstack/spectarball.Evidence (measured on
a5bce4088, this branch's base)grep -c "deployment policy" packages/rest/src/rest-server.tsgrep -c maxBatchSizeon the same file: 6. The docblock now reads "⛔ It is NOT deployment policy", but a line break splits that phrase, so the single-line grep cannot match it. Its text was read directly as well.packages/rest/CHANGELOG.mdec5db7boccurs once, under## 17.4.0/### Patch Changes@objectstack/spec17.4.0 and 17.5.0package/CHANGELOG.mdonce, under## 17.4.0@objectstack/rest17.4.0 and 17.5.0ec5db7bentry is in each once, under## 17.4.0git show 094b8fd:packages/rest/src/rest-server.ts, line 2071Gates (on
efea2a386e, the final commit)node scripts/pm/dispatch-gates.mjs --repo objectstack-ai/objectstack --commandsderived 55 commands for this one path. 51 ran and exited 0. They includepnpm check:nul-bytes,pnpm check:issue-citations,pnpm check:published-files,pnpm check:release-notes,pnpm check:release-page-statusandnode scripts/check-release-section-coverage.mjs --strict. The--ranreconciliation reads: 55 accounted for, 51 run, 4 NOT-MEASURED, 0 UNRUN.NOT MEASURED (4):
check:dts-closure,check:dual-build-cjs-loads,check:lean-entry-closureandcheck:sourcemap-no-sources-content. Each exited 3 with PREREQUISITE NOT MET. They read thedist/of every workspace package, and this worktree has no workspace build. A CHANGELOG prose edit changes no build input, and CI runs these gates over a fresh build.check:issue-citationspasses, but**/CHANGELOG.mdis one of its declared deferred surfaces, so it did not judge the new#18858citation. That citation was checked by hand: RESTGET /issues/18858answers 200, and the item is an issue, not a pull request.Acceptance notes
:3581, read at631dcbd4b. Ata5bce4088it is at:18471, because later release sections were added above it.Generated by Claude Code