Skip to content

Tags: NomenAK/OmniRoute

Tags

deploy-pre-rebase-v3.8.7-20260530T083420Z

Toggle deploy-pre-rebase-v3.8.7-20260530T083420Z's commit message
deploy state (v3.8.3+2 local) before reset to v3.8.7

deploy-v3.8.3-dbfix-2026-05-26

Toggle deploy-v3.8.3-dbfix-2026-05-26's commit message
deploy state after v3.8.3 rebase + db migration fix backport — image …

…omniroute:v3.8.3-dbfix-2026-05-26 healthy in prod since 2026-05-26 15:56 UTC

deploy-pre-rebase-v3.8.3-20260526T110110Z

Toggle deploy-pre-rebase-v3.8.3-20260526T110110Z's commit message
deploy state before reset to release/v3.8.3 — preserves 2 local patches 

4482e46 + ba28429

deploy-pre-v3.8.1-20260521T082415Z

Toggle deploy-pre-v3.8.1-20260521T082415Z's commit message
fix(mitm): drop .js extension on manager.runtime re-export for webpac…

…k build

Cherry-picked from upstream main (bundled in dd790c3). Without this,
webpack production build fails with "Module not found: Can't resolve
./manager.js". The .js extension was meant for ESM runtime but webpack
cannot resolve it since only manager.ts exists at build time.

Not yet back-ported to release/v3.8.0 upstream as of 2026-05-20.

deploy-pre-2472-fix-20260521T151142Z

Toggle deploy-pre-2472-fix-20260521T151142Z's commit message
fix(mitm): drop .js extension on manager.runtime re-export for webpac…

…k build

Cherry-picked from upstream main (bundled in dd790c3). Without this,
webpack production build fails with "Module not found: Can't resolve
./manager.js". The .js extension was meant for ESM runtime but webpack
cannot resolve it since only manager.ts exists at build time.

Not yet back-ported to release/v3.8.0 upstream as of 2026-05-20.

deploy-pre-reset-2026-05-13

Toggle deploy-pre-reset-2026-05-13's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fix(antigravity): strip thinkingConfig for Claude models in Antigravi…

…ty envelope (#17)

When a Claude model is dispatched through Antigravity with reasoning_effort set,
openaiToGeminiCLIRequest sets generationConfig.thinkingConfig (a Gemini-specific
field). The Cloud Code Claude endpoint does not understand Gemini thinkingConfig
and must not receive it. applyAntigravityGenerationDefaults (called inside
wrapInCloudCodeEnvelope) correctly bumps maxOutputTokens to thinkingBudget+1
before this strip runs, so the output-token budget is preserved even after the
Gemini-specific field is removed.

Pre-existing failure deferred during the 2026-05-12 incident sweep. Root cause:
the v3.8.0 refactor unified the Claude and Gemini Antigravity paths through
openaiToGeminiCLIRequest but omitted the thinkingConfig strip that the old
openaiToClaudeRequestForAntigravity path implicitly provided by never setting it.

Co-authored-by: OmniRoute Ops <ops@nomenak.dev>

deploy-pre-rebase-20260520-074052

Toggle deploy-pre-rebase-20260520-074052's commit message
test(sse-heartbeat): integration coverage for shape + strip non-colli…

…sion

deploy-2026-05-13-rebuild-pr-remediations

Toggle deploy-2026-05-13-rebuild-pr-remediations's commit message
build(docker): add python3 + make + g++ to builder stage for native m…

…odule compilation

better-sqlite3 12.9.0 (and other native deps) lacks prebuilt binaries
for node 26.1.0 + linux/arm64. Without Python, make, and g++ the builder
stage fails on `prebuild-install || node-gyp rebuild --release`.

Local-only — upstream is x86-centric and prebuilds work there. This is
needed for arm64 builds on the A1 host. Upstream PR candidate but not
required for them since CI runs on x64.

deploy-2026-05-13-mimo-tool-shim

Toggle deploy-2026-05-13-mimo-tool-shim's commit message
fix(translator): coerce submit_pr_review functionalChanges/findings t…

…o arrays

Capy reviews routed through OmniRoute as claude-opus-4-6 -> xiaomi-mimo/
mimo-v2.5-pro hit a retry loop (200+ retries / 6m+ per session) when
MiMo emitted the submit_pr_review tool call with missing or non-array
functionalChanges/findings fields. Capy rejected with "expected: array"
and the model could not recover.

The shim runs after the OpenAI->Anthropic tool_use translation and
defensively coerces both required-array fields. Handles 5 malformation
modes: omitted, null, plain object, empty string, stringified array.
Streaming integration buffers raw args for shimmed tools, suppresses
passthrough input_json_delta, then emits one corrective delta with the
fully patched JSON just before content_block_stop.

Note: this also neutralises any collateral damage from the existing
strip-empty fix (diegosouzapw#1852) wiping legitimate empty findings/functionalChanges
arrays from MiMos output.

Recurring at 100/day on this fork. Local-only for now; consider
upstreaming once stable.

Co-authored-by: OmniRoute Ops <ops@nomenak.dev>