Skip to content
Merged
Show file tree
Hide file tree
Changes from 26 commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
0db0437
chore(release): open v3.8.31 development cycle
diegosouzapw Jun 20, 2026
fe70c4c
fix(mitm): exact host membership in MITM hosts test (CodeQL false pos…
diegosouzapw Jun 20, 2026
08a6795
fix(codex): request reasoning summaries (#4359)
xz-dev Jun 20, 2026
55eb1b5
fix(embeddings): inject NVIDIA NIM input_type for asymmetric embed mo…
diegosouzapw Jun 20, 2026
d6ce094
fix(api): migrate deprecated Codex [features].codex_hooks to [feature…
diegosouzapw Jun 20, 2026
4722841
fix(translator): drop the null flush on the same-format response path…
diegosouzapw Jun 20, 2026
aaf7e32
fix(translator): strip assistant echo fields on the OpenAI target pat…
diegosouzapw Jun 20, 2026
0773aa8
fix(cli): honor TAILSCALE_AUTHKEY for non-interactive tailscale login…
diegosouzapw Jun 20, 2026
838fdda
fix(dashboard): OAuth modal surfaces the real error on a non-JSON res…
diegosouzapw Jun 20, 2026
6dfc605
fix(translator): accept AI SDK-style { type: image, image: data-URL }…
diegosouzapw Jun 20, 2026
31f91cd
fix(dashboard): show a disabled connection's last error in the row (#…
diegosouzapw Jun 20, 2026
9112056
fix(providers): bound the OAuth connection-test probe with a timeout …
diegosouzapw Jun 20, 2026
94f474b
fix(providers): label a deactivated account distinctly from a revoked…
diegosouzapw Jun 20, 2026
2dc38c1
fix(db): cascade-delete orphaned model aliases when a provider is rem…
diegosouzapw Jun 20, 2026
7ef11eb
fix(api): persist max_input_tokens/max_output_tokens when adding a cu…
diegosouzapw Jun 20, 2026
a56c76a
docs: feature-documentation catch-up (v3.8.20 → v3.8.30) (#4391)
diegosouzapw Jun 20, 2026
ce8ff4a
fix(executors): don't inject thinking when tool_choice forces a tool …
NomenAK Jun 20, 2026
b417381
fix(translator): Gemini accepts HTTP/HTTPS image URLs (port from 9rou…
diegosouzapw Jun 20, 2026
3c3dcad
fix(executors): strip stream_options for qwen non-streaming / thinkin…
diegosouzapw Jun 20, 2026
f628135
fix(security): scope OAuth callback postMessage to a trusted-origin a…
diegosouzapw Jun 20, 2026
8eded5e
fix(sse): default combo per-target timeout to 120s for fast failover …
diegosouzapw Jun 20, 2026
98bf90f
refactor(combo): de-dup exhausted-target skip predicate across both d…
diegosouzapw Jun 20, 2026
c0291f8
refactor(combo): de-dup upstream-error exhaustion classification acro…
diegosouzapw Jun 20, 2026
542e0b5
refactor(chatCore): extract checkHeapPressureGuard leaf (god-file dec…
diegosouzapw Jun 20, 2026
ddef621
Localize CLI and stabilize fetch, memory, and coverage handling (#4383)
JxnLexn Jun 20, 2026
0d90b16
test(combo): reset circuit breakers between stream-readiness cases (r…
diegosouzapw Jun 20, 2026
e558312
fix(cli): decline confirm() cleanly on non-interactive stdin + docume…
diegosouzapw Jun 20, 2026
c36755b
ci(t11): bump any-budget for executors/base.ts (2 false-positive "any…
diegosouzapw Jun 20, 2026
7d6fffd
perf: combos UI split + next config + 1-click redis + bifrost sidecar…
KooshaPari Jun 20, 2026
fd1391c
fix(plugin): prefix OC static-catalog combo+raw keys with providerId …
herjarsa Jun 20, 2026
004f80a
docs(env): document TAILSCALE_AUTHKEY (env/docs contract drift on .31)
diegosouzapw Jun 20, 2026
2aa47ed
chore(release): v3.8.31 — 2026-06-20
diegosouzapw Jun 20, 2026
f46c69f
chore(release): align mitm-hosts test comment with main to clear merg…
diegosouzapw Jun 20, 2026
2a760f4
test(translator): align stale openai->gemini remote-URL tests with #4373
diegosouzapw Jun 20, 2026
ad9af95
chore(quality): reconcile complexity baseline 1896->1900 (/review-prs…
diegosouzapw Jun 20, 2026
97c19eb
fix(release): reconcile full-CI drift for v3.8.31 (gemini tests #4373…
diegosouzapw Jun 20, 2026
2e01eb6
chore(release): re-trigger full CI for v3.8.31 finalization
diegosouzapw Jun 20, 2026
1e52b7a
chore: re-trigger CI (no Actions runs registered for prior push)
diegosouzapw Jun 20, 2026
d7cef8d
Merge remote-tracking branch 'origin/release/v3.8.31' into fix/contex…
diegosouzapw Jun 20, 2026
d28edf7
Merge remote-tracking branch 'origin/release/v3.8.32' into fix/contex…
diegosouzapw Jun 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions .github/actions/npm-ci-retry/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: npm ci with retry
description: Run npm ci with retries for transient registry/network failures.
runs:
using: composite
steps:
- shell: bash
run: |
set -euo pipefail

max_attempts=3
delay_seconds=20

for attempt in $(seq 1 "$max_attempts"); do
if [ "$attempt" -gt 1 ]; then
echo "npm ci attempt $attempt/$max_attempts after transient failure"
fi

if npm ci; then
exit 0
fi

exit_code=$?
if [ "$attempt" -eq "$max_attempts" ]; then
exit "$exit_code"
fi

sleep "$delay_seconds"
delay_seconds=$((delay_seconds * 2))
done
Loading
Loading