@lambdacurry/arbor 0.21.7 → 0.21.8

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.
Files changed (2) hide show
  1. package/dist/arbor.js +51 -5
  2. package/package.json +1 -1
package/dist/arbor.js CHANGED
@@ -2774,6 +2774,22 @@ var watches = sqliteTable("watches", {
2774
2774
  var TERMINAL = new Set(["finished", "failed", "cancelled"]);
2775
2775
  var RUN_LIFECYCLE_TYPES = new Set(["run.started", "run.finished", "run.failed", "run.cancelled"]);
2776
2776
  var COMPUTER_RUN_ACTIVITY_LABEL_MAX = 120;
2777
+ var RUN_PROVIDER_LIFECYCLE_PHASES = [
2778
+ "allocate",
2779
+ "boot",
2780
+ "restore",
2781
+ "session",
2782
+ "probe",
2783
+ "readiness",
2784
+ "ready",
2785
+ "checkpoint",
2786
+ "publish",
2787
+ "suspend",
2788
+ "release",
2789
+ "lost",
2790
+ "workspace_freeze"
2791
+ ];
2792
+ var RUN_PROVIDER_LIFECYCLE_PHASE_SET = new Set(RUN_PROVIDER_LIFECYCLE_PHASES);
2777
2793
 
2778
2794
  // ../core/src/ops/computer.ts
2779
2795
  var MAX_COMPUTER_REPOSITORIES = 10;
@@ -17475,7 +17491,32 @@ var computerRunReceipt = exports_external.looseObject({
17475
17491
  targetId: exports_external.string().optional(),
17476
17492
  reasonCode: exports_external.string().optional()
17477
17493
  })),
17478
- lifecycle: exports_external.array(exports_external.looseObject({ type: exports_external.string(), at: exports_external.string() }))
17494
+ lifecycle: exports_external.array(exports_external.looseObject({ type: exports_external.string(), at: exports_external.string() })),
17495
+ providerLifecycle: exports_external.looseObject({
17496
+ generation: exports_external.number().int().min(0).nullable(),
17497
+ lastPhase: exports_external.string().nullable(),
17498
+ lastReasonCode: exports_external.string().nullable(),
17499
+ lastEventId: exports_external.string().nullable(),
17500
+ lastObservedAt: exports_external.string().nullable(),
17501
+ replacementGeneration: exports_external.number().int().min(0).nullable(),
17502
+ droppedCount: exports_external.number().int().min(0),
17503
+ events: exports_external.array(exports_external.looseObject({
17504
+ eventId: exports_external.string(),
17505
+ observedAt: exports_external.string(),
17506
+ phase: exports_external.string(),
17507
+ providerGeneration: exports_external.number().int().min(0),
17508
+ controlRelease: exports_external.string(),
17509
+ attemptId: exports_external.string().optional(),
17510
+ snapshotId: exports_external.string().optional(),
17511
+ runtimeState: exports_external.enum(["live", "suspended"]).optional(),
17512
+ releaseState: exports_external.enum(["live", "pending", "released"]).optional(),
17513
+ reasonCode: exports_external.string().optional(),
17514
+ providerHttpStatus: exports_external.number().int().optional(),
17515
+ providerStopClass: exports_external.string().optional(),
17516
+ providerRoute: exports_external.enum(["primary", "standby", "service"]).optional(),
17517
+ parentWorkspaceFrozen: exports_external.boolean().optional()
17518
+ }))
17519
+ })
17479
17520
  });
17480
17521
  var computerCapabilityCard = exports_external.looseObject({
17481
17522
  capabilities: exports_external.array(exports_external.looseObject({
@@ -18289,7 +18330,12 @@ var MCP_OUTPUT_SCHEMAS = {
18289
18330
  prCreate: exports_external.enum(["not-needed", "safe", "manual", "unknown"])
18290
18331
  }),
18291
18332
  nextAction: exports_external.string()
18292
- }))
18333
+ })),
18334
+ runDisposition: exports_external.looseObject({
18335
+ action: exports_external.enum(["computer_run_suspend", "continue-local-work", "none"]),
18336
+ resumeSameRunId: exports_external.boolean(),
18337
+ reason: exports_external.string()
18338
+ })
18293
18339
  }),
18294
18340
  computer_run_receipt: exports_external.looseObject({
18295
18341
  receipt: computerRunReceipt
@@ -19442,7 +19488,7 @@ var ACTION_DEFINITIONS = [
19442
19488
  {
19443
19489
  name: "computer_repo_work_status",
19444
19490
  title: "Inspect repository finish state",
19445
- description: "READ ONLY: Inspect an active isolated WRITE Run before a push/PR retry or finish when Git publication, PR, CI, or review state matters. Returns authoritative durability/finishability, retry safety, mismatches, and the next repository action without mutating GitHub.",
19491
+ description: "READ ONLY: Inspect an active isolated WRITE Run's Git publication, PR, CI, and review before retry, wait, or finish. Returns repository state (e.g. ci-pending) plus runDisposition.action computer_run_suspend when published work waits on CI/review/human authorization the same runId resumes; dirty, unpublished, unknown-publication, failing, or changes-requested work keeps the local nextAction.",
19446
19492
  inputSchema: {
19447
19493
  runId: exports_external.string().describe("the active isolated WRITE Run to inspect, run_…")
19448
19494
  },
@@ -19467,7 +19513,7 @@ var ACTION_DEFINITIONS = [
19467
19513
  {
19468
19514
  name: "computer_run_receipt",
19469
19515
  title: "Read a run receipt",
19470
- description: "READ ONLY: Inspect one Run's durable receipt during or after execution, including its Run-owned operation/activity state; use this instead of parent computer_status to establish whether an isolated Run still has work in flight. Returns compact history/assessments and durable operation receipts, not raw command transcripts or process output.",
19516
+ description: "READ ONLY: Inspect one Run's durable receipt during or after execution, including its Run-owned operation/activity state and a compact providerLifecycle journal (generation, last phase, typed reason) separate from command/process activity. Use this instead of parent computer_status; it returns compact history, not transcripts, and does not rewrite terminal reasonCode.",
19471
19517
  inputSchema: {
19472
19518
  runId: exports_external.string().describe("the run to read, run_… (from computer_run_start or computer_runs)")
19473
19519
  },
@@ -20360,7 +20406,7 @@ var ACTION_DEFINITIONS = [
20360
20406
  {
20361
20407
  name: "service_register",
20362
20408
  title: "Register a Computer lifecycle service",
20363
- description: "Register a persistent service identity for Currybox Computer lifecycle maintenance and mint its API key (shown ONCE). Human owner/admin CLI setup only. The credential is restricted to computer.get + computer.lifecycle_runs + computer.checkpoint + computer.suspend_run + computer.resume_run + computer.reconcile_runs and to the Spaces listed here; store it as the Currybox control plane's Arbor credential.",
20409
+ description: "Register a persistent service identity for Currybox Computer lifecycle maintenance and mint its API key (shown ONCE). Human owner/admin CLI setup only. The credential is restricted to computer.get + computer.lifecycle_runs + computer.append_run_lifecycle + computer.checkpoint + computer.suspend_run + computer.resume_run + computer.reconcile_runs and to the Spaces listed here; store it as the Currybox control plane's Arbor credential.",
20364
20410
  inputSchema: {
20365
20411
  displayName: exports_external.string().min(1).describe("the service display name, e.g. Currybox lifecycle service"),
20366
20412
  spaceIds: exports_external.array(exports_external.string().min(1)).min(1).describe("Spaces whose Thread computers the service may maintain")
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lambdacurry/arbor",
3
- "version": "0.21.7",
3
+ "version": "0.21.8",
4
4
  "description": "The Arbor CLI — a shared workspace for people and agents. The human + headless-agent write path over Arbor's guarded operation surface.",
5
5
  "keywords": [
6
6
  "agents",