Releases: Soju06/codex-lb
Releases · Soju06/codex-lb
Release list
Release v1.23.0-beta.2
What's Changed
- fix(proxy): sequence synthetic Responses failures by @e1ektr0 in #1479
- feat(helm): support creating an application-specific Gateway by @KakatkarAkshay in #1462
- feat (report-ui): ability to set chart visibility by @huzky-v in #1493
- feat(proxy): support Codex Live Voice sideband by @mastertyko in #1492
- chore: release v1.23.0-beta.2 by @Soju06 in #1494
Full Changelog: v1.23.0-beta.1...v1.23.0-beta.2
Install / Run
uvx --from "codex-lb==1.23.0b2" codex-lb
docker pull ghcr.io/Soju06/codex-lb:1.23.0-beta.2
helm install codex-lb oci://ghcr.io/soju06/charts/codex-lb --version 1.23.0-beta.2 --develRelease v1.23.0-beta.1
What's Changed
- ci(release): sync uv.lock on release-please branches by @Soju06 in #1468
- docs(contributing): require beta soak before stable releases by @Soju06 in #1469
- feat(rollups): permanent hourly usage rollups with raw live-tail reads by @Soju06 in #1478
- chore: release v1.23.0-beta.1 by @Soju06 in #1480
Full Changelog: v1.22.0...v1.23.0-beta.1
Install / Run
uvx --from "codex-lb==1.23.0b1" codex-lb
docker pull ghcr.io/Soju06/codex-lb:1.23.0-beta.1
helm install codex-lb oci://ghcr.io/soju06/charts/codex-lb --version 1.23.0-beta.1 --develRelease v1.22.0
What's Changed
- fix(balancer): decorrelate round-robin tie-breaking across replicas by @Soju06 in #1327
- fix(observability): anchor TTFT to the attempt, expose queue wait as a dashboard trend by @Soju06 in #1333
- docs(openspec): archive accurate-stream-speed-metrics by @Soju06 in #1334
- docs(contributing): codify simplicity principles and merge gates by @Soju06 in #1336
- fix(proxy): settle API-key reservation before budget-exhausted compact preflight raises by @Soju06 in #1332
- docs(site): add mkdocs documentation site and slim README to quick-start scope by @Soju06 in #1337
- fix(proxy): reject unsupported multi-worker-per-instance for shared per-account caps by @Soju06 in #1328
- ci(budgets): enforce simplicity budgets on README, env example, and core nav by @Soju06 in #1341
- feat(dashboard): group advanced navigation and settings behind progressive disclosure by @Soju06 in #1339
- docs(openspec): archive the simplicity-effort changes by @Soju06 in #1347
- test(balancer): make sticky-selection test deterministic under decorrelated tie-breaking by @Soju06 in #1348
- fix(oauth): persist dashboard OAuth flow state for multi-replica by @Soju06 in #1329
- docs(readme): restore the features grid and client logo table by @Soju06 in #1346
- refactor(config): remove zero-risk tunables from the settings surface by @Soju06 in #1351
- chore(openspec): archive replica-reliability + follow-up changes by @Soju06 in #1350
- fix(proxy): recover from host network changes by @leventov in #1234
- fix(proxy): preserve HTTP bridge model-transition forks by @Komzpa in #1356
- fix(proxy): record early downstream cancellations by @Komzpa in #1324
- fix(models): complete required Codex catalog fields by @luawl in #1299
- fix(proxy): recover stale response-create gates by @luawl in #1296
- fix(proxy): forward Codex standalone web search by @HeroOfOdyssey in #1232
- fix(proxy): retry server_is_overloaded responses by @mereyabdenbekuly-ctrl in #1315
- chore(contributors): add fozbek to all-contributors by @Soju06 in #1361
- fix(usage): price gpt-5.6 personality models by @fozbek in #1275
- refactor(config): remove phase-2 low-risk tunables from the settings surface by @Soju06 in #1360
- refactor(config): remove phase-3 pool and drain tunables from the settings surface by @Soju06 in #1362
- fix(proxy): recover sequenced Codex prewarms by @luawl in #1359
- feat(model-sources): report upstream generation timings by @evaldass in #1319
- chore(contributors): add ShiroKSH and aididhaiqal to all-contributors by @Soju06 in #1365
- fix(api-keys): reject duplicate limit rules on create by @ShiroKSH in #1312
- feat(settings): manage data retention from the dashboard by @Soju06 in #1364
- refactor(config): retire prewarm canary scaffolding by @Soju06 in #1363
- docs(openspec): archive the settings-reduction changes by @Soju06 in #1368
- docs(reference): add generated settings reference with drift guards by @Soju06 in #1369
- fix(proxy): retry stale per-account model rejections by @luawl in #1321
- fix(proxy): release pending websocket stream leases on disconnect by @tobwen in #1282
- feat(ui): add Korean dashboard locale by @codemoo in #1375
- fix(proxy): retry upstream model capacity errors by @Komzpa in #1385
- fix(proxy): preserve encrypted compaction item ids by @mhughdo in #1316
- feat(proxy): add stale-anchor diagnostics by @mastertyko in #1225
- fix(balancer): reject implausible rate-limit resets by @leventov in #1374
- fix(proxy): route Spark using fresh per-account quota evidence by @mastertyko in #1248
- fix(security): harden trusted Forwarded chain resolution by @mastertyko in #1377
- feat(accounts): add reset-credit controls and auto redeem by @codemoo in #1358
- fix(docker): preserve runtime readability for owner-only build files by @yshishenya in #1373
- docs: add yshishenya and alchemistkiv as contributors by @Soju06 in #1387
- fix(security): enforce trusted proxy locality by @mastertyko in #1381
- fix(proxy): slim inline images nested in historical tool-call outputs by @Soju06 in #1344
- perf(db): optimize dashboard hot-path indexes by @Soju06 in #1386
- fix(security): inspect repeated session proxy headers by @mastertyko in #1378
- fix(config): reject empty trusted proxy CIDRs by @mastertyko in #1379
- fix(reports): reject inverted date ranges by @mastertyko in #1396
- fix(dashboard): keep overview visible when request logs fail by @mastertyko in #1397
- fix(usage): make weekly-primary remap tiebreak data-aware by @zepx in #1391
- fix(proxy): spill bare session affinity under account caps by @leventov in #1382
- test(proxy): characterize load-balancer contract before decomposition by @stemirkhan in #1392
- fix(db): pin asyncpg session time zone to UTC by @Daltonganger in #1352
- fix(observability): improve TTFT and TPS accuracy by @jamesx0416 in #1325
- fix(proxy): purge stale durable bridge rows on startup by @tobwen in #1310
- refactor(proxy): restore architecture ratchets by @mastertyko in #1430
- chore(deps): bump the python-minor-patch group with 12 updates by @dependabot[bot] in #1429
- chore(deps): bump @testing-library/jest-dom from 6.9.1 to 7.0.0 in /frontend by @dependabot[bot] in #1428
- chore(docker): bump astral-sh/uv from 0.11.28 to 0.11.30 by @dependabot[bot] in #1425
- chore(ci): bump docker/setup-qemu-action from 4.1.0 to 4.2.0 by @dependabot[bot] in #1421
- chore(ci): bump actions/labeler from 6.1.0 to 6.2.0 by @dependabot[bot] in #1423
- chore(docker): bump pgautoupgrade/pgautoupgrade from 18-alpine to 18-alpine by @dependabot[bot] in #1419
- chore(ci): bump actions/deploy-pages from 4.0.5 to 5.0.0 by @dependabot[bot] in #1424
- chore(ci): bump actions/create-github-app-token from 2.2.2 to 3.2.0 by @dependabot[bot] in #1420
- fix(balancer): recover probing accounts by @leventov in #1376
- perf(proxy): cache upstream-route resolution per account by @Soju06 in #1283
- chore(deps): bump the frontend-minor-patch group in /frontend with 12 updates by @dependabot[bot] in #1426
- ci(db): run PostgreSQL migration lock tests by @mastertyko in #1444
- fix(cli): reject out-of-range server port before startup by @mastertyko in #1400
- fix(proxy): bound raw HTTP request ingress by @mastertyko in #1440
- fix(proxy): serialize shared-session rate-limit reads by @mastertyko in #1432
- fix(proxy-responses): normalize Lite reasoning context by @mastertyko in #1431
- fix(db): reject empty migration database URL by @mastertyko in #1399
- fix(proxy): dedup and cap oversized response.create dumps by @ozpool in #1366
- fix(proxy): recover idle Codex Desktop bridge by @mastertyko in #1439
- feat(ui): header brand back to /dashboard on click by @huzky-v in #1452
- fix(api): give thread-goal GET/POST distinct operationIds by @mastertyko in #1398
- fix(shutdown): drain audit and fleet tasks by @mastertyko in https://github.com/S...
Release v1.21.0
What's Changed
- fix(quota-planner): normalize decision datetimes for persistence by @Soju06 in #1034
- fix(proxy): avoid shielded-future log on startup probe timeout by @ozpool in #1076
- fix(ci): ignore stale and resolved Codex inline findings by @Komzpa in #981
- fix(models): hide unsupported API models by @Komzpa in #887
- fix(dashboard): correct weekly credits pace display by @Komzpa in #955
- fix(proxy): normalize non-native upstream requests to Codex CLI fingerprint by @Soju06 in #1089
- chore: release v1.20.2-beta.1 by @Soju06 in #1088
- feat: smart HTTP→upstream transport routing (sticky vs single-shot) by @Soju06 in #1093
- chore(ci): bump softprops/action-gh-release from 3.0.0 to 3.0.1 by @dependabot[bot] in #1067
- chore(docker): bump pgautoupgrade/pgautoupgrade from 18-alpine to 18-alpine by @dependabot[bot] in #1068
- chore(ci): bump docker/build-push-action from 7.1.0 to 7.2.0 by @dependabot[bot] in #1069
- chore(docker): bump astral-sh/uv from 0.11.21 to 0.11.23 by @dependabot[bot] in #1070
- chore(ci): bump actions/checkout from 6.0.2 to 7.0.0 by @dependabot[bot] in #1071
- chore(ci): bump github/codeql-action from 4.35.5 to 4.36.2 by @dependabot[bot] in #1072
- chore(deps): bump the frontend-minor-patch group in /frontend with 6 updates by @dependabot[bot] in #1073
- chore(deps): bump @types/node from 25.9.3 to 26.0.0 in /frontend by @dependabot[bot] in #1074
- chore(deps): bump pydantic-settings from 2.14.1 to 2.14.2 by @dependabot[bot] in #1081
- chore(deps): bump the python-minor-patch group with 7 updates by @dependabot[bot] in #1075
- feat: expose upstream transport observability by @Soju06 in #1096
- feat(proxy): repair account-bound egress routing by @Komzpa in #875
- fix(proxy): oauth blocked when bindings lack route by @tobwen in #1064
- feat+fix(report): reports enhancements by @huzky-v in #1060
- feat(reset-credits): add banked rate-limit reset credits by @huzky-v in #1053
- fix(db): optimize dashboard query hot paths by @Soju06 in #1107
- chore(docker): bump pgautoupgrade/pgautoupgrade from 18-alpine to 18-alpine by @dependabot[bot] in #1109
- chore(ci): bump azure/setup-helm from 5.0.0 to 5.0.1 by @dependabot[bot] in #1110
- chore(ci): bump actions/cache from 5.0.5 to 6.1.0 by @dependabot[bot] in #1111
- chore(docker): bump astral-sh/uv from 0.11.23 to 0.11.25 by @dependabot[bot] in #1112
- chore(deps): bump the frontend-minor-patch group in /frontend with 12 updates by @dependabot[bot] in #1113
- chore(deps): bump the python-minor-patch group with 11 updates by @dependabot[bot] in #1114
- fix(frontend): persist dashboard account list sort by @Soju06 in #1115
- feat(frontend): restore Simplified Chinese i18n by @Komzpa in #995
- feat(usage-api): add toggle to query additional usage, and add pooled usage to
/v1/usageby @huzky-v in #832 - feat(request-logs): record client IP by @Komzpa in #985
- perf(usage): avoid repeated history cache scans by @Komzpa in #902
- feat(warmup): add staggered idle limit prestart by @Komzpa in #905
- fix(db): merge post-batch migration heads by @Soju06 in #1116
- feat(request-ui): add showing elapsed time to request details by @huzky-v in #1103
- fix(zod): add the zod schema with new enum introduced at #875 by @huzky-v in #1102
- fix(retry): honor minute/hour and compound retry-after hints by @ozpool in #1052
- ci: remove unsupported review-thread workflow trigger by @Komzpa in #1117
- test: update codex label workflow event assertion by @Komzpa in #1118
- fix(usage): sync paid-plan upgrades on workspace-less accounts by @ozpool in #1098
- fix(proxy): strip unsafe HTTP headers before owner-bridge forward by @ozpool in #1036
- fix(proxy): strip internal responses lite header by @mhughdo in #1099
- add configurable limit warm-up exhausted threshold by @jawwadfirdousi in #1079
- fix(ui): stabilize account layout and API key dialog by @qdzsh in #1062
- fix(models): aggregate service tiers across accounts by @ozpool in #1106
- fix(http-bridge): clean stale inflight session futures by @zvladru in #1044
- fix(websocket): avoid fresh retry for tool-output deltas by @zvladru in #1042
- feat(usage): support Codex usage reset credits by @codemoo in #1105
- fix(proxy): set parallel_tool_calls to false for compaction requests by @alzeiby in #1054
- docs: explain routing strategy tradeoffs by @Komzpa in #1119
- fix(proxy): clarify account stream cap overload by @Komzpa in #1122
- fix(proxy): stop local rate-limit selection retry loops by @Komzpa in #1121
- Smooth weekly pace gap by @Komzpa in #1120
- fix(db): prevent SQLite FD retention in background refresh tasks by @Lotfree618 in #1127
- fix(quota-planner): normalize datetimes before database use by @zvladru in #1043
- chore(deps): bump ty from 0.0.55 to 0.0.56 in the python-minor-patch group by @dependabot[bot] in #1147
- chore(ci): bump astral-sh/setup-uv from 8.2.0 to 8.3.0 by @dependabot[bot] in #1140
- chore(ci): bump docker/login-action from 4.2.0 to 4.4.0 by @dependabot[bot] in #1141
- chore(ci): bump docker/metadata-action from 6.1.0 to 6.2.0 by @dependabot[bot] in #1144
- chore(docker): bump astral-sh/uv from 0.11.25 to 0.11.27 by @dependabot[bot] in #1145
- chore(deps): bump the frontend-minor-patch group in /frontend with 12 updates by @dependabot[bot] in #1146
- chore(docker): bump pgautoupgrade/pgautoupgrade from 18-alpine to 18-alpine by @dependabot[bot] in #1139
- chore(ci): bump docker/build-push-action from 7.2.0 to 7.3.0 by @dependabot[bot] in #1142
- chore(ci): bump docker/setup-buildx-action from 4.1.0 to 4.2.0 by @dependabot[bot] in #1143
- fix(dashboard-auth): harden local session ttl by @AnobleSCM in #1137
- fix: list Codex shell-only models in backend catalog by @Komzpa in #1138
- feat(accounts): test bound proxy pools by @Komzpa in #1124
- feat(metrics): expose account inflight lease gauge by @0xSolarPunk in #1148
- feat(fleet): add refresh endpoint by @AnobleSCM in #1128
- feat: add openai-compatible model sources by @evaldass in #1129
- fix(account-ui): fix overflow on account list page by @huzky-v in #1149
- feat(automations): scheduled cycles, grouped runs, and run details UI by @Kazet111 in #438
- feat(images): add route observability by @Komzpa in #1123
- feat(proxy): add TTFT phase observability by @Soju06 in #1156
- fix(models): serve the Codex catalog on /v1/models for Codex clients by @kevinWangSheng in #1163
- fix(proxy): fallback v1 usage limits to upstream quotas by @Daltonganger in #1151
- fix(proxy): preserve Responses Lite additional tools by @luawl in #1161
- feat(models): add GPT-5.6 bootstrap catalog with upstream-verified metadata by @Soju06 in #1176
- fix(proxy): support Codex image edit routes by @nazirulhafiy in #1160
- fix(model-sources): default Codex catalog context by @Komzpa in https://github.com/Soju06/codex-lb/pul...
Release v1.21.0-beta.4
What's Changed
- fix(proxy): accept large websocket response.create and fail fast with 400 by @Soju06 in #1236
- perf(request-logs): skip-scan unfiltered filter-option facets by @Soju06 in #1239
- perf(proxy): cut pre-upstream DB round trips on interactive turns by @Soju06 in #1241
- perf(proxy): make SSE event framing linear instead of quadratic by @Soju06 in #1242
- perf(clients): keep upstream connections and DNS across interactive turns by @Soju06 in #1245
- perf(dashboard): compress responses, cache assets, lazy-load charts by @Soju06 in #1243
- perf(usage): aggregate the summary window in SQL, drop dead log refresh by @Soju06 in #1244
- perf(accounts): serve request-usage summaries from persistent rollup by @Soju06 in #1238
- feat(retention): opt-in pruning for request logs and usage history by @Soju06 in #1240
- fix(db): serialize startup migrations across replicas and report schema-ahead correctly by @Soju06 in #1256
- fix(quota-planner): make warmup budget and dedup claims atomic across replicas by @Soju06 in #1260
- chore(openspec): bulk-sync delta specs and archive all 152 completed changes by @Soju06 in #1252
- fix(balancer): persist rate-limit cooldowns so peer replicas honor them by @Soju06 in #1261
- fix(deploy): repair broken multi-replica deployment artifacts by @Soju06 in #1263
- fix(proxy): fence bridge lease writes, evict fenced-out replicas, purge orphaned ring state by @Soju06 in #1259
- fix(caching): extend cross-replica cache invalidation bus to routing, selection, and settings caches by @Soju06 in #1255
- feat(replica-ops): document replica topology contract and land startup guardrails by @Soju06 in #1264
- feat(proxy): partition account concurrency caps across live replicas by @Soju06 in #1258
- fix(reset-credits): make redemption replica-safe with durable ledger and claim by @Soju06 in #1257
- fix(proxy): queue bridged requests through response-create gate contention by @Soju06 in #1266
- feat(balancer): adapt selection and refresh to absent short-window quotas by @Soju06 in #1267
- feat(planner): derive phase planning from observed short windows by @Soju06 in #1268
- perf(proxy): parse each SSE event once per layer, skip no-op reserialization by @Soju06 in #1270
- perf(proxy): detach stream-end persistence from the response path by @Soju06 in #1269
- chore(openspec): archive the ten merged performance changes by @Soju06 in #1276
- perf(request-logs): cache the listing total per filter signature by @Soju06 in #1277
- perf(frontend): code-split dashboard routes by @Soju06 in #1278
- perf(frontend): self-host JetBrains Mono, drop Google Fonts by @Soju06 in #1279
- feat(models): replicate leader-refreshed model registry via persisted snapshots by @Soju06 in #1262
- docs(openspec): archive adaptive-window and bridge-gate changes by @Soju06 in #1271
- fix(automation): fall back to github.token when label sync hits rate limits by @Soju06 in #1272
- feat(usage): ingest live rate-limit snapshots from proxied traffic by @Soju06 in #1273
- docs(openspec): archive the live-rate-limit-ingestion change by @Soju06 in #1300
- feat(dashboard): hide expired primary windows instead of freezing them by @Soju06 in #1301
- feat(ci): mint a dedicated GitHub App token for codex label sync by @Soju06 in #1302
- chore(ci): bump dorny/paths-filter from 4.0.1 to 4.0.2 by @dependabot[bot] in #1288
- chore(ci): bump github/codeql-action/upload-sarif from 4.36.2 to 4.37.0 by @dependabot[bot] in #1289
- chore(ci): bump softprops/action-gh-release from 3.0.1 to 3.0.2 by @dependabot[bot] in #1290
- chore(docker): bump astral-sh/uv from 0.11.27 to 0.11.28 by @dependabot[bot] in #1291
- chore(ci): bump actions/stale from 10.3.0 to 10.4.0 by @dependabot[bot] in #1285
- chore(docker): bump pgautoupgrade/pgautoupgrade from 18-alpine to 18-alpine by @dependabot[bot] in #1286
- chore(ci): bump astral-sh/setup-uv from 8.3.0 to 8.3.2 by @dependabot[bot] in #1287
- chore(deps): bump the frontend-minor-patch group in /frontend with 10 updates by @dependabot[bot] in #1292
- docs(openspec): archive absent-window-display and label-sync-app-token by @Soju06 in #1303
- chore(deps): bump the python-minor-patch group with 5 updates by @dependabot[bot] in #1294
- chore(deps): bump typescript from 6.0.3 to 7.0.2 in /frontend by @dependabot[bot] in #1293
- fix(scheduling): harden scheduler leader election for multi-replica safety by @Soju06 in #1253
- chore: release v1.21.0-beta.4 by @Soju06 in #1237
Full Changelog: v1.21.0-beta.3...v1.21.0-beta.4
Install / Run
uvx --from "codex-lb==1.21.0b4" codex-lb
docker pull ghcr.io/Soju06/codex-lb:1.21.0-beta.4
helm install codex-lb oci://ghcr.io/soju06/charts/codex-lb --version 1.21.0-beta.4 --develRelease v1.21.0-beta.3
What's Changed
- fix(proxy): send complete Codex identity headers by @luawl in #1197
- fix(account-ui): expand account list on tall viewports by @luawl in #1195
- fix(proxy): hide blank reasoning summary comments by @Komzpa in #1154
- fix(proxy): wait on local account cap pressure by @Komzpa in #1155
- fix(proxy): preserve admitted bridge waiters on upstream close by @Komzpa in #1191
- feat(proxy): add Fast Mode prohibition setting by @leventov in #1190
- fix(proxy): isolate unanchored parallel bridge requests by @Komzpa in #1169
- fix(proxy): reserve stream capacity for recovery by @Komzpa in #1188
- fix(proxy): omit synthesized tools on owner-forward and source egress by @Soju06 in #1203
- docs(codex): clarify built-in image generation eligibility by @ATofighi in #1181
- fix(proxy): normalize selected installation metadata by @dmdfami in #1204
- fix(accounts): sync free-to-paid plan upgrades by @luawl in #1217
- fix(ci): keep manual rerun attempts authoritative by @luawl in #1216
- fix(proxy): preserve responses turn-state fidelity by @luawl in #1193
- fix(models): retain hidden metadata across partial refreshes by @luawl in #1221
- fix(proxy): preserve websocket reconnect affinity by @leventov in #1220
- fix(proxy): preserve websocket incomplete reasons by @leventov in #1219
- fix(proxy): reselect only safe websocket turns by @dmdfami in #1207
- fix(proxy): route by complete account capability catalogs by @dmdfami in #1205
- test(usage): use UTC clock for freshness fixture by @luawl in #1228
- fix(proxy): keep native capacity waits alive by @Komzpa in #1218
- fix(ui): make routing strategy guide clickable cards by @zepx in #1229
- fix(oauth): isolate reauth by Team seat identity by @HeroOfOdyssey in #1224
- fix(proxy): prevent sequenced websocket replay by @mastertyko in #1223
- feat(proxy): configure account concurrency caps by @Komzpa in #1214
- Show request log speed metrics by @jamesx0416 in #1210
- fix(warmup): separate idle threshold, fix jitter, redesign warm-up UI by @zepx in #1230
- chore: release v1.21.0-beta.3 by @Soju06 in #1202
New Contributors
- @leventov made their first contribution in #1190
- @ATofighi made their first contribution in #1181
- @dmdfami made their first contribution in #1204
- @HeroOfOdyssey made their first contribution in #1224
- @jamesx0416 made their first contribution in #1210
Full Changelog: v1.21.0-beta.2...v1.21.0-beta.3
Install / Run
uvx --from "codex-lb==1.21.0b3" codex-lb
docker pull ghcr.io/Soju06/codex-lb:1.21.0-beta.3
helm install codex-lb oci://ghcr.io/soju06/charts/codex-lb --version 1.21.0-beta.3 --develRelease v1.21.0-beta.2
What's Changed
- fix(proxy): preserve multi-agent v2 passthrough by @luawl in #1189
- fix(proxy): stop synthesizing top-level tools for upstream Codex requests by @Soju06 in #1200
- chore: release v1.21.0-beta.2 by @Soju06 in #1201
Full Changelog: v1.21.0-beta.1...v1.21.0-beta.2
Install / Run
uvx --from "codex-lb==1.21.0b2" codex-lb
docker pull ghcr.io/Soju06/codex-lb:1.21.0-beta.2
helm install codex-lb oci://ghcr.io/soju06/charts/codex-lb --version 1.21.0-beta.2 --develRelease v1.21.0-beta.1
What's Changed
- feat: smart HTTP→upstream transport routing (sticky vs single-shot) by @Soju06 in #1093
- chore(ci): bump softprops/action-gh-release from 3.0.0 to 3.0.1 by @dependabot[bot] in #1067
- chore(docker): bump pgautoupgrade/pgautoupgrade from 18-alpine to 18-alpine by @dependabot[bot] in #1068
- chore(ci): bump docker/build-push-action from 7.1.0 to 7.2.0 by @dependabot[bot] in #1069
- chore(docker): bump astral-sh/uv from 0.11.21 to 0.11.23 by @dependabot[bot] in #1070
- chore(ci): bump actions/checkout from 6.0.2 to 7.0.0 by @dependabot[bot] in #1071
- chore(ci): bump github/codeql-action from 4.35.5 to 4.36.2 by @dependabot[bot] in #1072
- chore(deps): bump the frontend-minor-patch group in /frontend with 6 updates by @dependabot[bot] in #1073
- chore(deps): bump @types/node from 25.9.3 to 26.0.0 in /frontend by @dependabot[bot] in #1074
- chore(deps): bump pydantic-settings from 2.14.1 to 2.14.2 by @dependabot[bot] in #1081
- chore(deps): bump the python-minor-patch group with 7 updates by @dependabot[bot] in #1075
- feat: expose upstream transport observability by @Soju06 in #1096
- feat(proxy): repair account-bound egress routing by @Komzpa in #875
- fix(proxy): oauth blocked when bindings lack route by @tobwen in #1064
- feat+fix(report): reports enhancements by @huzky-v in #1060
- feat(reset-credits): add banked rate-limit reset credits by @huzky-v in #1053
- fix(db): optimize dashboard query hot paths by @Soju06 in #1107
- chore(docker): bump pgautoupgrade/pgautoupgrade from 18-alpine to 18-alpine by @dependabot[bot] in #1109
- chore(ci): bump azure/setup-helm from 5.0.0 to 5.0.1 by @dependabot[bot] in #1110
- chore(ci): bump actions/cache from 5.0.5 to 6.1.0 by @dependabot[bot] in #1111
- chore(docker): bump astral-sh/uv from 0.11.23 to 0.11.25 by @dependabot[bot] in #1112
- chore(deps): bump the frontend-minor-patch group in /frontend with 12 updates by @dependabot[bot] in #1113
- chore(deps): bump the python-minor-patch group with 11 updates by @dependabot[bot] in #1114
- fix(frontend): persist dashboard account list sort by @Soju06 in #1115
- feat(frontend): restore Simplified Chinese i18n by @Komzpa in #995
- feat(usage-api): add toggle to query additional usage, and add pooled usage to
/v1/usageby @huzky-v in #832 - feat(request-logs): record client IP by @Komzpa in #985
- perf(usage): avoid repeated history cache scans by @Komzpa in #902
- feat(warmup): add staggered idle limit prestart by @Komzpa in #905
- fix(db): merge post-batch migration heads by @Soju06 in #1116
- feat(request-ui): add showing elapsed time to request details by @huzky-v in #1103
- fix(zod): add the zod schema with new enum introduced at #875 by @huzky-v in #1102
- fix(retry): honor minute/hour and compound retry-after hints by @ozpool in #1052
- ci: remove unsupported review-thread workflow trigger by @Komzpa in #1117
- test: update codex label workflow event assertion by @Komzpa in #1118
- fix(usage): sync paid-plan upgrades on workspace-less accounts by @ozpool in #1098
- fix(proxy): strip unsafe HTTP headers before owner-bridge forward by @ozpool in #1036
- fix(proxy): strip internal responses lite header by @mhughdo in #1099
- add configurable limit warm-up exhausted threshold by @jawwadfirdousi in #1079
- fix(ui): stabilize account layout and API key dialog by @qdzsh in #1062
- fix(models): aggregate service tiers across accounts by @ozpool in #1106
- fix(http-bridge): clean stale inflight session futures by @zvladru in #1044
- fix(websocket): avoid fresh retry for tool-output deltas by @zvladru in #1042
- feat(usage): support Codex usage reset credits by @codemoo in #1105
- fix(proxy): set parallel_tool_calls to false for compaction requests by @alzeiby in #1054
- docs: explain routing strategy tradeoffs by @Komzpa in #1119
- fix(proxy): clarify account stream cap overload by @Komzpa in #1122
- fix(proxy): stop local rate-limit selection retry loops by @Komzpa in #1121
- Smooth weekly pace gap by @Komzpa in #1120
- fix(db): prevent SQLite FD retention in background refresh tasks by @Lotfree618 in #1127
- fix(quota-planner): normalize datetimes before database use by @zvladru in #1043
- chore(deps): bump ty from 0.0.55 to 0.0.56 in the python-minor-patch group by @dependabot[bot] in #1147
- chore(ci): bump astral-sh/setup-uv from 8.2.0 to 8.3.0 by @dependabot[bot] in #1140
- chore(ci): bump docker/login-action from 4.2.0 to 4.4.0 by @dependabot[bot] in #1141
- chore(ci): bump docker/metadata-action from 6.1.0 to 6.2.0 by @dependabot[bot] in #1144
- chore(docker): bump astral-sh/uv from 0.11.25 to 0.11.27 by @dependabot[bot] in #1145
- chore(deps): bump the frontend-minor-patch group in /frontend with 12 updates by @dependabot[bot] in #1146
- chore(docker): bump pgautoupgrade/pgautoupgrade from 18-alpine to 18-alpine by @dependabot[bot] in #1139
- chore(ci): bump docker/build-push-action from 7.2.0 to 7.3.0 by @dependabot[bot] in #1142
- chore(ci): bump docker/setup-buildx-action from 4.1.0 to 4.2.0 by @dependabot[bot] in #1143
- fix(dashboard-auth): harden local session ttl by @AnobleSCM in #1137
- fix: list Codex shell-only models in backend catalog by @Komzpa in #1138
- feat(accounts): test bound proxy pools by @Komzpa in #1124
- feat(metrics): expose account inflight lease gauge by @0xSolarPunk in #1148
- feat(fleet): add refresh endpoint by @AnobleSCM in #1128
- feat: add openai-compatible model sources by @evaldass in #1129
- fix(account-ui): fix overflow on account list page by @huzky-v in #1149
- feat(automations): scheduled cycles, grouped runs, and run details UI by @Kazet111 in #438
- feat(images): add route observability by @Komzpa in #1123
- feat(proxy): add TTFT phase observability by @Soju06 in #1156
- fix(models): serve the Codex catalog on /v1/models for Codex clients by @kevinWangSheng in #1163
- fix(proxy): fallback v1 usage limits to upstream quotas by @Daltonganger in #1151
- fix(proxy): preserve Responses Lite additional tools by @luawl in #1161
- feat(models): add GPT-5.6 bootstrap catalog with upstream-verified metadata by @Soju06 in #1176
- fix(proxy): support Codex image edit routes by @nazirulhafiy in #1160
- fix(model-sources): default Codex catalog context by @Komzpa in #1152
- fix(proxy): synthesize interrupted custom tool call outputs by @Soju06 in #1175
- fix(proxy): preserve all non-message system and developer input items by @Soju06 in #1172
- fix(proxy): preserve model_messages in catalog response by @zepx in #1178
- fix(ci): ignore superseded same-head check suites by @Komzpa in #1170
- fix(proxy): harden native Responses Lite continuity by @Komzpa in #1164
- ci: shard integration-core tests, PR-mode vitest without coverage by @Soju06 in #1179
- chore: release v1.21.0-beta.1 by @Soju06 in https://github.com/Soju06/codex-lb/pu...
Release v1.20.2-beta.1
What's Changed
- fix(quota-planner): normalize decision datetimes for persistence by @Soju06 in #1034
- fix(proxy): avoid shielded-future log on startup probe timeout by @ozpool in #1076
- fix(ci): ignore stale and resolved Codex inline findings by @Komzpa in #981
- fix(models): hide unsupported API models by @Komzpa in #887
- fix(dashboard): correct weekly credits pace display by @Komzpa in #955
- fix(proxy): normalize non-native upstream requests to Codex CLI fingerprint by @Soju06 in #1089
- chore: release v1.20.2-beta.1 by @Soju06 in #1088
Full Changelog: v1.20.1...v1.20.2-beta.1
Install / Run
uvx --from "codex-lb==1.20.2b1" codex-lb
docker pull ghcr.io/Soju06/codex-lb:1.20.2-beta.1
helm install codex-lb oci://ghcr.io/soju06/charts/codex-lb --version 1.20.2-beta.1 --develRelease v1.20.1
What's Changed
- perf(dashboard): split request log page count by @Soju06 in #1038
- fix(release): guard stable artifact publishing by @Soju06 in #1049
- ci(helm): speed up kind smoke path by @Soju06 in #1050
- chore(main): release 1.20.1 by @Soju06 in #1039
Full Changelog: v1.20.0...v1.20.1
Install / Run
uvx codex-lb
docker pull ghcr.io/Soju06/codex-lb:1.20.1
helm install codex-lb oci://ghcr.io/soju06/charts/codex-lb --version 1.20.1