github lidge-jun/opencodex v2.36.0-preview.20260830

latest release: v2.36.0
pre-release5 hours ago

Published to npm as @bitkyc08/opencodex@2.36.0-preview.20260830 with dist-tag preview.

New Features

  • Add test:changed and make it the local check during implementation (#2429)
  • Per-account quota display and quota-aware account pool (#2875)
  • Opt-in blocked model redirection at shared routing layer (#2854)
  • Add provider, model, and day cache metrics with price coverage (#2365)
  • Inject per-model reasoning effort into Grok Build config (#1756)
  • Add random, least-used, and reset-window routing strategies (#2050)
  • Add model-specific provider routing for Vercel AI Gateway (#2364)
  • Opt-in x_search alongside hosted web search on the Responses lane (#2712)
  • Return trusted Responses request ids (#2827)
  • Choose the account with known headroom before dispatch (#2878)
  • Keep per-account quota across restarts (#2880)
  • Native Ollama /api/chat transport with /api/show metadata for ollama-cloud (#2863)
  • Migrate managed block to model_providers inheritance (#2890)
  • Skip the ACL mutation when the DACL is proven compliant (#2963)
  • Expose grok-4.20-multi-agent on the Responses lane (carry of #2498) (#2985)
  • Add least-privilege GET /v1/catalog for remote Codex clients (#2979)
  • Add opt-in transient-5xx retry with a shared total-send budget (#2981)
  • Add quota-window account pool routing (carry of #2560) (#2982)

Bug Fixes

  • Render one answer when prose and the completion tool share an inference (#2835)
  • Move dev's version line past the published preview (#2836)
  • Fold only message-shaped system items (#2822)
  • Scope model removal selectors to provider (#2821)
  • Raise Muse Spark context window to 1M on OpenCode Go (#2785)
  • Land approved verbosity and NAT64 fixes (#2799, #2798) (#2839)
  • Restrict closed-PR cleanup to disposable namespaces (#2840)
  • Close drain routing follow-ups (#2845)
  • Send the Codex client identity on the openai-chat path (#2717) (#2843)
  • Reach the fake-IP opt-in for explicit-zero mapped answers (#2810) (#2842)
  • Reject self-intercept targets (#2849)
  • Recover encrypted combo agent tasks safely (#2850)
  • Admit keyring-managed native credentials (#2718) (#2847)
  • Preserve retired orphan tables and clear stale references (#2846)
  • Diagnose the broken Codex env_key launch path (#2844)
  • Bind a rotated OAuth bearer to its own Copilot origin (#2841)
  • Follow up on #2849 self-target gaps (#2852)
  • Security follow-up to #2850 recovery (#2851)
  • Refresh expired native main auth.json tokens (#2221) (#2848)
  • Scope scheduler ownership by OpenCodex home (#2857)
  • Keep installed tray alive after launch (#2856)
  • Retry compact on routed handoff target (#2858)
  • Harden dashboard asset serving and log retries (#2859)
  • Report an unclean prior proxy exit instead of a silent outage (#2861)
  • Keep native eligibility metadata off routed catalog rows (#2862)
  • Bound the assembled external replay envelope (#2865)
  • Support CentOS 7 service management (#2869)
  • Authenticate call-id provenance (#2876)
  • Unblock the isolated fabric producer and unpin CI-scaled waits (#2873)
  • Contain the fabric producer and remove timeout-only stabilizers (#2879)
  • Complete prompt probe coalescing (#2872)
  • Match the shim's launcher backups in --restart-codex (#2888)
  • Refresh and replay an ordinary pool 401 instead of quarantining (#2889)
  • Ask upstream for the entitlement roster under a real client version (#2891)
  • Bound the stored Pool 401 recovery budget by account (#2897)
  • Name the invocation inside a replayed tool result (#2900)
  • Bound the replayed invocation and compare full tool identity (#2903)
  • Refresh Codex 0.151 shell contract (#2907)
  • Honor provider HTTP version pins (#2908)
  • Reserve the sidecar hint in lines so the pair stays aligned (#2905)
  • Launch the systemd unit through the stable ocx executable (#2909)
  • Cap the log table against the dynamic viewport (#2906)
  • Index replayed tool calls from full history on the checkpoint path (#2910)
  • Harden stable systemd launcher contracts (#2916)
  • Give the live GLM-5.3-Flash route its own effort ladder (#2917)
  • Decode CJK schtasks output and let the task listing finish (#2918)
  • Correct the record and lock the test constants (#2915)
  • Scope refresh-flight cancellation to the caller that owns it (#2920)
  • Detect Windows Desktop policy conflicts (#2924)
  • Share one identity-lookup budget between desktops and CI (#2926)
  • Reuse unchanged startup task listing (#2928)
  • Preserve all five combo strategies in dashboard and docs (#2929)
  • Group and translate the newer combo strategies in the workspace (#2931)
  • Apply fresh-connection recovery on the sidecar and loop retry legs (#2932)
  • Require a replayed call to precede the result it names (#2936)
  • Send the cleanup percent in the policy target the server reads (#2937)
  • Reconcile the refreshed plan on the shared flight, not the owner's wait (#2933)
  • Heal a dormant same-grant record and drop stale 401 evidence (#2934)
  • Read Copilot nested vision capability (#2943)
  • Classify failed exec wrappers by forward scan, not backtracking (#2945)
  • Root the test-run lock in a machine-local user runtime dir (#2962)
  • Give the provider toggle a real flex basis so the header can wrap (#2958)
  • Drop the paragraph Antigravity Gemini 3.7 Flash rejects (#2961)
  • Stop a namespaced MCP exec from authorizing bare shell aliases (#2966)
  • Start when proxy settings hold values the schema never constrained (#2967)
  • Keep checkpoint-suffix history intact through pruning and the envelope (#2940)
  • Install gui dependencies the local runner needs (#2964)
  • Keep the empty-completion notice to one log record (#2955)
  • Repair the two dispatch-only Windows test failures (#2968)
  • Keep the capacity panel when a credit expiry cannot be formatted (#2965)
  • Correct GLM Coding Plan auth and exclude MCP allowance from model quota (#2976)
  • Resolve self-namespaced native ids before the provider-qualified reading (#2987)
  • Bound the provenance ledger by bytes, not only by transaction count (#2954)
  • Scope the default Bun test-run lock to a private per-user runtime (#2984)
  • Annotate empty tool outputs, keeping an explicit provider false (#2978)
  • Keep the terminal-guard continuation on the shared transient budget (#2998)

Documentation

  • Add minimal container / agent sandbox instructions to AGENTS.md (#2832)
  • Close the Kiro duplicate-answer unit (#2838)
  • Bug-PR zero-remaining campaign roadmap + executable review gate (#2837)
  • Close bug-PR zero-remaining campaign (#2855)
  • Verify the Kiro quota and pool phases compose on dev (#2882)
  • Back 020's withdrawal with the horizontal measurement (#2911)
  • Close the dashboard slop unit with its outcome (#2912)
  • Enumerate every invocation-line site to bound the cursor fix (#2913)
  • Correct the red-test arithmetic and name two enumeration gaps (#2919)
  • Record the lane N units and their outcomes (#2930)
  • Close the cursor tool-continuation unit into _fin (#2970)
  • Record the terminal outcome the unit close claimed (#2971)
  • Record the release-readiness train and its outcome (#2974)
  • Record the final gate for the cursor tool-continuation unit (#2977)
  • Correct Kiro pooling, combo strategies, and undocumented config in every locale (#2980)

Chores

  • Prove reserved call-id codec closure (#2868)
  • Prove replay 402 closes compact recovery (#2922)
  • Pin Copilot vision precedence and nested/flat denial equivalence (#2944)
  • Isolate the tombstone guard with a credential-carrying tombstone (#2946)
  • Let the README asset check tell files from directories (#2952)
  • Create the external prompt fixture parent directory (#2972)
  • Close the four residual shard-2 Windows failures (#2975)
  • Widen the launcher health budget for loaded runners (#2983)

Other Changes

  • [WRONG BRANCH] promote dev onto preview for v2.36.0-preview.20260830 (#3001)

Changelog

Full Changelog: v2.36.0-preview.20260829...v2.36.0-preview.20260830

  • #1756 feat(grok): inject per-model reasoning effort into Grok Build config @takltc
  • #2050 feat(combos): add random, least-used, and reset-window routing strategies @x3M3x
  • #2364 feat(providers): add model-specific provider routing for Vercel AI Gateway @chilung-cgu
  • #2365 feat(usage): add provider, model, and day cache metrics with price coverage @chilung-cgu
  • #2429 feat(test): add test:changed and make it the local check during implementation @olddonkey
  • #2712 feat(xai): opt-in x_search alongside hosted web search on the Responses lane @olddonkey
  • #2785 fix(catalog): raise Muse Spark context window to 1M on OpenCode Go @DevonGithub
  • #2821 fix(cli): scope model removal selectors to provider @luvs01
  • #2822 fix(responses): fold only message-shaped system items @luvs01
  • #2827 feat(server): return trusted Responses request ids @yamashirotakashi
  • #2832 docs: add minimal container / agent sandbox instructions to AGENTS.md @lidge-jun
  • #2835 fix(kiro): render one answer when prose and the completion tool share an inference @lidge-jun
  • #2836 fix(release): move dev's version line past the published preview @lidge-jun
  • #2837 docs(devlog): bug-PR zero-remaining campaign roadmap + executable review gate @lidge-jun
  • #2838 docs(devlog): close the Kiro duplicate-answer unit @lidge-jun
  • #2839 fix(catalog,security): land approved verbosity and NAT64 fixes (#2799, #2798) @lidge-jun
  • #2840 fix(ci): restrict closed-PR cleanup to disposable namespaces @luvs01
  • #2841 fix(responses): bind a rotated OAuth bearer to its own Copilot origin @lidge-jun
  • #2842 fix(security): reach the fake-IP opt-in for explicit-zero mapped answers (#2810) @lidge-jun
  • #2843 fix(agentrouter): send the Codex client identity on the openai-chat path (#2717) @lidge-jun
  • #2844 fix(doctor): diagnose the broken Codex env_key launch path @lidge-jun
  • #2845 fix(codex): close drain routing follow-ups @lidge-jun
  • #2846 fix(grok): preserve retired orphan tables and clear stale references @lidge-jun
  • #2847 fix(codex): admit keyring-managed native credentials (#2718) @lidge-jun
  • #2848 fix(codex): refresh expired native main auth.json tokens (#2221) @lidge-jun
  • #2849 fix(shadow-call): reject self-intercept targets @lidge-jun
  • #2850 fix(responses): recover encrypted combo agent tasks safely @lidge-jun
  • #2851 fix(responses): security follow-up to #2850 recovery @lidge-jun
  • #2852 fix(shadow-call): follow up on #2849 self-target gaps @lidge-jun
  • #2854 feat(router): opt-in blocked model redirection at shared routing layer @terrytan95
  • #2855 docs(devlog): close bug-PR zero-remaining campaign @lidge-jun
  • #2856 fix(windows): keep installed tray alive after launch @lidge-jun
  • #2857 fix(windows): scope scheduler ownership by OpenCodex home @lidge-jun
  • #2858 fix(responses): retry compact on routed handoff target @lidge-jun
  • #2859 fix(gui): harden dashboard asset serving and log retries @lidge-jun
  • #2861 fix(cli): report an unclean prior proxy exit instead of a silent outage @lidge-jun
  • #2862 fix(codex): keep native eligibility metadata off routed catalog rows @lidge-jun
  • #2863 feat(providers): native Ollama /api/chat transport with /api/show metadata for ollama-cloud @adtumk
  • #2865 fix(cursor): bound the assembled external replay envelope @lidge-jun
  • #2868 test(cursor): prove reserved call-id codec closure @lidge-jun
  • #2869 fix(systemd): support CentOS 7 service management @lidge-jun
  • #2872 fix(codex): complete prompt probe coalescing @lidge-jun
  • #2873 fix(windows): unblock the isolated fabric producer and unpin CI-scaled waits @lidge-jun
  • #2875 feat(kiro): per-account quota display and quota-aware account pool @lidge-jun
  • #2876 fix(cursor): authenticate call-id provenance @lidge-jun
  • #2878 feat(oauth): choose the account with known headroom before dispatch @lidge-jun
  • #2879 fix(windows): contain the fabric producer and remove timeout-only stabilizers @lidge-jun
  • #2880 feat(quota): keep per-account quota across restarts @lidge-jun
  • #2882 docs(devlog): verify the Kiro quota and pool phases compose on dev @lidge-jun
  • #2888 fix(codex): match the shim's launcher backups in --restart-codex @lidge-jun
  • #2889 fix(codex): refresh and replay an ordinary pool 401 instead of quarantining @lidge-jun
  • #2890 feat(grok): migrate managed block to model_providers inheritance @bet4it
  • #2891 fix(codex): ask upstream for the entitlement roster under a real client version @lidge-jun
  • #2897 fix(codex): bound the stored Pool 401 recovery budget by account @lidge-jun
  • #2900 fix(cursor): name the invocation inside a replayed tool result @lidge-jun
  • #2903 fix(cursor): bound the replayed invocation and compare full tool identity @lidge-jun
  • #2905 fix(gui): reserve the sidecar hint in lines so the pair stays aligned @lidge-jun
  • #2906 fix(gui): cap the log table against the dynamic viewport @lidge-jun
  • #2907 fix(catalog): refresh Codex 0.151 shell contract @lidge-jun
  • #2908 fix(web-search): honor provider HTTP version pins @lidge-jun
  • #2909 fix(service): launch the systemd unit through the stable ocx executable @lidge-jun
  • #2910 fix(cursor): index replayed tool calls from full history on the checkpoint path @lidge-jun
  • #2911 docs(devlog): back 020's withdrawal with the horizontal measurement @lidge-jun
  • #2912 docs(devlog): close the dashboard slop unit with its outcome @lidge-jun
  • #2913 docs(devlog): enumerate every invocation-line site to bound the cursor fix @lidge-jun
  • #2915 fix(gui): correct the record and lock the test constants @lidge-jun
  • #2916 fix(service): harden stable systemd launcher contracts @Ingwannu
  • #2917 fix(providers): give the live GLM-5.3-Flash route its own effort ladder @lidge-jun
  • #2918 fix(service): decode CJK schtasks output and let the task listing finish @lidge-jun
  • #2919 docs(devlog): correct the red-test arithmetic and name two enumeration gaps @lidge-jun
  • #2920 fix(codex): scope refresh-flight cancellation to the caller that owns it @lidge-jun
  • #2922 test(codex): prove replay 402 closes compact recovery @lidge-jun
  • #2924 fix(claude): detect Windows Desktop policy conflicts @lidge-jun
  • #2926 fix(codex): share one identity-lookup budget between desktops and CI @lidge-jun
  • #2928 fix(windows): reuse unchanged startup task listing @Ingwannu
  • #2929 fix(combos): preserve all five combo strategies in dashboard and docs @x3M3x
  • #2930 docs(devlog): record the lane N units and their outcomes @lidge-jun
  • #2931 fix(gui): group and translate the newer combo strategies in the workspace @x3M3x
  • #2932 fix(upstream): apply fresh-connection recovery on the sidecar and loop retry legs @lidge-jun
  • #2933 fix(codex): reconcile the refreshed plan on the shared flight, not the owner's wait @luvs01
  • #2934 fix(codex): heal a dormant same-grant record and drop stale 401 evidence @lidge-jun
  • #2936 fix(cursor): require a replayed call to precede the result it names @lidge-jun
  • #2937 fix(cli): send the cleanup percent in the policy target the server reads @luvs01
  • #2940 fix(cursor): keep checkpoint-suffix history intact through pruning and the envelope @lidge-jun
  • #2943 fix(catalog): read Copilot nested vision capability @Ingwannu
  • #2944 test(catalog): pin Copilot vision precedence and nested/flat denial equivalence @lidge-jun
  • #2945 fix(adapters): classify failed exec wrappers by forward scan, not backtracking @lidge-jun
  • #2946 test(codex): isolate the tombstone guard with a credential-carrying tombstone @lidge-jun
  • #2952 test: let the README asset check tell files from directories @luvs01
  • #2954 fix(codex): bound the provenance ledger by bytes, not only by transaction count @luvs01
  • #2955 fix(responses): keep the empty-completion notice to one log record @luvs01
  • #2958 fix(gui): give the provider toggle a real flex basis so the header can wrap @lidge-jun
  • #2961 fix(google): drop the paragraph Antigravity Gemini 3.7 Flash rejects @lidge-jun
  • #2962 fix(test): root the test-run lock in a machine-local user runtime dir @lidge-jun
  • #2963 perf(windows): skip the ACL mutation when the DACL is proven compliant @lidge-jun
  • #2964 fix(test): install gui dependencies the local runner needs @lidge-jun
  • #2965 fix(quota): keep the capacity panel when a credit expiry cannot be formatted @lidge-jun
  • #2966 fix(responses): stop a namespaced MCP exec from authorizing bare shell aliases @lidge-jun
  • #2967 fix(config): start when proxy settings hold values the schema never constrained @lidge-jun
  • #2968 fix(windows): repair the two dispatch-only Windows test failures @lidge-jun
  • #2970 docs(devlog): close the cursor tool-continuation unit into _fin @lidge-jun
  • #2971 docs(devlog): record the terminal outcome the unit close claimed @lidge-jun
  • #2972 test(windows): create the external prompt fixture parent directory @lidge-jun
  • #2974 docs(devlog): record the release-readiness train and its outcome @lidge-jun
  • #2975 test(windows): close the four residual shard-2 Windows failures @lidge-jun
  • #2976 fix(quota): correct GLM Coding Plan auth and exclude MCP allowance from model quota @lidge-jun
  • #2977 docs(devlog): record the final gate for the cursor tool-continuation unit @lidge-jun
  • #2978 fix(adapters): annotate empty tool outputs, keeping an explicit provider false @lidge-jun
  • #2979 feat(server): add least-privilege GET /v1/catalog for remote Codex clients @lidge-jun
  • #2980 docs: correct Kiro pooling, combo strategies, and undocumented config in every locale @lidge-jun
  • #2981 feat(providers): add opt-in transient-5xx retry with a shared total-send budget @lidge-jun
  • #2982 feat(anthropic): add quota-window account pool routing (carry of #2560) @lidge-jun
  • #2983 test(windows): widen the launcher health budget for loaded runners @lidge-jun
  • #2984 fix(test): scope the default Bun test-run lock to a private per-user runtime @luvs01
  • #2985 feat(xai): expose grok-4.20-multi-agent on the Responses lane (carry of #2498) @lidge-jun
  • #2987 fix(slug): resolve self-namespaced native ids before the provider-qualified reading @luvs01
  • #2998 fix(responses): keep the terminal-guard continuation on the shared transient budget @lidge-jun
  • #3001 [WRONG BRANCH] promote dev onto preview for v2.36.0-preview.20260830 @lidge-jun

Don't miss a new opencodex release

NewReleases is sending notifications on new releases.