Published to npm as @bitkyc08/opencodex@2.51.0 with dist-tag latest.
New Features
- Let an operator keep a downgraded account out of pool rotation (#4211) (#4238)
- One-port hub — same-port loopback companion listener, honest hub-gate messages (#4250)
- Provision the data-plane token, add ocx hub invite, and one hub block in ocx status (#4252)
- A connected client reports the hub's state, not its own (#4255)
Bug Fixes
- Give sessionless requests an isolated session lane (#4226)
- Refuse a write that would take a config file from its owner (#4227)
- Warm up new ChatGPT Free accounts instead of blaming the credential (#4126) (#4230)
- Admit the Responses Coding Plan preset to the quota reader (#4231)
- Name the account that left the pool instead of only dropping it (#4212) (#4233)
- Support native pnpm self-updates (#4235)
- Classify Codex WS failures instead of restating them (#4232)
- Name the real refusal cause instead of asserting ownership (#4237)
- Refuse vendor CLI scaffolding in routed output (#4234)
- Refuse a hub catalog the local Codex CLI cannot parse (#4240)
- MacOS repair no longer evicts a healthy launchd job, and verifies the one it loads (#4249)
- Route the hub's own local clients through their two destinations (management ingress + loopback inference) (#4251)
- Emit max/ultra efforts unconditionally and expire stale clamp diagnostics (#4257)
- Keep the retryable main-refresh refusal an overload, not a bad key (#4269)
Documentation
- Record the 2.50.0 regression audit and release train (#4196)
- Plan the 260911 lane dispatch round (#4217)
- Publish the 260911 lane branches and refresh the round ledger (#4220)
- Mechanize the lane tracking refresh and fix the wp4 merge gate (#4221)
- Fold the seven-lane feasibility audit into lane ownership and scope (#4223)
- State which account each provider login spends (#4239)
- Make the setup runnable on a fresh config and close the macOS data plane (#4241)
- The one-port hub recipe, invite flow, and launchd semantics (en+ko, skill) (#4254)
- Provider: seed GLM-5.3-Flash on the BigModel Responses preset (#4244)
- Make the remote hub guide runnable in every locale (#4247)
Other Changes
- Open dev at 2.51.0 before releasing 2.50.0 (#4194)
- Pool: name the account when a refresh fails or its models vanish (#4248)
- Client: report local Codex readiness instead of bare connected state (#4246)
- Promote verified 2.51.0 product tree to main (#4271)
Changelog
Full Changelog: v2.50.0...v2.51.0
- #4194 chore(release): open dev at 2.51.0 before releasing 2.50.0 @github-actions[bot]
- #4196 docs(devlog): record the 2.50.0 regression audit and release train @lidge-jun
- #4217 docs(devlog): plan the 260911 lane dispatch round @lidge-jun
- #4220 docs(devlog): publish the 260911 lane branches and refresh the round ledger @lidge-jun
- #4221 docs(devlog): mechanize the lane tracking refresh and fix the wp4 merge gate @lidge-jun
- #4223 docs(devlog): fold the seven-lane feasibility audit into lane ownership and scope @lidge-jun
- #4226 fix(opencode-go): give sessionless requests an isolated session lane @lidge-jun
- #4227 fix(integrations): refuse a write that would take a config file from its owner @lidge-jun
- #4230 fix(codex): warm up new ChatGPT Free accounts instead of blaming the credential (#4126) @lidge-jun
- #4231 fix(bigmodel): admit the Responses Coding Plan preset to the quota reader @lidge-jun
- #4232 fix(responses): classify Codex WS failures instead of restating them @lidge-jun
- #4233 fix(codex): name the account that left the pool instead of only dropping it (#4212) @lidge-jun
- #4234 fix(qoder): refuse vendor CLI scaffolding in routed output @lidge-jun
- #4235 fix(update): support native pnpm self-updates @lidge-jun
- #4237 fix(stop): name the real refusal cause instead of asserting ownership @lidge-jun
- #4238 feat(codex): let an operator keep a downgraded account out of pool rotation (#4211) @lidge-jun
- #4239 docs(providers): state which account each provider login spends @lidge-jun
- #4240 fix(client): refuse a hub catalog the local Codex CLI cannot parse @lidge-jun
- #4241 docs(remote-hub): make the setup runnable on a fresh config and close the macOS data plane @lidge-jun
- #4244 provider: seed GLM-5.3-Flash on the BigModel Responses preset @lidge-jun
- #4246 client: report local Codex readiness instead of bare connected state @lidge-jun
- #4247 docs(i18n): make the remote hub guide runnable in every locale @lidge-jun
- #4248 pool: name the account when a refresh fails or its models vanish @lidge-jun
- #4249 fix(service): macOS repair no longer evicts a healthy launchd job, and verifies the one it loads @lidge-jun
- #4250 feat(server): one-port hub — same-port loopback companion listener, honest hub-gate messages @lidge-jun
- #4251 fix(claude): route the hub's own local clients through their two destinations (management ingress + loopback inference) @lidge-jun
- #4252 feat(hub): provision the data-plane token, add ocx hub invite, and one hub block in ocx status @lidge-jun
- #4254 docs(remote-hub): the one-port hub recipe, invite flow, and launchd semantics (en+ko, skill) @lidge-jun
- #4255 feat(client): a connected client reports the hub's state, not its own @lidge-jun
- #4257 fix(codex): emit max/ultra efforts unconditionally and expire stale clamp diagnostics @lidge-jun
- #4269 fix(responses): keep the retryable main-refresh refusal an overload, not a bad key @lidge-jun
- #4271 release: promote verified 2.51.0 product tree to main @lidge-jun