Skip to content

Version Packages - #801

Merged
chiragjn merged 1 commit into
mainfrom
changeset-release/main
Sep 18, 2026
Merged

chiragjn merged 1 commit into
mainfrom
changeset-release/main

Conversation

@github-actions

@github-actions github-actions Bot commented Sep 18, 2026

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@truefoundry/trueforge@0.2.0

Minor Changes

  • 8491843: Add a slot-driven agent Metrics tab with aggregate cards, time-range filtering, and Harness-backed line charts.

  • a70543b: Agent access is decided only by the Authorizer: standalone/OIDC lets everyone list and use agents and restricts update/delete to the creator; TrueFoundry uses external permissions api.

    You can read a session, turn, events, metrics, schedule, or its runs if you created it, or if you manage the named agent it is bound to. Creating still requires permission to use that agent. Only the creator can update, delete, or cancel a session, create a turn, or download sandbox files. Only the creator can update, delete, pause, resume, or run a schedule. An OIDC settings admin can no longer see other users' schedules.

  • 1222563: Make the Postgres app schema configurable via POSTGRES_SCHEMA (default trueforge) for search_path, migrations, and schema bootstrap.

  • 49164e7: Add optional mutual TLS for the HTTPS listener and schedule controller→server hop via TRUEFORGE_MTLS_ENABLED / TRUEFORGE_MTLS_CERTS_DIR. Off by default; independent of ServiceFoundry TRUEFOUNDRY_MTLS_*.

  • 9bfcdaa: Replace string creator fields (created_by / triggered_by) with a non-null created_by_subject JSON object on agent, session, schedule, and schedule_run. Ownership and list filters use tenant_id + created_by_subject.subject_id.

  • a3a1395: Adds first-class cron schedules for existing agents: persist them, manage them via /api/v1/schedules, validate cron policy at write time, and advance due runs through a single-dispatcher claim path.

  • 4b1aa55: Enforce external agent authorization on agent list, get, snippets, update, delete, and referenced-agent use.

  • 74eae6c: Remove pagination from list MCP servers across the API, SDK, and UI; return and search the complete configured MCP catalog client-side.

  • 0297727: Add context-management compaction triggers with model-aware defaults and migrate persisted legacy token thresholds.

  • ef316d2: Add optional OIDC_ALLOWED_EMAILS allowlist (exact addresses and * globs) so OIDC logins can be limited to approved emails or domains.

  • 4b120b8: Schedule runs now execute through one internal API call authenticated with TRUEFORGE_API_KEY. The server loads the saved run, schedule, and agent, then uses one agent-scoped token for turn resources in TrueFoundry mode.

  • 0453157: [truefoundry] Use ServiceFoundry dual vend-token response: authenticate as the agent for registry lookups, and as the user (with agent in act) for MCP authorize/auth status, gateway model api_key, and MCP invoke.

  • 2025cef: Store Postgres app tables and Kysely migration bookkeeping in a dedicated trueforge schema, with an automatic one-time move from public so existing installs keep their data and migration history.

  • 8f1a2dc: [truefoundry] Add a TrueFoundry-managed model registry. When TRUEFOUNDRY_SERVICEFOUNDRY_SERVER_URL is set, models are listed from the TrueFoundry ServiceFoundry server and turns are routed through the tenant's default AI Gateway with the caller's token. Mutually exclusive with OIDC. Supports internal mutual TLS to the ServiceFoundry server via TRUEFOUNDRY_MTLS_ENABLED/TRUEFOUNDRY_MTLS_CERTS_DIR.

  • 4137af1: Unify request-scoped RequestContext across standalone, OIDC, and TrueFoundry auth. /auth/me returns { data: { type, tenant_id, subject, roles } } (type is oidc-connected | default; OpenAPI/SDK regen deferred to CI).

  • e4c4b56: Add built-in web search/fetch system tools (Parallel via parallel-web), gated by AgentSpec.config.web_search (default off) and TrueFoundry-mode host env TRUEFOUNDRY_WEB_SEARCH_PROVIDER. New drafts seed web_search.enabled from /capabilities when a provider is configured.

Patch Changes

  • 12978ac: Accept x-tfg-mcp and x-tfg-skills in TrueFoundry mode: MCP servers and skills a request defines by name, taking precedence over the tenant registry for that request only. Both resolve for spec validation and turn execution; an unfiltered list still shows only configured resources, so request-scoped ones never appear in settings. Inline MCP credentials come from the manifest's own auth.headers, which lets a rotating token ride each turn.
  • a09f2b1: fix(local-sandbox): allow SRT proxy sockets on Linux
  • fad55d8: Persist turn ownership as active_executor_id on the turn row, mint plain ULID turn ids, and peer cancel via the DB owner instead of embedding the executor in the turn id.
  • d89b2ff: Persist zero-initialized metrics on agent sessions.
  • 172bf14: Add caller-scoped session metrics meters, charts, and chart-data under /internal/metrics via a server-owned ISessionMetricsStore.
  • d89b2ff: Fold session metrics totals on createTurn and terminal writes.
  • af40621: Add persisted agent.metadata on Postgres and SQLite; store updateAgent can patch manifest and/or metadata.
  • 1c67237: Add agent external_id (string | null on create) with a tenant-scoped partial unique index (Postgres and SQLite).
  • 38abb11: [truefoundry] Sync ServiceFoundry remote agents on create/update/delete and store the remote id in external_id. Filter listAgents by external_ids. Keep general ServiceFoundry HTTP at 10s and agent CRUD calls at 3s.
  • 49360bc: Drop unused agent.metadata; remote identity is stored in external_id.
  • 38abb11: Reject reserved agent names tfg and trueforge in create requests.
  • 7968f59: [truefoundry] Use injected db for TrueFoundryAgentStore advisory-lock transactions.
  • db37b6e: Sandbox skills: unify git and registry mounts onto .tfy-desired-skills.json (SkillMounter + skill_downloader), and always attach a mounter so existing skills are cleaned up.
  • 762ecc0: [truefoundry] TrueFoundry skills catalog: proxy GET /skills and /skills/versions from ServiceFoundry; settings skill writes return 424. SkillManifest is a type-discriminated oneOf of GitSkill | TrueFoundryRegistrySkill (type: truefoundry; name is FQN, display_name is short). AvailableSkill exposes optional metadata (display_name, repository_name, version). AgentSpec skill refs allow opaque FQN names, optional preload (registry), and max 50. UI draft skill mounts map catalog id to AgentSpec name.
  • fc38f74: AgentSpec skills: TrueFoundry save/turn resolve via SFY; standalone git validate/resolve on the skill store.
  • 6c12e59: Constrain ResourceName (NameSchema) to hyphen-only 2–64 and migrate existing "."/"_" names.
  • 584e815: Gate Save Agent (create) on tenant CREATE from list-permissions, keep Update Agent on agent MANAGE, unwrap { type, permissions }, and bump @truefoundry/assistant-ui-runtime to 0.1.39.
  • a60f4c2: Add GET /api/v1/agents/{agent_id}/code-snippets with TypeScript TrueForge SDK stream and non-stream samples.
  • 8c31eae: Persist top-level agent description and sync it to ServiceFoundry on create/update.
  • 502699b: Include token: "USER_API_KEY" in TypeScript agent code snippets when OIDC or TrueFoundry auth is enabled.
  • 4e72afc: Announce boot loading with a light-themed orb for contrast outside ThemeProvider.
  • f2ca338: Show a spinner on the app boot screens instead of "Loading application…" text.
  • 3539da2: Add brand.mode (icon-title | icon-only | logo) so hosts pick chrome look first; name always labels the mark, and resolveBrandChrome maps mode to layout chrome.
  • 4c522e2: Bump @truefoundry/assistant-ui-runtime to 0.1.30.
  • 4c522e2: Bump @truefoundry/assistant-ui-runtime to 0.1.31.
  • fd1bf7f: Bump @truefoundry/assistant-ui-runtime to 0.1.38 for assistant completion timestamps and keep-alive turn streams on session switch.
  • 4be60e7: Bump @truefoundry/assistant-ui-runtime to 0.1.41 for turn-scoped sandbox artifact downloads and to stop stale session history from merging after a session switch.
  • 940c4e5: Prefer MCP Python SDK 2.0 snake_case tool annotation fields, with camelCase fallback for older SDKs, without changing destructive-tool detection behavior.
  • 55cc5e7: Add a dedicated controller entry point (dist/controller-main.js) that runs the periodic control loops (schedule dispatch) as a single-replica process for distributed mode (STANDALONE=false). It targets the server API via the new SERVER_URL env (default http://localhost:$PORT). Standalone mode keeps running the controller inside the server process.
  • ffcd60d: [truefoundry] Forward inbound x-tfy-metadata from create-turn to TrueFoundry-mode gateway calls, merged with harness session, turn, and agent ids.
  • 629b6e9: Show Created by (avatar + name) on Agents and Schedules tables when creator info is present.
  • 2dcb3a0: Add created_by_me to list sessions and list schedules so callers can restrict results to resources they created (excluding managed-agent visibility).
  • 58940a7: Report a Daytona key that cannot register snapshots as missing key permissions (403) instead of an invalid API key (422), and name the grants to add in the Daytona dashboard.
  • c40129c: Cap Daytona status-refresh calls at 1 minute so a stalled provider cannot hang request handlers.
  • b32d2be: Filter chat history to sessions created by the current user, and bump @truefoundry/assistant-ui-runtime to 0.1.34.
  • a9430bd: Accept optional base_url on agent code-snippets (FE public host); fall back to request origin + PUBLIC_BASE_URL path.
  • 9f3b4cd: Make optional VITE_BASE_PATH apply to both the UI public path and API/auth URLs (defaults to /).
  • a655537: Update published dependency ranges (AI SDK, Hono, MCP SDK, Redis, assistant-ui, and related packages).
  • 4e3b5be: [truefoundry] Forward session, turn, and agent context as x-tfy-metadata on TrueFoundry-mode model and MCP gateway calls.
  • 4b120b8: [truefoundry] Use agent-scoped tokens for saved-agent turns in TrueFoundry mode while inline turns keep using the caller token.
  • 349e420: Add internal POST /api/internal/import/agents and POST /sessions (snapshot) plus GET /checkpoint?tenant_id= for SF→TrueForge backfill. Import requires the service API key. Named session import links a local agent when present (or SF agent_id / dummy). Drafts use agent_spec; when SF also sends name/id those go in metadata. Checkpoint is per-tenant min created_at of imported sessions.
  • 5ccac3d: Update /healthz to return JSON status and package version
  • 4111287: Add POST /api/internal/list-permissions via Authorizer.getPermissions (owner grants for schedules/sessions; agents include USE, with TrueFoundry agents mapped from SFY USE_AGENT/MANAGE_AGENT/DELETE_AGENT).
  • a000b47: List sessions accepts metadata[key]=value query params (OpenAPI deepObject) for exact metadata containment filtering. Bare JSON-string metadata query params are rejected. Metadata keys are limited to 32 characters and cannot include [] or whitespace so they do not collide with the bracket query form.
  • 4e7b67a: Check live per-user MCP authentication before loading tools in the agent builder.
  • 551b6a8: Default MCP tool approval to @destructive only. Selecting Other/read-only tools clears approval; selecting destructive tools keeps it on. Migrate mounts still carrying the old @write+@destructive default.
  • 80d5bee: Move resolveInvokeHeaders onto IMcpServerWithAuthStore (not IMcpServerStore) so DB backends stay CRUD-only and turn/MCP invoke paths take the request-scoped with-auth store for configured headers and TrueFoundry gateway Bearer.
  • c83145a: Abort remote MCP HTTP response bodies over 50MB (MCP_TOOL_CALL_MAX_RESPONSE_BYTES) so oversized tool results cannot OOM the process.
  • 5ae0781: [truefoundry] TrueFoundry MCP OAuth authorize redirect uses the tenant controlPlaneURL from the session instead of the process PUBLIC_BASE_URL origin.
  • 9501536: [truefoundry] Make MCPServerManifest a type-discriminated oneOf of RemoteMCPServerManifest and TrueFoundryMCPServerManifest.
  • 541d65d: Split MCP server persistence (IMcpServerStore) from Connect UX auth (IMcpServerWithAuthStore / McpServerWithAuthStore) so DB backends stay CRUD + OAuth client columns while authorize/status/revoke compose in via a token store.
  • fba6129: Require Node.js 22.14+ (better-sqlite3 v13 is built for Node-API 10 and SIGSEGVs on 22.13 and below).
  • 0ec8dc6: Omit session total_cost_in_usd when cost is unavailable (instead of defaulting to 0), matching turn metrics.
  • dc2151f: Paginate GET /api/v1/agents with limit / page_token and a pagination envelope; optional agent_name filters by case-insensitive substring. Agents library uses rows-per-page and prev/next against the token-paginated API. Schedule create and the schedules listing agent filter use a searchable agent combobox backed by the same filtered list API.
  • 2b6c566: Paginate GET /api/v1/schedules/{schedule_id}/runs with limit / page_token and a pagination envelope.
  • c221ac6: Fail Postgres connects after 10s and log idle pool errors so a backend restart cannot crash the process.
  • 7dc8757: Log while connecting to Postgres and Redis on startup, and skip access logs for /assets/.
  • c4078c6: Apply Postgres TLS via Pool ssl like servicefoundry (POSTGRES_SSL_MODE + cert/key/CA paths), not sslmode on the URL.
  • c65b813: Apply POSTGRES_SSL_MODE as sslmode on the Postgres connection URL.
  • a1af95d: Add public GET /api/v1/mcp-servers/{name} returning the chat projection with live per-user auth_status.
  • 9846d6d: Add Python TrueForge SDK stream and non-stream samples to agent Use in Code snippets, merging deltas with is_event_delta / merge_event_delta.
  • f4fb4bd: Accept DATABASE_URL for hosted mode so managed Postgres (e.g. Railway) can be wired without discrete POSTGRES_* vars.
  • a36ffaf: Namespace all Redis keys and pub/sub channels under tfg: so TrueForge can share a Redis instance without colliding with other apps.
  • 555bef0: Allow sandbox artifact downloads to use paths relative to the sandbox working directory.
  • 461166e: [truefoundry] Use agent name for ServiceFoundry remote agent description so save succeeds when instructions are empty.
  • e307f15: Derive the UI public prefix from the pathname of PUBLIC_BASE_URL at process start so one published frontend can run behind any path-stripping proxy.
  • a37cdea: Add NOT NULL agent_id on schedule (backfilled from agent), FK to agent(id) ON DELETE CASCADE (replacing the (tenant_id, agent_name) FK), and (tenant_id, agent_id) index for per-agent listing.
  • 3bc2ed8: List schedules is token-paginated (limit / page_token) and filters by comma-separated agent_names.
  • feb94aa: Add GET /api/v1/schedules/{schedule_id}/runs to list a schedule's runs (newest scheduled_for first), with the same creator-or-admin access as other schedule routes.
  • 8e64757: Add POST /api/v1/schedules/runs to trigger an immediate schedule run
  • bb8d3d3: Persist optional reason on schedule runs when hand-off fails. Exposed on ScheduleRun responses as nullable string.
  • 4ced8ef: Dispatch schedule runs through the session/turn API: get-or-create a session keyed by run id, then create a turn only when that session has none.
  • 38ce068: Add tenant-unique optional session external_id, Sessions.getOrCreateByExternalId, and an idempotent POST /internal/sessions/get-or-create-by-external-id endpoint and SDK method.
  • b654052: Add caller-owned session metadata (Record<string, string> with size limits) on create, update, and read. Persist as a new session.metadata jsonb column; leave session custom unchanged.
  • 4a91f47: Allow renaming sessions via PATCH /api/v1/sessions/{session_id} with an optional title (trimmed, 1–50 chars).
  • 11865b4: Add optional session source. Persist as nullable JSONB with a list filter index; expose on session responses and list via source_type / source_id. Schedule dispatch sets source on create; public create/update do not accept it.
  • 46fadce: [truefoundry] Point-lookup ServiceFoundry model integrations by provider account and model name, and fetch the full catalog in one unpaginated request.
  • b601db8: Simplify agent Use In Code snippets to create/stream/print/map/merge events.
  • 5b33ab6: [truefoundry] TrueFoundry skills: use caller JWT for catalog/validate; never agent vend tokens.
  • 3c1d544: Fetch MCP servers and gateway installations in parallel.
  • 3d385af: Cap SQLite leftover WAL at 64 MiB after checkpoint so a full disk cannot grow the WAL unbounded.
  • 5e68fa4: [truefoundry] TrueFoundry-mode /api/v1/auth/login redirects to PUBLIC_BASE_URL origin + caller return_to (platform /signin/external?redirectPath=…).
  • 1c16780: [truefoundry] TrueFoundry MCP: live SFY auth status on single-server GET and mid-turn authorize gating for every auth mode.
  • 4c1260e: [truefoundry] Wire TrueFoundry MCP authorize, status, and delete through ServiceFoundry; stub list auth_status; gate oauth2 invoke mid-turn with authRequired; paginate MCP server lists. UI treats SFY consent code/error on the FE landing like local DCR success/failure.
  • 32bf7d6: [truefoundry] TrueFoundry MCP invoke headers are owned by the MCP store (resolveInvokeHeaders), so gateway Bearer comes from the request-scoped store rather than being threaded through turn/tools APIs.
  • 185dc04: Per-MCP-server request headers via x-tfg-mcp-headers, merged into the invoke headers for the named server. Lets a caller that authenticates as one identity give each MCP server the identity it should actually see.
  • ac091cc: [truefoundry] TrueFoundry mode: shared Daytona sandbox via TRUEFOUNDRY_SANDBOX_* env and settings-server snapshot (lru-cache TTL).
  • 5bc13d0: [truefoundry] Pass TrueFoundry agents metadata through TrueFoundry agent import.
  • 44f9cbe: [truefoundry] TrueFoundry mode: env-backed Daytona | truefoundry sandbox via TRUEFOUNDRY_SANDBOX_* (static SETTINGS JSON). Settings OpenAPI stays Daytona-only (SandboxProviderManifest); truefoundry is store-internal (StoredSandboxProviderManifest).
  • c77e7df: [truefoundry] TrueFoundry mode: optional TRUEFOUNDRY_TENANT_ID_TO_ALLOWED_MODEL_PROVIDER_ACCOUNTS JSON map of tenant id → provider account names to limit which virtual providers are listed per tenant.
  • 4e72afc: Use an animated thinking orb for application boot and server initialization.
  • f175245: [truefoundry] Add TrueFoundry-managed MCP list/get (SFY registry, gateway proxy URL, create/update 424).
  • a655537: Add a turn.update event schema with paused/running status and action_required_on_events.
  • 1b5b674: Add a host-overridable user avatar slot with initials and display-name chrome across every built-in layout, wired to the current authenticated frontend user.
  • 5d72138: Keep npx @truefoundry/trueforge working on native Windows: import Kysely migrations with pathToFileURL, and keep sandbox guest paths POSIX. Source development stays Unix/WSL; CI also runs unit and SQLite store tests on Windows.
  • Updated dependencies [354991d]
  • Updated dependencies [fad55d8]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [d89b2ff]
  • Updated dependencies [648273b]
  • Updated dependencies [172bf14]
  • Updated dependencies [d89b2ff]
  • Updated dependencies [db37b6e]
  • Updated dependencies [762ecc0]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [fc38f74]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [01ee934]
  • Updated dependencies [a70543b]
  • Updated dependencies [940c4e5]
  • Updated dependencies [2dcb3a0]
  • Updated dependencies [9bfcdaa]
  • Updated dependencies [c40129c]
  • Updated dependencies [a655537]
  • Updated dependencies [4111287]
  • Updated dependencies [a000b47]
  • Updated dependencies [551b6a8]
  • Updated dependencies [2cb51a5]
  • Updated dependencies [74eae6c]
  • Updated dependencies [c83145a]
  • Updated dependencies [9501536]
  • Updated dependencies [0297727]
  • Updated dependencies [0ec8dc6]
  • Updated dependencies [dc2151f]
  • Updated dependencies [134dcb9]
  • Updated dependencies [bf5233d]
  • Updated dependencies [a36ffaf]
  • Updated dependencies [52987a7]
  • Updated dependencies [38ce068]
  • Updated dependencies [b654052]
  • Updated dependencies [11865b4]
  • Updated dependencies [4c1260e]
  • Updated dependencies [44f9cbe]
  • Updated dependencies [ba79ce5]
  • Updated dependencies [8f1a2dc]
  • Updated dependencies [afe816e]
  • Updated dependencies [f175245]
  • Updated dependencies [a5f220f]
  • Updated dependencies [a655537]
  • Updated dependencies [e4c4b56]
  • Updated dependencies [5d72138]
    • @truefoundry/trueforge-core@0.2.0
    • @truefoundry/trueforge-sdk@0.2.0

@truefoundry/trueforge-core@0.2.0

Minor Changes

  • a70543b: Agent access is decided only by the Authorizer: standalone/OIDC lets everyone list and use agents and restricts update/delete to the creator; TrueFoundry uses external permissions api.

    You can read a session, turn, events, metrics, schedule, or its runs if you created it, or if you manage the named agent it is bound to. Creating still requires permission to use that agent. Only the creator can update, delete, or cancel a session, create a turn, or download sandbox files. Only the creator can update, delete, pause, resume, or run a schedule. An OIDC settings admin can no longer see other users' schedules.

  • 9bfcdaa: Replace string creator fields (created_by / triggered_by) with a non-null created_by_subject JSON object on agent, session, schedule, and schedule_run. Ownership and list filters use tenant_id + created_by_subject.subject_id.

  • 0297727: Add context-management compaction triggers with model-aware defaults and migrate persisted legacy token thresholds.

  • 8f1a2dc: [truefoundry] Add a TrueFoundry-managed model registry. When TRUEFOUNDRY_SERVICEFOUNDRY_SERVER_URL is set, models are listed from the TrueFoundry ServiceFoundry server and turns are routed through the tenant's default AI Gateway with the caller's token. Mutually exclusive with OIDC. Supports internal mutual TLS to the ServiceFoundry server via TRUEFOUNDRY_MTLS_ENABLED/TRUEFOUNDRY_MTLS_CERTS_DIR.

  • e4c4b56: Add built-in web search/fetch system tools (Parallel via parallel-web), gated by AgentSpec.config.web_search (default off) and TrueFoundry-mode host env TRUEFOUNDRY_WEB_SEARCH_PROVIDER. New drafts seed web_search.enabled from /capabilities when a provider is configured.

Patch Changes

  • 354991d: Prefer OpenUI for inline charts over sandbox plot images when OpenUI is available.
  • fad55d8: Persist turn ownership as active_executor_id on the turn row, mint plain ULID turn ids, and peer cancel via the DB owner instead of embedding the executor in the turn id.
  • d89b2ff: Persist zero-initialized metrics on agent sessions.
  • 172bf14: Add caller-scoped session metrics meters, charts, and chart-data under /internal/metrics via a server-owned ISessionMetricsStore.
  • d89b2ff: Fold session metrics totals on createTurn and terminal writes.
  • db37b6e: Sandbox skills: unify git and registry mounts onto .tfy-desired-skills.json (SkillMounter + skill_downloader), and always attach a mounter so existing skills are cleaned up.
  • 762ecc0: [truefoundry] TrueFoundry skills catalog: proxy GET /skills and /skills/versions from ServiceFoundry; settings skill writes return 424. SkillManifest is a type-discriminated oneOf of GitSkill | TrueFoundryRegistrySkill (type: truefoundry; name is FQN, display_name is short). AvailableSkill exposes optional metadata (display_name, repository_name, version). AgentSpec skill refs allow opaque FQN names, optional preload (registry), and max 50. UI draft skill mounts map catalog id to AgentSpec name.
  • fc38f74: AgentSpec skills: TrueFoundry save/turn resolve via SFY; standalone git validate/resolve on the skill store.
  • 01ee934: Abort timed-out remote MCP client.connect() so the handshake does not leak sockets.
  • 940c4e5: Prefer MCP Python SDK 2.0 snake_case tool annotation fields, with camelCase fallback for older SDKs, without changing destructive-tool detection behavior.
  • c40129c: Cap Daytona status-refresh calls at 1 minute so a stalled provider cannot hang request handlers.
  • a655537: Update published dependency ranges (AI SDK, Hono, MCP SDK, Redis, assistant-ui, and related packages).
  • 4111287: Add POST /api/internal/list-permissions via Authorizer.getPermissions (owner grants for schedules/sessions; agents include USE, with TrueFoundry agents mapped from SFY USE_AGENT/MANAGE_AGENT/DELETE_AGENT).
  • a000b47: List sessions accepts metadata[key]=value query params (OpenAPI deepObject) for exact metadata containment filtering. Bare JSON-string metadata query params are rejected. Metadata keys are limited to 32 characters and cannot include [] or whitespace so they do not collide with the bracket query form.
  • 551b6a8: Default MCP tool approval to @destructive only. Selecting Other/read-only tools clears approval; selecting destructive tools keeps it on. Migrate mounts still carrying the old @write+@destructive default.
  • 2cb51a5: Raise remote MCP undici bodyTimeout to 30m so idle SSE streams are not killed at 5m; warn on Body Timeout and stringify other transport errors.
  • c83145a: Abort remote MCP HTTP response bodies over 50MB (MCP_TOOL_CALL_MAX_RESPONSE_BYTES) so oversized tool results cannot OOM the process.
  • 0ec8dc6: Omit session total_cost_in_usd when cost is unavailable (instead of defaulting to 0), matching turn metrics.
  • bf5233d: Fail Redis request-reply waits when the executor heartbeat expires during polling instead of waiting until replyTimeoutMs.
  • a36ffaf: Namespace all Redis keys and pub/sub channels under tfg: so TrueForge can share a Redis instance without colliding with other apps.
  • 38ce068: Add tenant-unique optional session external_id, Sessions.getOrCreateByExternalId, and an idempotent POST /internal/sessions/get-or-create-by-external-id endpoint and SDK method.
  • b654052: Add caller-owned session metadata (Record<string, string> with size limits) on create, update, and read. Persist as a new session.metadata jsonb column; leave session custom unchanged.
  • 11865b4: Add optional session source. Persist as nullable JSONB with a list filter index; expose on session responses and list via source_type / source_id. Schedule dispatch sets source on create; public create/update do not accept it.
  • 44f9cbe: [truefoundry] TrueFoundry mode: env-backed Daytona | truefoundry sandbox via TRUEFOUNDRY_SANDBOX_* (static SETTINGS JSON). Settings OpenAPI stays Daytona-only (SandboxProviderManifest); truefoundry is store-internal (StoredSandboxProviderManifest).
  • ba79ce5: [truefoundry] Add TFY sandbox agent instructions to discover the working directory via pwd before writing files.
  • afe816e: [truefoundry] Default cache_control to { type: 'ephemeral' } for truefoundry provider model calls (overridable via request body).
  • a5f220f: Dedupe LLM resolve within a turn so parent and sub-agents sharing a model name call deps.llm once.
  • a655537: Add a turn.update event schema with paused/running status and action_required_on_events.
  • 5d72138: Keep npx @truefoundry/trueforge working on native Windows: import Kysely migrations with pathToFileURL, and keep sandbox guest paths POSIX. Source development stays Unix/WSL; CI also runs unit and SQLite store tests on Windows.

@truefoundry/trueforge-sdk@0.2.0

Minor Changes

  • 74eae6c: Remove pagination from list MCP servers across the API, SDK, and UI; return and search the complete configured MCP catalog client-side.

Patch Changes

  • 648273b: Regenerate SDK from updated OpenAPI spec.
  • 648273b: Regenerate SDK from updated OpenAPI spec.
  • 648273b: Regenerate SDK from updated OpenAPI spec.
  • 648273b: Regenerate SDK from updated OpenAPI spec.
  • 648273b: Regenerate SDK from updated OpenAPI spec.
  • 648273b: Regenerate SDK from updated OpenAPI spec.
  • 648273b: Regenerate SDK from updated OpenAPI spec.
  • 648273b: Regenerate SDK from updated OpenAPI spec.
  • 648273b: Regenerate SDK from updated OpenAPI spec.
  • 648273b: Regenerate SDK from updated OpenAPI spec.
  • 648273b: Regenerate SDK from updated OpenAPI spec.
  • 648273b: Regenerate SDK from updated OpenAPI spec.
  • 648273b: Regenerate SDK from updated OpenAPI spec.
  • 2dcb3a0: Add created_by_me to list sessions and list schedules so callers can restrict results to resources they created (excluding managed-agent visibility).
  • a000b47: List sessions accepts metadata[key]=value query params (OpenAPI deepObject) for exact metadata containment filtering. Bare JSON-string metadata query params are rejected. Metadata keys are limited to 32 characters and cannot include [] or whitespace so they do not collide with the bracket query form.
  • 9501536: [truefoundry] Make MCPServerManifest a type-discriminated oneOf of RemoteMCPServerManifest and TrueFoundryMCPServerManifest.
  • 0ec8dc6: Omit session total_cost_in_usd when cost is unavailable (instead of defaulting to 0), matching turn metrics.
  • dc2151f: Paginate GET /api/v1/agents with limit / page_token and a pagination envelope; optional agent_name filters by case-insensitive substring. Agents library uses rows-per-page and prev/next against the token-paginated API. Schedule create and the schedules listing agent filter use a searchable agent combobox backed by the same filtered list API.
  • 134dcb9: Python SDK is_event_delta / merge_event_delta (PyPI version locksteps with this package on Version Packages).
  • 52987a7: Add internal.agents.getCodeSnippets API under the new SDK internal namespace.
  • 38ce068: Add tenant-unique optional session external_id, Sessions.getOrCreateByExternalId, and an idempotent POST /internal/sessions/get-or-create-by-external-id endpoint and SDK method.
  • b654052: Add caller-owned session metadata (Record<string, string> with size limits) on create, update, and read. Persist as a new session.metadata jsonb column; leave session custom unchanged.
  • 11865b4: Add optional session source. Persist as nullable JSONB with a list filter index; expose on session responses and list via source_type / source_id. Schedule dispatch sets source on create; public create/update do not accept it.
  • 4c1260e: [truefoundry] Wire TrueFoundry MCP authorize, status, and delete through ServiceFoundry; stub list auth_status; gate oauth2 invoke mid-turn with authRequired; paginate MCP server lists. UI treats SFY consent code/error on the FE landing like local DCR success/failure.
  • 44f9cbe: [truefoundry] TrueFoundry mode: env-backed Daytona | truefoundry sandbox via TRUEFOUNDRY_SANDBOX_* (static SETTINGS JSON). Settings OpenAPI stays Daytona-only (SandboxProviderManifest); truefoundry is store-internal (StoredSandboxProviderManifest).
  • f175245: [truefoundry] Add TrueFoundry-managed MCP list/get (SFY registry, gateway proxy URL, create/update 424).

@truefoundry/trueforge-ui@0.3.0

Minor Changes

  • 51127c4: Gate config.webSearch on host capabilities: New Chat auto-enables with no toggle; New Agent / edit show a Runtime Config switch (default on when absent).

  • d269b01: Add a live advanced agent configuration drawer with shared model, runtime, MCP tool, skill, and Save Agent editors.

  • e74e953: Keep agent configuration visible on the left in full-width builder layouts, add a responsive instructions and initial-messages drawer with explicit save, make mobile config overlays closable, save the current instruction draft, align builder chrome, and preserve open widgets across chat runtime changes.

  • a189482: Add routed agent detail pages with lazy Overview, Sessions, and Use In Code tabs backed by the optional AgentSessionsServer port and built-in TrueForge adapter.

  • 8491843: Add a slot-driven agent Metrics tab with aggregate cards, time-range filtering, and Harness-backed line charts.

  • e3973a5: Open agent model settings inline and support typed custom model parameters.

  • a189482: Add the agent library Sessions tab and an all-user Sessions sidebar page (including drafts) with agent and time filters, shareable query params, and the same two-pane timeline. Library agent details keep the active tab in ?tab= so opening an agent lands on Overview.

  • 555bef0: Add a composer approval-nav banner (overridable ApprovalNavBanner slot) that counts pending tool approvals, pauses the composer, and jumps/expands/flashes the focused approval — including nested subagent tools.

  • 3539da2: Add brand.mode (icon-title | icon-only | logo) so hosts pick chrome look first; name always labels the mark, and resolveBrandChrome maps mode to layout chrome.

  • 16feb29: Add customActionRenderers so hosts can pause the composer on client-side tools with their own UI and resume via onSubmit(content).

  • 74eae6c: Remove pagination from list MCP servers across the API, SDK, and UI; return and search the complete configured MCP catalog client-side.

  • bc11131: MCP selectors (composer + agent config) infinite-scroll through listMcp pages via DraftCatalogProvider.

  • 0297727: Add context-management compaction triggers with model-aware defaults and migrate persisted legacy token thresholds.

  • 860e322: Split New Chat vs New Agent: simple chat keeps the Connectors/Skills picker; New Agent keeps Agent Config + Save Agent. Session metadata is_create_agent drives resume from the sessions browser.

  • 12b02ff: Open Runtime Config in a right-side drawer and label scheduled sessions consistently.

  • 0cc59f8: Wire schedule test runs and show last five run status chips on the schedules table. Bump @truefoundry/assistant-ui-runtime to 0.1.25.

  • 0cc59f8: Add global Schedules page at /schedules with listing, popover-based filters, and create/edit drawer wired to the schedule API. New schedules save as paused, open a Test Schedule review with MCP connect status, and support Activate Anyway. List schedules uses server token pagination and multi-agent filters. Agents shows a Schedules count column (warning when any are paused) loaded via a batched list for on-screen agents. Add Table primitives with client-side and token pagination plus portal DropdownMenu so row actions are not clipped by overflow. Export a reusable popover select with single- and multi-select modes.

  • 788636d: Sidebar layout is a permanent icon+label nav rail (no expand/collapse). Recent chats are hidden from the sidebar and mobile drawer; the drawer shows nav actions only.

  • 04d2ee6: Add a sidebarText semantic token for sidebar nav labels, refresh trueforge sidebar colors, set trueforge base radius to 0.375rem (6px), and set sidebar / thread-list control corners to 0.75rem (12px).

    Expose design-system Button (Button.Primary / .Secondary / .Ghost / .Destructive). ButtonVariant is now primary | secondary | ghost | destructive (default renamed to primary; outline removed — use secondary). Button sizes are large (default) and small (icon for icon-only).

  • 7e25f68: Open Save Agent in a right-side drawer with only the agent name while preserving configuration from Agent Config.

  • 8f1a2dc: [truefoundry] Add a TrueFoundry-managed model registry. When TRUEFOUNDRY_SERVICEFOUNDRY_SERVER_URL is set, models are listed from the TrueFoundry ServiceFoundry server and turns are routed through the tenant's default AI Gateway with the caller's token. Mutually exclusive with OIDC. Supports internal mutual TLS to the ServiceFoundry server via TRUEFOUNDRY_MTLS_ENABLED/TRUEFOUNDRY_MTLS_CERTS_DIR.

  • f8b5eeb: Add optional resource permissions and gate agent, schedule, and session mutations.

Patch Changes

  • 51127c4: Open Save Agent drawer on Clone with {name}-clone prefilled; stay on Agents list after save.
  • d29717b: Clarify MCP API key entry: Bearer placeholders, auto-prefix Authorization values, and a header-name hint on the form.
  • a273ed8: Preload Monaco when the UI shell mounts so tool request/response editors open faster.
  • 347a7e7: Refresh composer and composer-trigger styling: 0.75rem composer corners with a light-theme primary-token gradient hairline (faded top → solid bottom) and a neutral hairline in dark, an icon-only tools trigger in place of the "Tools" caption and count badge, the shared agent-2 glyph on the agents-library trigger, and squared-off chrome-action geometry on the save-agent trigger. Also fixes agent-2.svg to use currentColor so it is legible in dark mode.
  • 2a0ae4c: Show connector catalog logos in the composer Tools picker, matching the Connectors settings page.
  • 2a0ae4c: Align AttachmentCard with assistant-ui's default square thumbnail, filename tooltip, and overlay remove control.
  • 762ecc0: [truefoundry] TrueFoundry skills catalog: proxy GET /skills and /skills/versions from ServiceFoundry; settings skill writes return 424. SkillManifest is a type-discriminated oneOf of GitSkill | TrueFoundryRegistrySkill (type: truefoundry; name is FQN, display_name is short). AvailableSkill exposes optional metadata (display_name, repository_name, version). AgentSpec skill refs allow opaque FQN names, optional preload (registry), and max 50. UI draft skill mounts map catalog id to AgentSpec name.
  • a189482: Load agent Use In Code snippets through client.internal.agents.getCodeSnippets instead of a raw client.fetch.
  • 26a9b80: Add an agent-scoped Schedules tab and route library schedule actions into it.
  • 1b8a3f7: Add documentation links to the code snippets view and shell actions.
  • 584e815: Gate Save Agent (create) on tenant CREATE from list-permissions, keep Update Agent on agent MANAGE, unwrap { type, permissions }, and bump @truefoundry/assistant-ui-runtime to 0.1.39.
  • d2fdfc9: Add agent-filtered chat history labels, preserve Try Agent and explicit history-filter intent in URL query state while resolving backend IDs, reset active chats when users change filters, keep Try Agent highlighted as chat, and route fresh agent builders at /build-agent before their session URL is assigned.
  • 8296c52: Make Runtime Config, MCP Servers, and Skills blocks clickable with a hover action icon, explain disabled sandbox and large-tool-response toggles in tooltips, and replace boxed capability cards with divider-separated columns.
  • 8c31eae: Round-trip agent description through save/load and show it in the library and agent details.
  • 0e01eba: Polish metric charts with sharp dot-free lines, distinct series colors, and a quieter Metrics tab background.
  • c4ee138: Agent list and details overflow menu: Edit, Clone ({name}-copy via saveAgent), Manage Schedules, and Delete (wired through harness deleteAgent).
  • 629b6e9: Paginate the Agent Sessions list on scroll instead of a "Load more" button, showing a skeleton row while the next page loads.
  • c4ee138: AgentSessions list pane uses a quieter surface, and the resize grip stays gray until hover, press, or focus.
  • 629b6e9: Fix Agents library table scrolling when rows exceed the viewport
  • 26a9b80: Allow sending user messages that contain attachments without text.
  • d7136a1: Avatar fallbacks use a light primary-button gradient in light mode, a solid primary gradient in dark mode, and show a single initial character.
  • 4e72afc: Announce boot loading with a light-themed orb for contrast outside ThemeProvider.
  • 26a9b80: Add an empty state and Build Agent action to the schedule agent picker.
  • 4c522e2: Bump @truefoundry/assistant-ui-runtime to 0.1.30.
  • 4c522e2: Bump @truefoundry/assistant-ui-runtime to 0.1.31.
  • fd1bf7f: Bump @truefoundry/assistant-ui-runtime to 0.1.38 for assistant completion timestamps and keep-alive turn streams on session switch.
  • 4be60e7: Bump @truefoundry/assistant-ui-runtime to 0.1.41 for turn-scoped sandbox artifact downloads and to stop stale session history from merging after a session switch.
  • d719155: Keep composer catalogs cached when starting a new chat.
  • b11cfc3: Wire remote chat session deletion and improve the history delete action styling.
  • fe6a14b: Improve session timelines with sub-agent wait states, grouped point-event markers, clean linear ticks, and readable summary durations.
  • c4ee138: Agent Code (SyntaxHighlighter / AgentCodeBlock) copy control uses the bordered secondary button, and a trailing source newline no longer paints an empty last line while Copy still keeps the exact source.
  • c0359ca: Strip a trailing slash from the base_url passed to agent code-snippets.
  • 57f1fc2: Improve compact agent building with model configuration bottom sheets, provider-first model selection, and a contextual composer actions menu.
  • e3973a5: Show the selected connector and skill count beside the composer tools icon.
  • 26a9b80: Hide model selection in the Build Agent composer and correct concurrent sub-agent timeline bars.
  • 629b6e9: Show Created by (avatar + name) on Agents and Schedules tables when creator info is present.
  • 26a9b80: Require direct switch clicks in the Runtime Config sidebar.
  • 531f0ce: Keep close-on-click dropdown menus and bottom sheets open when a click or drag lands on their own scrollbar, so scrolling a long menu no longer dismisses it before a choice is made.
  • 1ec19f0: Replace API key replacement with connector configuration editing from the connector list and details view.
  • c4ee138: Agents, Sessions, and Schedules empty states use a shared centered empty-box screen with title and supporting copy.
  • b482cdd: Show the four primary agent metrics in a compact summary-card layout.
  • b32d2be: Filter chat history to sessions created by the current user, and bump @truefoundry/assistant-ui-runtime to 0.1.34.
  • a9430bd: Accept optional base_url on agent code-snippets (FE public host); fall back to request origin + PUBLIC_BASE_URL path.
  • 3ca4e2e: fixed the button component icon and padding, delete conflicting local prettier.json in trueforge-ui package
  • a655537: Update published dependency ranges (AI SDK, Hono, MCP SDK, Redis, assistant-ui, and related packages).
  • 54e4ec4: Keep Settings hidden until the server explicitly enables it.
  • 0cc59f8: Use Google Sans as the default trueforge theme font and load it from Google Fonts when styles are injected.
  • 64ca089: Hide Clear chat while the thread is fresh (New Chat, New Agent, and Try Agent) since there is nothing to clear.
  • 4c522e2: Hide session cost metrics when cost data is unavailable.
  • 4e7b67a: Check live per-user MCP authentication before loading tools in the agent builder.
  • aa4be44: Open markdown links in assistant messages in a new tab
  • 551b6a8: Default MCP tool approval to @destructive only. Selecting Other/read-only tools clears approval; selecting destructive tools keeps it on. Migrate mounts still carrying the old @write+@destructive default.
  • 64ca089: Add a book-icon preload toggle and dashed add button to Agent Config MCP server pills.
  • d269b01: Improve MCP and skill selectors with consistent search sizing, explicit MCP selection controls, grouped tool summaries, and removable MCP chips.
  • 64ca089: Revamp the MCP tools selector modal with focus rows, connect empty state, and grouped selected-tools summary.
  • 551b6a8: Let Build Agent pick which MCP tools require human approval, saved as require_approval_for_tools on the agent spec, and make unchecked tool checkboxes legible in both tool selectors. The agent Overview tab now expands each attached MCP server into its tools, with read/write/destructive labels and approval state.
  • d2fdfc9: Section MCP tools in the Build Agent selector by read-only, others, and destructive annotations, with a read-only enable-all toggle.
  • d7136a1: Assistant message loading indicator uses ThinkingOrb with left-to-right shimmering Working... text.
  • ea86853: Move the agent metrics time range filter into the active Metrics tab row.
  • bc11131: New Chat enables sandbox on the live draft agent config when capabilities report sandbox as available.
  • d5b479d: Clamp optional sessions/schedules chrome and unregister /sessions, /schedules, and /library/:agentId when those server ports are omitted, matching the Settings Lego gate.
  • b316430: Slide SideDrawer/BottomSheet and add a light fade+scale enter on dropdowns and popup cards.
  • dc2151f: Paginate GET /api/v1/agents with limit / page_token and a pagination envelope; optional agent_name filters by case-insensitive substring. Agents library uses rows-per-page and prev/next against the token-paginated API. Schedule create and the schedules listing agent filter use a searchable agent combobox backed by the same filtered list API.
  • 26a9b80: Show agent names without an icon in the Agents table.
  • d7015fd: show mcp server tool name on tool approval
  • d7136a1: Flip PopoverSelect menus when the preferred side lacks viewport room (e.g. table rows-per-page).
  • 629b6e9: Portal PopoverSelect menus so table page-size and other selects are not clipped by overflow parents.
  • 98ab384: Preserve the active agent draft when returning to Build Agent from another page.
  • 04460fb: Prevent the schedule search field from shrinking and clipping its placeholder.
  • ef278dd: Stop highlighting New Chat while trying a named agent, and clear the Try Agent URL and history filter when starting a new chat.
  • 079f832: Show an optional tooltip when sandbox artifact downloads are read-only.
  • 4cea38c: Show draft and named sessions in the history panel, exclude agent-builder sessions, cache session pages, and switch history sessions in place without remounting the chat runtime.
  • fa0730b: Reduce the agent code snippet font size to match its surrounding controls.
  • 2284d3b: Polish the MCP tool selector controls, loading state, and API error messages.
  • c4ee138: Resume Chat / Resume Agent building opens in a new tab when routed (/sessions/:id + square-arrow-out-up-right); without a router it keeps the in-shell resume fallback.
  • 788636d: Open the create schedule drawer when Agents "+ Schedule" navigates with isNew=true, then clear the flag from the URL.
  • e3973a5: Group schedule recurrence controls and display the cadence in an attached summary footer.
  • d7136a1: Stop draining the full agents catalog on Schedules mount; load agents only when the filter opens (infinite scroll).
  • f2ca338: Show active/paused schedule counts in the Agents library, pin selected MCPs when reopening the tools modal, and align paused schedule badge colors.
  • ffbb239: Add a hover ellipsis delete menu with confirmation dialog on Sessions list rows.
  • 333230d: Improve Agent Sessions with a resizable divider, accurate turn grouping, optional cost display, and reliable timeline tooltips with sub-agent details. Simplify schedule recurrence and default new schedules to the local timezone.
  • d7136a1: Settings sidebar uses a subtle primary tint for the selected section instead of a solid fill.
  • c4ee138: Unregister the /settings route when Settings chrome is unavailable (no catalog or capabilities.settings.enabled is false), matching the sidebar Settings button gate.
  • ceeb56f: Show turn and duration statistics alongside the featured agent metric cards.
  • 531f0ce: Cap the skill version menu height and scroll it, so skills with many versions no longer run off screen. While it is open, scrolling is confined to the menu.
  • 77c5c33: [truefoundry] Show TrueFoundry skill repositories and versions in skill pickers, load version choices lazily, preserve the chosen version FQN when attaching skills, keep picker ordering stable while open, and add registry-only preload controls to selected skill pills.
  • c4ee138: Split New Chat and New Agent draft preference stores. New Chat remembers only model (+ reasoning), skills, and MCP; New Agent keeps the full seed including runtime config.
  • 4c1260e: [truefoundry] Wire TrueFoundry MCP authorize, status, and delete through ServiceFoundry; stub list auth_status; gate oauth2 invoke mid-turn with authRequired; paginate MCP server lists. UI treats SFY consent code/error on the FE landing like local DCR success/failure.
  • 4e72afc: Use an animated thinking orb for application boot and server initialization.
  • c4ee138: Per-turn Tokens in Agent Sessions shows a keyboard-accessible Input / Output / Cached tooltip (Input is uncached).
  • a655537: Add a turn.update event schema with paused/running status and action_required_on_events.
  • bc11131: Share a single PageHeader across chat and list chrome so title size/height stay consistent, and drop decorative title icons.
  • 1b5b674: Add a host-overridable user avatar slot with initials and display-name chrome across every built-in layout, wired to the current authenticated frontend user.
  • 26a9b80: Show weekly schedule days before the time controls.
  • 1b8a3f7: Match the Build Agent configuration panel width to the agent playground and identify sessions created by schedule runs.
  • adaf532: Widen the sidebar rail and its nav buttons so labels like "Build Agent" have more breathing room.
  • 5d72138: Keep npx @truefoundry/trueforge working on native Windows: import Kysely migrations with pathToFileURL, and keep sandbox guest paths POSIX. Source development stays Unix/WSL; CI also runs unit and SQLite store tests on Windows.
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [648273b]
  • Updated dependencies [2dcb3a0]
  • Updated dependencies [a000b47]
  • Updated dependencies [74eae6c]
  • Updated dependencies [9501536]
  • Updated dependencies [0ec8dc6]
  • Updated dependencies [dc2151f]
  • Updated dependencies [134dcb9]
  • Updated dependencies [52987a7]
  • Updated dependencies [38ce068]
  • Updated dependencies [b654052]
  • Updated dependencies [11865b4]
  • Updated dependencies [4c1260e]
  • Updated dependencies [44f9cbe]
  • Updated dependencies [f175245]
    • @truefoundry/trueforge-sdk@0.2.0

Note

Low Risk
Diff is version metadata, changelogs, and deleted changesets only—no server or UI logic changes in this PR.

Overview
This is the Changesets “Version Packages” merge: it exits RC pre-release and cuts stable npm/PyPI versions without new application code in the diff.

Version bumps: @truefoundry/trueforge and @truefoundry/trueforge-core / SDK → 0.2.0 (from 0.2.0-rc.*); @truefoundry/trueforge-ui0.3.0 (from 0.3.0-rc.11); Python trueforge_sdk0.2.0. OpenAPI info.version moves from 0.2.0-rc.14 to 0.2.0, and JS/Python SDK client headers use the stable version strings.

Release housekeeping: Removes the consumed .changeset entries (including .changeset/pre/ and pre.json exit mode), and rolls accumulated changeset notes into each package CHANGELOG.md. Merging triggers automated publish of the versioned packages described in the PR body (auth/RBAC, schedules, TrueFoundry integrations, UI work, etc.)—those behaviors landed in prior PRs; this PR only packages and documents them.

Reviewed by Cursor Bugbot for commit c7618dd. Bugbot is set up for automated code reviews on this repo. Configure here.

@github-actions github-actions Bot changed the title Version Packages (rc) Version Packages Sep 18, 2026
@github-actions
github-actions Bot force-pushed the changeset-release/main branch from e60a90e to c7618dd Compare September 18, 2026 15:21
@chiragjn
chiragjn enabled auto-merge (squash) September 18, 2026 15:47
@chiragjn
chiragjn merged commit 8b1d98e into main Sep 18, 2026
14 checks passed
@chiragjn
chiragjn deleted the changeset-release/main branch September 18, 2026 15:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant