@h-rig/contracts 0.0.6-alpha.129 → 0.0.6-alpha.130

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.
package/dist/index.cjs CHANGED
@@ -57,6 +57,7 @@ __export(exports_src, {
57
57
  parsePauseSentinel: () => parsePauseSentinel,
58
58
  parseInboxResolutionSentinel: () => parseInboxResolutionSentinel,
59
59
  normalizeRunStatusToken: () => normalizeRunStatusToken,
60
+ latestTimelineEntriesFromCustomEntries: () => latestTimelineEntriesFromCustomEntries,
60
61
  isTerminalRunStatus: () => isTerminalRunStatus,
61
62
  isRunSessionCustomType: () => isRunSessionCustomType,
62
63
  isOperatorActiveRunStatus: () => isOperatorActiveRunStatus,
@@ -1641,7 +1642,7 @@ var WorkspaceRemoteHostSummary = import_effect4.Schema.Struct({
1641
1642
  region: import_effect4.Schema.NullOr(TrimmedNonEmptyString),
1642
1643
  labels: import_effect4.Schema.Array(TrimmedNonEmptyString),
1643
1644
  capabilities: import_effect4.Schema.Array(TrimmedNonEmptyString),
1644
- runtimeAdapters: import_effect4.Schema.Array(TrimmedNonEmptyString),
1645
+ runtimeAdapters: import_effect4.Schema.Array(import_effect4.Schema.Literal("pi")),
1645
1646
  status: WorkspaceRemoteHostStatus,
1646
1647
  currentLeaseCount: import_effect4.Schema.Number,
1647
1648
  lastHeartbeatAt: import_effect4.Schema.NullOr(IsoDateTime),
@@ -1682,7 +1683,7 @@ var WorkspaceSummary = import_effect4.Schema.Struct({
1682
1683
  title: TrimmedNonEmptyString,
1683
1684
  rootPath: TrimmedNonEmptyString,
1684
1685
  sourceKind: WorkspaceSourceKind,
1685
- defaultRuntimeAdapter: import_effect4.Schema.optional(TrimmedNonEmptyString),
1686
+ defaultRuntimeAdapter: import_effect4.Schema.optional(import_effect4.Schema.Literal("pi")),
1686
1687
  defaultProvider: import_effect4.Schema.optional(ProviderKind),
1687
1688
  defaultModel: import_effect4.Schema.NullOr(TrimmedNonEmptyString),
1688
1689
  topology: import_effect4.Schema.optional(WorkspaceTopologySummary),
@@ -1787,7 +1788,7 @@ var RunSummary = import_effect6.Schema.Struct({
1787
1788
  runtimeMode: RuntimeMode,
1788
1789
  interactionMode: ProviderInteractionMode,
1789
1790
  status: RunStatus,
1790
- runtimeAdapter: TrimmedNonEmptyString,
1791
+ runtimeAdapter: import_effect6.Schema.Literal("pi"),
1791
1792
  model: import_effect6.Schema.NullOr(TrimmedNonEmptyString),
1792
1793
  initialPrompt: import_effect6.Schema.NullOr(import_effect6.Schema.String),
1793
1794
  executionTarget: import_effect6.Schema.optional(RunExecutionTarget),
@@ -1810,7 +1811,7 @@ var RuntimeSummary = import_effect6.Schema.Struct({
1810
1811
  id: EngineRuntimeId,
1811
1812
  workspaceId: WorkspaceId,
1812
1813
  runId: RunId,
1813
- adapterKind: TrimmedNonEmptyString,
1814
+ adapterKind: import_effect6.Schema.Literal("pi"),
1814
1815
  executionTarget: import_effect6.Schema.optional(RunExecutionTarget),
1815
1816
  remoteHostId: import_effect6.Schema.optional(import_effect6.Schema.NullOr(TrimmedNonEmptyString)),
1816
1817
  status: RuntimeStatus,
@@ -1907,7 +1908,7 @@ var runRecordFields = {
1907
1908
  taskId: import_effect7.Schema.NullOr(TrimmedNonEmptyString),
1908
1909
  threadId: import_effect7.Schema.NullOr(TrimmedNonEmptyString),
1909
1910
  mode: import_effect7.Schema.Literals(["local", "remote"]),
1910
- runtimeAdapter: TrimmedNonEmptyString,
1911
+ runtimeAdapter: import_effect7.Schema.Literal("pi"),
1911
1912
  createdAt: IsoDateTime,
1912
1913
  startedAt: import_effect7.Schema.NullOr(IsoDateTime),
1913
1914
  completedAt: import_effect7.Schema.NullOr(IsoDateTime),
@@ -2833,19 +2834,35 @@ function projectWorkflowEntries(entries) {
2833
2834
  function isRecord(value) {
2834
2835
  return Boolean(value && typeof value === "object" && !Array.isArray(value));
2835
2836
  }
2837
+ function timelineEntryFromCustomEntry(entry) {
2838
+ if (entry.customType !== CUSTOM_TYPE_FOR["timeline-entry"] || !isRecord(entry.data))
2839
+ return null;
2840
+ const payload = isRecord(entry.data.payload) ? entry.data.payload : entry.data;
2841
+ const type = typeof payload.type === "string" ? payload.type : "timeline";
2842
+ const stage = typeof payload.stage === "string" ? payload.stage : typeof payload.name === "string" ? payload.name : null;
2843
+ const status = typeof payload.status === "string" ? payload.status : typeof payload.outcome === "string" ? payload.outcome : null;
2844
+ const detail = typeof payload.detail === "string" ? payload.detail : typeof payload.message === "string" ? payload.message : null;
2845
+ const at = typeof entry.data.at === "string" ? entry.data.at : typeof payload.at === "string" ? payload.at : null;
2846
+ return { at, type, stage, status, detail };
2847
+ }
2836
2848
  function timelineEntriesFromCustomEntries(entries) {
2837
2849
  return entries.flatMap((entry) => {
2838
- if (entry.customType !== CUSTOM_TYPE_FOR["timeline-entry"] || !isRecord(entry.data))
2839
- return [];
2840
- const payload = isRecord(entry.data.payload) ? entry.data.payload : entry.data;
2841
- const type = typeof payload.type === "string" ? payload.type : "timeline";
2842
- const stage = typeof payload.stage === "string" ? payload.stage : typeof payload.name === "string" ? payload.name : null;
2843
- const status = typeof payload.status === "string" ? payload.status : typeof payload.outcome === "string" ? payload.outcome : null;
2844
- const detail = typeof payload.detail === "string" ? payload.detail : typeof payload.message === "string" ? payload.message : null;
2845
- const at = typeof entry.data.at === "string" ? entry.data.at : typeof payload.at === "string" ? payload.at : null;
2846
- return [{ at, type, stage, status, detail }];
2850
+ const timelineEntry = timelineEntryFromCustomEntry(entry);
2851
+ return timelineEntry ? [timelineEntry] : [];
2847
2852
  });
2848
2853
  }
2854
+ function latestTimelineEntriesFromCustomEntries(entries, limit) {
2855
+ if (limit <= 0)
2856
+ return [];
2857
+ const timeline = [];
2858
+ for (let index = entries.length - 1;index >= 0 && timeline.length < limit; index -= 1) {
2859
+ const timelineEntry = timelineEntryFromCustomEntry(entries[index]);
2860
+ if (timelineEntry)
2861
+ timeline.push(timelineEntry);
2862
+ }
2863
+ timeline.reverse();
2864
+ return timeline;
2865
+ }
2849
2866
  // packages/contracts/src/run-status.ts
2850
2867
  var OPERATOR_INACTIVE_RUN_STATUSES = new Set([
2851
2868
  "completed",
@@ -3063,7 +3080,7 @@ var TaskSourceConfig = import_effect11.Schema.Struct({
3063
3080
  url: import_effect11.Schema.optional(import_effect11.Schema.String),
3064
3081
  options: import_effect11.Schema.optional(import_effect11.Schema.Record(import_effect11.Schema.String, import_effect11.Schema.Unknown))
3065
3082
  });
3066
- var RuntimeHarness = import_effect11.Schema.Literals(["pi", "claude-code", "codex"]);
3083
+ var RuntimeHarness = import_effect11.Schema.Literal("pi");
3067
3084
  var RigRuntimeMode = import_effect11.Schema.Literals(["yolo", "approval-required"]);
3068
3085
  var PiRuntimeConfig = import_effect11.Schema.Struct({
3069
3086
  packages: import_effect11.Schema.optional(import_effect11.Schema.Array(import_effect11.Schema.String))
@@ -3072,7 +3089,6 @@ var RigServerConfig = import_effect11.Schema.Struct({
3072
3089
  host: import_effect11.Schema.optional(import_effect11.Schema.String),
3073
3090
  relayUrl: import_effect11.Schema.optional(import_effect11.Schema.String),
3074
3091
  registryUrl: import_effect11.Schema.optional(import_effect11.Schema.String),
3075
- registrySecret: import_effect11.Schema.optional(import_effect11.Schema.String),
3076
3092
  sshTarget: import_effect11.Schema.optional(import_effect11.Schema.String),
3077
3093
  checkout: import_effect11.Schema.optional(import_effect11.Schema.String)
3078
3094
  });
@@ -3138,7 +3154,7 @@ var IssueAnalysisConfig = import_effect11.Schema.Struct({
3138
3154
  });
3139
3155
  var ReviewConfig = import_effect11.Schema.Struct({
3140
3156
  mode: import_effect11.Schema.optional(import_effect11.Schema.Literals(["off", "advisory", "required"])),
3141
- provider: import_effect11.Schema.optional(import_effect11.Schema.Literal("greptile"))
3157
+ provider: import_effect11.Schema.optional(import_effect11.Schema.Literals(["greptile", "github"]))
3142
3158
  });
3143
3159
  var RigConfig = import_effect11.Schema.Struct({
3144
3160
  project: ProjectIdentity,
@@ -3222,6 +3238,7 @@ var import_effect17 = require("effect");
3222
3238
 
3223
3239
  // packages/contracts/src/remote.ts
3224
3240
  var import_effect16 = require("effect");
3241
+ var RemoteRuntimeAdapter = import_effect16.Schema.Literal("pi");
3225
3242
  var RemoteEndpoint = import_effect16.Schema.Struct({
3226
3243
  id: RemoteEndpointId,
3227
3244
  alias: TrimmedNonEmptyString,
@@ -3306,7 +3323,7 @@ var RemoteRunnerRegisterInput = import_effect16.Schema.Struct({
3306
3323
  region: import_effect16.Schema.optional(TrimmedNonEmptyString),
3307
3324
  labels: import_effect16.Schema.optional(import_effect16.Schema.Array(TrimmedNonEmptyString)),
3308
3325
  capabilities: import_effect16.Schema.optional(import_effect16.Schema.Array(TrimmedNonEmptyString)),
3309
- runtimeAdapters: import_effect16.Schema.optional(import_effect16.Schema.Array(TrimmedNonEmptyString)),
3326
+ runtimeAdapters: import_effect16.Schema.optional(import_effect16.Schema.Array(RemoteRuntimeAdapter)),
3310
3327
  status: import_effect16.Schema.optional(WorkspaceRemoteHostStatus),
3311
3328
  currentLeaseCount: import_effect16.Schema.optional(import_effect16.Schema.Number)
3312
3329
  });
@@ -3327,14 +3344,14 @@ var RemoteRunnerLifecycleResult = import_effect16.Schema.Struct({
3327
3344
  var RemoteRunClaimInput = import_effect16.Schema.Struct({
3328
3345
  workspaceId: WorkspaceId,
3329
3346
  hostId: TrimmedNonEmptyString,
3330
- runtimeAdapters: import_effect16.Schema.optional(import_effect16.Schema.Array(TrimmedNonEmptyString))
3347
+ runtimeAdapters: import_effect16.Schema.optional(import_effect16.Schema.Array(RemoteRuntimeAdapter))
3331
3348
  });
3332
3349
  var RemoteRunLeaseSummary = import_effect16.Schema.Struct({
3333
3350
  leaseId: TrimmedNonEmptyString,
3334
3351
  runId: TrimmedNonEmptyString,
3335
3352
  workspaceId: WorkspaceId,
3336
3353
  title: TrimmedNonEmptyString,
3337
- runtimeAdapter: TrimmedNonEmptyString,
3354
+ runtimeAdapter: RemoteRuntimeAdapter,
3338
3355
  model: import_effect16.Schema.NullOr(TrimmedNonEmptyString),
3339
3356
  runtimeMode: RuntimeMode,
3340
3357
  interactionMode: ProviderInteractionMode,
@@ -3352,7 +3369,7 @@ var RemoteRunExecutionBundle = import_effect16.Schema.Struct({
3352
3369
  runId: TrimmedNonEmptyString,
3353
3370
  leaseId: TrimmedNonEmptyString,
3354
3371
  workspacePath: import_effect16.Schema.NullOr(TrimmedNonEmptyString),
3355
- runtimeAdapter: TrimmedNonEmptyString,
3372
+ runtimeAdapter: RemoteRuntimeAdapter,
3356
3373
  model: import_effect16.Schema.NullOr(TrimmedNonEmptyString),
3357
3374
  runtimeMode: RuntimeMode,
3358
3375
  interactionMode: ProviderInteractionMode,
@@ -3513,7 +3530,7 @@ var EngineReadModel = import_effect17.Schema.Struct({
3513
3530
  remoteOrchestrations: import_effect17.Schema.Array(RemoteOrchestrationSummary),
3514
3531
  updatedAt: IsoDateTime
3515
3532
  });
3516
- var RuntimeAdapterKind = import_effect17.Schema.Literals(["codex", "claude-code", "pi"]);
3533
+ var RuntimeAdapterKind = import_effect17.Schema.Literal("pi");
3517
3534
  var WorkspaceRegisterCommand = import_effect17.Schema.Struct({
3518
3535
  type: import_effect17.Schema.Literal("workspace.register"),
3519
3536
  commandId: CommandId,
@@ -3706,7 +3723,7 @@ var WorkspaceRegisterRemoteHostCommand = import_effect17.Schema.Struct({
3706
3723
  region: import_effect17.Schema.NullOr(TrimmedNonEmptyString),
3707
3724
  labels: import_effect17.Schema.Array(TrimmedNonEmptyString),
3708
3725
  capabilities: import_effect17.Schema.Array(TrimmedNonEmptyString),
3709
- runtimeAdapters: import_effect17.Schema.Array(TrimmedNonEmptyString),
3726
+ runtimeAdapters: import_effect17.Schema.Array(RuntimeAdapterKind),
3710
3727
  status: import_effect17.Schema.Literals([
3711
3728
  "registering",
3712
3729
  "ready",
@@ -4119,7 +4136,7 @@ var EngineRpcSchemas = {
4119
4136
  }
4120
4137
  };
4121
4138
  var EngineRuntimeDefaults = import_effect17.Schema.Struct({
4122
- runtimeAdapter: TrimmedNonEmptyString,
4139
+ runtimeAdapter: RuntimeAdapterKind,
4123
4140
  runMode: RunMode,
4124
4141
  sandboxMode: EngineSandboxMode,
4125
4142
  isolationMode: IsolationMode
@@ -6166,7 +6183,7 @@ var TOP_LEVEL_SECTIONS = [
6166
6183
  },
6167
6184
  {
6168
6185
  command: "rig config set <key> <value>",
6169
- description: "Write an override (relayUrl/registryUrl/registrySecret/sshTarget or any RIG_*) into rig.config.ts.",
6186
+ description: "Write an override (relayUrl/registryUrl/sshTarget or any RIG_*) into rig.config.ts.",
6170
6187
  usecase: "Persist a setting so it survives across runs without env vars.",
6171
6188
  examples: [
6172
6189
  "rig config set sshTarget ubuntu@host # remote placement",
@@ -6520,7 +6537,6 @@ var ADVANCED_GROUPS = [
6520
6537
  { command: "cleanup [--all] [--id <id>]", description: "Remove prepared agent workspaces.", primary: true }
6521
6538
  ]
6522
6539
  },
6523
- { name: "inspector", summary: "Event stream and drift scanners.", usage: ["rig inspector <stream|scan-upstream-drift>"], commands: [{ command: "stream", description: "Stream events." }] },
6524
6540
  {
6525
6541
  name: "dist",
6526
6542
  summary: "Build/install packaged Rig CLI.",
package/dist/index.mjs CHANGED
@@ -1048,7 +1048,7 @@ var WorkspaceRemoteHostSummary = Schema4.Struct({
1048
1048
  region: Schema4.NullOr(TrimmedNonEmptyString),
1049
1049
  labels: Schema4.Array(TrimmedNonEmptyString),
1050
1050
  capabilities: Schema4.Array(TrimmedNonEmptyString),
1051
- runtimeAdapters: Schema4.Array(TrimmedNonEmptyString),
1051
+ runtimeAdapters: Schema4.Array(Schema4.Literal("pi")),
1052
1052
  status: WorkspaceRemoteHostStatus,
1053
1053
  currentLeaseCount: Schema4.Number,
1054
1054
  lastHeartbeatAt: Schema4.NullOr(IsoDateTime),
@@ -1089,7 +1089,7 @@ var WorkspaceSummary = Schema4.Struct({
1089
1089
  title: TrimmedNonEmptyString,
1090
1090
  rootPath: TrimmedNonEmptyString,
1091
1091
  sourceKind: WorkspaceSourceKind,
1092
- defaultRuntimeAdapter: Schema4.optional(TrimmedNonEmptyString),
1092
+ defaultRuntimeAdapter: Schema4.optional(Schema4.Literal("pi")),
1093
1093
  defaultProvider: Schema4.optional(ProviderKind),
1094
1094
  defaultModel: Schema4.NullOr(TrimmedNonEmptyString),
1095
1095
  topology: Schema4.optional(WorkspaceTopologySummary),
@@ -1194,7 +1194,7 @@ var RunSummary = Schema6.Struct({
1194
1194
  runtimeMode: RuntimeMode,
1195
1195
  interactionMode: ProviderInteractionMode,
1196
1196
  status: RunStatus,
1197
- runtimeAdapter: TrimmedNonEmptyString,
1197
+ runtimeAdapter: Schema6.Literal("pi"),
1198
1198
  model: Schema6.NullOr(TrimmedNonEmptyString),
1199
1199
  initialPrompt: Schema6.NullOr(Schema6.String),
1200
1200
  executionTarget: Schema6.optional(RunExecutionTarget),
@@ -1217,7 +1217,7 @@ var RuntimeSummary = Schema6.Struct({
1217
1217
  id: EngineRuntimeId,
1218
1218
  workspaceId: WorkspaceId,
1219
1219
  runId: RunId,
1220
- adapterKind: TrimmedNonEmptyString,
1220
+ adapterKind: Schema6.Literal("pi"),
1221
1221
  executionTarget: Schema6.optional(RunExecutionTarget),
1222
1222
  remoteHostId: Schema6.optional(Schema6.NullOr(TrimmedNonEmptyString)),
1223
1223
  status: RuntimeStatus,
@@ -1314,7 +1314,7 @@ var runRecordFields = {
1314
1314
  taskId: Schema7.NullOr(TrimmedNonEmptyString),
1315
1315
  threadId: Schema7.NullOr(TrimmedNonEmptyString),
1316
1316
  mode: Schema7.Literals(["local", "remote"]),
1317
- runtimeAdapter: TrimmedNonEmptyString,
1317
+ runtimeAdapter: Schema7.Literal("pi"),
1318
1318
  createdAt: IsoDateTime,
1319
1319
  startedAt: Schema7.NullOr(IsoDateTime),
1320
1320
  completedAt: Schema7.NullOr(IsoDateTime),
@@ -2240,19 +2240,35 @@ function projectWorkflowEntries(entries) {
2240
2240
  function isRecord(value) {
2241
2241
  return Boolean(value && typeof value === "object" && !Array.isArray(value));
2242
2242
  }
2243
+ function timelineEntryFromCustomEntry(entry) {
2244
+ if (entry.customType !== CUSTOM_TYPE_FOR["timeline-entry"] || !isRecord(entry.data))
2245
+ return null;
2246
+ const payload = isRecord(entry.data.payload) ? entry.data.payload : entry.data;
2247
+ const type = typeof payload.type === "string" ? payload.type : "timeline";
2248
+ const stage = typeof payload.stage === "string" ? payload.stage : typeof payload.name === "string" ? payload.name : null;
2249
+ const status = typeof payload.status === "string" ? payload.status : typeof payload.outcome === "string" ? payload.outcome : null;
2250
+ const detail = typeof payload.detail === "string" ? payload.detail : typeof payload.message === "string" ? payload.message : null;
2251
+ const at = typeof entry.data.at === "string" ? entry.data.at : typeof payload.at === "string" ? payload.at : null;
2252
+ return { at, type, stage, status, detail };
2253
+ }
2243
2254
  function timelineEntriesFromCustomEntries(entries) {
2244
2255
  return entries.flatMap((entry) => {
2245
- if (entry.customType !== CUSTOM_TYPE_FOR["timeline-entry"] || !isRecord(entry.data))
2246
- return [];
2247
- const payload = isRecord(entry.data.payload) ? entry.data.payload : entry.data;
2248
- const type = typeof payload.type === "string" ? payload.type : "timeline";
2249
- const stage = typeof payload.stage === "string" ? payload.stage : typeof payload.name === "string" ? payload.name : null;
2250
- const status = typeof payload.status === "string" ? payload.status : typeof payload.outcome === "string" ? payload.outcome : null;
2251
- const detail = typeof payload.detail === "string" ? payload.detail : typeof payload.message === "string" ? payload.message : null;
2252
- const at = typeof entry.data.at === "string" ? entry.data.at : typeof payload.at === "string" ? payload.at : null;
2253
- return [{ at, type, stage, status, detail }];
2256
+ const timelineEntry = timelineEntryFromCustomEntry(entry);
2257
+ return timelineEntry ? [timelineEntry] : [];
2254
2258
  });
2255
2259
  }
2260
+ function latestTimelineEntriesFromCustomEntries(entries, limit) {
2261
+ if (limit <= 0)
2262
+ return [];
2263
+ const timeline = [];
2264
+ for (let index = entries.length - 1;index >= 0 && timeline.length < limit; index -= 1) {
2265
+ const timelineEntry = timelineEntryFromCustomEntry(entries[index]);
2266
+ if (timelineEntry)
2267
+ timeline.push(timelineEntry);
2268
+ }
2269
+ timeline.reverse();
2270
+ return timeline;
2271
+ }
2256
2272
  // packages/contracts/src/run-status.ts
2257
2273
  var OPERATOR_INACTIVE_RUN_STATUSES = new Set([
2258
2274
  "completed",
@@ -2470,7 +2486,7 @@ var TaskSourceConfig = Schema11.Struct({
2470
2486
  url: Schema11.optional(Schema11.String),
2471
2487
  options: Schema11.optional(Schema11.Record(Schema11.String, Schema11.Unknown))
2472
2488
  });
2473
- var RuntimeHarness = Schema11.Literals(["pi", "claude-code", "codex"]);
2489
+ var RuntimeHarness = Schema11.Literal("pi");
2474
2490
  var RigRuntimeMode = Schema11.Literals(["yolo", "approval-required"]);
2475
2491
  var PiRuntimeConfig = Schema11.Struct({
2476
2492
  packages: Schema11.optional(Schema11.Array(Schema11.String))
@@ -2479,7 +2495,6 @@ var RigServerConfig = Schema11.Struct({
2479
2495
  host: Schema11.optional(Schema11.String),
2480
2496
  relayUrl: Schema11.optional(Schema11.String),
2481
2497
  registryUrl: Schema11.optional(Schema11.String),
2482
- registrySecret: Schema11.optional(Schema11.String),
2483
2498
  sshTarget: Schema11.optional(Schema11.String),
2484
2499
  checkout: Schema11.optional(Schema11.String)
2485
2500
  });
@@ -2545,7 +2560,7 @@ var IssueAnalysisConfig = Schema11.Struct({
2545
2560
  });
2546
2561
  var ReviewConfig = Schema11.Struct({
2547
2562
  mode: Schema11.optional(Schema11.Literals(["off", "advisory", "required"])),
2548
- provider: Schema11.optional(Schema11.Literal("greptile"))
2563
+ provider: Schema11.optional(Schema11.Literals(["greptile", "github"]))
2549
2564
  });
2550
2565
  var RigConfig = Schema11.Struct({
2551
2566
  project: ProjectIdentity,
@@ -2629,6 +2644,7 @@ import { Schema as Schema17 } from "effect";
2629
2644
 
2630
2645
  // packages/contracts/src/remote.ts
2631
2646
  import { Schema as Schema16 } from "effect";
2647
+ var RemoteRuntimeAdapter = Schema16.Literal("pi");
2632
2648
  var RemoteEndpoint = Schema16.Struct({
2633
2649
  id: RemoteEndpointId,
2634
2650
  alias: TrimmedNonEmptyString,
@@ -2713,7 +2729,7 @@ var RemoteRunnerRegisterInput = Schema16.Struct({
2713
2729
  region: Schema16.optional(TrimmedNonEmptyString),
2714
2730
  labels: Schema16.optional(Schema16.Array(TrimmedNonEmptyString)),
2715
2731
  capabilities: Schema16.optional(Schema16.Array(TrimmedNonEmptyString)),
2716
- runtimeAdapters: Schema16.optional(Schema16.Array(TrimmedNonEmptyString)),
2732
+ runtimeAdapters: Schema16.optional(Schema16.Array(RemoteRuntimeAdapter)),
2717
2733
  status: Schema16.optional(WorkspaceRemoteHostStatus),
2718
2734
  currentLeaseCount: Schema16.optional(Schema16.Number)
2719
2735
  });
@@ -2734,14 +2750,14 @@ var RemoteRunnerLifecycleResult = Schema16.Struct({
2734
2750
  var RemoteRunClaimInput = Schema16.Struct({
2735
2751
  workspaceId: WorkspaceId,
2736
2752
  hostId: TrimmedNonEmptyString,
2737
- runtimeAdapters: Schema16.optional(Schema16.Array(TrimmedNonEmptyString))
2753
+ runtimeAdapters: Schema16.optional(Schema16.Array(RemoteRuntimeAdapter))
2738
2754
  });
2739
2755
  var RemoteRunLeaseSummary = Schema16.Struct({
2740
2756
  leaseId: TrimmedNonEmptyString,
2741
2757
  runId: TrimmedNonEmptyString,
2742
2758
  workspaceId: WorkspaceId,
2743
2759
  title: TrimmedNonEmptyString,
2744
- runtimeAdapter: TrimmedNonEmptyString,
2760
+ runtimeAdapter: RemoteRuntimeAdapter,
2745
2761
  model: Schema16.NullOr(TrimmedNonEmptyString),
2746
2762
  runtimeMode: RuntimeMode,
2747
2763
  interactionMode: ProviderInteractionMode,
@@ -2759,7 +2775,7 @@ var RemoteRunExecutionBundle = Schema16.Struct({
2759
2775
  runId: TrimmedNonEmptyString,
2760
2776
  leaseId: TrimmedNonEmptyString,
2761
2777
  workspacePath: Schema16.NullOr(TrimmedNonEmptyString),
2762
- runtimeAdapter: TrimmedNonEmptyString,
2778
+ runtimeAdapter: RemoteRuntimeAdapter,
2763
2779
  model: Schema16.NullOr(TrimmedNonEmptyString),
2764
2780
  runtimeMode: RuntimeMode,
2765
2781
  interactionMode: ProviderInteractionMode,
@@ -2920,7 +2936,7 @@ var EngineReadModel = Schema17.Struct({
2920
2936
  remoteOrchestrations: Schema17.Array(RemoteOrchestrationSummary),
2921
2937
  updatedAt: IsoDateTime
2922
2938
  });
2923
- var RuntimeAdapterKind = Schema17.Literals(["codex", "claude-code", "pi"]);
2939
+ var RuntimeAdapterKind = Schema17.Literal("pi");
2924
2940
  var WorkspaceRegisterCommand = Schema17.Struct({
2925
2941
  type: Schema17.Literal("workspace.register"),
2926
2942
  commandId: CommandId,
@@ -3113,7 +3129,7 @@ var WorkspaceRegisterRemoteHostCommand = Schema17.Struct({
3113
3129
  region: Schema17.NullOr(TrimmedNonEmptyString),
3114
3130
  labels: Schema17.Array(TrimmedNonEmptyString),
3115
3131
  capabilities: Schema17.Array(TrimmedNonEmptyString),
3116
- runtimeAdapters: Schema17.Array(TrimmedNonEmptyString),
3132
+ runtimeAdapters: Schema17.Array(RuntimeAdapterKind),
3117
3133
  status: Schema17.Literals([
3118
3134
  "registering",
3119
3135
  "ready",
@@ -3526,7 +3542,7 @@ var EngineRpcSchemas = {
3526
3542
  }
3527
3543
  };
3528
3544
  var EngineRuntimeDefaults = Schema17.Struct({
3529
- runtimeAdapter: TrimmedNonEmptyString,
3545
+ runtimeAdapter: RuntimeAdapterKind,
3530
3546
  runMode: RunMode,
3531
3547
  sandboxMode: EngineSandboxMode,
3532
3548
  isolationMode: IsolationMode
@@ -5573,7 +5589,7 @@ var TOP_LEVEL_SECTIONS = [
5573
5589
  },
5574
5590
  {
5575
5591
  command: "rig config set <key> <value>",
5576
- description: "Write an override (relayUrl/registryUrl/registrySecret/sshTarget or any RIG_*) into rig.config.ts.",
5592
+ description: "Write an override (relayUrl/registryUrl/sshTarget or any RIG_*) into rig.config.ts.",
5577
5593
  usecase: "Persist a setting so it survives across runs without env vars.",
5578
5594
  examples: [
5579
5595
  "rig config set sshTarget ubuntu@host # remote placement",
@@ -5927,7 +5943,6 @@ var ADVANCED_GROUPS = [
5927
5943
  { command: "cleanup [--all] [--id <id>]", description: "Remove prepared agent workspaces.", primary: true }
5928
5944
  ]
5929
5945
  },
5930
- { name: "inspector", summary: "Event stream and drift scanners.", usage: ["rig inspector <stream|scan-upstream-drift>"], commands: [{ command: "stream", description: "Stream events." }] },
5931
5946
  {
5932
5947
  name: "dist",
5933
5948
  summary: "Build/install packaged Rig CLI.",
@@ -5991,6 +6006,7 @@ export {
5991
6006
  parsePauseSentinel,
5992
6007
  parseInboxResolutionSentinel,
5993
6008
  normalizeRunStatusToken,
6009
+ latestTimelineEntriesFromCustomEntries,
5994
6010
  isTerminalRunStatus,
5995
6011
  isRunSessionCustomType,
5996
6012
  isOperatorActiveRunStatus,
@@ -59,7 +59,7 @@ export declare const TaskSourceConfig: Schema.Struct<{
59
59
  readonly options: Schema.optional<Schema.$Record<Schema.String, Schema.Unknown>>;
60
60
  }>;
61
61
  export type TaskSourceConfig = typeof TaskSourceConfig.Type;
62
- export declare const RuntimeHarness: Schema.Literals<readonly ["pi", "claude-code", "codex"]>;
62
+ export declare const RuntimeHarness: Schema.Literal<"pi">;
63
63
  export type RuntimeHarness = typeof RuntimeHarness.Type;
64
64
  export declare const RigRuntimeMode: Schema.Literals<readonly ["yolo", "approval-required"]>;
65
65
  export type RigRuntimeMode = typeof RigRuntimeMode.Type;
@@ -84,8 +84,8 @@ export type PiRuntimeConfig = typeof PiRuntimeConfig.Type;
84
84
  * - `host` : the shared collab/discovery backbone host. relayUrl + registryUrl
85
85
  * derive from it (`wss://<host>`, `https://<host>/registry`) unless
86
86
  * set explicitly below.
87
- * - `relayUrl`/`registryUrl`/`registrySecret` : explicit overrides of the derived
88
- * backbone endpoints + the registry HMAC secret.
87
+ * - `relayUrl`/`registryUrl` : explicit overrides of the derived backbone
88
+ * endpoints.
89
89
  * - `sshTarget`/`checkout` : remote run PLACEMENT (which machine executes a run,
90
90
  * and the checkout dir there) — formerly only in endpoints.toml /
91
91
  * connection.json, now surfaceable here too.
@@ -94,7 +94,6 @@ export declare const RigServerConfig: Schema.Struct<{
94
94
  readonly host: Schema.optional<Schema.String>;
95
95
  readonly relayUrl: Schema.optional<Schema.String>;
96
96
  readonly registryUrl: Schema.optional<Schema.String>;
97
- readonly registrySecret: Schema.optional<Schema.String>;
98
97
  readonly sshTarget: Schema.optional<Schema.String>;
99
98
  readonly checkout: Schema.optional<Schema.String>;
100
99
  }>;
@@ -102,7 +101,7 @@ export type RigServerConfig = typeof RigServerConfig.Type;
102
101
  export declare const RuntimeConfig: Schema.Struct<{
103
102
  readonly agentRoles: Schema.optional<Schema.$Record<Schema.String, Schema.Unknown>>;
104
103
  readonly timeouts: Schema.optional<Schema.$Record<Schema.String, Schema.Number>>;
105
- readonly harness: Schema.optional<Schema.Literals<readonly ["pi", "claude-code", "codex"]>>;
104
+ readonly harness: Schema.optional<Schema.Literal<"pi">>;
106
105
  readonly model: Schema.optional<Schema.String>;
107
106
  readonly mode: Schema.optional<Schema.Literals<readonly ["yolo", "approval-required"]>>;
108
107
  readonly pi: Schema.optional<Schema.Struct<{
@@ -113,7 +112,6 @@ export declare const RuntimeConfig: Schema.Struct<{
113
112
  readonly host: Schema.optional<Schema.String>;
114
113
  readonly relayUrl: Schema.optional<Schema.String>;
115
114
  readonly registryUrl: Schema.optional<Schema.String>;
116
- readonly registrySecret: Schema.optional<Schema.String>;
117
115
  readonly sshTarget: Schema.optional<Schema.String>;
118
116
  readonly checkout: Schema.optional<Schema.String>;
119
117
  }>>;
@@ -192,7 +190,7 @@ export declare const IssueAnalysisConfig: Schema.Struct<{
192
190
  export type IssueAnalysisConfig = typeof IssueAnalysisConfig.Type;
193
191
  export declare const ReviewConfig: Schema.Struct<{
194
192
  readonly mode: Schema.optional<Schema.Literals<readonly ["off", "advisory", "required"]>>;
195
- readonly provider: Schema.optional<Schema.Literal<"greptile">>;
193
+ readonly provider: Schema.optional<Schema.Literals<readonly ["greptile", "github"]>>;
196
194
  }>;
197
195
  export type ReviewConfig = typeof ReviewConfig.Type;
198
196
  export declare const RigConfig: Schema.Struct<{
@@ -289,7 +287,7 @@ export declare const RigConfig: Schema.Struct<{
289
287
  readonly runtime: Schema.optional<Schema.Struct<{
290
288
  readonly agentRoles: Schema.optional<Schema.$Record<Schema.String, Schema.Unknown>>;
291
289
  readonly timeouts: Schema.optional<Schema.$Record<Schema.String, Schema.Number>>;
292
- readonly harness: Schema.optional<Schema.Literals<readonly ["pi", "claude-code", "codex"]>>;
290
+ readonly harness: Schema.optional<Schema.Literal<"pi">>;
293
291
  readonly model: Schema.optional<Schema.String>;
294
292
  readonly mode: Schema.optional<Schema.Literals<readonly ["yolo", "approval-required"]>>;
295
293
  readonly pi: Schema.optional<Schema.Struct<{
@@ -300,7 +298,6 @@ export declare const RigConfig: Schema.Struct<{
300
298
  readonly host: Schema.optional<Schema.String>;
301
299
  readonly relayUrl: Schema.optional<Schema.String>;
302
300
  readonly registryUrl: Schema.optional<Schema.String>;
303
- readonly registrySecret: Schema.optional<Schema.String>;
304
301
  readonly sshTarget: Schema.optional<Schema.String>;
305
302
  readonly checkout: Schema.optional<Schema.String>;
306
303
  }>>;
@@ -347,7 +344,7 @@ export declare const RigConfig: Schema.Struct<{
347
344
  }>>;
348
345
  readonly review: Schema.optional<Schema.Struct<{
349
346
  readonly mode: Schema.optional<Schema.Literals<readonly ["off", "advisory", "required"]>>;
350
- readonly provider: Schema.optional<Schema.Literal<"greptile">>;
347
+ readonly provider: Schema.optional<Schema.Literals<readonly ["greptile", "github"]>>;
351
348
  }>>;
352
349
  readonly issueAnalysis: Schema.optional<Schema.Struct<{
353
350
  readonly enabled: Schema.optional<Schema.Boolean>;
@@ -121,7 +121,7 @@ var TaskSourceConfig = Schema2.Struct({
121
121
  url: Schema2.optional(Schema2.String),
122
122
  options: Schema2.optional(Schema2.Record(Schema2.String, Schema2.Unknown))
123
123
  });
124
- var RuntimeHarness = Schema2.Literals(["pi", "claude-code", "codex"]);
124
+ var RuntimeHarness = Schema2.Literal("pi");
125
125
  var RigRuntimeMode = Schema2.Literals(["yolo", "approval-required"]);
126
126
  var PiRuntimeConfig = Schema2.Struct({
127
127
  packages: Schema2.optional(Schema2.Array(Schema2.String))
@@ -130,7 +130,6 @@ var RigServerConfig = Schema2.Struct({
130
130
  host: Schema2.optional(Schema2.String),
131
131
  relayUrl: Schema2.optional(Schema2.String),
132
132
  registryUrl: Schema2.optional(Schema2.String),
133
- registrySecret: Schema2.optional(Schema2.String),
134
133
  sshTarget: Schema2.optional(Schema2.String),
135
134
  checkout: Schema2.optional(Schema2.String)
136
135
  });
@@ -196,7 +195,7 @@ var IssueAnalysisConfig = Schema2.Struct({
196
195
  });
197
196
  var ReviewConfig = Schema2.Struct({
198
197
  mode: Schema2.optional(Schema2.Literals(["off", "advisory", "required"])),
199
- provider: Schema2.optional(Schema2.Literal("greptile"))
198
+ provider: Schema2.optional(Schema2.Literals(["greptile", "github"]))
200
199
  });
201
200
  var RigConfig = Schema2.Struct({
202
201
  project: ProjectIdentity,