Skip to content

Subpool v0.4.0

Choose a tag to compare

@jwcesign jwcesign released this 09 Oct 07:11
c2480a1

Highlights

  • Separate the employee API and administrative console into independently configurable HTTP listeners in the same process, allowing deployments to apply different reverse-proxy and network access rules.
  • Improve provider account readability with clearer account identity, consolidated health information, larger controls, and better-aligned subscription details.
  • Show Codex AI credit balances inline with subscription capacity and distinguish reset-credit expiration from subscription quota reset times.

Console and usage

  • Organize account rows into Account, Health, Subscription & credits, and Actions, keeping health-check timestamps alongside routing status.
  • Keep AI credit balances visible, including zero and unlimited balances, while retaining a standalone balance when subscription windows are unavailable.
  • Group reset-credit availability, expiration, and the Reset credits action into a consistent layout, with clear loading, unavailable, retry, and result states.

Reliability and operations

  • Keep /v1/*, /healthz, /readyz, and /metrics on the API listener; serve the web console and /api/v1/* control API only on the console listener.
  • Reject identical listener addresses and report listener startup failures.
  • Shut down both HTTP listeners concurrently and wait for active requests to drain within the shared 15-second shutdown timeout.
  • Refresh release pages from main when GitHub releases are published, edited, or deleted, keeping the public version history in sync.

Upgrade notes

Pull public.ecr.aws/cloudpilotai/subpool:v0.4.0 for the stable image. No new database migrations are included since v0.3.0. Existing Codex, GitHub Copilot, and OpenAI-compatible API integrations remain supported.

Breaking deployment configuration change: combined-port serving and SUBPOOL_LISTEN_ADDRESS have been removed. Update deployment configuration and reverse-proxy routing before upgrading:

  • For direct binary deployments, configure SUBPOOL_API_LISTEN_ADDRESS (default :8080) and SUBPOOL_CONSOLE_LISTEN_ADDRESS (default :8081). Use different listener addresses.
  • For Docker Compose, SUBPOOL_PORT continues to select the API host port (default 8080); SUBPOOL_CONSOLE_PORT selects the new console host port (default 8081).
  • For pre deployments, SUBPOOL_HOST_PORT keeps the API on 8082 by default; SUBPOOL_CONSOLE_HOST_PORT selects the console port, defaulting to 8083.
  • Set SUBPOOL_PUBLIC_URL to the console's public origin. Route console pages and /api/v1/* to the console listener, and keep AI API traffic and operational checks on the API listener.
  • Update firewall or reverse-proxy access rules for the console listener as needed; port separation does not add an application-level IP allowlist.

Full changelog: v0.3.0...v0.4.0