Commit Graph
100 Commits
Author SHA1 Message Date
roshan b89f63e511 feat(usage): add PDF review pack to exports (#13872) 2026-08-12 16:30:39 +00:00
roshan c4e63842a9 feat(usage): add per-user attribution to usage report exports (#13843) 2026-08-11 22:19:43 +00:00
roshan 92f7966049 chore: remove spending limits page and make cost-budget API Enterprise-only (#13862) 2026-08-11 19:02:21 +00:00
roshan 74a6878deb fix(admin): prevent date range picker pills from clipping in narrow headers (#13860) 2026-08-11 17:52:01 +00:00
roshan 5130422108 fix(web): keep native row role on clickable opal Table rows (#13846) 2026-08-10 22:30:16 +00:00
roshan cf9a2d80cf feat(web): rework per-user usage panel (#13806) 2026-08-10 21:52:48 +00:00
roshan 63a806d06c test(craft): drive lazy webapp provisioning in the craft integration suites (#13830) 2026-08-10 21:10:47 +00:00
roshan 87eca2ddbc feat(usage): extract TokenRateLimitsPanel and rework the limits table (frontend 2/2) (#13784) 2026-08-07 20:50:33 +00:00
roshan a7ba98fef8 feat(usage): redesign the create-spending-limit modal (frontend 1/2) (#13783) 2026-08-07 19:17:25 +00:00
roshan 08b75ae8c9 feat(craft): gate Preview tab on webapp readiness with three-state UX (#13713) 2026-08-07 19:10:19 +00:00
roshan f807785611 feat(craft): lazy webapp provisioning on setup and restore (#13712) 2026-08-07 18:42:13 +00:00
roshan 1b577de028 feat(web): add usage analytics building blocks (#13769) 2026-08-07 18:34:27 +00:00
roshan f2a28e3344 feat(usage): cap spending-limit token budgets at one trillion (backend) (#13782) 2026-08-07 18:18:41 +00:00
roshan dbe9b17d13 feat(usage): accept a client-supplied report_id for generation (#13771) 2026-08-07 18:18:36 +00:00
roshan a9df89bffa feat(opal): support alignment overrides in Table cells and headers (#13768) 2026-08-06 00:11:56 +00:00
roshanandOmX fe4c5c3183 feat(usage): expose flow and provider detail in usage exports (#13750)
Co-authored-by: OmX <omx@oh-my-codex.dev>
2026-08-05 18:05:51 +00:00
roshan a6c4e42a3e fix(gateway): hide the LLM gateway PAT scope below Enterprise tier (#13753) 2026-08-05 17:33:51 +00:00
roshanandOmX 54286bbde0 feat(ee): move the LLM gateway into EE (#13746)
Co-authored-by: OmX <omx@oh-my-codex.dev>
2026-08-05 01:43:37 +00:00
roshan b427760c3d feat(craft): add webapp bootstrap script generator and tool assets (#13711) 2026-08-05 00:51:01 +00:00
roshanandOmX 5bf5a4c7ba fix: normalize API prefixes before middleware gates (#13748)
Co-authored-by: OmX <omx@oh-my-codex.dev>
2026-08-05 00:50:40 +00:00
roshan ff47db741c test(gateway): integration suite driving real Claude Code and Codex through the passthroughs (#13730) 2026-08-04 21:54:19 +00:00
roshan f548bc47d4 feat(gateway): serve the OpenAI Responses API natively for true OpenAI models (#13724) 2026-08-04 20:07:52 +00:00
roshan 4b9695ba55 feat(gateway): native Anthropic passthrough for /v1/messages (#13697) 2026-08-04 19:29:04 +00:00
roshan fa3b6312eb fix(tests): stop celery logging tests leaking third-party log cap state (#13732) 2026-08-04 18:36:06 +00:00
roshan c5cf1e1e3f feat(gateway): support forcing a specific named tool via tool_choice (#13692) 2026-08-04 16:40:16 +00:00
roshan 5a92d81c7e feat(gateway): tag PAT gateway traffic with its own LLM flow (#13700) 2026-08-03 23:56:22 +00:00
roshan ae137d579a feat(gateway): pass extended thinking through the Anthropic Messages API (#13691) 2026-08-03 23:15:28 +00:00
roshan 073993f625 feat(gateway): serve the Anthropic Messages API for Claude Code (#13687) 2026-08-03 20:46:18 +00:00
roshanandClaude Fable 5 c4a7749902 feat(craft): bake webapp dev-server env into the sandbox so hand-started servers work (#13699)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-08-03 19:20:17 +00:00
roshan 27e26de8aa feat(gateway): refuse gateway params we cannot honor (#13650) 2026-08-01 04:52:28 +00:00
roshan 7a13697053 feat(gateway): stream the Responses API output-item lifecycle (#13624) 2026-08-01 01:58:03 +00:00
roshan 9c6e4d8b56 feat(gateway): serve the OpenAI Responses API for Codex CLI (non-streaming) (#13605) 2026-07-31 22:32:02 +00:00
roshan fc73de040e fix(usage): sort per-model usage breakdown by cost descending (#13676) 2026-07-31 21:59:57 +00:00
roshan 6f99562100 fix(gateway): open a trace so gateway LLM calls are metered (#13666) 2026-07-31 21:09:09 +00:00
roshan a6cb8d2f5c feat(gateway): let external OpenAI-compatible clients use the LLM gateway (#13604) 2026-07-31 01:09:16 +00:00
roshan f680211865 feat(auth): capture per-credential identity for usage attribution (#13606) 2026-07-30 20:27:22 +00:00
roshan 24147b4b2d fix(usage): retain user_usage rows when a user is deleted (#13563) 2026-07-29 19:16:58 +00:00
roshan 8662ef9122 fix(craft): split aggregator providers by vendor in the model picker (#13552) 2026-07-29 18:19:24 +00:00
roshanandOmX 46306b09b8 fix(craft): omit unverified limits for unknown models (#13527)
Co-authored-by: OmX <omx@oh-my-codex.dev>
2026-07-29 00:11:32 +00:00
roshan c6a758db2a feat: gateway-backed Craft model picker (#13250) 2026-07-25 00:38:25 +00:00
roshanandClaude Fable 5 a4293ce3d8 feat: route Craft sandboxes through the Onyx LLM gateway (#13249)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-25 00:09:18 +00:00
roshanandClaude Fable 5 2164093ae3 refactor: consolidate API routing on ONYX_SERVER_URL (#13375)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 23:13:18 +00:00
roshanandClaude Fable 5 0f2ba1523a feat(craft): fail fast when SANDBOX_API_SERVER_URL lacks its API path prefix (#13357)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 18:31:14 +00:00
roshan bea0b548aa chore(craft): bump sandbox onyx-cli pin to 1.2.3 (#13358) 2026-07-23 18:24:11 +00:00
roshan 8479e66bb0 fix(image-gen): stream keepalives so LB idle timeouts don't kill slow generations (#13282) 2026-07-22 22:40:09 +00:00
roshan f70694c381 feat: OpenAI-compatible Onyx LLM gateway endpoint (#13248) 2026-07-22 22:37:24 +00:00
roshanandClaude Opus 4.8 346deae897 fix: persist dark mode toggle across reloads (#12445)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 16:40:51 +00:00
roshanandClaude Fable 5 b59005c765 feat(pptx-lint): density profiles — dense mode relaxes margin warning to 0.25" (#13103)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 02:06:29 +00:00
roshanandClaude Opus 4.8 ee93bd4f20 feat(pptx-skill): deck-styled charts and zero-setup icons (#13101)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-17 01:51:56 +00:00
roshanandClaude Opus 4.8 9314803a2f fix(craft): stop killing slow tool turns + gracefully recover from step timeouts (#13096)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-17 01:37:51 +00:00
roshanandClaude Fable 5 7301d779ef feat(pptx-skill): reliability fixes — deck-first build order, context discipline, pack-early (#13104)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 01:28:34 +00:00
roshanandClaude Fable 5 77abe3409a feat(pptx-skill): composable slide component library (#13079)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 21:45:49 +00:00
roshanandClaude Fable 5 dcc4610468 feat(pptx-skill): deterministic layout linter as QA step 0 (#13060)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-15 23:09:12 +00:00
roshanandClaude Fable 5 8b940faa6a feat(craft): add SessionOrigin.SLACK for headless Slack sessions (#13050)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-15 18:48:23 +00:00
roshan 311bc79c37 fix(craft): update image-generation skill description (#12978) 2026-07-14 16:54:41 +00:00
roshan e060b8bac3 feat(craft): admin Craft section with editable workspace instructions (#12960) 2026-07-13 22:06:49 +00:00
roshanandClaude Fable 5 62aad2af83 fix(craft): hide nextjs.log and nextjs.pid in file explorer (#12926)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 17:06:56 +00:00
roshanandClaude Fable 5 44f948b4d8 fix(craft): scheduled task runs no longer truncated by the 15-min turn timeout (#12856)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 16:19:14 +00:00
roshanandClaude Fable 5 67cec95b11 fix(craft): renewable prompt-slot lease so dead runners can't strand sessions (#12819)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-10 14:04:24 +00:00
roshanandClaude Fable 5 3e4a1454ca feat(craft): detect sandbox sleep and wake on user intent (#12661)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-07 19:13:16 +00:00
roshanandClaude Fable 5 265e03e08f test(e2e): de-race scroll-bottom assertions in scroll_behavior spec (#12715)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-06 22:20:16 +00:00
roshanandClaude Fable 5 49f0390cf4 fix(sandbox): pin chromium to 149 — trixie-security 150 SIGTRAPs at launch, breaking craft browser CI (#12717)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-06 22:20:05 +00:00
roshanandClaude Fable 5 2bd7024946 fix(craft): stop idle-sandbox reaper from killing actively-used pods (#12714)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-06 21:54:55 +00:00
roshanandClaude Fable 5 b587a22a67 fix(craft): clean up scheduled task run summary display (#12635)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 22:09:56 +00:00
roshanandClaude Opus 4.8 1e7975e57c feat(craft): default ENABLE_BROWSER on to match the sandbox image (#12659)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-02 19:59:00 +00:00
roshanandClaude Opus 4.8 6b10c2c91c feat(craft): context-window usage ring + compaction marker (#12613)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-02 00:22:46 +00:00
roshanandClaude Opus 4.8 5895337a05 feat(craft): give the agent headless browser use via a built-in browser skill (#12564)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-01 18:46:01 +00:00
roshanandClaude Opus 4.8 ffbc517ea7 feat(craft): image generation via admin-configured provider + onyx-cli (#12495)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 00:24:07 +00:00
roshanandClaude Opus 4.8 16e57cadb0 chore(craft-sandbox): drop google-genai, add requests to sandbox image deps (#12494)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 18:56:45 +00:00
roshanandClaude Opus 4.8 e8e16c95c0 fix(craft-cli): point image command at generic /image-generation/generate (#12518)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 18:01:36 +00:00
roshanandClaude Opus 4.8 7884fa6f6e fix(craft): preserve interrupted turn output when sending a new message (#12496)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 17:20:09 +00:00
roshanandClaude Opus 4.8 00fc4a8142 feat(craft): pptx built-in templates, fonts, and template-selection guidance (#12484)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-29 17:02:30 +00:00
roshanandClaude Opus 4.8 86b9de07b4 feat(craft-cli): add 'onyx-cli image' generate/edit command (#12493)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 16:54:01 +00:00
roshanandClaude Opus 4.8 332b9fd128 fix(craft): auto-send queued messages on interrupt; fix multi-queue hang (#12453)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-26 18:46:54 +00:00
roshanandClaude Opus 4.8 aa1d2e0725 feat(craft): use-case suggested prompts and welcome wordmark refresh (#12454)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-26 00:05:20 +00:00
roshanandClaude Opus 4.8 a6c6c29005 fix(craft): open the respective artifact on click in the Artifacts tab (#12452)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-25 21:47:42 +00:00
roshanandClaude Opus 4.8 40fe0d4cf3 fix(craft): keep sandbox-proxy from crash-looping on slow startup (#12402)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-25 01:42:41 +00:00
roshanandClaude Opus 4.8 4e3fe1670a feat(terraform): make Craft sandbox node group configurable and autoscaling-ready (#12399)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 22:54:31 +00:00
roshanandClaude Opus 4.8 74a3326973 fix(craft): raise sandbox-proxy request body cap to 32 MB (#12358)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-23 23:05:45 +00:00
roshanandClaude Opus 4.8 bccd9a792c feat(craft): add sandbox-pod egress NetworkPolicy (#12334)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-23 22:57:50 +00:00
roshanandClaude Opus 4.8 23893420c0 fix(craft): mark scheduled-task run FAILED on turn timeout (ENG-4234) (#12330)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-23 19:51:47 +00:00
roshanandClaude Opus 4.8 92795302e9 fix(sandbox-proxy): block sandbox egress relay to internal destinations (#12242)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-23 18:33:43 +00:00
roshanandClaude Opus 4.8 a4ab88fcbc fix(craft): add egress NetworkPolicy on the sandbox proxy (block IMDS/link-local) (#12229)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-23 06:17:37 +00:00
roshanandClaude Opus 4.8 c59236a7cf fix(craft): preserve contextvars in announce-merge producer threads (#12240)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 19:50:38 +00:00
roshanandClaude Opus 4.8 4299c92af2 fix(craft): set readOnlyRootFilesystem on the sandbox egress proxy (#12218)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 01:34:03 +00:00
roshanandClaude Opus 4.8 a17e61a31c fix(craft): send tenant_id to PostHog so Craft flags can target one tenant (#12196)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-18 19:47:26 +00:00
roshanandClaude Fable 5 f747669c44 fix(dev): set ENCRYPTION_KEY_SECRET in .env.k8s.template to match localdev cluster (#12048)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-06-18 16:55:16 +00:00
roshanandClaude Opus 4.8 62f14fd8f6 fix(craft): let celery-worker-heavy create sandbox snapshots (NetworkPolicy + push key) (#12173)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-18 01:13:10 +00:00
roshanandClaude Opus 4.8 4940af0d56 feat(skills): add user-managed personal skills (#11923)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-17 05:01:32 +00:00
roshanandClaude Fable 5 ded7f41e48 refactor(craft): move sandbox celery tasks to background/celery/tasks/build (#12033)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-06-16 18:12:36 +00:00
roshanandClaude Fable 5 447553c8f5 fix(craft): accept assignment-form basePath in next.config template test (#12114)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-06-16 17:48:53 +00:00
roshanandClaude Fable 5 37f9b55ddb refactor(craft): reorganize build package into domain packages (#12032)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-06-16 17:27:55 +00:00
roshanandClaude Fable 5 22449b1a97 fix(craft): mark failing bash commands as failed and persist them (#12050)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-06-16 16:58:16 +00:00
roshanandClaude Fable 5 52e065bec1 fix(ci): unblock craft compose integration after USER_AUTH_SECRET hardening (#12051)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-06-16 00:12:52 +00:00
roshanandClaude Fable 5 58bd318411 feat(craft): background-snapshot RUNNING sandboxes in the idle sweep (#12021)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-06-15 16:28:09 +00:00
roshanandClaude Fable 5 4e2f1809cb refactor(craft): move shared modules out of build api/ package (#12031)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-06-13 00:24:22 +00:00
roshanandClaude Fable 5 4661e0330c chore(craft): kind image refresh tooling for local dev (#12034)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-06-13 00:14:18 +00:00
roshanandClaude Fable 5 24986a7af7 refactor(craft): flatten sandbox/manager/ into sandbox/snapshot_manager.py (#12030)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 23:04:13 +00:00
roshanandClaude Fable 5 87e2b7e2d2 feat(craft): show action description for external app skill commands (#12036)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 22:23:55 +00:00
roshanandClaude Fable 5 7fc7c46633 refactor(craft): extract sandbox manager factory from base.py (#12029)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 20:47:09 +00:00