Repository navigation
OmniRoute rebuild 2026-09-30: decision record, evidence artifacts, owner-record script, unit templates (records what runs; compression on 20128 not applied) - #530
Merged
Conversation
6 of 7 tasks
…ner-record script, unit templates and foundation-stack text Records the 2026-09-30 rebuild of both OmniRoute gateways on the NativeStack workstation (touches no host): upstream release/v3.8.51 2f42a9ac1 with #13788 on both and the local affinity patch on 20128, Codex 0.159.1 announced (gpt-6.1-sol answers 200 on both), the token-save settings (a nine-step plan and one delta: on 20129 the master is on and ten of the twelve shipped engines run at upstream's per-engine settings, which is not upstream's shipped state), the read-only owner-record script for Gate A, the two values-free unit templates with a unit test, and the checks and probes behind each claim. The decision record states every departure from upstream's shipped defaults, the provenance of the operation scripts (the applier that ran T01-T09 is not retained; T10 ran through an unreviewed edit), the stored combos (the header allow-lossy selects a peer-owned combo; headroom still runs where a combo names it), the full-suite reconciliation, and the residuals: lite folds whitespace in code-bearing text, and neither the headerless lane (0 tokens on 115 real rows, 0 items changed on eight real request bodies) nor the gpt6-safe-lossy header lane (0.36% live, 0.34% offline, with 47 path occurrences, 1 hex id and 1 error line lost by our regex count) passes the user's condition, so compression on 20128 is not applied. Two independent Opus reviews of this branch found 1 high, 6 medium and 25 low defects; all are fixed here. The omniroute row of manifests/stack.json is not part of this change (shared hot file, separate lane:shared change). Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
…file, last commit) Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
…uild (same tree as the build base); the applier's secret-route guard note - Upstream's annotated tag v3.8.51 (tagger time 2026-09-30T01:41:23Z, commit c1e30b767 "Release v3.8.51") and npm [email protected] (2026-09-30T02:54:04Z, latest) came after the rebuild; the record said no tag existed. The tag commit's tree equals the tree of the build base 2f42a9ac1 (0f58d8df...), so the running builds are the released 3.8.51 tree plus the carries; #13788 is still open upstream ([defer]); the repo's component pin is unchanged by this record. Recorded in the decision (item 5), the receipt (upstream_release_after_rebuild) and docs/foundation-stack.md. - Session 88's finding: the anonymous management surface serves credentials on more routes than the applier's SECRET_GET guard names (/api/settings/cache-config, /api/sync/*, /api/cli-tools/keys); this plan never reads them; recorded as a residual, decision theirs. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
… on main's copy (hot file, last commit) Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
seathatflowsinourveins
force-pushed
the
res-omni-rebuild-20260930
branch
from
September 30, 2026 04:40
4745661 to
142f56f
Compare
seathatflowsinourveins
pushed a commit
that referenced
this pull request
Sep 30, 2026
…42a9ac1 with #13788 and the affinity patch), upstream's v3.8.51 release and the 20129 compression state Text of one row only (upstream_sources, freshness, command_scope); the component pin stays npm 3.8.50 until the published 3.8.51 package has its own isolated install and boot check (a separate change to this row). Shared hot file, so this is its own lane:shared change; the decision record and evidence are in the lane:foundation PR #530 (docs/decisions/2026-09-30-omniroute-rebuild.md). Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
…inted with the printed ones, keep both returned outputs The installed-prefix check, the upstream-release check and the full-suite reconciliation entry carried times written from memory (04:20:00Z, 04:40:00Z, 03:00:00Z). Both checks were rerun with a script that prints observed_utc at the start (04:52:47Z and 04:53:59Z) and their outputs are published as returned; the reconciliation entry now names the printed batch times of the reruns (02:46:02Z to 02:47:08Z and 02:50:17Z to 02:50:37Z) and says no time was printed for the comparison itself. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
seathatflowsinourveins
added a commit
that referenced
this pull request
Sep 30, 2026
…42a9ac1 with #13788 and the affinity patch), upstream's v3.8.51 release and the 20129 compression state (#531) Text of one row only (upstream_sources, freshness, command_scope); the component pin stays npm 3.8.50 until the published 3.8.51 package has its own isolated install and boot check (a separate change to this row). Shared hot file, so this is its own lane:shared change; the decision record and evidence are in the lane:foundation PR #530 (docs/decisions/2026-09-30-omniroute-rebuild.md). Co-authored-by: Scout <scout@local> Co-authored-by: Claude Sonnet 5.5 <[email protected]>
This was referenced Sep 30, 2026
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.
Scope
release/v3.8.51at2f42a9ac1(upstream taggedv3.8.51later that day with the identical tree, and published[email protected]to npm at 02:54Z; the record says so) with the open upstream PR #13788 on both gateways and a local affinity patch on 20128, the announced Codex version 0.159.1 (gpt-6.1-solanswers 200 on both gateways), the token-save settings (a nine-step plan and one delta: on 20129 the master switch is on and ten of the twelve shipped engines run at upstream's per-engine settings, which is not upstream's shipped state), the read-only owner-record script for Gate A (tools/omniroute/gateway_record.py), the two values-free unit templates with a unit test, and the checks and probes behind each claim. The decision record states every departure from upstream's shipped defaults, the provenance of the operation scripts, the stored combos (the headerallow-lossyselects a peer-owned combo; headroom still runs where a combo names it) and the residuals, notably that lite folds whitespace in code-bearing text and that neither the headerless lane nor thegpt6-safe-lossyheader lane passes the user's condition on real Codex traffic, so compression on 20128 is not applied.manifests/stack.jsonand the component pin (a shared hot file; its text change is the separatelane:sharedPR Stack manifest: the omniroute row describes the 2026-09-30 builds (held for the trading lane's acknowledgement) #531, held for the trading lane's acknowledgement). Until it merges, this record anddocs/foundation-stack.mdare the current statement of the running builds.be91e1f8(main, after SocratiCode 1.16.0: qualification receipt and dated decision update (the Linux pin stays 1.15.0) #523). Main has since moved to8f7086a2(PyJWT relock record: redis decode search (D1), timing range from the outputs (D2), honest output labels #529); a test merge of this head onto it is clean (git merge-tree, exit 0).lane:foundation. It changes no path owned by the trading lane and no shared hot file's text:manifests/evidence.jsonis only re-registered through the hot-file protocol (last commit), whichdocs/lanes.mdsays does not by itself make a PR shared.docs/decisions/,docs/foundation-stack.md,evidence/artifacts/omniroute-rebuild-20260930/,tools/omniroute/,adoption/templates/systemd/,tests/test_omniroute_gateway_unit.py,manifests/evidence.json.SOTA sources
release/v3.8.51at2f42a9ac19d1a247ec9ce5473b790843724b3061(it carries #148128183e9b79, #148867f5de7ba6, #15119, #15128, #15145 and #15147); carried: #13788 as its two upstream commits24bbadbadand6c7990058(stable patch-ids equal), and the local non-upstream affinity patch045aa81f3(references in its commit message: CLIProxyAPI v8.0.24a2c818, LiteLLM v1.102.1d09bbae, sub2api v0.2.8fd80b08).release/v3.8.52(a1a2dce1a) has nogpt-6.1entry either.2f42a9ac1for the settings claims:open-sse/services/compression/types.ts:421-443,lossyRequestPolicy.ts:19,planResolution.ts:56-57,strategySelector.ts:812-816,src/lib/db/compressionCombos.ts:33-39,docs/compression/COMPRESSION_GUIDE.md:226-239,engineCatalog.ts,lite.ts:50-53,bodyAdapter.ts:154-201,src/shared/constants/featureFlagDefinitions.ts:564-570,open-sse/config/codexClient.ts,src/app/api/providers/[id]/models/discovery/codex.ts:82.check:pack-artifact,check:pack-boot,test:unit(unchanged upstream checks, kept apart from our integration checks in the receipt).cx/gpt-6.1-sol, context 872000) is the only source forgpt-6.1-sol: the static registries of both upstream branches lack it.docs/decisions/2026-09-27-omniroute-account-pool.mdand its evidence package.Evidence-class table
check:pack-artifactandcheck:pack-bootexit 0 on both builds (20129's on its third attempt; the first two failed with causes not established)qualification-extract.jsonbuildstest:unitstage 1 fails 14 tests on the pristine tip and 18 on the 20128 build; every failure only the 20128 build shows is classified; the 41-line difference in result lines is accounted for by name (17 carry tests; 172 lines one full run did not print, attributed to--test-force-exit, identical when the 18 files run alone: 654 result lines per tree, 0 failing)full_suite_reconciliationgpt-6.1-sol200 on both gateways)carries.installed_checktaken_utcchecks/recorded-outputs.txt[session-dedup, ccr, lite]headerless,offgives none, the headerallow-lossyselects the peer combo of that name; 20128 resolves every header to offchecks/effective-plan-20260930.jsonchecks/lite-whitespace-probe-20260930.jsonchecks/real-codex-bodies-lane-probe-20260930.jsonCODEX_CLIENT_VERSIONsemanticsLocal commands run
Head
20799c05: the three timestamps that no command printed (installed check, upstream release check, full-suite reconciliation entry) were replaced by printed ones, and both checks' outputs are published as returned (checks/installed-check-20260930.json,checks/upstream-release-check-20260930.json). The 268 tests,validate.pyandevidence_manifest.py --checkabove were re-run on that head.The full
unittestdiscovery runs in CI'svalidatecheck.Decision record
docs/decisions/2026-09-30-omniroute-rebuild.md(alternatives considered, the comparison that would overturn each choice, rollback, limitations and residuals).Host evidence
This PR adds artifacts under
evidence/artifacts/, notevidence/hosts/.scripts/validate.py(exit 0 above) validates the registered artifacts.platform_statuschange.Residuals
c1e30b767has the same tree (0f58d8df...) as the build base2f42a9ac1, so no rebuild is needed for the tree; #13788 is still open upstream ([defer]), so the carry stays. The repo's component pin (npm 3.8.50) is unchanged here and is handled in Stack manifest: the omniroute row describes the 2026-09-30 builds (held for the trading lane's acknowledgement) #531.SECRET_GETguard names fewer routes than session 88's read of the gateway's anonymous surface (/api/settings/cache-config,/api/sync/*,/api/cli-tools/keys); this plan never reads them (recorded as a residual; the surface itself is 88's decision with the Gate A owner).allow-lossyselects a peer-owned combo. Narrowing either is a gateway write for the Gate A owner's timing and the peers' consent.blockedProvidersandnoAuthFallbackDisabledProvidersare not expressible in the apply contract (open user decision).maxeffort clamps toxhighforgpt-6.1-sol.Checklist
🤖 Generated with Claude Code