Skip to content

v0.9.78 — Marketplace runtime, managed gateway defaults, and staging release hardening

Choose a tag to compare

@github-actions github-actions released this 27 Jun 04:16
· 55 commits to main since this release

New

  • Added the native Kortix marketplace runtime floor so new projects can start with curated skills, starter defaults, and marketplace install/update flows built into the project experience.
  • Expanded the Marketplace UI, CLI commands, registry handling, and project creation defaults so skills can be browsed, installed, updated, and carried into starter projects consistently.
  • Moved the managed LLM gateway into the default routing path behind the production master switch, with OpenRouter and Bedrock-backed managed model routing, AUTO model handling, and server-owned model configuration.
  • Added no-restart warm-fork and sandbox runtime improvements, including build-time catalog baking and credential hot-swap paths for faster agent startup without restarting OpenCode.
  • Added agent email channel support, Slack per-user identity controls, and improved channel/session selection behavior.

Improved

  • Hardened the dev, staging, and production release topology: staging is the release-candidate branch, production promotion retags tested staging images, prod rollback is image-aware, and staging/prod deploy workflows apply database migrations in the right environment.
  • Improved staging environment correctness, including staging database isolation, staging auth/runtime configuration, Daytona as the staging sandbox provider, and staging Cloudflare/API worker deployment.
  • Improved session reliability across browser, terminal, PTY, tunnel, file upload, PDF rendering, and first-prompt retry paths.
  • Improved frontend onboarding and project creation flows with marketplace starter selection, first-project bootstrap fixes, chat input polish, session sidebar persistence, and model picker stability.
  • Improved gateway observability and runtime behavior with structured run-path logging, managed catalog support, session cost display fixes, and live env handling for router tools.

Fixed

  • Fixed staging deploy dispatch, build, and promotion edge cases so staging image pins and release-source SHAs are preserved correctly for production retags.
  • Fixed multiple auth and environment regressions in staging, including server auth env alignment and runtime config validation.
  • Fixed CI and security scan issues around marketplace code, frontend build memory, Drata visibility gating, and staging QA/report publishing.
  • Fixed channel and connector bugs for AgentMail, Slack, email inbox binding, profile inbox defaults, and executor call routing.
  • Fixed warm snapshot and warm pool toggles so disabled settings remain disabled and stale build contexts self-heal.

What's Changed

  • chore(release): VERSION → 0.9.78 [skip ci] by @github-actions[bot] in #3728
  • feat(ci): rollback-prod workflow — reversible prod rollback (inverse of promote) by @markokraemer in #3730
  • feat(ci): rollback-prod = single-dispatch FE + BE rollback (image-aware, Vercel-automated) by @markokraemer in #3731
  • feat(gateway): run-path logging + small_model pin + longer sandbox autostop by @lillyboga in #3733
  • chore(dev-eks): deploy gateway dev-e2edc542 [skip ci] by @github-actions[bot] in #3734
  • chore(dev-eks): deploy dev-e2edc542 [skip ci] by @github-actions[bot] in #3735
  • feat(web): skip Vercel FE build on infra-only prod pushes (kill rollback clobber) by @markokraemer in #3738
  • docs(skill): add kortix-rollback — rollback runbook + FE clobber/skip behavior by @markokraemer in #3739
  • feat(catalog): refresh managed Chinese models to latest frontier (GLM-5.1, Qwen3.7-Max, DeepSeek V4) by @lillyboga in #3740
  • chore(dev-eks): deploy gateway dev-66e45306 [skip ci] by @github-actions[bot] in #3741
  • chore(dev-eks): deploy dev-66e45306 [skip ci] by @github-actions[bot] in #3742
  • feat(snapshots): Platinum build pipeline — CAS agent-swap (kill mass-rebuild) + auto-build self-heal + size clamp by @kubet in #3744
  • chore(dev-eks): deploy dev-906ba46d [skip ci] by @github-actions[bot] in #3745
  • feat(snapshots): per-project warm-fork for Platinum (session start ~40s -> ~2s) by @kubet in #3746
  • chore(dev-eks): deploy dev-e87ace5c [skip ci] by @github-actions[bot] in #3747
  • fix(snapshots): warm-fork admin toggle (env->DB) + pre-build default on Platinum deploys by @kubet in #3748
  • chore(dev-eks): deploy dev-e28bd75c [skip ci] by @github-actions[bot] in #3749
  • perf(session-start): long-poll readiness (?wait_ms) — kill the ~800ms FE poll-tick latency by @kubet in #3754
  • chore(dev-eks): deploy dev-f483258d [skip ci] by @github-actions[bot] in #3755
  • fix(admin): scope warm-fork (stateful template) toggle to Platinum by @kubet in #3751
  • fix(sandbox-agent): cap gateway /models fetch (6s timeout) — unhang opencode startup on both providers by @kubet in #3750
  • feat(sandbox-agent): no-restart warm-fork claim via credential-injecting proxies (flag-off) by @kubet in #3752
  • chore(dev-eks): deploy dev-952e5c40 [skip ci] by @github-actions[bot] in #3756
  • feat(warm-fork): enable no-restart on stateful seeds (catalog endpoint + KORTIX_LLM_HOTSWAP) by @kubet in #3757
  • chore(dev-eks): deploy dev-278a549a [skip ci] by @github-actions[bot] in #3758
  • feat(warm-fork): no-restart on shared seed + build-time catalog bake (full picker, no regression) by @kubet in #3759
  • chore(dev-eks): deploy dev-280ef097 [skip ci] by @github-actions[bot] in #3760
  • feat(billing): free tier, new onboarding, 500 credits by @sutharjay1 in #3761
  • chore(dev-eks): deploy dev-b0fb5d65 [skip ci] by @github-actions[bot] in #3762
  • fix(warm-fork): deliver per-session creds to agent shells on no-restart hot-swap by @kubet in #3763
  • chore(dev-eks): deploy dev-7da97a3c [skip ci] by @github-actions[bot] in #3764
  • feat(llm-gateway): unify pipeline + models.dev catalog + AUTO routing + server-owned model config by @markokraemer in #3765
  • feat: add AgentMail email channels by @markokraemer in #3766
  • chore(dev-eks): deploy dev-1d74a3d5 [skip ci] by @github-actions[bot] in #3769
  • fix(warm-fork): give each session its own opencode root (stop cross-session chat bleed) by @sutharjay1 in #3767
  • chore(dev-eks): deploy dev-1b0d2f0c [skip ci] by @github-actions[bot] in #3770
  • fix: restore Slack channel install flow by @markokraemer in #3771
  • feat(slack): per-user identity — run the agent as the sender, not the installer by @lillyboga in #3768
  • fix: restore Slack custom app flow by @markokraemer in #3772
  • chore(dev-eks): deploy dev-399a8fa8 [skip ci] by @github-actions[bot] in #3774
  • Fix auto model upstream routing by @markokraemer in #3775
  • chore(dev-eks): deploy gateway dev-817adede [skip ci] by @github-actions[bot] in #3776
  • Fix CLI sandbox auth fallback by @markokraemer in #3777
  • chore(dev-eks): deploy dev-35872ebb [skip ci] by @github-actions[bot] in #3778
  • Route auto to Fusion and harden AgentMail email channel by @markokraemer in #3779
  • chore(dev-eks): deploy gateway dev-b75cd588 [skip ci] by @github-actions[bot] in #3780
  • chore(dev-eks): deploy dev-b75cd588 [skip ci] by @github-actions[bot] in #3781
  • fix(web): gate first-project bootstrap to signup returns by @sutharjay1 in #3773
  • fix(cli): authenticate from sandbox agent env fallback by @markokraemer in #3784
  • fix(web): fix inline LaTeX rendering in markdown by @sutharjay1 in #3783
  • chore(dev-eks): deploy gateway dev-1dde0cdf [skip ci] by @github-actions[bot] in #3785
  • chore(dev-eks): deploy dev-1dde0cdf [skip ci] by @github-actions[bot] in #3786
  • fix(cli): show effective sandbox auth in host banner by @markokraemer in #3787
  • chore(dev-eks): deploy dev-6a5041da [skip ci] by @github-actions[bot] in #3788
  • Fix AgentMail email channel dispatch by @markokraemer in #3789
  • Make Kortix manifest drive agents by @markokraemer in #3782
  • chore(dev-eks): deploy dev-16a54ea6 [skip ci] by @github-actions[bot] in #3790
  • Fix Email inbox binding ownership by @markokraemer in #3792
  • chore(dev-eks): deploy dev-a634ac8b [skip ci] by @github-actions[bot] in #3794
  • fix(billing): point staging Stripe catalog at the main test account by @markokraemer in #3791
  • fix(web): move sandbox template picker inline into composer toolbar by @markokraemer in #3793
  • fix: pin email channel executor calls to session inbox by @markokraemer in #3795
  • chore(dev-eks): deploy gateway dev-a261620a [skip ci] by @github-actions[bot] in #3796
  • chore(dev-eks): deploy dev-4a456508 [skip ci] by @markokraemer in #3797
  • feat(web): attach pasted images (Cmd+V) in the composer by @markokraemer in #3798
  • fix: deliver email channel initial prompt by @markokraemer in #3799
  • chore(dev-eks): deploy dev-a8413fc2 [skip ci] by @github-actions[bot] in #3801
  • fix: default email connectors to profile inbox by @markokraemer in #3804
  • chore(dev-eks): deploy gateway dev-389e0b22 [skip ci] by @github-actions[bot] in #3806
  • chore(dev-eks): deploy dev-389e0b22 [skip ci] by @github-actions[bot] in #3807
  • fix(web): show session cost from token usage when step-finish cost is zero by @sutharjay1 in #3802
  • fix(web): render PDFs via native iframe in file viewer by @sutharjay1 in #3808
  • chore(dev-eks): deploy dev-513a619d [skip ci] by @github-actions[bot] in #3810
  • feat(gateway): LLM gateway → Customize, UI redesign, backend hardening by @markokraemer in #3811
  • chore(dev-eks): deploy gateway dev-e0bf1be2 [skip ci] by @github-actions[bot] in #3812
  • chore(dev-eks): deploy dev-a81b7e51 [skip ci] by @github-actions[bot] in #3813
  • chore(dev-eks): deploy dev-cec9f78a [skip ci] by @github-actions[bot] in #3816
  • fix(gateway): env-correct curl host + keyboard log viewer + session names by @markokraemer in #3815
  • chore(dev-eks): deploy dev-5f756e9c [skip ci] by @github-actions[bot] in #3818
  • chore(dev-eks): deploy dev-146da0db [skip ci] by @github-actions[bot] in #3819
  • chore(dev-eks): deploy dev-e456e0f1 [skip ci] by @github-actions[bot] in #3820
  • chore(dev-eks): deploy dev-b45f4068 [skip ci] by @github-actions[bot] in #3821
  • chore(dev-eks): deploy dev-e8239aca [skip ci] by @github-actions[bot] in #3822
  • chore(dev-eks): deploy dev-5019ba05 [skip ci] by @github-actions[bot] in #3824
  • feat(slack): DM the login prompt instead of a silent threaded ephemeral by @lillyboga in #3827
  • chore(dev-eks): deploy dev-a909aba7 [skip ci] by @github-actions[bot] in #3828
  • fix(platinum): respect auto-stop setting instead of hardcoded persistent (+ 15min for kortix dev) by @kubet in #3829
  • chore(dev-eks): deploy dev-9e7248dc [skip ci] by @github-actions[bot] in #3830
  • fix(warm-snapshot): honor the OFF toggle on a cold cache (admin switch silently re-enabled it) by @kubet in #3831
  • chore(dev-eks): deploy dev-23c0bb4d [skip ci] by @github-actions[bot] in #3832
  • fix(warm-template): admin toggle is the only control — default OFF/opt-in, honored from boot by @kubet in #3833
  • chore(dev-eks): deploy dev-b479169d [skip ci] by @github-actions[bot] in #3834
  • Add opt-in LLM gateway model routing by @markokraemer in #3826
  • chore(dev-eks): deploy gateway dev-cf7b7b1b [skip ci] by @github-actions[bot] in #3835
  • chore(dev-eks): deploy dev-cf7b7b1b [skip ci] by @github-actions[bot] in #3836
  • fix(api): mount LLM gateway via wire.ts (main index.ts crashes API on boot) by @lillyboga in #3838
  • chore(dev-eks): deploy dev-c405a602 [skip ci] by @github-actions[bot] in #3839
  • chore(dev-eks): deploy gateway dev-1abaf843 [skip ci] by @github-actions[bot] in #3840
  • chore(dev-eks): deploy dev-1abaf843 [skip ci] by @github-actions[bot] in #3841
  • feat(worktree): clickable port links + auto-aligned list table by @sutharjay1 in #3842
  • Remove project tab bar and consolidate session header actions by @sutharjay1 in #3845
  • fix(staging): align server auth env with runtime by @markokraemer in #3846
  • fix(web): prevent answered questions from permanently locking chat input by @sutharjay1 in #3837
  • fix(web): retry transient "opencode not ready" on first prompt send by @sutharjay1 in #3851
  • Make Kortix runtime marketplace-native by @markokraemer in #3850
  • chore(dev-eks): deploy gateway dev-fe50323e [skip ci] by @github-actions[bot] in #3854
  • chore(dev-eks): deploy dev-fe50323e [skip ci] by @github-actions[bot] in #3855
  • chore(dev-eks): deploy dev-8398a7d6 [skip ci] by @github-actions[bot] in #3856

Full Changelog: v0.9.77...v0.9.78