@runtypelabs/cli 2.59.7 → 2.59.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1817,6 +1817,7 @@ object({
1817
1817
  test: boolean().nullable().meta({ deprecated: true }).describe("DEPRECATED: a derived alias of origin, kept for one release — read origin instead. True when the run came from the dashboard, i.e. origin === \"dashboard\"; NULL exactly when origin is NULL. It is never derived from storeResults, which defaults to false across the whole flow lane and which an API caller sets for its own privacy reasons: reading it as \"test\" labelled production runs as tests. A run whose header predates origin therefore reads NULL rather than claiming either answer."),
1818
1818
  via: runViaSchema.nullish().describe("How the run started, for a Via column. Forward-only for schedule, api key, cli, mcp and eval detail: a header written before those stamps reads null, or falls back to the coarse origin/surface facts when they alone answer it. A label is a snapshot or a lookup and never authority; mcp, cli and sdk are self-declared by the client."),
1819
1819
  externalAgent: runExternalAgentSchema.nullish().describe("Set when an external agent (A2A or runtype-stream) answered the turn: the protocol, declared framework and endpoint host stamped on the run header when it was invoked. Null on any other run, and on an external-agent run whose header predates the stamp. A repointed agent keeps one agentId, so this is what tells two of its runs apart."),
1820
+ model: string().nullish().describe("Model of the run's first model call (served model when reported, otherwise requested model); null when no model call recorded one."),
1820
1821
  stopReason: string().nullish().describe("Stop reason from the terminal frame."),
1821
1822
  iterations: number().nullish().describe("Loop iterations from the terminal frame."),
1822
1823
  inputPreview: string().nullish().describe(`The run's first user message, secret-scrubbed and cut to 160 characters, so a list can say what a run was asked to do without reading content. Absent means no input text is recorded for this run, which is not an empty message: the span store holds no run-level input at all, so a run with no control-plane row (a flow leg, a storeResults:false run) has none.`),
@@ -1840,6 +1841,7 @@ object({
1840
1841
  * description and the docs cannot disagree about what a compact row carries.
1841
1842
  */
1842
1843
  const RUN_LIST_FULL_ONLY_FIELDS = [
1844
+ "model",
1843
1845
  "stopReason",
1844
1846
  "iterations",
1845
1847
  "inputPreview",
@@ -1893,7 +1895,7 @@ const repeatable = () => union([string(), array(string())]);
1893
1895
  const runListQuerySchema = object({
1894
1896
  agentId: repeatable().optional().describe("Filter by agent id; repeat for a set."),
1895
1897
  flowId: repeatable().optional().describe("Filter by flow id; repeat for a set."),
1896
- conversationId: string().optional().describe("Filter by conversation id."),
1898
+ conversationId: repeatable().optional().describe(`Filter by conversation id; repeat for a set (at most 100 per request).`),
1897
1899
  surfaceId: string().optional().describe("Filter by surface id."),
1898
1900
  surfaceType: string().optional().describe("Filter by surface family."),
1899
1901
  recordId: string().optional().describe("Filter by record id."),
@@ -2929,15 +2931,6 @@ const RECORD_READING_STEP_TYPES = /* @__PURE__ */ new Set([
2929
2931
  ]);
2930
2932
  [...RECORD_WRITING_STEP_TYPES, ...RECORD_READING_STEP_TYPES];
2931
2933
  /**
2932
- * True when `event` was produced by `ownerExecutionId` rather than by a nested
2933
- * execution relayed onto the same stream. An unknown owner (empty transcript,
2934
- * or a caller with no id to compare against) admits every frame, so this can
2935
- * never silently drop a stream it cannot classify.
2936
- */
2937
- function isOwnExecutionFrame(event, ownerExecutionId) {
2938
- return ownerExecutionId === void 0 || event.executionId === ownerExecutionId;
2939
- }
2940
- /**
2941
2934
  * Agent-initiated API key requests. An agent files a REQUEST with its existing credential; nothing is minted yet.
2942
2935
  * A human approves and can only NARROW the grant; the agent redeems with its PKCE verifier.
2943
2936
  * The key is minted AT REDEMPTION and returned exactly once, so an approved-but-unclaimed request never leaves a live key on disk.
@@ -3787,39 +3780,57 @@ const coverageInstructionSchema = object({
3787
3780
  polarity: _enum(["should", "should_not"])
3788
3781
  });
3789
3782
  object({ instructions: array(coverageInstructionSchema) });
3790
- object({
3791
- enableAgentSkills: boolean(),
3792
- enableDashboardAssistant: boolean(),
3793
- enableDecisionModelsDashboard: boolean(),
3794
- dashboardAssistantModel: string(),
3795
- enableChromeSurface: boolean(),
3796
- enableRuntypeApps: boolean(),
3797
- enableAgentKeyRequests: boolean(),
3798
- enableRuntown: boolean(),
3799
- enableMassiveWebRender: boolean(),
3800
- enableVoice: boolean(),
3801
- enableWorkspaceModel: boolean(),
3802
- enableEndUserUsageAnalytics: boolean(),
3803
- enableSelfServeOauthClients: boolean(),
3804
- workspaceModelReady: boolean(),
3805
- workspaceModelEligible: boolean(),
3806
- enableOnboardingIntentGate: boolean(),
3807
- enableCanvasOnboarding: boolean(),
3808
- enableWorkbench: boolean(),
3809
- modelCreditPromoMultiplier: number().min(0).max(1).optional(),
3810
- externalTelemetryAllowed: boolean().optional(),
3811
- simulationsAvailable: boolean().optional(),
3812
- enableDelegateToRuntype: boolean().optional(),
3813
- enableDelegateToOtto: boolean().optional(),
3814
- signalsConfigured: boolean().optional(),
3815
- enableCliSurface: boolean().optional(),
3816
- enableCliSurfacePublish: boolean().optional(),
3817
- enableCliSurfaceInstallDomain: boolean().optional(),
3818
- enableMcpSurfaceSignIn: boolean().optional(),
3819
- enableMcpSurfaceDeviceGrant: boolean().optional(),
3820
- enableMcpSurfaceOobApprovals: boolean().optional(),
3821
- enableMcpSurfaceCustomerIdp: boolean().optional()
3822
- });
3783
+ function flagship(flag, schema) {
3784
+ return {
3785
+ flag,
3786
+ schema
3787
+ };
3788
+ }
3789
+ function computed(schema) {
3790
+ return { schema };
3791
+ }
3792
+ /**
3793
+ * Every field of `GET /v1/users/profile` → `features`, and how the API evaluates it.
3794
+ * The response schema, the API's evaluation loop and the dashboard's `useProfileFeatureFlag` keys all derive from it.
3795
+ * @see apps/api/src/lib/profile-features.ts for the evaluators of `computed` fields.
3796
+ */
3797
+ const USER_PROFILE_FEATURES = {
3798
+ enableAgentSkills: computed(boolean()),
3799
+ enableDashboardAssistant: flagship("enable-dashboard-assistant", boolean()),
3800
+ enableDecisionModelsDashboard: flagship("enable-decision-models-dashboard", boolean()),
3801
+ dashboardAssistantModel: computed(string()),
3802
+ enableChromeSurface: flagship("CHROME_SURFACE", boolean()),
3803
+ enableRuntypeApps: computed(boolean()),
3804
+ enableAgentKeyRequests: computed(boolean()),
3805
+ enableRuntown: computed(boolean()),
3806
+ enableMassiveWebRender: computed(boolean()),
3807
+ enableVoice: flagship("enable-voice", boolean()),
3808
+ enableOpenAiLiveVoice: computed(boolean().optional()),
3809
+ enableWorkspaceModel: computed(boolean()),
3810
+ enableEndUserUsageAnalytics: computed(boolean()),
3811
+ enableSelfServeOauthClients: computed(boolean()),
3812
+ workspaceModelReady: computed(boolean()),
3813
+ workspaceModelEligible: computed(boolean()),
3814
+ enableOnboardingIntentGate: flagship("enable-onboarding-intent-gate", boolean()),
3815
+ enableCanvasOnboarding: flagship("enable-canvas-onboarding", boolean()),
3816
+ enableWorkbench: flagship("enable-workbench", boolean()),
3817
+ modelCreditPromoMultiplier: computed(number().min(0).max(1).optional()),
3818
+ externalTelemetryAllowed: computed(boolean().optional()),
3819
+ simulationsAvailable: computed(boolean().optional()),
3820
+ enableDelegateToRuntype: computed(boolean().optional()),
3821
+ enableDelegateToOtto: computed(boolean().optional()),
3822
+ signalsConfigured: computed(boolean().optional()),
3823
+ enableCliSurface: computed(boolean().optional()),
3824
+ enableCliSurfacePublish: computed(boolean().optional()),
3825
+ enableCliSurfaceInstallDomain: computed(boolean().optional()),
3826
+ enableAgUiSurface: computed(boolean().optional()),
3827
+ enableClaudeManagedAgents: computed(boolean().optional()),
3828
+ enableMcpSurfaceSignIn: computed(boolean().optional()),
3829
+ enableMcpSurfaceDeviceGrant: computed(boolean().optional()),
3830
+ enableMcpSurfaceOobApprovals: computed(boolean().optional()),
3831
+ enableMcpSurfaceCustomerIdp: computed(boolean().optional())
3832
+ };
3833
+ object(Object.fromEntries(Object.entries(USER_PROFILE_FEATURES).map(([key, entry]) => [key, entry.schema])));
3823
3834
  const SLACK_REQUIRED_BOT_SCOPES = [
3824
3835
  "channels:history",
3825
3836
  "channels:read",
@@ -5711,5 +5722,5 @@ const runProductStatsBucketSchema = object({
5711
5722
  failed: count("Of those, the runs that read as failed in `/v1/runs` (the same predicate as `status=failed`).")
5712
5723
  });
5713
5724
  object({ byProductId: record(string(), runProductStatsBucketSchema).describe("One entry per named product the caller owns, a product with no flow or agent reading zero. Each sums `/v1/runs/stats` for its flows and for its agents, read one family at a time.") });
5714
- export { selectAccountId as S, isProductEventName as _, PRODUCT_EVENT_DEFAULT_NEXT_POLL_MS as a, pkceCodeChallengeSchema as b, TRACE_QUERY_DIMENSIONS as c, apiKeyFileSlug as d, apiKeyFileUsageHint as f, isOwnExecutionFrame as g, isNonAIProvider as h, PRODUCT_EVENT_CURSOR_PATTERN as i, TRACE_SLICE_SPAN_KINDS as l, isForbiddenRequestedPermission as m, API_KEY_REQUEST_MAX_TTL_SECONDS as n, PRODUCT_EVENT_MAX_WAIT_MS as o, buildDashboardUrl as p, API_KEY_REQUEST_POLL_INTERVAL_MS as r, PRODUCT_EVENT_NAMES as s, API_KEY_FILE_FORMAT as t, apiKeyFileSchema as u, managedDeploymentCreateRequestSchema as v, pkceCodeVerifierSchema as x, neutralizeCsvFormula as y };
5725
+ export { managedDeploymentCreateRequestSchema as _, PRODUCT_EVENT_DEFAULT_NEXT_POLL_MS as a, pkceCodeVerifierSchema as b, TRACE_QUERY_DIMENSIONS as c, apiKeyFileSlug as d, apiKeyFileUsageHint as f, isProductEventName as g, isNonAIProvider as h, PRODUCT_EVENT_CURSOR_PATTERN as i, TRACE_SLICE_SPAN_KINDS as l, isForbiddenRequestedPermission as m, API_KEY_REQUEST_MAX_TTL_SECONDS as n, PRODUCT_EVENT_MAX_WAIT_MS as o, buildDashboardUrl as p, API_KEY_REQUEST_POLL_INTERVAL_MS as r, PRODUCT_EVENT_NAMES as s, API_KEY_FILE_FORMAT as t, apiKeyFileSchema as u, neutralizeCsvFormula as v, selectAccountId as x, pkceCodeChallengeSchema as y };
5715
5726
 
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
+ import { n as addExecutionInputOptions, r as resolveExecutionInput, t as runExecution } from "./chunk-DrxtMway.js";
2
3
  import { a as printJson } from "./chunk-CcFCyqbB.js";
3
- import { n as addExecutionInputOptions, r as resolveExecutionInput, t as runExecution } from "./chunk-D9EgwoD_.js";
4
4
  import { t as buildAgentVersionSelector } from "./chunk-BxNJgYbE.js";
5
5
  import { Command } from "commander";
6
6
  import chalk from "chalk";
@@ -1,13 +1,13 @@
1
1
  #!/usr/bin/env node
2
2
  import { t as isTTY } from "./index.js";
3
3
  import { DataList, EntityCard, MutationResult, React, render, useEffect, useState } from "./chunk-CoAWdSiE.js";
4
- import { p as buildDashboardUrl } from "./chunk-B9jVbuiZ.js";
4
+ import { p as buildDashboardUrl } from "./chunk-2KHCZ1oX.js";
5
5
  import { r as createCliClient, s as getDashboardUrl } from "./chunk-BW2fg46T.js";
6
6
  import { n as ensureAuth } from "./chunk-CJraEBVd.js";
7
7
  import { a as printJson, i as printDetail, n as buildListParams, r as getTotalCount, s as printNextCursorHint } from "./chunk-CcFCyqbB.js";
8
8
  import { t as readJsonFile } from "./chunk-DGv7X9S_.js";
9
9
  import { c as buildEntityPullCommand, d as productPullFpoCommand, r as PRODUCT_ENSURE_SPEC, s as buildEntityEnsureCommand, u as productEnsureFpoCommand } from "./chunk-BirUxTtH.js";
10
- import { t as getCurrentAccountId } from "./chunk-DT8f26ha.js";
10
+ import { t as getCurrentAccountId } from "./chunk-Df2DiijP.js";
11
11
  import { n as validateQuickStartUrl, t as createQuickStartProduct } from "./chunk-i7DwkvvD.js";
12
12
  import { Command } from "commander";
13
13
  import chalk from "chalk";
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { t as ModelPicker } from "./chunk-CrlqIfmb.js";
3
- import { MarathonApp } from "./chunk-J7og7tcU.js";
3
+ import { MarathonApp } from "./chunk-BtpXwOCu.js";
4
4
  import { useEffect, useRef, useState } from "react";
5
5
  import { Box, Text, useApp, useInput, useStdout } from "ink";
6
6
  import { theme } from "@runtypelabs/ink-components";
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import { b as CredentialStore, t as isTTY } from "./index.js";
3
- import { p as buildDashboardUrl } from "./chunk-B9jVbuiZ.js";
3
+ import { p as buildDashboardUrl } from "./chunk-2KHCZ1oX.js";
4
4
  import { i as getApiUrl, l as getRuntimeApiKey, n as ApiKeyValidationUnavailableError, r as createCliClient, s as getDashboardUrl, t as ApiKeyManager } from "./chunk-BW2fg46T.js";
5
5
  import { n as ensureAuth } from "./chunk-CJraEBVd.js";
6
6
  import { a as printJson } from "./chunk-CcFCyqbB.js";
7
- import { t as getCurrentAccountId } from "./chunk-DT8f26ha.js";
7
+ import { t as getCurrentAccountId } from "./chunk-Df2DiijP.js";
8
8
  import { Command } from "commander";
9
9
  import chalk from "chalk";
10
10
  import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
@@ -130,7 +130,7 @@ object({
130
130
  reason: string().nullable().optional(),
131
131
  revealed: array(string()).optional()
132
132
  });
133
- // ../shared/dist/chunk-acmbThRp.mjs
133
+ // ../shared/dist/chunk-D4QpY-jR.mjs
134
134
  /** Every change kind a scrub report can name; a leaf so the data-source contracts reach it without the scrubber. */
135
135
  const METADATA_SCRUB_CHANGE_KIND_NAMES = [
136
136
  "url_redirected",
@@ -184,7 +184,7 @@ const productKindSchema = _enum([
184
184
  "external",
185
185
  "spec_only"
186
186
  ]);
187
- // ../shared/dist/chunk-CfE8pNWb.mjs
187
+ // ../shared/dist/chunk-CTJGiut0.mjs
188
188
  /** The manifest file at the root of a candidate's source bundle. */
189
189
  const CANDIDATE_MANIFEST_FILENAME = "runtype-candidate.json";
190
190
  const candidateRuntimeSchema = _enum([
@@ -341,7 +341,9 @@ const datasetSpecInputSchema = object({
341
341
  const datasetSpecSchema = object({
342
342
  rowCounts: record(string(), number().int().nonnegative()),
343
343
  seed: number().int().nonnegative(),
344
- generatorVersion: number().int().positive()
344
+ generatorVersion: number().int().positive(),
345
+ /** The model that wrote the values at the last build; absent before a build that recorded one. */
346
+ model: string().min(1).max(255).optional()
345
347
  });
346
348
  const datasetScrubChangeKindSchema = _enum(METADATA_SCRUB_CHANGE_KIND_NAMES);
347
349
  /** One change import made to a permission metadata export, as `scrubPermissionMetadata` reports it. */
@@ -3228,6 +3230,7 @@ ddl: object({
3228
3230
  }))
3229
3231
  }) });
3230
3232
  simulationPageSchema(simulationSyntheticDatasetSchema);
3233
+ object({ model: string().min(1).max(255).optional() });
3231
3234
  simulationSyntheticDatasetResponseSchema.extend({
3232
3235
  outcome: _enum([
3233
3236
  "built",
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
- import { p as buildDashboardUrl } from "./chunk-B9jVbuiZ.js";
3
- import { a as treeLogPathForStateFile, i as materializeAtHead, n as readSessionEventLog, r as loadTreeLog, t as getActiveDeploySandboxPreviewUrl } from "./chunk-wTGNGQeY.js";
4
- import { t as getCurrentAccountId } from "./chunk-DT8f26ha.js";
2
+ import { p as buildDashboardUrl } from "./chunk-2KHCZ1oX.js";
3
+ import { a as treeLogPathForStateFile, i as materializeAtHead, n as readSessionEventLog, r as loadTreeLog, t as getActiveDeploySandboxPreviewUrl } from "./chunk-XwPlN7Hv.js";
4
+ import { t as getCurrentAccountId } from "./chunk-Df2DiijP.js";
5
5
  import { t as ModelPicker } from "./chunk-CrlqIfmb.js";
6
6
  import chalk from "chalk";
7
7
  import * as fs$1 from "node:fs";
@@ -2,12 +2,12 @@
2
2
  import { t as isTTY } from "./index.js";
3
3
  import { ConfirmPrompt, DataList, EntityCard, MutationResult, React, render, useEffect, useState } from "./chunk-CoAWdSiE.js";
4
4
  import "./chunk-daI6hXN9.js";
5
+ import { n as addExecutionInputOptions, r as resolveExecutionInput, t as runExecution } from "./chunk-DrxtMway.js";
5
6
  import { r as createCliClient } from "./chunk-BW2fg46T.js";
6
7
  import { n as ensureAuth } from "./chunk-CJraEBVd.js";
7
8
  import { a as printJson, i as printDetail, n as buildListParams, r as getTotalCount, s as printNextCursorHint } from "./chunk-CcFCyqbB.js";
8
- import { taskCommand } from "./chunk-wTGNGQeY.js";
9
+ import { taskCommand } from "./chunk-XwPlN7Hv.js";
9
10
  import { t as readJsonFile } from "./chunk-DGv7X9S_.js";
10
- import { n as addExecutionInputOptions, r as resolveExecutionInput, t as runExecution } from "./chunk-D9EgwoD_.js";
11
11
  import { f as writePulledDefinition, o as agentSkillsCommand } from "./chunk-BirUxTtH.js";
12
12
  import { r as describeAgentExportFailure, t as agentReleaseSelectorParams } from "./chunk-87nRnNRG.js";
13
13
  import { t as buildAgentVersionSelector } from "./chunk-BxNJgYbE.js";
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { v as managedDeploymentCreateRequestSchema } from "./chunk-B9jVbuiZ.js";
2
+ import { _ as managedDeploymentCreateRequestSchema } from "./chunk-2KHCZ1oX.js";
3
3
  import { r as createCliClient } from "./chunk-BW2fg46T.js";
4
4
  import { n as ensureAuth } from "./chunk-CJraEBVd.js";
5
5
  import { a as printJson } from "./chunk-CcFCyqbB.js";
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { b as CredentialStore } from "./index.js";
3
- import { S as selectAccountId, p as buildDashboardUrl } from "./chunk-B9jVbuiZ.js";
3
+ import { p as buildDashboardUrl, x as selectAccountId } from "./chunk-2KHCZ1oX.js";
4
4
  import { s as getDashboardUrl, t as ApiKeyManager } from "./chunk-BW2fg46T.js";
5
5
  import { n as browserLogin, r as orgMismatchWarning } from "./chunk-BnWhIqW1.js";
6
6
  import { n as validateQuickStartUrl, t as createQuickStartProduct } from "./chunk-i7DwkvvD.js";
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { t as isTTY } from "./index.js";
3
3
  import { ConfirmPrompt, DataList, EntityCard, MutationResult, React, render, useEffect, useState } from "./chunk-CoAWdSiE.js";
4
- import { y as neutralizeCsvFormula } from "./chunk-B9jVbuiZ.js";
4
+ import { v as neutralizeCsvFormula } from "./chunk-2KHCZ1oX.js";
5
5
  import { r as createCliClient } from "./chunk-BW2fg46T.js";
6
6
  import { n as ensureAuth } from "./chunk-CJraEBVd.js";
7
7
  import { a as printJson, r as getTotalCount, s as printNextCursorHint } from "./chunk-CcFCyqbB.js";
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { c as TRACE_QUERY_DIMENSIONS, l as TRACE_SLICE_SPAN_KINDS } from "./chunk-B9jVbuiZ.js";
2
+ import { c as TRACE_QUERY_DIMENSIONS, l as TRACE_SLICE_SPAN_KINDS } from "./chunk-2KHCZ1oX.js";
3
3
  import { r as createCliClient } from "./chunk-BW2fg46T.js";
4
4
  import { n as ensureAuth } from "./chunk-CJraEBVd.js";
5
5
  import { a as printJson } from "./chunk-CcFCyqbB.js";
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { _ as isProductEventName, a as PRODUCT_EVENT_DEFAULT_NEXT_POLL_MS, i as PRODUCT_EVENT_CURSOR_PATTERN, o as PRODUCT_EVENT_MAX_WAIT_MS, s as PRODUCT_EVENT_NAMES } from "./chunk-B9jVbuiZ.js";
2
+ import { a as PRODUCT_EVENT_DEFAULT_NEXT_POLL_MS, g as isProductEventName, i as PRODUCT_EVENT_CURSOR_PATTERN, o as PRODUCT_EVENT_MAX_WAIT_MS, s as PRODUCT_EVENT_NAMES } from "./chunk-2KHCZ1oX.js";
3
3
  import { i as getApiUrl, r as createCliClient } from "./chunk-BW2fg46T.js";
4
4
  import { n as ensureAuth } from "./chunk-CJraEBVd.js";
5
5
  import { Command } from "commander";
@@ -1,11 +1,11 @@
1
1
  #!/usr/bin/env node
2
2
  import { t as isTTY } from "./index.js";
3
3
  import { ConfirmPrompt, DataList, EntityCard, MutationResult, React, render, useEffect, useState } from "./chunk-CoAWdSiE.js";
4
+ import { n as addExecutionInputOptions, r as resolveExecutionInput, t as runExecution } from "./chunk-DrxtMway.js";
4
5
  import { r as createCliClient } from "./chunk-BW2fg46T.js";
5
6
  import { n as ensureAuth } from "./chunk-CJraEBVd.js";
6
7
  import { a as printJson, i as printDetail, o as printList, r as getTotalCount, s as printNextCursorHint } from "./chunk-CcFCyqbB.js";
7
8
  import { t as readJsonFile } from "./chunk-DGv7X9S_.js";
8
- import { n as addExecutionInputOptions, r as resolveExecutionInput, t as runExecution } from "./chunk-D9EgwoD_.js";
9
9
  import { c as buildEntityPullCommand, n as FLOW_ENSURE_SPEC, s as buildEntityEnsureCommand } from "./chunk-BirUxTtH.js";
10
10
  import { Command } from "commander";
11
11
  import chalk from "chalk";
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import { b as CredentialStore } from "./index.js";
3
- import { S as selectAccountId } from "./chunk-B9jVbuiZ.js";
3
+ import { x as selectAccountId } from "./chunk-2KHCZ1oX.js";
4
4
  import { t as ApiKeyManager } from "./chunk-BW2fg46T.js";
5
5
  // src/lib/account-context.ts
6
6
  /**
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { P as getRuntypeHomeDir, b as CredentialStore, t as isTTY } from "./index.js";
3
3
  import { ConfirmPrompt, DataList, EntityCard, MutationResult, React, Text, mutationResultProps, render, useEffect, useMutationState, useState } from "./chunk-CoAWdSiE.js";
4
- import { b as pkceCodeChallengeSchema, d as apiKeyFileSlug, f as apiKeyFileUsageHint, m as isForbiddenRequestedPermission, n as API_KEY_REQUEST_MAX_TTL_SECONDS, r as API_KEY_REQUEST_POLL_INTERVAL_MS, t as API_KEY_FILE_FORMAT, u as apiKeyFileSchema, x as pkceCodeVerifierSchema } from "./chunk-B9jVbuiZ.js";
4
+ import { b as pkceCodeVerifierSchema, d as apiKeyFileSlug, f as apiKeyFileUsageHint, m as isForbiddenRequestedPermission, n as API_KEY_REQUEST_MAX_TTL_SECONDS, r as API_KEY_REQUEST_POLL_INTERVAL_MS, t as API_KEY_FILE_FORMAT, u as apiKeyFileSchema, y as pkceCodeChallengeSchema } from "./chunk-2KHCZ1oX.js";
5
5
  import { i as getApiUrl, r as createCliClient } from "./chunk-BW2fg46T.js";
6
6
  import { n as ensureAuth } from "./chunk-CJraEBVd.js";
7
7
  import { a as printJson, i as printDetail, r as getTotalCount } from "./chunk-CcFCyqbB.js";
@@ -1,11 +1,20 @@
1
1
  #!/usr/bin/env node
2
- import { g as isOwnExecutionFrame } from "./chunk-B9jVbuiZ.js";
3
2
  import { r as createCliClient } from "./chunk-BW2fg46T.js";
4
3
  import { n as ensureAuth } from "./chunk-CJraEBVd.js";
5
4
  import { a as printJson } from "./chunk-CcFCyqbB.js";
6
5
  import chalk from "chalk";
7
6
  import { readFileSync } from "fs";
8
7
  import { RuntypeApiError, parseFinalBuffer, parseSSEChunk } from "@runtypelabs/sdk";
8
+ // ../shared/dist/unified-execution-scope.mjs
9
+ /**
10
+ * True when `event` was produced by `ownerExecutionId` rather than by a nested
11
+ * execution relayed onto the same stream. An unknown owner (empty transcript,
12
+ * or a caller with no id to compare against) admits every frame, so this can
13
+ * never silently drop a stream it cannot classify.
14
+ */
15
+ function isOwnExecutionFrame(event, ownerExecutionId) {
16
+ return ownerExecutionId === void 0 || event.executionId === ownerExecutionId;
17
+ }
9
18
  // src/lib/execution-input.ts
10
19
  function addExecutionInputOptions(command) {
11
20
  return command.option("--inputs <json>", "Typed input variables as a JSON object").option("--inputs-file <file|->", "Read input variables from a JSON object file or stdin").option("-v, --variable <key=value>", "Set a string variable (repeatable)", collectVariables, []).option("--messages-file <file|->", "Read structured messages from a JSON array file or stdin");
@@ -71,7 +71,7 @@ const initCommand = new Command("init").description("Set up Runtype CLI with gui
71
71
  console.error(message);
72
72
  process.exit(1);
73
73
  }
74
- const { InitApp } = await import("./chunk-dJOtWsqj.js");
74
+ const { InitApp } = await import("./chunk-CStXkNVU.js");
75
75
  const { waitUntilExit } = render(React.createElement(InitApp, {
76
76
  apiUrl: options.apiUrl,
77
77
  onComplete: () => {}
@@ -2,7 +2,7 @@
2
2
  import { C as setMarathonTitle, F as getCliVersion, L as __require, N as getMarathonStateDir, P as getRuntypeHomeDir } from "./index.js";
3
3
  import { React, enterAltScreen, loadUi, render } from "./chunk-CoAWdSiE.js";
4
4
  import { _ as inferModelCreator, b as getBuiltInToolById, v as formatSystemToolId, x as isToolCompatibleWithModel, y as getAllBuiltInTools } from "./chunk-daI6hXN9.js";
5
- import { h as isNonAIProvider } from "./chunk-B9jVbuiZ.js";
5
+ import { h as isNonAIProvider } from "./chunk-2KHCZ1oX.js";
6
6
  import { c as getDevPlanOverride, i as getApiUrl, s as getDashboardUrl } from "./chunk-BW2fg46T.js";
7
7
  import { n as ensureAuth } from "./chunk-CJraEBVd.js";
8
8
  import { a as printJson } from "./chunk-CcFCyqbB.js";
@@ -3768,8 +3768,8 @@ async function taskAction(agent, options) {
3768
3768
  }
3769
3769
  await loadUi();
3770
3770
  const [{ MarathonApp }, { MarathonStartupShell }, { DEFAULT_MODELS: DEFAULT_STARTUP_MODELS }] = await Promise.all([
3771
- import("./chunk-J7og7tcU.js"),
3772
- import("./chunk-ncO2uQf4.js"),
3771
+ import("./chunk-BtpXwOCu.js"),
3772
+ import("./chunk-BWWqiBjS.js"),
3773
3773
  import("./chunk-CrlqIfmb.js").then((n) => n.n)
3774
3774
  ]);
3775
3775
  const useStartupShell = canUseMarathonStartupShell(options);
package/dist/index.js CHANGED
@@ -71,7 +71,7 @@ const COMMAND_REGISTRY = [
71
71
  name: "init",
72
72
  term: "init [options]",
73
73
  description: "Set up Runtype CLI with guided onboarding",
74
- load: async () => (await import("./chunk-BiaJpE8S.js")).initCommand
74
+ load: async () => (await import("./chunk-NXI76aJP.js")).initCommand
75
75
  },
76
76
  {
77
77
  name: "login",
@@ -101,13 +101,13 @@ const COMMAND_REGISTRY = [
101
101
  name: "flows",
102
102
  term: "flows",
103
103
  description: "Manage flows",
104
- load: async () => (await import("./chunk-kwEUMViA.js")).flowsCommand
104
+ load: async () => (await import("./chunk-DU-nEDyD.js")).flowsCommand
105
105
  },
106
106
  {
107
107
  name: "records",
108
108
  term: "records",
109
109
  description: "Manage records",
110
- load: async () => (await import("./chunk-C-9ssZzB.js")).recordsCommand
110
+ load: async () => (await import("./chunk-D5sr2-s-.js")).recordsCommand
111
111
  },
112
112
  {
113
113
  name: "collections",
@@ -143,7 +143,7 @@ const COMMAND_REGISTRY = [
143
143
  name: "sandbox-deployments",
144
144
  term: "sandbox-deployments",
145
145
  description: "Author managed deployments using retained runtime profiles and uploaded source IDs",
146
- load: async () => (await import("./chunk-D-uxUFTT.js")).sandboxDeploymentsCommand
146
+ load: async () => (await import("./chunk-CS4tOg29.js")).sandboxDeploymentsCommand
147
147
  },
148
148
  {
149
149
  name: "tools",
@@ -167,13 +167,13 @@ const COMMAND_REGISTRY = [
167
167
  name: "products",
168
168
  term: "products",
169
169
  description: "Manage products",
170
- load: async () => (await import("./chunk-D6fmuAl0.js")).productsCommand
170
+ load: async () => (await import("./chunk-BNt7L05l.js")).productsCommand
171
171
  },
172
172
  {
173
173
  name: "dispatch",
174
174
  term: "dispatch [options]",
175
175
  description: "Execute a flow or agent via the dispatch API",
176
- load: async () => (await import("./chunk-CD4pXn7y.js")).dispatchCommand
176
+ load: async () => (await import("./chunk-BNsF5WHq.js")).dispatchCommand
177
177
  },
178
178
  {
179
179
  name: "conversations",
@@ -203,13 +203,13 @@ const COMMAND_REGISTRY = [
203
203
  name: "traces",
204
204
  term: "traces",
205
205
  description: "Mine traces: aggregate runs, read a bounded slice of one trace, compare two runs or cohorts",
206
- load: async () => (await import("./chunk-fqgOJsK2.js")).tracesCommand
206
+ load: async () => (await import("./chunk-DGw-oea5.js")).tracesCommand
207
207
  },
208
208
  {
209
209
  name: "agents",
210
210
  term: "agents",
211
211
  description: "Manage agents",
212
- load: async () => (await import("./chunk-Cz1fluA2.js")).agentsCommand
212
+ load: async () => (await import("./chunk-C8DBcoRx.js")).agentsCommand
213
213
  },
214
214
  {
215
215
  name: "models",
@@ -234,7 +234,7 @@ const COMMAND_REGISTRY = [
234
234
  aliases: ["keys"],
235
235
  term: "api-keys|keys",
236
236
  description: "Manage API keys",
237
- load: async () => (await import("./chunk-Zk-o5_r7.js")).apiKeysCommand
237
+ load: async () => (await import("./chunk-DkaS_DNA.js")).apiKeysCommand
238
238
  },
239
239
  {
240
240
  name: "client-tokens",
@@ -246,7 +246,7 @@ const COMMAND_REGISTRY = [
246
246
  name: "persona",
247
247
  term: "persona",
248
248
  description: "Set up Persona: create an agent, client token, and embed snippet",
249
- load: async () => (await import("./chunk-DDL8EL7C.js")).personaCommand
249
+ load: async () => (await import("./chunk-B_KYhOGs.js")).personaCommand
250
250
  },
251
251
  {
252
252
  name: "analytics",
@@ -276,7 +276,7 @@ const COMMAND_REGISTRY = [
276
276
  name: "marathon",
277
277
  term: "marathon [options] <agent>",
278
278
  description: "Run a multi-session agent task (alias for agents task)",
279
- load: async () => (await import("./chunk-wTGNGQeY.js")).createMarathonCommand()
279
+ load: async () => (await import("./chunk-XwPlN7Hv.js")).createMarathonCommand()
280
280
  },
281
281
  {
282
282
  name: "tail",
@@ -288,7 +288,7 @@ const COMMAND_REGISTRY = [
288
288
  name: "events",
289
289
  term: "events",
290
290
  description: "Watch product events (failed executions, approvals, eval results, ...)",
291
- load: async () => (await import("./chunk-BozvKSoV.js")).eventsCommand
291
+ load: async () => (await import("./chunk-DQabdDJ3.js")).eventsCommand
292
292
  },
293
293
  {
294
294
  name: "validate-product",
@@ -358,7 +358,7 @@ const COMMAND_REGISTRY = [
358
358
  name: "simulations",
359
359
  term: "simulations",
360
360
  description: "Simulations: sandbox candidates, recorded tool exchanges and reports",
361
- load: async () => (await import("./chunk-A9sGZdg3.js")).simulationsCommand
361
+ load: async () => (await import("./chunk-BrgA_9JU.js")).simulationsCommand
362
362
  },
363
363
  {
364
364
  name: "apps",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@runtypelabs/cli",
3
- "version": "2.59.7",
3
+ "version": "2.59.9",
4
4
  "description": "Command-line interface for Runtype AI platform",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -13,7 +13,7 @@
13
13
  "@modelcontextprotocol/core": "2.3.1",
14
14
  "@napi-rs/keyring": "2.1.0",
15
15
  "@runtypelabs/ink-components": "0.3.15",
16
- "@runtypelabs/sdk": "11.22.2",
16
+ "@runtypelabs/sdk": "11.24.0",
17
17
  "@runtypelabs/terminal-animations": "0.2.4",
18
18
  "add-mcp": "2.6.0",
19
19
  "chalk": "^5.3.0",
@@ -40,7 +40,7 @@
40
40
  "@runtypelabs/mcp-cli": "0.4.1",
41
41
  "@runtypelabs/model-execution": "0.42.2",
42
42
  "@runtypelabs/persona": "4.34.0",
43
- "@runtypelabs/shared": "3.119.3",
43
+ "@runtypelabs/shared": "3.121.0",
44
44
  "@types/express": "^5.0.6",
45
45
  "@types/micromatch": "^4.0.9",
46
46
  "@types/node": "^25.3.3",