chore(release): bump version set to 10.0.12 - #2073
Merged
Merged
Conversation
Move the root package and all 20 packages/* workspaces to 10.0.12 in lockstep, per RELEASE_PROCESS.md §3, and convert the [Unreleased] section into the 10.0.12 CHANGELOG entry. Version-only bump: pnpm-lock.yaml is untouched, so `pnpm install --frozen-lockfile` stays valid. `pnpm release:verify-versions --version 10.0.12` passes (21/21). The engines.node ranges added in 10.0.10 are preserved unchanged. CHANGELOG: the prior [Unreleased] body documented only #2006, in a single 2.8k-character bullet, under a non-house-style `### Operator knobs` heading. It is replaced by a full section covering all nine PRs (#2067, #2053, #2059, #2051, #2033, #2007, #2010, #2003, #2002) with the #2006 headline cut to house length. Carries an `### Upgrading from 10.0.11` matrix, required by §10. The release removes a public export from a published package — verified: CATCHUP_BACKPRESSURE_RETRY_DELAYS_MS is exported from packages/agent/src/index.ts at v10.0.11 and absent at f9922f2, and `retryDelaysMs` is now typed `never` (sync/catchup-policy.ts:145) and rejected at runtime (:245). Also covered: a new 503 on subscribe, DKGAgent.stop() now rejecting on a drain timeout, the sync-global `operation` dimension becoming `<work class>:<source>`, and the write-preflight tightening. Known issues records a defect that ships knowingly: on sync-global, per-lane `state` cannot reflect a full global queue because priority-admission-queue.ts:177-180 calls updatePressureCapacity without a `lanes` map, while backpressure-observability.ts:361-362 reads lane limits only from capacity.lanes. The scheduler rollup that /api/status publishes is correct; the store scheduler is unaffected. No Solidity source, ABI, or deployment-registry changes since v10.0.11, so no contract deployment. Dashboard SQLite stays at SCHEMA_VERSION 31. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
otReviewAgent
left a comment
There was a problem hiding this comment.
Review Agent completed this review and found no issues.
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.
Summary
Release-prep bump for 10.0.12, per
RELEASE_PROCESS.md§3. Moves the root package and all 20packages/*workspaces to10.0.12in lockstep and converts[Unreleased]into the 10.0.12 CHANGELOG entry.Last gate before the comprehensive devnet run (§4) and the signed tag (§5). No functional changes — all 10.0.12 code landed via #2072.
Changes
package.jsonfiles). Internal deps useworkspace:*, so a partial bump would ship a skewed dependency graph.CHANGELOG.md: new## [10.0.12]section with an### Upgrading from 10.0.11matrix.[Unreleased]is now empty.Version-only:
pnpm-lock.yamluntouched.engines.noderanges from 10.0.10 preserved.Why the CHANGELOG was rewritten rather than extended
The prior
[Unreleased]body documented #2006 only — 8 of the 9 PRs in the release had no entry — in a single 2,834-character bullet, under a### Operator knobsheading that appears nowhere else in the file. Since §6c copies this section verbatim into the GitHub Release, that would have shipped 1-of-9 coverage. The new section covers all nine PRs with the #2006 headline cut to house length (1,043 chars).Why an upgrade matrix
§10 requires guidance for a breaking or builder-impacting release. Five independently builder-impacting changes, each verified in the shipped code:
CATCHUP_BACKPRESSURE_RETRY_DELAYS_MSis inpackages/agent/src/index.tsatv10.0.11and absent atf9922f262.retryDelaysMsis now typednever(sync/catchup-policy.ts:145) and rejected at runtime (:245). No node is affected — the CLI depends on the agent asworkspace:*— but external consumers of@origintrail-official/dkg-agentbreak at compile time and runtime.503on subscribe (CATCHUP_SHUTTING_DOWN).DKGAgent.stop()now rejects on a drain timeout where 10.0.11 warned and continued.sync-globaloperationbecomes<work class>:<source>— dashboards grouping on it need updating.contextGraphIdat the point instead of falling back to a catalog scan; a qualified ID for an unsynced graph now gets a fast400.Recorded under
### Known issues, not silently:On
sync-global, per-lanestateinGET /api/diagnostics/backpressurecannot reflect a full global queue.packages/agent/src/sync/priority-admission-queue.ts:177-180callsupdatePressureCapacity({ queueLimit, inflightLimit })with nolanesmap, whilepackages/storage/src/store-priority-scheduler.ts:313does pass one;packages/core/src/backpressure-observability.ts:361-362reads lane limits only fromcapacity.lanes?.[lane], so both the queue-full and utilization branches are dead for every sync lane. A saturatedsync-globalscheduler can report every lanehealthyuntil queue age or a rejection moves it.Scope is the per-lane
statefield only — the scheduler rollup that/api/statuspublishes is computed fromtotals.queueLimitand is correct, and the store scheduler is unaffected. All 18 review threads on #2003 remain unresolved. Worth deciding whether this blocks the tag or ships as documented.Prior-review follow-through
Concerns raised on earlier reviews of this work, checked against the shipped code:
updated_attouch defeats the TTL prune, removing a self-healREJECTEDapply⇒ double-writehealthycatchup-runner-worker-impl.ts:490andcatchup-runner.ts:802-841Green-and-inert gates: none found. Every newly added gate in the range was probed for whether it can actually fail.
Open before tagging
f9922f262. CI green there (59 checks, 0 failures) is not that gate.run-reports/directory, so it is not auditable from the repo. Its own caveats: M6/I9 blocked on Windows, M3 and I6 not exercised.Test Plan
pnpm release:verify-versions --version 10.0.12→ passes, 21/21pnpm-lock.yamluntouched;engines.nodepreservedmaincommitRelated
All 10.0.12 code landed via #2072. #1985 and #1971 remain open and are not in this release.
🤖 Generated with Claude Code