@claudexor/schema 3.1.1 → 3.1.2

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 (85) hide show
  1. package/dist/agent-capabilities.d.ts +89 -1
  2. package/dist/agent-capabilities.d.ts.map +1 -1
  3. package/dist/agent-capabilities.js +5 -0
  4. package/dist/agent-capabilities.js.map +1 -1
  5. package/dist/apply-eligibility.d.ts +102 -0
  6. package/dist/apply-eligibility.d.ts.map +1 -1
  7. package/dist/apply-eligibility.js +17 -0
  8. package/dist/apply-eligibility.js.map +1 -1
  9. package/dist/budget.d.ts +4 -4
  10. package/dist/budget.d.ts.map +1 -1
  11. package/dist/budget.js +2 -0
  12. package/dist/budget.js.map +1 -1
  13. package/dist/control-operation-responses.d.ts +133 -29
  14. package/dist/control-operation-responses.d.ts.map +1 -1
  15. package/dist/control-operation-responses.js +25 -0
  16. package/dist/control-operation-responses.js.map +1 -1
  17. package/dist/control-run-detail.d.ts +1405 -197
  18. package/dist/control-run-detail.d.ts.map +1 -1
  19. package/dist/control-run-detail.js +6 -0
  20. package/dist/control-run-detail.js.map +1 -1
  21. package/dist/control-run-retry.d.ts +2 -2
  22. package/dist/control.d.ts +351 -79
  23. package/dist/control.d.ts.map +1 -1
  24. package/dist/control.js +23 -28
  25. package/dist/control.js.map +1 -1
  26. package/dist/decision.d.ts +5 -0
  27. package/dist/decision.d.ts.map +1 -1
  28. package/dist/decision.js +7 -3
  29. package/dist/decision.js.map +1 -1
  30. package/dist/delegation.d.ts +73 -0
  31. package/dist/delegation.d.ts.map +1 -0
  32. package/dist/delegation.js +120 -0
  33. package/dist/delegation.js.map +1 -0
  34. package/dist/events.d.ts +4 -4
  35. package/dist/events.d.ts.map +1 -1
  36. package/dist/events.js +3 -0
  37. package/dist/events.js.map +1 -1
  38. package/dist/harness.d.ts +15 -15
  39. package/dist/harness.d.ts.map +1 -1
  40. package/dist/harness.js +10 -14
  41. package/dist/harness.js.map +1 -1
  42. package/dist/index.d.ts +1 -0
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +1 -0
  45. package/dist/index.js.map +1 -1
  46. package/dist/readiness.d.ts +38 -0
  47. package/dist/readiness.d.ts.map +1 -1
  48. package/dist/readiness.js +4 -0
  49. package/dist/readiness.js.map +1 -1
  50. package/dist/request-requirements.d.ts +7 -7
  51. package/dist/request-requirements.d.ts.map +1 -1
  52. package/dist/request-requirements.js +2 -1
  53. package/dist/request-requirements.js.map +1 -1
  54. package/dist/task.d.ts +42 -0
  55. package/dist/task.d.ts.map +1 -1
  56. package/dist/task.js +11 -0
  57. package/dist/task.js.map +1 -1
  58. package/dist/telemetry.d.ts +87 -49
  59. package/dist/telemetry.d.ts.map +1 -1
  60. package/dist/telemetry.js +6 -9
  61. package/dist/telemetry.js.map +1 -1
  62. package/dist/workspace.d.ts +1 -1
  63. package/dist/workspace.js +7 -7
  64. package/dist/workspace.js.map +1 -1
  65. package/generated/AgentCapabilityCatalog.schema.json +39 -1
  66. package/generated/ControlHarnessListResponse.schema.json +48 -2
  67. package/generated/ControlRunAgainDraft.schema.json +6 -2
  68. package/generated/ControlRunControlResponse.schema.json +8 -0
  69. package/generated/ControlRunDetail.schema.json +116 -14
  70. package/generated/ControlRunListResponse.schema.json +93 -9
  71. package/generated/ControlRunStartRequest.schema.json +6 -2
  72. package/generated/ControlRunSummary.schema.json +93 -9
  73. package/generated/ControlThreadDetail.schema.json +64 -0
  74. package/generated/ControlThreadTurnRequest.schema.json +1 -1
  75. package/generated/DecisionRecord.schema.json +10 -1
  76. package/generated/HarnessManifest.schema.json +2 -2
  77. package/generated/HarnessStatusDto.schema.json +48 -2
  78. package/generated/McpRunHandleResult.schema.json +72 -1
  79. package/generated/McpRunToolResult.schema.json +69 -0
  80. package/generated/RunEvent.schema.json +1 -0
  81. package/generated/RunFailure.schema.json +4 -3
  82. package/generated/RunTelemetry.schema.json +61 -2
  83. package/generated/TaskContract.schema.json +43 -3
  84. package/generated/WorkspaceEnvelope.schema.json +6 -6
  85. package/package.json +2 -2
@@ -107,6 +107,39 @@ export declare const ControlRunDetail: z.ZodObject<{
107
107
  summary: z.ZodObject<{
108
108
  jobId: z.ZodString;
109
109
  runId: z.ZodString;
110
+ parentRunId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
111
+ delegatedFromRunId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
112
+ delegation: z.ZodDefault<z.ZodNullable<z.ZodEffects<z.ZodObject<{
113
+ requested: z.ZodDefault<z.ZodBoolean>;
114
+ effective: z.ZodDefault<z.ZodBoolean>;
115
+ used: z.ZodDefault<z.ZodBoolean>;
116
+ reason: z.ZodDefault<z.ZodEnum<["pending", "not_requested", "injected_unused", "used", "runtime_unavailable", "manifest_unsupported", "access_profile_incompatible", "partially_degraded", "startup_failed"]>>;
117
+ remediation: z.ZodDefault<z.ZodNullable<z.ZodString>>;
118
+ }, "strict", z.ZodTypeAny, {
119
+ requested: boolean;
120
+ effective: boolean;
121
+ reason: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed";
122
+ remediation: string | null;
123
+ used: boolean;
124
+ }, {
125
+ requested?: boolean | undefined;
126
+ effective?: boolean | undefined;
127
+ reason?: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed" | undefined;
128
+ remediation?: string | null | undefined;
129
+ used?: boolean | undefined;
130
+ }>, {
131
+ requested: boolean;
132
+ effective: boolean;
133
+ reason: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed";
134
+ remediation: string | null;
135
+ used: boolean;
136
+ }, {
137
+ requested?: boolean | undefined;
138
+ effective?: boolean | undefined;
139
+ reason?: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed" | undefined;
140
+ remediation?: string | null | undefined;
141
+ used?: boolean | undefined;
142
+ }>>>;
110
143
  taskId: z.ZodOptional<z.ZodString>;
111
144
  state: z.ZodEnum<["queued", "running", "succeeded", "failed", "cancelled", "interrupted"]>;
112
145
  runDir: z.ZodOptional<z.ZodString>;
@@ -114,7 +147,7 @@ export declare const ControlRunDetail: z.ZodObject<{
114
147
  failure: z.ZodDefault<z.ZodNullable<z.ZodObject<{
115
148
  phase: z.ZodDefault<z.ZodString>;
116
149
  category: z.ZodDefault<z.ZodEnum<["validation", "project", "auth", "harness_unavailable", "harness_error", "config_error", "budget", "policy", "cancelled", "internal", "unknown"]>>;
117
- code: z.ZodDefault<z.ZodNullable<z.ZodEnum<["finite_zero", "hard_cap", "estimate_headroom", "unknown_paid_in_flight", "budget_overshoot", "cost_unverifiable"]>>>;
150
+ code: z.ZodDefault<z.ZodNullable<z.ZodEnum<["finite_zero", "hard_cap", "estimate_headroom", "unknown_paid_in_flight", "budget_overshoot", "cost_unverifiable", "delegation_child_drain_timeout"]>>>;
118
151
  harnessId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
119
152
  attemptId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
120
153
  safeMessage: z.ZodString;
@@ -124,7 +157,7 @@ export declare const ControlRunDetail: z.ZodObject<{
124
157
  runDir: z.ZodDefault<z.ZodNullable<z.ZodString>>;
125
158
  nextActions: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
126
159
  }, "strip", z.ZodTypeAny, {
127
- code: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | null;
160
+ code: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null;
128
161
  harnessId: string | null;
129
162
  attemptId: string | null;
130
163
  runDir: string | null;
@@ -137,7 +170,7 @@ export declare const ControlRunDetail: z.ZodObject<{
137
170
  nextActions: string[];
138
171
  }, {
139
172
  safeMessage: string;
140
- code?: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | null | undefined;
173
+ code?: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null | undefined;
141
174
  harnessId?: string | null | undefined;
142
175
  attemptId?: string | null | undefined;
143
176
  runDir?: string | null | undefined;
@@ -301,28 +334,28 @@ export declare const ControlRunDetail: z.ZodObject<{
301
334
  errorSummary?: string | null | undefined;
302
335
  }>>;
303
336
  requestRequirements: z.ZodDefault<z.ZodArray<z.ZodObject<{
304
- capability: z.ZodEnum<["browser", "path_deny"]>;
337
+ capability: z.ZodEnum<["browser", "path_deny", "delegation"]>;
305
338
  harness_id: z.ZodString;
306
339
  eligible: z.ZodBoolean;
307
340
  requested: z.ZodBoolean;
308
341
  effective: z.ZodBoolean;
309
- reason: z.ZodEnum<["not_requested", "effective", "manifest_unsupported", "web_policy_off", "access_profile_incompatible", "postdiff_only"]>;
342
+ reason: z.ZodEnum<["not_requested", "effective", "manifest_unsupported", "web_policy_off", "access_profile_incompatible", "runtime_unavailable", "postdiff_only"]>;
310
343
  evidence_refs: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
311
344
  }, "strip", z.ZodTypeAny, {
312
345
  requested: boolean;
313
346
  effective: boolean;
314
347
  harness_id: string;
315
- reason: "effective" | "not_requested" | "manifest_unsupported" | "web_policy_off" | "access_profile_incompatible" | "postdiff_only";
348
+ reason: "effective" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "access_profile_incompatible" | "web_policy_off" | "postdiff_only";
316
349
  evidence_refs: string[];
317
350
  eligible: boolean;
318
- capability: "browser" | "path_deny";
351
+ capability: "browser" | "delegation" | "path_deny";
319
352
  }, {
320
353
  requested: boolean;
321
354
  effective: boolean;
322
355
  harness_id: string;
323
- reason: "effective" | "not_requested" | "manifest_unsupported" | "web_policy_off" | "access_profile_incompatible" | "postdiff_only";
356
+ reason: "effective" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "access_profile_incompatible" | "web_policy_off" | "postdiff_only";
324
357
  eligible: boolean;
325
- capability: "browser" | "path_deny";
358
+ capability: "browser" | "delegation" | "path_deny";
326
359
  evidence_refs?: string[] | undefined;
327
360
  }>, "many">>;
328
361
  toolPermissionPolicy: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -471,7 +504,7 @@ export declare const ControlRunDetail: z.ZodObject<{
471
504
  paid_fallback: z.ZodEnum<["never", "when_unavailable", "allowed_within_cap"]>;
472
505
  order: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
473
506
  dropped: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
474
- reason: z.ZodEnum<["subscription_entitlement_first", "lowest_incremental_cash", "quality_tier", "expiring_quota_slack", "all_incremental_cash_unknown", "declared_order"]>;
507
+ reason: z.ZodEnum<["subscription_entitlement_first", "lowest_incremental_cash", "quality_tier", "expiring_quota_slack", "all_incremental_cash_unknown", "delegate_effective_first", "explicit_primary", "declared_order"]>;
475
508
  entries: z.ZodDefault<z.ZodArray<z.ZodObject<{
476
509
  harness_id: z.ZodString;
477
510
  billing_knowledge: z.ZodEnum<["proven_zero", "subscription_entitlement", "metered", "unknown"]>;
@@ -495,13 +528,13 @@ export declare const ControlRunDetail: z.ZodObject<{
495
528
  incremental_cost_usd: number | null;
496
529
  eligible: boolean;
497
530
  }[];
498
- reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "declared_order";
531
+ reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "delegate_effective_first" | "explicit_primary" | "declared_order";
499
532
  goal: "auto" | "quality" | "economy";
500
533
  paid_fallback: "never" | "when_unavailable" | "allowed_within_cap";
501
534
  order: string[];
502
535
  dropped: string[];
503
536
  }, {
504
- reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "declared_order";
537
+ reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "delegate_effective_first" | "explicit_primary" | "declared_order";
505
538
  goal: "auto" | "quality" | "economy";
506
539
  paid_fallback: "never" | "when_unavailable" | "allowed_within_cap";
507
540
  entries?: {
@@ -534,6 +567,15 @@ export declare const ControlRunDetail: z.ZodObject<{
534
567
  finishedAt: z.ZodOptional<z.ZodString>;
535
568
  }, "strip", z.ZodTypeAny, {
536
569
  state: "failed" | "cancelled" | "running" | "succeeded" | "interrupted" | "queued";
570
+ parentRunId: string | null;
571
+ delegatedFromRunId: string | null;
572
+ delegation: {
573
+ requested: boolean;
574
+ effective: boolean;
575
+ reason: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed";
576
+ remediation: string | null;
577
+ used: boolean;
578
+ } | null;
537
579
  project: {
538
580
  kind: "none" | "project";
539
581
  context: "off" | "auto";
@@ -543,7 +585,7 @@ export declare const ControlRunDetail: z.ZodObject<{
543
585
  jobId: string;
544
586
  runId: string;
545
587
  failure: {
546
- code: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | null;
588
+ code: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null;
547
589
  harnessId: string | null;
548
590
  attemptId: string | null;
549
591
  runDir: string | null;
@@ -572,10 +614,10 @@ export declare const ControlRunDetail: z.ZodObject<{
572
614
  requested: boolean;
573
615
  effective: boolean;
574
616
  harness_id: string;
575
- reason: "effective" | "not_requested" | "manifest_unsupported" | "web_policy_off" | "access_profile_incompatible" | "postdiff_only";
617
+ reason: "effective" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "access_profile_incompatible" | "web_policy_off" | "postdiff_only";
576
618
  evidence_refs: string[];
577
619
  eligible: boolean;
578
- capability: "browser" | "path_deny";
620
+ capability: "browser" | "delegation" | "path_deny";
579
621
  }[];
580
622
  outputReadyState: "pending" | "finalizing" | "ready" | "diagnostic";
581
623
  toolWarningsTotal: number;
@@ -624,7 +666,7 @@ export declare const ControlRunDetail: z.ZodObject<{
624
666
  incremental_cost_usd: number | null;
625
667
  eligible: boolean;
626
668
  }[];
627
- reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "declared_order";
669
+ reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "delegate_effective_first" | "explicit_primary" | "declared_order";
628
670
  goal: "auto" | "quality" | "economy";
629
671
  paid_fallback: "never" | "when_unavailable" | "allowed_within_cap";
630
672
  order: string[];
@@ -700,6 +742,15 @@ export declare const ControlRunDetail: z.ZodObject<{
700
742
  mode?: "ask" | "plan" | "agent" | undefined;
701
743
  prompt?: string | undefined;
702
744
  access?: "readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native" | undefined;
745
+ parentRunId?: string | null | undefined;
746
+ delegatedFromRunId?: string | null | undefined;
747
+ delegation?: {
748
+ requested?: boolean | undefined;
749
+ effective?: boolean | undefined;
750
+ reason?: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed" | undefined;
751
+ remediation?: string | null | undefined;
752
+ used?: boolean | undefined;
753
+ } | null | undefined;
703
754
  harnesses?: string[] | undefined;
704
755
  model?: string | undefined;
705
756
  tests?: {
@@ -737,7 +788,7 @@ export declare const ControlRunDetail: z.ZodObject<{
737
788
  }[] | undefined;
738
789
  failure?: {
739
790
  safeMessage: string;
740
- code?: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | null | undefined;
791
+ code?: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null | undefined;
741
792
  harnessId?: string | null | undefined;
742
793
  attemptId?: string | null | undefined;
743
794
  runDir?: string | null | undefined;
@@ -788,9 +839,9 @@ export declare const ControlRunDetail: z.ZodObject<{
788
839
  requested: boolean;
789
840
  effective: boolean;
790
841
  harness_id: string;
791
- reason: "effective" | "not_requested" | "manifest_unsupported" | "web_policy_off" | "access_profile_incompatible" | "postdiff_only";
842
+ reason: "effective" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "access_profile_incompatible" | "web_policy_off" | "postdiff_only";
792
843
  eligible: boolean;
793
- capability: "browser" | "path_deny";
844
+ capability: "browser" | "delegation" | "path_deny";
794
845
  evidence_refs?: string[] | undefined;
795
846
  }[] | undefined;
796
847
  toolPermissionPolicy?: Record<string, unknown> | undefined;
@@ -835,7 +886,7 @@ export declare const ControlRunDetail: z.ZodObject<{
835
886
  observedModel?: string | null | undefined;
836
887
  } | null | undefined;
837
888
  routingRationale?: {
838
- reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "declared_order";
889
+ reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "delegate_effective_first" | "explicit_primary" | "declared_order";
839
890
  goal: "auto" | "quality" | "economy";
840
891
  paid_fallback: "never" | "when_unavailable" | "allowed_within_cap";
841
892
  entries?: {
@@ -849,97 +900,131 @@ export declare const ControlRunDetail: z.ZodObject<{
849
900
  } | null | undefined;
850
901
  finishedAt?: string | undefined;
851
902
  }>;
852
- /**
853
- * Server-owned outcome banner (D18): the ONE honest headline for this run,
854
- * derived by the single projection owner (status-projection.outcomeBanner)
855
- * from the terminal outcome facts + delivery state — e.g. "Candidate ready
856
- * — NOT APPLIED", "Applied", "Needs review". Surfaces render this verbatim
857
- * above any model prose; null while the run is not terminal.
858
- */
859
- outcomeBanner: z.ZodDefault<z.ZodNullable<z.ZodString>>;
860
- /**
861
- * Highest event seq included in this snapshot. Clients subscribe to the
862
- * event stream from this cursor; events with seq <= lastSeq are already
863
- * reflected in the snapshot (snapshot-then-subscribe, no gaps, no dupes).
864
- */
865
- lastSeq: z.ZodDefault<z.ZodNumber>;
866
- artifacts: z.ZodDefault<z.ZodArray<z.ZodObject<{
867
- path: z.ZodString;
868
- kind: z.ZodEnum<["file", "directory"]>;
869
- bytes: z.ZodOptional<z.ZodNumber>;
870
- mime: z.ZodOptional<z.ZodString>;
871
- }, "strip", z.ZodTypeAny, {
872
- path: string;
873
- kind: "file" | "directory";
874
- mime?: string | undefined;
875
- bytes?: number | undefined;
876
- }, {
877
- path: string;
878
- kind: "file" | "directory";
879
- mime?: string | undefined;
880
- bytes?: number | undefined;
881
- }>, "many">>;
882
- primaryOutput: z.ZodDefault<z.ZodNullable<z.ZodObject<{
883
- kind: z.ZodEnum<["answer", "report", "plan", "summary", "patch", "diagnostic", "structured_output"]>;
884
- path: z.ZodString;
885
- text: z.ZodDefault<z.ZodNullable<z.ZodString>>;
886
- bytes: z.ZodOptional<z.ZodNumber>;
887
- truncated: z.ZodDefault<z.ZodBoolean>;
888
- }, "strip", z.ZodTypeAny, {
889
- path: string;
890
- kind: "diagnostic" | "plan" | "summary" | "patch" | "answer" | "report" | "structured_output";
891
- text: string | null;
892
- truncated: boolean;
893
- bytes?: number | undefined;
894
- }, {
895
- path: string;
896
- kind: "diagnostic" | "plan" | "summary" | "patch" | "answer" | "report" | "structured_output";
897
- bytes?: number | undefined;
898
- text?: string | null | undefined;
899
- truncated?: boolean | undefined;
900
- }>>>;
901
- timeline: z.ZodDefault<z.ZodArray<z.ZodObject<{
902
- type: z.ZodString;
903
- ts: z.ZodOptional<z.ZodString>;
904
- harnessId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
905
- attemptId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
906
- title: z.ZodString;
907
- detail: z.ZodDefault<z.ZodNullable<z.ZodString>>;
908
- severity: z.ZodDefault<z.ZodEnum<["info", "warning", "error"]>>;
909
- toolName: z.ZodDefault<z.ZodNullable<z.ZodString>>;
910
- target: z.ZodDefault<z.ZodNullable<z.ZodString>>;
911
- errorSummary: z.ZodDefault<z.ZodNullable<z.ZodString>>;
912
- ignoredSettings: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
913
- rawRef: z.ZodDefault<z.ZodNullable<z.ZodString>>;
914
- }, "strip", z.ZodTypeAny, {
915
- type: string;
916
- detail: string | null;
917
- harnessId: string | null;
918
- attemptId: string | null;
919
- target: string | null;
920
- title: string;
921
- errorSummary: string | null;
922
- severity: "error" | "info" | "warning";
923
- toolName: string | null;
924
- ignoredSettings: string[];
925
- rawRef: string | null;
926
- ts?: string | undefined;
927
- }, {
928
- type: string;
929
- title: string;
930
- detail?: string | null | undefined;
931
- harnessId?: string | null | undefined;
932
- attemptId?: string | null | undefined;
933
- target?: string | null | undefined;
934
- ts?: string | undefined;
935
- errorSummary?: string | null | undefined;
936
- severity?: "error" | "info" | "warning" | undefined;
937
- toolName?: string | null | undefined;
938
- ignoredSettings?: string[] | undefined;
939
- rawRef?: string | null | undefined;
940
- }>, "many">>;
941
- budget: z.ZodDefault<z.ZodObject<{
942
- paidBudget: z.ZodDefault<z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
903
+ children: z.ZodDefault<z.ZodArray<z.ZodObject<{
904
+ jobId: z.ZodString;
905
+ runId: z.ZodString;
906
+ parentRunId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
907
+ delegatedFromRunId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
908
+ delegation: z.ZodDefault<z.ZodNullable<z.ZodEffects<z.ZodObject<{
909
+ requested: z.ZodDefault<z.ZodBoolean>;
910
+ effective: z.ZodDefault<z.ZodBoolean>;
911
+ used: z.ZodDefault<z.ZodBoolean>;
912
+ reason: z.ZodDefault<z.ZodEnum<["pending", "not_requested", "injected_unused", "used", "runtime_unavailable", "manifest_unsupported", "access_profile_incompatible", "partially_degraded", "startup_failed"]>>;
913
+ remediation: z.ZodDefault<z.ZodNullable<z.ZodString>>;
914
+ }, "strict", z.ZodTypeAny, {
915
+ requested: boolean;
916
+ effective: boolean;
917
+ reason: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed";
918
+ remediation: string | null;
919
+ used: boolean;
920
+ }, {
921
+ requested?: boolean | undefined;
922
+ effective?: boolean | undefined;
923
+ reason?: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed" | undefined;
924
+ remediation?: string | null | undefined;
925
+ used?: boolean | undefined;
926
+ }>, {
927
+ requested: boolean;
928
+ effective: boolean;
929
+ reason: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed";
930
+ remediation: string | null;
931
+ used: boolean;
932
+ }, {
933
+ requested?: boolean | undefined;
934
+ effective?: boolean | undefined;
935
+ reason?: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed" | undefined;
936
+ remediation?: string | null | undefined;
937
+ used?: boolean | undefined;
938
+ }>>>;
939
+ taskId: z.ZodOptional<z.ZodString>;
940
+ state: z.ZodEnum<["queued", "running", "succeeded", "failed", "cancelled", "interrupted"]>;
941
+ runDir: z.ZodOptional<z.ZodString>;
942
+ error: z.ZodOptional<z.ZodString>;
943
+ failure: z.ZodDefault<z.ZodNullable<z.ZodObject<{
944
+ phase: z.ZodDefault<z.ZodString>;
945
+ category: z.ZodDefault<z.ZodEnum<["validation", "project", "auth", "harness_unavailable", "harness_error", "config_error", "budget", "policy", "cancelled", "internal", "unknown"]>>;
946
+ code: z.ZodDefault<z.ZodNullable<z.ZodEnum<["finite_zero", "hard_cap", "estimate_headroom", "unknown_paid_in_flight", "budget_overshoot", "cost_unverifiable", "delegation_child_drain_timeout"]>>>;
947
+ harnessId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
948
+ attemptId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
949
+ safeMessage: z.ZodString;
950
+ rawDetailRef: z.ZodDefault<z.ZodNullable<z.ZodString>>;
951
+ logRefs: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
952
+ eventRefs: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
953
+ runDir: z.ZodDefault<z.ZodNullable<z.ZodString>>;
954
+ nextActions: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
955
+ }, "strip", z.ZodTypeAny, {
956
+ code: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null;
957
+ harnessId: string | null;
958
+ attemptId: string | null;
959
+ runDir: string | null;
960
+ phase: string;
961
+ category: "validation" | "unknown" | "harness_error" | "cancelled" | "auth" | "policy" | "budget" | "project" | "harness_unavailable" | "config_error" | "internal";
962
+ safeMessage: string;
963
+ rawDetailRef: string | null;
964
+ logRefs: string[];
965
+ eventRefs: string[];
966
+ nextActions: string[];
967
+ }, {
968
+ safeMessage: string;
969
+ code?: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null | undefined;
970
+ harnessId?: string | null | undefined;
971
+ attemptId?: string | null | undefined;
972
+ runDir?: string | null | undefined;
973
+ phase?: string | undefined;
974
+ category?: "validation" | "unknown" | "harness_error" | "cancelled" | "auth" | "policy" | "budget" | "project" | "harness_unavailable" | "config_error" | "internal" | undefined;
975
+ rawDetailRef?: string | null | undefined;
976
+ logRefs?: string[] | undefined;
977
+ eventRefs?: string[] | undefined;
978
+ nextActions?: string[] | undefined;
979
+ }>>>;
980
+ project: z.ZodDefault<z.ZodObject<{
981
+ kind: z.ZodDefault<z.ZodEnum<["project", "none"]>>;
982
+ root: z.ZodDefault<z.ZodNullable<z.ZodString>>;
983
+ projectName: z.ZodDefault<z.ZodNullable<z.ZodString>>;
984
+ context: z.ZodDefault<z.ZodEnum<["off", "auto"]>>;
985
+ }, "strip", z.ZodTypeAny, {
986
+ kind: "none" | "project";
987
+ context: "off" | "auto";
988
+ root: string | null;
989
+ projectName: string | null;
990
+ }, {
991
+ kind?: "none" | "project" | undefined;
992
+ context?: "off" | "auto" | undefined;
993
+ root?: string | null | undefined;
994
+ projectName?: string | null | undefined;
995
+ }>>;
996
+ mode: z.ZodOptional<z.ZodEnum<["ask", "plan", "agent"]>>;
997
+ strategy: z.ZodOptional<z.ZodNullable<z.ZodEnum<["race", "attempts", "until_clean", "deep_scan", "create"]>>>;
998
+ prompt: z.ZodOptional<z.ZodString>;
999
+ harnesses: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1000
+ primaryHarness: z.ZodOptional<z.ZodString>;
1001
+ routingGoal: z.ZodOptional<z.ZodEnum<["auto", "quality", "economy"]>>;
1002
+ model: z.ZodOptional<z.ZodString>;
1003
+ reviewerPanel: z.ZodOptional<z.ZodArray<z.ZodObject<{
1004
+ harness: z.ZodString;
1005
+ model: z.ZodOptional<z.ZodString>;
1006
+ effort: z.ZodOptional<z.ZodString>;
1007
+ }, "strict", z.ZodTypeAny, {
1008
+ harness: string;
1009
+ model?: string | undefined;
1010
+ effort?: string | undefined;
1011
+ }, {
1012
+ harness: string;
1013
+ model?: string | undefined;
1014
+ effort?: string | undefined;
1015
+ }>, "many">>;
1016
+ protectedPathApprovals: z.ZodOptional<z.ZodArray<z.ZodObject<{
1017
+ path: z.ZodString;
1018
+ reason: z.ZodOptional<z.ZodString>;
1019
+ }, "strict", z.ZodTypeAny, {
1020
+ path: string;
1021
+ reason?: string | undefined;
1022
+ }, {
1023
+ path: string;
1024
+ reason?: string | undefined;
1025
+ }>, "many">>;
1026
+ n: z.ZodOptional<z.ZodNumber>;
1027
+ paidBudget: z.ZodOptional<z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
943
1028
  kind: z.ZodLiteral<"unlimited">;
944
1029
  }, "strict", z.ZodTypeAny, {
945
1030
  kind: "unlimited";
@@ -955,63 +1040,825 @@ export declare const ControlRunDetail: z.ZodObject<{
955
1040
  kind: "finite";
956
1041
  maxUsd: number;
957
1042
  }>]>>;
958
- spendUsd: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
959
- valuationUsd: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
960
- valuationKnowledge: z.ZodDefault<z.ZodEnum<["exact", "estimated", "unknown"]>>;
961
- remainingUsd: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
962
- estimated: z.ZodDefault<z.ZodBoolean>;
963
- source: z.ZodDefault<z.ZodEnum<["decision", "events", "settings", "unknown"]>>;
964
- evidence: z.ZodDefault<z.ZodEnum<["complete", "incomplete", "unavailable"]>>;
965
- }, "strip", z.ZodTypeAny, {
966
- source: "unknown" | "decision" | "events" | "settings";
967
- estimated: boolean;
968
- paidBudget: {
969
- kind: "unlimited";
970
- } | {
971
- kind: "finite";
972
- maxUsd: number;
973
- };
974
- spendUsd: number | null;
975
- valuationUsd: number | null;
976
- valuationKnowledge: "exact" | "unknown" | "estimated";
977
- remainingUsd: number | null;
978
- evidence: "unavailable" | "incomplete" | "complete";
979
- }, {
980
- source?: "unknown" | "decision" | "events" | "settings" | undefined;
981
- estimated?: boolean | undefined;
982
- paidBudget?: {
983
- kind: "unlimited";
984
- } | {
985
- kind: "finite";
986
- maxUsd: number;
987
- } | undefined;
988
- spendUsd?: number | null | undefined;
989
- valuationUsd?: number | null | undefined;
990
- valuationKnowledge?: "exact" | "unknown" | "estimated" | undefined;
991
- remainingUsd?: number | null | undefined;
992
- evidence?: "unavailable" | "incomplete" | "complete" | undefined;
993
- }>>;
994
- finalSummary: z.ZodDefault<z.ZodNullable<z.ZodString>>;
995
- decision: z.ZodDefault<z.ZodNullable<z.ZodObject<{
996
- winner: z.ZodNullable<z.ZodString>;
997
- facts: z.ZodObject<{
998
- lifecycle: z.ZodEnum<["succeeded", "failed", "cancelled", "interrupted"]>;
999
- noChanges: z.ZodDefault<z.ZodBoolean>;
1000
- checks: z.ZodDefault<z.ZodEnum<["passed", "failed", "not_configured"]>>;
1001
- review: z.ZodDefault<z.ZodEnum<["approved", "blocked", "not_run"]>>;
1002
- reason: z.ZodDefault<z.ZodNullable<z.ZodEnum<["harness_failed", "no_changes", "review_blocked", "checks_failed", "budget_exhausted", "budget_overshoot", "cost_unverifiable", "not_converged", "stuck_no_progress", "wall_clock_exceeded", "user_cancelled", "crash_interrupted", "input_required", "work_incomplete", "context_capacity_exhausted", "work_report_contract"]>>>;
1003
- work_state: z.ZodOptional<z.ZodObject<{
1004
- state: z.ZodEnum<["completed", "needs_input", "incomplete", "unverified"]>;
1005
- source: z.ZodEnum<["constrained", "validated", "absent"]>;
1006
- required_inputs: z.ZodOptional<z.ZodArray<z.ZodObject<{
1007
- kind: z.ZodEnum<["file", "context", "credential", "permission", "decision", "external_dependency"]>;
1008
- locator: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1009
- description: z.ZodString;
1010
- }, "strip", z.ZodTypeAny, {
1011
- kind: "file" | "context" | "decision" | "credential" | "permission" | "external_dependency";
1012
- description: string;
1013
- locator: string | null;
1014
- }, {
1043
+ spendUsd: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1044
+ spendEstimated: z.ZodOptional<z.ZodBoolean>;
1045
+ inputTokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1046
+ outputTokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1047
+ cachedInputTokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1048
+ outputConformance: z.ZodOptional<z.ZodNullable<z.ZodEnum<["passed", "failed"]>>>;
1049
+ authRoute: z.ZodOptional<z.ZodNullable<z.ZodObject<{
1050
+ requested: z.ZodEnum<["subscription", "api_key", "auto"]>;
1051
+ effective: z.ZodDefault<z.ZodNullable<z.ZodEnum<["local_session", "api_key", "unknown"]>>>;
1052
+ source: z.ZodDefault<z.ZodNullable<z.ZodEnum<["native_session", "oauth_token_env", "api_key_env", "api_key_flag", "provider_auth_file", "none"]>>>;
1053
+ reason: z.ZodEnum<["as_requested", "native_first", "no_native_session_fallback", "requested_route_unavailable", "undisclosed"]>;
1054
+ harnessId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1055
+ attemptId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1056
+ modelMismatch: z.ZodDefault<z.ZodNullable<z.ZodObject<{
1057
+ requested: z.ZodString;
1058
+ observed: z.ZodString;
1059
+ }, "strip", z.ZodTypeAny, {
1060
+ requested: string;
1061
+ observed: string;
1062
+ }, {
1063
+ requested: string;
1064
+ observed: string;
1065
+ }>>>;
1066
+ }, "strip", z.ZodTypeAny, {
1067
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none" | null;
1068
+ harnessId: string | null;
1069
+ requested: "auto" | "subscription" | "api_key";
1070
+ attemptId: string | null;
1071
+ effective: "unknown" | "api_key" | "local_session" | null;
1072
+ reason: "as_requested" | "native_first" | "no_native_session_fallback" | "requested_route_unavailable" | "undisclosed";
1073
+ modelMismatch: {
1074
+ requested: string;
1075
+ observed: string;
1076
+ } | null;
1077
+ }, {
1078
+ requested: "auto" | "subscription" | "api_key";
1079
+ reason: "as_requested" | "native_first" | "no_native_session_fallback" | "requested_route_unavailable" | "undisclosed";
1080
+ source?: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none" | null | undefined;
1081
+ harnessId?: string | null | undefined;
1082
+ attemptId?: string | null | undefined;
1083
+ effective?: "unknown" | "api_key" | "local_session" | null | undefined;
1084
+ modelMismatch?: {
1085
+ requested: string;
1086
+ observed: string;
1087
+ } | null | undefined;
1088
+ }>>>;
1089
+ access: z.ZodOptional<z.ZodEnum<["readonly", "workspace_write", "full", "external_sandbox_full", "inherit_native"]>>;
1090
+ requestedAccess: z.ZodOptional<z.ZodEnum<["readonly", "workspace_write", "full", "external_sandbox_full", "inherit_native"]>>;
1091
+ effectiveAccess: z.ZodOptional<z.ZodEnum<["readonly", "workspace_write", "full", "external_sandbox_full", "inherit_native"]>>;
1092
+ externalContextPolicy: z.ZodOptional<z.ZodEnum<["off", "auto", "cached", "live"]>>;
1093
+ webRequired: z.ZodOptional<z.ZodBoolean>;
1094
+ webMode: z.ZodOptional<z.ZodEnum<["off", "auto", "cached", "live"]>>;
1095
+ webEvidence: z.ZodDefault<z.ZodObject<{
1096
+ required: z.ZodDefault<z.ZodBoolean>;
1097
+ mode: z.ZodDefault<z.ZodEnum<["off", "auto", "cached", "live"]>>;
1098
+ effectiveMode: z.ZodDefault<z.ZodEnum<["off", "auto", "cached", "live"]>>;
1099
+ attempted: z.ZodDefault<z.ZodBoolean>;
1100
+ satisfied: z.ZodDefault<z.ZodBoolean>;
1101
+ status: z.ZodDefault<z.ZodEnum<["none", "attempted", "satisfied", "failed", "unverified"]>>;
1102
+ tool: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1103
+ target: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1104
+ errorSummary: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1105
+ rawDetailRef: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1106
+ available: z.ZodDefault<z.ZodBoolean>;
1107
+ }, "strip", z.ZodTypeAny, {
1108
+ status: "failed" | "none" | "unverified" | "attempted" | "satisfied";
1109
+ available: boolean;
1110
+ target: string | null;
1111
+ mode: "off" | "auto" | "cached" | "live";
1112
+ required: boolean;
1113
+ tool: string | null;
1114
+ attempted: boolean;
1115
+ rawDetailRef: string | null;
1116
+ effectiveMode: "off" | "auto" | "cached" | "live";
1117
+ satisfied: boolean;
1118
+ errorSummary: string | null;
1119
+ }, {
1120
+ status?: "failed" | "none" | "unverified" | "attempted" | "satisfied" | undefined;
1121
+ available?: boolean | undefined;
1122
+ target?: string | null | undefined;
1123
+ mode?: "off" | "auto" | "cached" | "live" | undefined;
1124
+ required?: boolean | undefined;
1125
+ tool?: string | null | undefined;
1126
+ attempted?: boolean | undefined;
1127
+ rawDetailRef?: string | null | undefined;
1128
+ effectiveMode?: "off" | "auto" | "cached" | "live" | undefined;
1129
+ satisfied?: boolean | undefined;
1130
+ errorSummary?: string | null | undefined;
1131
+ }>>;
1132
+ requestRequirements: z.ZodDefault<z.ZodArray<z.ZodObject<{
1133
+ capability: z.ZodEnum<["browser", "path_deny", "delegation"]>;
1134
+ harness_id: z.ZodString;
1135
+ eligible: z.ZodBoolean;
1136
+ requested: z.ZodBoolean;
1137
+ effective: z.ZodBoolean;
1138
+ reason: z.ZodEnum<["not_requested", "effective", "manifest_unsupported", "web_policy_off", "access_profile_incompatible", "runtime_unavailable", "postdiff_only"]>;
1139
+ evidence_refs: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1140
+ }, "strip", z.ZodTypeAny, {
1141
+ requested: boolean;
1142
+ effective: boolean;
1143
+ harness_id: string;
1144
+ reason: "effective" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "access_profile_incompatible" | "web_policy_off" | "postdiff_only";
1145
+ evidence_refs: string[];
1146
+ eligible: boolean;
1147
+ capability: "browser" | "delegation" | "path_deny";
1148
+ }, {
1149
+ requested: boolean;
1150
+ effective: boolean;
1151
+ harness_id: string;
1152
+ reason: "effective" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "access_profile_incompatible" | "web_policy_off" | "postdiff_only";
1153
+ eligible: boolean;
1154
+ capability: "browser" | "delegation" | "path_deny";
1155
+ evidence_refs?: string[] | undefined;
1156
+ }>, "many">>;
1157
+ toolPermissionPolicy: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1158
+ outputReadyState: z.ZodDefault<z.ZodEnum<["pending", "finalizing", "ready", "diagnostic"]>>;
1159
+ toolWarningsTotal: z.ZodDefault<z.ZodNumber>;
1160
+ result: z.ZodDefault<z.ZodObject<{
1161
+ kind: z.ZodDefault<z.ZodEnum<["patch", "answer", "plan", "report", "none"]>>;
1162
+ diffStat: z.ZodDefault<z.ZodNullable<z.ZodObject<{
1163
+ files: z.ZodNumber;
1164
+ additions: z.ZodNumber;
1165
+ deletions: z.ZodNumber;
1166
+ }, "strip", z.ZodTypeAny, {
1167
+ files: number;
1168
+ additions: number;
1169
+ deletions: number;
1170
+ }, {
1171
+ files: number;
1172
+ additions: number;
1173
+ deletions: number;
1174
+ }>>>;
1175
+ blockers: z.ZodDefault<z.ZodNumber>;
1176
+ adopted: z.ZodDefault<z.ZodNullable<z.ZodBoolean>>;
1177
+ applyState: z.ZodDefault<z.ZodEnum<["not_applied", "applied", "applied_review_blocked", "reverted"]>>;
1178
+ preTurnSha: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1179
+ postTurnSha: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1180
+ revertAnchorId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1181
+ revertable: z.ZodDefault<z.ZodBoolean>;
1182
+ }, "strip", z.ZodTypeAny, {
1183
+ kind: "plan" | "none" | "patch" | "answer" | "report";
1184
+ applyState: "not_applied" | "applied" | "applied_review_blocked" | "reverted";
1185
+ revertAnchorId: string | null;
1186
+ postTurnSha: string | null;
1187
+ diffStat: {
1188
+ files: number;
1189
+ additions: number;
1190
+ deletions: number;
1191
+ } | null;
1192
+ blockers: number;
1193
+ adopted: boolean | null;
1194
+ preTurnSha: string | null;
1195
+ revertable: boolean;
1196
+ }, {
1197
+ kind?: "plan" | "none" | "patch" | "answer" | "report" | undefined;
1198
+ applyState?: "not_applied" | "applied" | "applied_review_blocked" | "reverted" | undefined;
1199
+ revertAnchorId?: string | null | undefined;
1200
+ postTurnSha?: string | null | undefined;
1201
+ diffStat?: {
1202
+ files: number;
1203
+ additions: number;
1204
+ deletions: number;
1205
+ } | null | undefined;
1206
+ blockers?: number | undefined;
1207
+ adopted?: boolean | null | undefined;
1208
+ preTurnSha?: string | null | undefined;
1209
+ revertable?: boolean | undefined;
1210
+ }>>;
1211
+ outcomeFacts: z.ZodDefault<z.ZodNullable<z.ZodObject<{
1212
+ lifecycle: z.ZodEnum<["succeeded", "failed", "cancelled", "interrupted"]>;
1213
+ noChanges: z.ZodDefault<z.ZodBoolean>;
1214
+ checks: z.ZodDefault<z.ZodEnum<["passed", "failed", "not_configured"]>>;
1215
+ review: z.ZodDefault<z.ZodEnum<["approved", "blocked", "not_run"]>>;
1216
+ reason: z.ZodDefault<z.ZodNullable<z.ZodEnum<["harness_failed", "no_changes", "review_blocked", "checks_failed", "budget_exhausted", "budget_overshoot", "cost_unverifiable", "not_converged", "stuck_no_progress", "wall_clock_exceeded", "user_cancelled", "crash_interrupted", "input_required", "work_incomplete", "context_capacity_exhausted", "work_report_contract"]>>>;
1217
+ work_state: z.ZodOptional<z.ZodObject<{
1218
+ state: z.ZodEnum<["completed", "needs_input", "incomplete", "unverified"]>;
1219
+ source: z.ZodEnum<["constrained", "validated", "absent"]>;
1220
+ required_inputs: z.ZodOptional<z.ZodArray<z.ZodObject<{
1221
+ kind: z.ZodEnum<["file", "context", "credential", "permission", "decision", "external_dependency"]>;
1222
+ locator: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1223
+ description: z.ZodString;
1224
+ }, "strip", z.ZodTypeAny, {
1225
+ kind: "file" | "context" | "decision" | "credential" | "permission" | "external_dependency";
1226
+ description: string;
1227
+ locator: string | null;
1228
+ }, {
1229
+ kind: "file" | "context" | "decision" | "credential" | "permission" | "external_dependency";
1230
+ description: string;
1231
+ locator?: string | null | undefined;
1232
+ }>, "many">>;
1233
+ }, "strip", z.ZodTypeAny, {
1234
+ source: "constrained" | "validated" | "absent";
1235
+ state: "completed" | "needs_input" | "incomplete" | "unverified";
1236
+ required_inputs?: {
1237
+ kind: "file" | "context" | "decision" | "credential" | "permission" | "external_dependency";
1238
+ description: string;
1239
+ locator: string | null;
1240
+ }[] | undefined;
1241
+ }, {
1242
+ source: "constrained" | "validated" | "absent";
1243
+ state: "completed" | "needs_input" | "incomplete" | "unverified";
1244
+ required_inputs?: {
1245
+ kind: "file" | "context" | "decision" | "credential" | "permission" | "external_dependency";
1246
+ description: string;
1247
+ locator?: string | null | undefined;
1248
+ }[] | undefined;
1249
+ }>>;
1250
+ }, "strict", z.ZodTypeAny, {
1251
+ review: "not_run" | "approved" | "blocked";
1252
+ reason: "harness_failed" | "no_changes" | "review_blocked" | "checks_failed" | "budget_exhausted" | "budget_overshoot" | "cost_unverifiable" | "not_converged" | "stuck_no_progress" | "wall_clock_exceeded" | "user_cancelled" | "crash_interrupted" | "input_required" | "work_incomplete" | "context_capacity_exhausted" | "work_report_contract" | null;
1253
+ checks: "passed" | "failed" | "not_configured";
1254
+ lifecycle: "failed" | "cancelled" | "succeeded" | "interrupted";
1255
+ noChanges: boolean;
1256
+ work_state?: {
1257
+ source: "constrained" | "validated" | "absent";
1258
+ state: "completed" | "needs_input" | "incomplete" | "unverified";
1259
+ required_inputs?: {
1260
+ kind: "file" | "context" | "decision" | "credential" | "permission" | "external_dependency";
1261
+ description: string;
1262
+ locator: string | null;
1263
+ }[] | undefined;
1264
+ } | undefined;
1265
+ }, {
1266
+ lifecycle: "failed" | "cancelled" | "succeeded" | "interrupted";
1267
+ review?: "not_run" | "approved" | "blocked" | undefined;
1268
+ reason?: "harness_failed" | "no_changes" | "review_blocked" | "checks_failed" | "budget_exhausted" | "budget_overshoot" | "cost_unverifiable" | "not_converged" | "stuck_no_progress" | "wall_clock_exceeded" | "user_cancelled" | "crash_interrupted" | "input_required" | "work_incomplete" | "context_capacity_exhausted" | "work_report_contract" | null | undefined;
1269
+ checks?: "passed" | "failed" | "not_configured" | undefined;
1270
+ noChanges?: boolean | undefined;
1271
+ work_state?: {
1272
+ source: "constrained" | "validated" | "absent";
1273
+ state: "completed" | "needs_input" | "incomplete" | "unverified";
1274
+ required_inputs?: {
1275
+ kind: "file" | "context" | "decision" | "credential" | "permission" | "external_dependency";
1276
+ description: string;
1277
+ locator?: string | null | undefined;
1278
+ }[] | undefined;
1279
+ } | undefined;
1280
+ }>>>;
1281
+ waitingOnUser: z.ZodDefault<z.ZodBoolean>;
1282
+ route: z.ZodDefault<z.ZodNullable<z.ZodObject<{
1283
+ requestedModel: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1284
+ observedModel: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1285
+ harnessId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1286
+ verified: z.ZodDefault<z.ZodBoolean>;
1287
+ }, "strip", z.ZodTypeAny, {
1288
+ harnessId: string | null;
1289
+ verified: boolean;
1290
+ requestedModel: string | null;
1291
+ observedModel: string | null;
1292
+ }, {
1293
+ harnessId?: string | null | undefined;
1294
+ verified?: boolean | undefined;
1295
+ requestedModel?: string | null | undefined;
1296
+ observedModel?: string | null | undefined;
1297
+ }>>>;
1298
+ routingRationale: z.ZodDefault<z.ZodNullable<z.ZodObject<{
1299
+ goal: z.ZodEnum<["auto", "quality", "economy"]>;
1300
+ paid_fallback: z.ZodEnum<["never", "when_unavailable", "allowed_within_cap"]>;
1301
+ order: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1302
+ dropped: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1303
+ reason: z.ZodEnum<["subscription_entitlement_first", "lowest_incremental_cash", "quality_tier", "expiring_quota_slack", "all_incremental_cash_unknown", "delegate_effective_first", "explicit_primary", "declared_order"]>;
1304
+ entries: z.ZodDefault<z.ZodArray<z.ZodObject<{
1305
+ harness_id: z.ZodString;
1306
+ billing_knowledge: z.ZodEnum<["proven_zero", "subscription_entitlement", "metered", "unknown"]>;
1307
+ incremental_cost_usd: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
1308
+ eligible: z.ZodBoolean;
1309
+ }, "strip", z.ZodTypeAny, {
1310
+ harness_id: string;
1311
+ billing_knowledge: "unknown" | "proven_zero" | "subscription_entitlement" | "metered";
1312
+ incremental_cost_usd: number | null;
1313
+ eligible: boolean;
1314
+ }, {
1315
+ harness_id: string;
1316
+ billing_knowledge: "unknown" | "proven_zero" | "subscription_entitlement" | "metered";
1317
+ eligible: boolean;
1318
+ incremental_cost_usd?: number | null | undefined;
1319
+ }>, "many">>;
1320
+ }, "strip", z.ZodTypeAny, {
1321
+ entries: {
1322
+ harness_id: string;
1323
+ billing_knowledge: "unknown" | "proven_zero" | "subscription_entitlement" | "metered";
1324
+ incremental_cost_usd: number | null;
1325
+ eligible: boolean;
1326
+ }[];
1327
+ reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "delegate_effective_first" | "explicit_primary" | "declared_order";
1328
+ goal: "auto" | "quality" | "economy";
1329
+ paid_fallback: "never" | "when_unavailable" | "allowed_within_cap";
1330
+ order: string[];
1331
+ dropped: string[];
1332
+ }, {
1333
+ reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "delegate_effective_first" | "explicit_primary" | "declared_order";
1334
+ goal: "auto" | "quality" | "economy";
1335
+ paid_fallback: "never" | "when_unavailable" | "allowed_within_cap";
1336
+ entries?: {
1337
+ harness_id: string;
1338
+ billing_knowledge: "unknown" | "proven_zero" | "subscription_entitlement" | "metered";
1339
+ eligible: boolean;
1340
+ incremental_cost_usd?: number | null | undefined;
1341
+ }[] | undefined;
1342
+ order?: string[] | undefined;
1343
+ dropped?: string[] | undefined;
1344
+ }>>>;
1345
+ tests: z.ZodOptional<z.ZodArray<z.ZodObject<{
1346
+ program: z.ZodString;
1347
+ args: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1348
+ cwd: z.ZodOptional<z.ZodString>;
1349
+ envAllowlist: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1350
+ }, "strict", z.ZodTypeAny, {
1351
+ args: string[];
1352
+ program: string;
1353
+ envAllowlist: string[];
1354
+ cwd?: string | undefined;
1355
+ }, {
1356
+ program: string;
1357
+ args?: string[] | undefined;
1358
+ cwd?: string | undefined;
1359
+ envAllowlist?: string[] | undefined;
1360
+ }>, "many">>;
1361
+ createdAt: z.ZodOptional<z.ZodString>;
1362
+ startedAt: z.ZodOptional<z.ZodString>;
1363
+ finishedAt: z.ZodOptional<z.ZodString>;
1364
+ }, "strip", z.ZodTypeAny, {
1365
+ state: "failed" | "cancelled" | "running" | "succeeded" | "interrupted" | "queued";
1366
+ parentRunId: string | null;
1367
+ delegatedFromRunId: string | null;
1368
+ delegation: {
1369
+ requested: boolean;
1370
+ effective: boolean;
1371
+ reason: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed";
1372
+ remediation: string | null;
1373
+ used: boolean;
1374
+ } | null;
1375
+ project: {
1376
+ kind: "none" | "project";
1377
+ context: "off" | "auto";
1378
+ root: string | null;
1379
+ projectName: string | null;
1380
+ };
1381
+ jobId: string;
1382
+ runId: string;
1383
+ failure: {
1384
+ code: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null;
1385
+ harnessId: string | null;
1386
+ attemptId: string | null;
1387
+ runDir: string | null;
1388
+ phase: string;
1389
+ category: "validation" | "unknown" | "harness_error" | "cancelled" | "auth" | "policy" | "budget" | "project" | "harness_unavailable" | "config_error" | "internal";
1390
+ safeMessage: string;
1391
+ rawDetailRef: string | null;
1392
+ logRefs: string[];
1393
+ eventRefs: string[];
1394
+ nextActions: string[];
1395
+ } | null;
1396
+ webEvidence: {
1397
+ status: "failed" | "none" | "unverified" | "attempted" | "satisfied";
1398
+ available: boolean;
1399
+ target: string | null;
1400
+ mode: "off" | "auto" | "cached" | "live";
1401
+ required: boolean;
1402
+ tool: string | null;
1403
+ attempted: boolean;
1404
+ rawDetailRef: string | null;
1405
+ effectiveMode: "off" | "auto" | "cached" | "live";
1406
+ satisfied: boolean;
1407
+ errorSummary: string | null;
1408
+ };
1409
+ requestRequirements: {
1410
+ requested: boolean;
1411
+ effective: boolean;
1412
+ harness_id: string;
1413
+ reason: "effective" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "access_profile_incompatible" | "web_policy_off" | "postdiff_only";
1414
+ evidence_refs: string[];
1415
+ eligible: boolean;
1416
+ capability: "browser" | "delegation" | "path_deny";
1417
+ }[];
1418
+ outputReadyState: "pending" | "finalizing" | "ready" | "diagnostic";
1419
+ toolWarningsTotal: number;
1420
+ result: {
1421
+ kind: "plan" | "none" | "patch" | "answer" | "report";
1422
+ applyState: "not_applied" | "applied" | "applied_review_blocked" | "reverted";
1423
+ revertAnchorId: string | null;
1424
+ postTurnSha: string | null;
1425
+ diffStat: {
1426
+ files: number;
1427
+ additions: number;
1428
+ deletions: number;
1429
+ } | null;
1430
+ blockers: number;
1431
+ adopted: boolean | null;
1432
+ preTurnSha: string | null;
1433
+ revertable: boolean;
1434
+ };
1435
+ outcomeFacts: {
1436
+ review: "not_run" | "approved" | "blocked";
1437
+ reason: "harness_failed" | "no_changes" | "review_blocked" | "checks_failed" | "budget_exhausted" | "budget_overshoot" | "cost_unverifiable" | "not_converged" | "stuck_no_progress" | "wall_clock_exceeded" | "user_cancelled" | "crash_interrupted" | "input_required" | "work_incomplete" | "context_capacity_exhausted" | "work_report_contract" | null;
1438
+ checks: "passed" | "failed" | "not_configured";
1439
+ lifecycle: "failed" | "cancelled" | "succeeded" | "interrupted";
1440
+ noChanges: boolean;
1441
+ work_state?: {
1442
+ source: "constrained" | "validated" | "absent";
1443
+ state: "completed" | "needs_input" | "incomplete" | "unverified";
1444
+ required_inputs?: {
1445
+ kind: "file" | "context" | "decision" | "credential" | "permission" | "external_dependency";
1446
+ description: string;
1447
+ locator: string | null;
1448
+ }[] | undefined;
1449
+ } | undefined;
1450
+ } | null;
1451
+ waitingOnUser: boolean;
1452
+ route: {
1453
+ harnessId: string | null;
1454
+ verified: boolean;
1455
+ requestedModel: string | null;
1456
+ observedModel: string | null;
1457
+ } | null;
1458
+ routingRationale: {
1459
+ entries: {
1460
+ harness_id: string;
1461
+ billing_knowledge: "unknown" | "proven_zero" | "subscription_entitlement" | "metered";
1462
+ incremental_cost_usd: number | null;
1463
+ eligible: boolean;
1464
+ }[];
1465
+ reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "delegate_effective_first" | "explicit_primary" | "declared_order";
1466
+ goal: "auto" | "quality" | "economy";
1467
+ paid_fallback: "never" | "when_unavailable" | "allowed_within_cap";
1468
+ order: string[];
1469
+ dropped: string[];
1470
+ } | null;
1471
+ startedAt?: string | undefined;
1472
+ error?: string | undefined;
1473
+ createdAt?: string | undefined;
1474
+ mode?: "ask" | "plan" | "agent" | undefined;
1475
+ prompt?: string | undefined;
1476
+ access?: "readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native" | undefined;
1477
+ harnesses?: string[] | undefined;
1478
+ model?: string | undefined;
1479
+ tests?: {
1480
+ args: string[];
1481
+ program: string;
1482
+ envAllowlist: string[];
1483
+ cwd?: string | undefined;
1484
+ }[] | undefined;
1485
+ taskId?: string | undefined;
1486
+ runDir?: string | undefined;
1487
+ primaryHarness?: string | undefined;
1488
+ routingGoal?: "auto" | "quality" | "economy" | undefined;
1489
+ n?: number | undefined;
1490
+ paidBudget?: {
1491
+ kind: "unlimited";
1492
+ } | {
1493
+ kind: "finite";
1494
+ maxUsd: number;
1495
+ } | undefined;
1496
+ externalContextPolicy?: "off" | "auto" | "cached" | "live" | undefined;
1497
+ protectedPathApprovals?: {
1498
+ path: string;
1499
+ reason?: string | undefined;
1500
+ }[] | undefined;
1501
+ reviewerPanel?: {
1502
+ harness: string;
1503
+ model?: string | undefined;
1504
+ effort?: string | undefined;
1505
+ }[] | undefined;
1506
+ strategy?: "attempts" | "create" | "race" | "until_clean" | "deep_scan" | null | undefined;
1507
+ spendUsd?: number | null | undefined;
1508
+ spendEstimated?: boolean | undefined;
1509
+ inputTokens?: number | null | undefined;
1510
+ outputTokens?: number | null | undefined;
1511
+ cachedInputTokens?: number | null | undefined;
1512
+ outputConformance?: "passed" | "failed" | null | undefined;
1513
+ authRoute?: {
1514
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none" | null;
1515
+ harnessId: string | null;
1516
+ requested: "auto" | "subscription" | "api_key";
1517
+ attemptId: string | null;
1518
+ effective: "unknown" | "api_key" | "local_session" | null;
1519
+ reason: "as_requested" | "native_first" | "no_native_session_fallback" | "requested_route_unavailable" | "undisclosed";
1520
+ modelMismatch: {
1521
+ requested: string;
1522
+ observed: string;
1523
+ } | null;
1524
+ } | null | undefined;
1525
+ requestedAccess?: "readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native" | undefined;
1526
+ effectiveAccess?: "readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native" | undefined;
1527
+ webRequired?: boolean | undefined;
1528
+ webMode?: "off" | "auto" | "cached" | "live" | undefined;
1529
+ toolPermissionPolicy?: Record<string, unknown> | undefined;
1530
+ finishedAt?: string | undefined;
1531
+ }, {
1532
+ state: "failed" | "cancelled" | "running" | "succeeded" | "interrupted" | "queued";
1533
+ jobId: string;
1534
+ runId: string;
1535
+ startedAt?: string | undefined;
1536
+ error?: string | undefined;
1537
+ createdAt?: string | undefined;
1538
+ mode?: "ask" | "plan" | "agent" | undefined;
1539
+ prompt?: string | undefined;
1540
+ access?: "readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native" | undefined;
1541
+ parentRunId?: string | null | undefined;
1542
+ delegatedFromRunId?: string | null | undefined;
1543
+ delegation?: {
1544
+ requested?: boolean | undefined;
1545
+ effective?: boolean | undefined;
1546
+ reason?: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed" | undefined;
1547
+ remediation?: string | null | undefined;
1548
+ used?: boolean | undefined;
1549
+ } | null | undefined;
1550
+ harnesses?: string[] | undefined;
1551
+ model?: string | undefined;
1552
+ tests?: {
1553
+ program: string;
1554
+ args?: string[] | undefined;
1555
+ cwd?: string | undefined;
1556
+ envAllowlist?: string[] | undefined;
1557
+ }[] | undefined;
1558
+ project?: {
1559
+ kind?: "none" | "project" | undefined;
1560
+ context?: "off" | "auto" | undefined;
1561
+ root?: string | null | undefined;
1562
+ projectName?: string | null | undefined;
1563
+ } | undefined;
1564
+ taskId?: string | undefined;
1565
+ runDir?: string | undefined;
1566
+ primaryHarness?: string | undefined;
1567
+ routingGoal?: "auto" | "quality" | "economy" | undefined;
1568
+ n?: number | undefined;
1569
+ paidBudget?: {
1570
+ kind: "unlimited";
1571
+ } | {
1572
+ kind: "finite";
1573
+ maxUsd: number;
1574
+ } | undefined;
1575
+ externalContextPolicy?: "off" | "auto" | "cached" | "live" | undefined;
1576
+ protectedPathApprovals?: {
1577
+ path: string;
1578
+ reason?: string | undefined;
1579
+ }[] | undefined;
1580
+ reviewerPanel?: {
1581
+ harness: string;
1582
+ model?: string | undefined;
1583
+ effort?: string | undefined;
1584
+ }[] | undefined;
1585
+ failure?: {
1586
+ safeMessage: string;
1587
+ code?: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null | undefined;
1588
+ harnessId?: string | null | undefined;
1589
+ attemptId?: string | null | undefined;
1590
+ runDir?: string | null | undefined;
1591
+ phase?: string | undefined;
1592
+ category?: "validation" | "unknown" | "harness_error" | "cancelled" | "auth" | "policy" | "budget" | "project" | "harness_unavailable" | "config_error" | "internal" | undefined;
1593
+ rawDetailRef?: string | null | undefined;
1594
+ logRefs?: string[] | undefined;
1595
+ eventRefs?: string[] | undefined;
1596
+ nextActions?: string[] | undefined;
1597
+ } | null | undefined;
1598
+ strategy?: "attempts" | "create" | "race" | "until_clean" | "deep_scan" | null | undefined;
1599
+ spendUsd?: number | null | undefined;
1600
+ spendEstimated?: boolean | undefined;
1601
+ inputTokens?: number | null | undefined;
1602
+ outputTokens?: number | null | undefined;
1603
+ cachedInputTokens?: number | null | undefined;
1604
+ outputConformance?: "passed" | "failed" | null | undefined;
1605
+ authRoute?: {
1606
+ requested: "auto" | "subscription" | "api_key";
1607
+ reason: "as_requested" | "native_first" | "no_native_session_fallback" | "requested_route_unavailable" | "undisclosed";
1608
+ source?: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none" | null | undefined;
1609
+ harnessId?: string | null | undefined;
1610
+ attemptId?: string | null | undefined;
1611
+ effective?: "unknown" | "api_key" | "local_session" | null | undefined;
1612
+ modelMismatch?: {
1613
+ requested: string;
1614
+ observed: string;
1615
+ } | null | undefined;
1616
+ } | null | undefined;
1617
+ requestedAccess?: "readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native" | undefined;
1618
+ effectiveAccess?: "readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native" | undefined;
1619
+ webRequired?: boolean | undefined;
1620
+ webMode?: "off" | "auto" | "cached" | "live" | undefined;
1621
+ webEvidence?: {
1622
+ status?: "failed" | "none" | "unverified" | "attempted" | "satisfied" | undefined;
1623
+ available?: boolean | undefined;
1624
+ target?: string | null | undefined;
1625
+ mode?: "off" | "auto" | "cached" | "live" | undefined;
1626
+ required?: boolean | undefined;
1627
+ tool?: string | null | undefined;
1628
+ attempted?: boolean | undefined;
1629
+ rawDetailRef?: string | null | undefined;
1630
+ effectiveMode?: "off" | "auto" | "cached" | "live" | undefined;
1631
+ satisfied?: boolean | undefined;
1632
+ errorSummary?: string | null | undefined;
1633
+ } | undefined;
1634
+ requestRequirements?: {
1635
+ requested: boolean;
1636
+ effective: boolean;
1637
+ harness_id: string;
1638
+ reason: "effective" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "access_profile_incompatible" | "web_policy_off" | "postdiff_only";
1639
+ eligible: boolean;
1640
+ capability: "browser" | "delegation" | "path_deny";
1641
+ evidence_refs?: string[] | undefined;
1642
+ }[] | undefined;
1643
+ toolPermissionPolicy?: Record<string, unknown> | undefined;
1644
+ outputReadyState?: "pending" | "finalizing" | "ready" | "diagnostic" | undefined;
1645
+ toolWarningsTotal?: number | undefined;
1646
+ result?: {
1647
+ kind?: "plan" | "none" | "patch" | "answer" | "report" | undefined;
1648
+ applyState?: "not_applied" | "applied" | "applied_review_blocked" | "reverted" | undefined;
1649
+ revertAnchorId?: string | null | undefined;
1650
+ postTurnSha?: string | null | undefined;
1651
+ diffStat?: {
1652
+ files: number;
1653
+ additions: number;
1654
+ deletions: number;
1655
+ } | null | undefined;
1656
+ blockers?: number | undefined;
1657
+ adopted?: boolean | null | undefined;
1658
+ preTurnSha?: string | null | undefined;
1659
+ revertable?: boolean | undefined;
1660
+ } | undefined;
1661
+ outcomeFacts?: {
1662
+ lifecycle: "failed" | "cancelled" | "succeeded" | "interrupted";
1663
+ review?: "not_run" | "approved" | "blocked" | undefined;
1664
+ reason?: "harness_failed" | "no_changes" | "review_blocked" | "checks_failed" | "budget_exhausted" | "budget_overshoot" | "cost_unverifiable" | "not_converged" | "stuck_no_progress" | "wall_clock_exceeded" | "user_cancelled" | "crash_interrupted" | "input_required" | "work_incomplete" | "context_capacity_exhausted" | "work_report_contract" | null | undefined;
1665
+ checks?: "passed" | "failed" | "not_configured" | undefined;
1666
+ noChanges?: boolean | undefined;
1667
+ work_state?: {
1668
+ source: "constrained" | "validated" | "absent";
1669
+ state: "completed" | "needs_input" | "incomplete" | "unverified";
1670
+ required_inputs?: {
1671
+ kind: "file" | "context" | "decision" | "credential" | "permission" | "external_dependency";
1672
+ description: string;
1673
+ locator?: string | null | undefined;
1674
+ }[] | undefined;
1675
+ } | undefined;
1676
+ } | null | undefined;
1677
+ waitingOnUser?: boolean | undefined;
1678
+ route?: {
1679
+ harnessId?: string | null | undefined;
1680
+ verified?: boolean | undefined;
1681
+ requestedModel?: string | null | undefined;
1682
+ observedModel?: string | null | undefined;
1683
+ } | null | undefined;
1684
+ routingRationale?: {
1685
+ reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "delegate_effective_first" | "explicit_primary" | "declared_order";
1686
+ goal: "auto" | "quality" | "economy";
1687
+ paid_fallback: "never" | "when_unavailable" | "allowed_within_cap";
1688
+ entries?: {
1689
+ harness_id: string;
1690
+ billing_knowledge: "unknown" | "proven_zero" | "subscription_entitlement" | "metered";
1691
+ eligible: boolean;
1692
+ incremental_cost_usd?: number | null | undefined;
1693
+ }[] | undefined;
1694
+ order?: string[] | undefined;
1695
+ dropped?: string[] | undefined;
1696
+ } | null | undefined;
1697
+ finishedAt?: string | undefined;
1698
+ }>, "many">>;
1699
+ /**
1700
+ * Server-owned outcome banner (D18): the ONE honest headline for this run,
1701
+ * derived by the single projection owner (status-projection.outcomeBanner)
1702
+ * from the terminal outcome facts + delivery state — e.g. "Candidate ready
1703
+ * — NOT APPLIED", "Applied", "Needs review". Surfaces render this verbatim
1704
+ * above any model prose; null while the run is not terminal.
1705
+ */
1706
+ outcomeBanner: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1707
+ /**
1708
+ * Highest event seq included in this snapshot. Clients subscribe to the
1709
+ * event stream from this cursor; events with seq <= lastSeq are already
1710
+ * reflected in the snapshot (snapshot-then-subscribe, no gaps, no dupes).
1711
+ */
1712
+ lastSeq: z.ZodDefault<z.ZodNumber>;
1713
+ artifacts: z.ZodDefault<z.ZodArray<z.ZodObject<{
1714
+ path: z.ZodString;
1715
+ kind: z.ZodEnum<["file", "directory"]>;
1716
+ bytes: z.ZodOptional<z.ZodNumber>;
1717
+ mime: z.ZodOptional<z.ZodString>;
1718
+ }, "strip", z.ZodTypeAny, {
1719
+ path: string;
1720
+ kind: "file" | "directory";
1721
+ mime?: string | undefined;
1722
+ bytes?: number | undefined;
1723
+ }, {
1724
+ path: string;
1725
+ kind: "file" | "directory";
1726
+ mime?: string | undefined;
1727
+ bytes?: number | undefined;
1728
+ }>, "many">>;
1729
+ primaryOutput: z.ZodDefault<z.ZodNullable<z.ZodObject<{
1730
+ kind: z.ZodEnum<["answer", "report", "plan", "summary", "patch", "diagnostic", "structured_output"]>;
1731
+ path: z.ZodString;
1732
+ text: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1733
+ bytes: z.ZodOptional<z.ZodNumber>;
1734
+ truncated: z.ZodDefault<z.ZodBoolean>;
1735
+ }, "strip", z.ZodTypeAny, {
1736
+ path: string;
1737
+ kind: "diagnostic" | "plan" | "summary" | "patch" | "answer" | "report" | "structured_output";
1738
+ text: string | null;
1739
+ truncated: boolean;
1740
+ bytes?: number | undefined;
1741
+ }, {
1742
+ path: string;
1743
+ kind: "diagnostic" | "plan" | "summary" | "patch" | "answer" | "report" | "structured_output";
1744
+ bytes?: number | undefined;
1745
+ text?: string | null | undefined;
1746
+ truncated?: boolean | undefined;
1747
+ }>>>;
1748
+ timeline: z.ZodDefault<z.ZodArray<z.ZodObject<{
1749
+ type: z.ZodString;
1750
+ ts: z.ZodOptional<z.ZodString>;
1751
+ harnessId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1752
+ attemptId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1753
+ title: z.ZodString;
1754
+ detail: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1755
+ severity: z.ZodDefault<z.ZodEnum<["info", "warning", "error"]>>;
1756
+ toolName: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1757
+ target: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1758
+ errorSummary: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1759
+ ignoredSettings: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1760
+ rawRef: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1761
+ }, "strip", z.ZodTypeAny, {
1762
+ type: string;
1763
+ detail: string | null;
1764
+ harnessId: string | null;
1765
+ attemptId: string | null;
1766
+ target: string | null;
1767
+ title: string;
1768
+ errorSummary: string | null;
1769
+ severity: "error" | "info" | "warning";
1770
+ toolName: string | null;
1771
+ ignoredSettings: string[];
1772
+ rawRef: string | null;
1773
+ ts?: string | undefined;
1774
+ }, {
1775
+ type: string;
1776
+ title: string;
1777
+ detail?: string | null | undefined;
1778
+ harnessId?: string | null | undefined;
1779
+ attemptId?: string | null | undefined;
1780
+ target?: string | null | undefined;
1781
+ ts?: string | undefined;
1782
+ errorSummary?: string | null | undefined;
1783
+ severity?: "error" | "info" | "warning" | undefined;
1784
+ toolName?: string | null | undefined;
1785
+ ignoredSettings?: string[] | undefined;
1786
+ rawRef?: string | null | undefined;
1787
+ }>, "many">>;
1788
+ budget: z.ZodDefault<z.ZodObject<{
1789
+ paidBudget: z.ZodDefault<z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
1790
+ kind: z.ZodLiteral<"unlimited">;
1791
+ }, "strict", z.ZodTypeAny, {
1792
+ kind: "unlimited";
1793
+ }, {
1794
+ kind: "unlimited";
1795
+ }>, z.ZodObject<{
1796
+ kind: z.ZodLiteral<"finite">;
1797
+ maxUsd: z.ZodNumber;
1798
+ }, "strict", z.ZodTypeAny, {
1799
+ kind: "finite";
1800
+ maxUsd: number;
1801
+ }, {
1802
+ kind: "finite";
1803
+ maxUsd: number;
1804
+ }>]>>;
1805
+ spendUsd: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
1806
+ valuationUsd: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
1807
+ valuationKnowledge: z.ZodDefault<z.ZodEnum<["exact", "estimated", "unknown"]>>;
1808
+ remainingUsd: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
1809
+ estimated: z.ZodDefault<z.ZodBoolean>;
1810
+ source: z.ZodDefault<z.ZodEnum<["decision", "events", "settings", "unknown"]>>;
1811
+ evidence: z.ZodDefault<z.ZodEnum<["complete", "incomplete", "unavailable"]>>;
1812
+ }, "strip", z.ZodTypeAny, {
1813
+ source: "unknown" | "decision" | "events" | "settings";
1814
+ estimated: boolean;
1815
+ paidBudget: {
1816
+ kind: "unlimited";
1817
+ } | {
1818
+ kind: "finite";
1819
+ maxUsd: number;
1820
+ };
1821
+ spendUsd: number | null;
1822
+ valuationUsd: number | null;
1823
+ valuationKnowledge: "exact" | "unknown" | "estimated";
1824
+ remainingUsd: number | null;
1825
+ evidence: "unavailable" | "incomplete" | "complete";
1826
+ }, {
1827
+ source?: "unknown" | "decision" | "events" | "settings" | undefined;
1828
+ estimated?: boolean | undefined;
1829
+ paidBudget?: {
1830
+ kind: "unlimited";
1831
+ } | {
1832
+ kind: "finite";
1833
+ maxUsd: number;
1834
+ } | undefined;
1835
+ spendUsd?: number | null | undefined;
1836
+ valuationUsd?: number | null | undefined;
1837
+ valuationKnowledge?: "exact" | "unknown" | "estimated" | undefined;
1838
+ remainingUsd?: number | null | undefined;
1839
+ evidence?: "unavailable" | "incomplete" | "complete" | undefined;
1840
+ }>>;
1841
+ finalSummary: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1842
+ decision: z.ZodDefault<z.ZodNullable<z.ZodObject<{
1843
+ winner: z.ZodNullable<z.ZodString>;
1844
+ facts: z.ZodObject<{
1845
+ lifecycle: z.ZodEnum<["succeeded", "failed", "cancelled", "interrupted"]>;
1846
+ noChanges: z.ZodDefault<z.ZodBoolean>;
1847
+ checks: z.ZodDefault<z.ZodEnum<["passed", "failed", "not_configured"]>>;
1848
+ review: z.ZodDefault<z.ZodEnum<["approved", "blocked", "not_run"]>>;
1849
+ reason: z.ZodDefault<z.ZodNullable<z.ZodEnum<["harness_failed", "no_changes", "review_blocked", "checks_failed", "budget_exhausted", "budget_overshoot", "cost_unverifiable", "not_converged", "stuck_no_progress", "wall_clock_exceeded", "user_cancelled", "crash_interrupted", "input_required", "work_incomplete", "context_capacity_exhausted", "work_report_contract"]>>>;
1850
+ work_state: z.ZodOptional<z.ZodObject<{
1851
+ state: z.ZodEnum<["completed", "needs_input", "incomplete", "unverified"]>;
1852
+ source: z.ZodEnum<["constrained", "validated", "absent"]>;
1853
+ required_inputs: z.ZodOptional<z.ZodArray<z.ZodObject<{
1854
+ kind: z.ZodEnum<["file", "context", "credential", "permission", "decision", "external_dependency"]>;
1855
+ locator: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1856
+ description: z.ZodString;
1857
+ }, "strip", z.ZodTypeAny, {
1858
+ kind: "file" | "context" | "decision" | "credential" | "permission" | "external_dependency";
1859
+ description: string;
1860
+ locator: string | null;
1861
+ }, {
1015
1862
  kind: "file" | "context" | "decision" | "credential" | "permission" | "external_dependency";
1016
1863
  description: string;
1017
1864
  locator?: string | null | undefined;
@@ -1102,16 +1949,19 @@ export declare const ControlRunDetail: z.ZodObject<{
1102
1949
  estimated: z.ZodDefault<z.ZodBoolean>;
1103
1950
  cash_usd: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
1104
1951
  valuation_usd: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
1952
+ valuation_knowledge: z.ZodOptional<z.ZodEnum<["exact", "estimated", "unknown"]>>;
1105
1953
  }, "strip", z.ZodTypeAny, {
1106
1954
  estimated: boolean;
1107
1955
  spend_usd: number | null;
1108
1956
  cash_usd: number | null;
1109
1957
  valuation_usd: number | null;
1958
+ valuation_knowledge?: "exact" | "unknown" | "estimated" | undefined;
1110
1959
  }, {
1111
1960
  estimated?: boolean | undefined;
1112
1961
  spend_usd?: number | null | undefined;
1113
1962
  cash_usd?: number | null | undefined;
1114
1963
  valuation_usd?: number | null | undefined;
1964
+ valuation_knowledge?: "exact" | "unknown" | "estimated" | undefined;
1115
1965
  }>>;
1116
1966
  apply_recommendation: z.ZodDefault<z.ZodEnum<["apply", "inspect", "continue", "human_review"]>>;
1117
1967
  verification_basis: z.ZodDefault<z.ZodEnum<["none", "cross_family_review", "both"]>>;
@@ -1195,6 +2045,7 @@ export declare const ControlRunDetail: z.ZodObject<{
1195
2045
  spend_usd: number | null;
1196
2046
  cash_usd: number | null;
1197
2047
  valuation_usd: number | null;
2048
+ valuation_knowledge?: "exact" | "unknown" | "estimated" | undefined;
1198
2049
  };
1199
2050
  apply_recommendation: "apply" | "inspect" | "continue" | "human_review";
1200
2051
  verification_basis: "none" | "cross_family_review" | "both";
@@ -1250,6 +2101,7 @@ export declare const ControlRunDetail: z.ZodObject<{
1250
2101
  spend_usd?: number | null | undefined;
1251
2102
  cash_usd?: number | null | undefined;
1252
2103
  valuation_usd?: number | null | undefined;
2104
+ valuation_knowledge?: "exact" | "unknown" | "estimated" | undefined;
1253
2105
  } | undefined;
1254
2106
  apply_recommendation?: "apply" | "inspect" | "continue" | "human_review" | undefined;
1255
2107
  verification_basis?: "none" | "cross_family_review" | "both" | undefined;
@@ -1753,7 +2605,7 @@ export declare const ControlRunDetail: z.ZodObject<{
1753
2605
  failure: z.ZodDefault<z.ZodNullable<z.ZodObject<{
1754
2606
  phase: z.ZodDefault<z.ZodString>;
1755
2607
  category: z.ZodDefault<z.ZodEnum<["validation", "project", "auth", "harness_unavailable", "harness_error", "config_error", "budget", "policy", "cancelled", "internal", "unknown"]>>;
1756
- code: z.ZodDefault<z.ZodNullable<z.ZodEnum<["finite_zero", "hard_cap", "estimate_headroom", "unknown_paid_in_flight", "budget_overshoot", "cost_unverifiable"]>>>;
2608
+ code: z.ZodDefault<z.ZodNullable<z.ZodEnum<["finite_zero", "hard_cap", "estimate_headroom", "unknown_paid_in_flight", "budget_overshoot", "cost_unverifiable", "delegation_child_drain_timeout"]>>>;
1757
2609
  harnessId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1758
2610
  attemptId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1759
2611
  safeMessage: z.ZodString;
@@ -1763,7 +2615,7 @@ export declare const ControlRunDetail: z.ZodObject<{
1763
2615
  runDir: z.ZodDefault<z.ZodNullable<z.ZodString>>;
1764
2616
  nextActions: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1765
2617
  }, "strip", z.ZodTypeAny, {
1766
- code: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | null;
2618
+ code: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null;
1767
2619
  harnessId: string | null;
1768
2620
  attemptId: string | null;
1769
2621
  runDir: string | null;
@@ -1776,7 +2628,7 @@ export declare const ControlRunDetail: z.ZodObject<{
1776
2628
  nextActions: string[];
1777
2629
  }, {
1778
2630
  safeMessage: string;
1779
- code?: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | null | undefined;
2631
+ code?: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null | undefined;
1780
2632
  harnessId?: string | null | undefined;
1781
2633
  attemptId?: string | null | undefined;
1782
2634
  runDir?: string | null | undefined;
@@ -1806,6 +2658,15 @@ export declare const ControlRunDetail: z.ZodObject<{
1806
2658
  }, "strip", z.ZodTypeAny, {
1807
2659
  summary: {
1808
2660
  state: "failed" | "cancelled" | "running" | "succeeded" | "interrupted" | "queued";
2661
+ parentRunId: string | null;
2662
+ delegatedFromRunId: string | null;
2663
+ delegation: {
2664
+ requested: boolean;
2665
+ effective: boolean;
2666
+ reason: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed";
2667
+ remediation: string | null;
2668
+ used: boolean;
2669
+ } | null;
1809
2670
  project: {
1810
2671
  kind: "none" | "project";
1811
2672
  context: "off" | "auto";
@@ -1815,7 +2676,7 @@ export declare const ControlRunDetail: z.ZodObject<{
1815
2676
  jobId: string;
1816
2677
  runId: string;
1817
2678
  failure: {
1818
- code: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | null;
2679
+ code: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null;
1819
2680
  harnessId: string | null;
1820
2681
  attemptId: string | null;
1821
2682
  runDir: string | null;
@@ -1844,10 +2705,10 @@ export declare const ControlRunDetail: z.ZodObject<{
1844
2705
  requested: boolean;
1845
2706
  effective: boolean;
1846
2707
  harness_id: string;
1847
- reason: "effective" | "not_requested" | "manifest_unsupported" | "web_policy_off" | "access_profile_incompatible" | "postdiff_only";
2708
+ reason: "effective" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "access_profile_incompatible" | "web_policy_off" | "postdiff_only";
1848
2709
  evidence_refs: string[];
1849
2710
  eligible: boolean;
1850
- capability: "browser" | "path_deny";
2711
+ capability: "browser" | "delegation" | "path_deny";
1851
2712
  }[];
1852
2713
  outputReadyState: "pending" | "finalizing" | "ready" | "diagnostic";
1853
2714
  toolWarningsTotal: number;
@@ -1896,7 +2757,7 @@ export declare const ControlRunDetail: z.ZodObject<{
1896
2757
  incremental_cost_usd: number | null;
1897
2758
  eligible: boolean;
1898
2759
  }[];
1899
- reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "declared_order";
2760
+ reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "delegate_effective_first" | "explicit_primary" | "declared_order";
1900
2761
  goal: "auto" | "quality" | "economy";
1901
2762
  paid_fallback: "never" | "when_unavailable" | "allowed_within_cap";
1902
2763
  order: string[];
@@ -2003,6 +2864,7 @@ export declare const ControlRunDetail: z.ZodObject<{
2003
2864
  spend_usd: number | null;
2004
2865
  cash_usd: number | null;
2005
2866
  valuation_usd: number | null;
2867
+ valuation_knowledge?: "exact" | "unknown" | "estimated" | undefined;
2006
2868
  };
2007
2869
  apply_recommendation: "apply" | "inspect" | "continue" | "human_review";
2008
2870
  verification_basis: "none" | "cross_family_review" | "both";
@@ -2047,7 +2909,7 @@ export declare const ControlRunDetail: z.ZodObject<{
2047
2909
  }[];
2048
2910
  } | null;
2049
2911
  failure: {
2050
- code: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | null;
2912
+ code: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null;
2051
2913
  harnessId: string | null;
2052
2914
  attemptId: string | null;
2053
2915
  runDir: string | null;
@@ -2078,22 +2940,190 @@ export declare const ControlRunDetail: z.ZodObject<{
2078
2940
  label: string;
2079
2941
  description: string | null;
2080
2942
  }[];
2081
- id: string;
2082
- question: string;
2083
- header: string | null;
2084
- multi_select: boolean;
2085
- }[];
2086
- runId: string;
2087
- interactionId: string;
2088
- sourceTool: string | null;
2089
- requestedAt: string;
2090
- timeoutAt: string | null;
2091
- }[];
2092
- artifacts: {
2093
- path: string;
2094
- kind: "file" | "directory";
2095
- mime?: string | undefined;
2096
- bytes?: number | undefined;
2943
+ id: string;
2944
+ question: string;
2945
+ header: string | null;
2946
+ multi_select: boolean;
2947
+ }[];
2948
+ runId: string;
2949
+ interactionId: string;
2950
+ sourceTool: string | null;
2951
+ requestedAt: string;
2952
+ timeoutAt: string | null;
2953
+ }[];
2954
+ artifacts: {
2955
+ path: string;
2956
+ kind: "file" | "directory";
2957
+ mime?: string | undefined;
2958
+ bytes?: number | undefined;
2959
+ }[];
2960
+ children: {
2961
+ state: "failed" | "cancelled" | "running" | "succeeded" | "interrupted" | "queued";
2962
+ parentRunId: string | null;
2963
+ delegatedFromRunId: string | null;
2964
+ delegation: {
2965
+ requested: boolean;
2966
+ effective: boolean;
2967
+ reason: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed";
2968
+ remediation: string | null;
2969
+ used: boolean;
2970
+ } | null;
2971
+ project: {
2972
+ kind: "none" | "project";
2973
+ context: "off" | "auto";
2974
+ root: string | null;
2975
+ projectName: string | null;
2976
+ };
2977
+ jobId: string;
2978
+ runId: string;
2979
+ failure: {
2980
+ code: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null;
2981
+ harnessId: string | null;
2982
+ attemptId: string | null;
2983
+ runDir: string | null;
2984
+ phase: string;
2985
+ category: "validation" | "unknown" | "harness_error" | "cancelled" | "auth" | "policy" | "budget" | "project" | "harness_unavailable" | "config_error" | "internal";
2986
+ safeMessage: string;
2987
+ rawDetailRef: string | null;
2988
+ logRefs: string[];
2989
+ eventRefs: string[];
2990
+ nextActions: string[];
2991
+ } | null;
2992
+ webEvidence: {
2993
+ status: "failed" | "none" | "unverified" | "attempted" | "satisfied";
2994
+ available: boolean;
2995
+ target: string | null;
2996
+ mode: "off" | "auto" | "cached" | "live";
2997
+ required: boolean;
2998
+ tool: string | null;
2999
+ attempted: boolean;
3000
+ rawDetailRef: string | null;
3001
+ effectiveMode: "off" | "auto" | "cached" | "live";
3002
+ satisfied: boolean;
3003
+ errorSummary: string | null;
3004
+ };
3005
+ requestRequirements: {
3006
+ requested: boolean;
3007
+ effective: boolean;
3008
+ harness_id: string;
3009
+ reason: "effective" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "access_profile_incompatible" | "web_policy_off" | "postdiff_only";
3010
+ evidence_refs: string[];
3011
+ eligible: boolean;
3012
+ capability: "browser" | "delegation" | "path_deny";
3013
+ }[];
3014
+ outputReadyState: "pending" | "finalizing" | "ready" | "diagnostic";
3015
+ toolWarningsTotal: number;
3016
+ result: {
3017
+ kind: "plan" | "none" | "patch" | "answer" | "report";
3018
+ applyState: "not_applied" | "applied" | "applied_review_blocked" | "reverted";
3019
+ revertAnchorId: string | null;
3020
+ postTurnSha: string | null;
3021
+ diffStat: {
3022
+ files: number;
3023
+ additions: number;
3024
+ deletions: number;
3025
+ } | null;
3026
+ blockers: number;
3027
+ adopted: boolean | null;
3028
+ preTurnSha: string | null;
3029
+ revertable: boolean;
3030
+ };
3031
+ outcomeFacts: {
3032
+ review: "not_run" | "approved" | "blocked";
3033
+ reason: "harness_failed" | "no_changes" | "review_blocked" | "checks_failed" | "budget_exhausted" | "budget_overshoot" | "cost_unverifiable" | "not_converged" | "stuck_no_progress" | "wall_clock_exceeded" | "user_cancelled" | "crash_interrupted" | "input_required" | "work_incomplete" | "context_capacity_exhausted" | "work_report_contract" | null;
3034
+ checks: "passed" | "failed" | "not_configured";
3035
+ lifecycle: "failed" | "cancelled" | "succeeded" | "interrupted";
3036
+ noChanges: boolean;
3037
+ work_state?: {
3038
+ source: "constrained" | "validated" | "absent";
3039
+ state: "completed" | "needs_input" | "incomplete" | "unverified";
3040
+ required_inputs?: {
3041
+ kind: "file" | "context" | "decision" | "credential" | "permission" | "external_dependency";
3042
+ description: string;
3043
+ locator: string | null;
3044
+ }[] | undefined;
3045
+ } | undefined;
3046
+ } | null;
3047
+ waitingOnUser: boolean;
3048
+ route: {
3049
+ harnessId: string | null;
3050
+ verified: boolean;
3051
+ requestedModel: string | null;
3052
+ observedModel: string | null;
3053
+ } | null;
3054
+ routingRationale: {
3055
+ entries: {
3056
+ harness_id: string;
3057
+ billing_knowledge: "unknown" | "proven_zero" | "subscription_entitlement" | "metered";
3058
+ incremental_cost_usd: number | null;
3059
+ eligible: boolean;
3060
+ }[];
3061
+ reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "delegate_effective_first" | "explicit_primary" | "declared_order";
3062
+ goal: "auto" | "quality" | "economy";
3063
+ paid_fallback: "never" | "when_unavailable" | "allowed_within_cap";
3064
+ order: string[];
3065
+ dropped: string[];
3066
+ } | null;
3067
+ startedAt?: string | undefined;
3068
+ error?: string | undefined;
3069
+ createdAt?: string | undefined;
3070
+ mode?: "ask" | "plan" | "agent" | undefined;
3071
+ prompt?: string | undefined;
3072
+ access?: "readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native" | undefined;
3073
+ harnesses?: string[] | undefined;
3074
+ model?: string | undefined;
3075
+ tests?: {
3076
+ args: string[];
3077
+ program: string;
3078
+ envAllowlist: string[];
3079
+ cwd?: string | undefined;
3080
+ }[] | undefined;
3081
+ taskId?: string | undefined;
3082
+ runDir?: string | undefined;
3083
+ primaryHarness?: string | undefined;
3084
+ routingGoal?: "auto" | "quality" | "economy" | undefined;
3085
+ n?: number | undefined;
3086
+ paidBudget?: {
3087
+ kind: "unlimited";
3088
+ } | {
3089
+ kind: "finite";
3090
+ maxUsd: number;
3091
+ } | undefined;
3092
+ externalContextPolicy?: "off" | "auto" | "cached" | "live" | undefined;
3093
+ protectedPathApprovals?: {
3094
+ path: string;
3095
+ reason?: string | undefined;
3096
+ }[] | undefined;
3097
+ reviewerPanel?: {
3098
+ harness: string;
3099
+ model?: string | undefined;
3100
+ effort?: string | undefined;
3101
+ }[] | undefined;
3102
+ strategy?: "attempts" | "create" | "race" | "until_clean" | "deep_scan" | null | undefined;
3103
+ spendUsd?: number | null | undefined;
3104
+ spendEstimated?: boolean | undefined;
3105
+ inputTokens?: number | null | undefined;
3106
+ outputTokens?: number | null | undefined;
3107
+ cachedInputTokens?: number | null | undefined;
3108
+ outputConformance?: "passed" | "failed" | null | undefined;
3109
+ authRoute?: {
3110
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none" | null;
3111
+ harnessId: string | null;
3112
+ requested: "auto" | "subscription" | "api_key";
3113
+ attemptId: string | null;
3114
+ effective: "unknown" | "api_key" | "local_session" | null;
3115
+ reason: "as_requested" | "native_first" | "no_native_session_fallback" | "requested_route_unavailable" | "undisclosed";
3116
+ modelMismatch: {
3117
+ requested: string;
3118
+ observed: string;
3119
+ } | null;
3120
+ } | null | undefined;
3121
+ requestedAccess?: "readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native" | undefined;
3122
+ effectiveAccess?: "readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native" | undefined;
3123
+ webRequired?: boolean | undefined;
3124
+ webMode?: "off" | "auto" | "cached" | "live" | undefined;
3125
+ toolPermissionPolicy?: Record<string, unknown> | undefined;
3126
+ finishedAt?: string | undefined;
2097
3127
  }[];
2098
3128
  lastSeq: number;
2099
3129
  primaryOutput: {
@@ -2215,6 +3245,15 @@ export declare const ControlRunDetail: z.ZodObject<{
2215
3245
  mode?: "ask" | "plan" | "agent" | undefined;
2216
3246
  prompt?: string | undefined;
2217
3247
  access?: "readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native" | undefined;
3248
+ parentRunId?: string | null | undefined;
3249
+ delegatedFromRunId?: string | null | undefined;
3250
+ delegation?: {
3251
+ requested?: boolean | undefined;
3252
+ effective?: boolean | undefined;
3253
+ reason?: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed" | undefined;
3254
+ remediation?: string | null | undefined;
3255
+ used?: boolean | undefined;
3256
+ } | null | undefined;
2218
3257
  harnesses?: string[] | undefined;
2219
3258
  model?: string | undefined;
2220
3259
  tests?: {
@@ -2252,7 +3291,7 @@ export declare const ControlRunDetail: z.ZodObject<{
2252
3291
  }[] | undefined;
2253
3292
  failure?: {
2254
3293
  safeMessage: string;
2255
- code?: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | null | undefined;
3294
+ code?: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null | undefined;
2256
3295
  harnessId?: string | null | undefined;
2257
3296
  attemptId?: string | null | undefined;
2258
3297
  runDir?: string | null | undefined;
@@ -2303,9 +3342,9 @@ export declare const ControlRunDetail: z.ZodObject<{
2303
3342
  requested: boolean;
2304
3343
  effective: boolean;
2305
3344
  harness_id: string;
2306
- reason: "effective" | "not_requested" | "manifest_unsupported" | "web_policy_off" | "access_profile_incompatible" | "postdiff_only";
3345
+ reason: "effective" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "access_profile_incompatible" | "web_policy_off" | "postdiff_only";
2307
3346
  eligible: boolean;
2308
- capability: "browser" | "path_deny";
3347
+ capability: "browser" | "delegation" | "path_deny";
2309
3348
  evidence_refs?: string[] | undefined;
2310
3349
  }[] | undefined;
2311
3350
  toolPermissionPolicy?: Record<string, unknown> | undefined;
@@ -2350,7 +3389,7 @@ export declare const ControlRunDetail: z.ZodObject<{
2350
3389
  observedModel?: string | null | undefined;
2351
3390
  } | null | undefined;
2352
3391
  routingRationale?: {
2353
- reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "declared_order";
3392
+ reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "delegate_effective_first" | "explicit_primary" | "declared_order";
2354
3393
  goal: "auto" | "quality" | "economy";
2355
3394
  paid_fallback: "never" | "when_unavailable" | "allowed_within_cap";
2356
3395
  entries?: {
@@ -2404,6 +3443,7 @@ export declare const ControlRunDetail: z.ZodObject<{
2404
3443
  spend_usd?: number | null | undefined;
2405
3444
  cash_usd?: number | null | undefined;
2406
3445
  valuation_usd?: number | null | undefined;
3446
+ valuation_knowledge?: "exact" | "unknown" | "estimated" | undefined;
2407
3447
  } | undefined;
2408
3448
  apply_recommendation?: "apply" | "inspect" | "continue" | "human_review" | undefined;
2409
3449
  verification_basis?: "none" | "cross_family_review" | "both" | undefined;
@@ -2449,7 +3489,7 @@ export declare const ControlRunDetail: z.ZodObject<{
2449
3489
  } | null | undefined;
2450
3490
  failure?: {
2451
3491
  safeMessage: string;
2452
- code?: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | null | undefined;
3492
+ code?: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null | undefined;
2453
3493
  harnessId?: string | null | undefined;
2454
3494
  attemptId?: string | null | undefined;
2455
3495
  runDir?: string | null | undefined;
@@ -2496,6 +3536,174 @@ export declare const ControlRunDetail: z.ZodObject<{
2496
3536
  mime?: string | undefined;
2497
3537
  bytes?: number | undefined;
2498
3538
  }[] | undefined;
3539
+ children?: {
3540
+ state: "failed" | "cancelled" | "running" | "succeeded" | "interrupted" | "queued";
3541
+ jobId: string;
3542
+ runId: string;
3543
+ startedAt?: string | undefined;
3544
+ error?: string | undefined;
3545
+ createdAt?: string | undefined;
3546
+ mode?: "ask" | "plan" | "agent" | undefined;
3547
+ prompt?: string | undefined;
3548
+ access?: "readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native" | undefined;
3549
+ parentRunId?: string | null | undefined;
3550
+ delegatedFromRunId?: string | null | undefined;
3551
+ delegation?: {
3552
+ requested?: boolean | undefined;
3553
+ effective?: boolean | undefined;
3554
+ reason?: "pending" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "injected_unused" | "used" | "access_profile_incompatible" | "partially_degraded" | "startup_failed" | undefined;
3555
+ remediation?: string | null | undefined;
3556
+ used?: boolean | undefined;
3557
+ } | null | undefined;
3558
+ harnesses?: string[] | undefined;
3559
+ model?: string | undefined;
3560
+ tests?: {
3561
+ program: string;
3562
+ args?: string[] | undefined;
3563
+ cwd?: string | undefined;
3564
+ envAllowlist?: string[] | undefined;
3565
+ }[] | undefined;
3566
+ project?: {
3567
+ kind?: "none" | "project" | undefined;
3568
+ context?: "off" | "auto" | undefined;
3569
+ root?: string | null | undefined;
3570
+ projectName?: string | null | undefined;
3571
+ } | undefined;
3572
+ taskId?: string | undefined;
3573
+ runDir?: string | undefined;
3574
+ primaryHarness?: string | undefined;
3575
+ routingGoal?: "auto" | "quality" | "economy" | undefined;
3576
+ n?: number | undefined;
3577
+ paidBudget?: {
3578
+ kind: "unlimited";
3579
+ } | {
3580
+ kind: "finite";
3581
+ maxUsd: number;
3582
+ } | undefined;
3583
+ externalContextPolicy?: "off" | "auto" | "cached" | "live" | undefined;
3584
+ protectedPathApprovals?: {
3585
+ path: string;
3586
+ reason?: string | undefined;
3587
+ }[] | undefined;
3588
+ reviewerPanel?: {
3589
+ harness: string;
3590
+ model?: string | undefined;
3591
+ effort?: string | undefined;
3592
+ }[] | undefined;
3593
+ failure?: {
3594
+ safeMessage: string;
3595
+ code?: "budget_overshoot" | "cost_unverifiable" | "finite_zero" | "hard_cap" | "estimate_headroom" | "unknown_paid_in_flight" | "delegation_child_drain_timeout" | null | undefined;
3596
+ harnessId?: string | null | undefined;
3597
+ attemptId?: string | null | undefined;
3598
+ runDir?: string | null | undefined;
3599
+ phase?: string | undefined;
3600
+ category?: "validation" | "unknown" | "harness_error" | "cancelled" | "auth" | "policy" | "budget" | "project" | "harness_unavailable" | "config_error" | "internal" | undefined;
3601
+ rawDetailRef?: string | null | undefined;
3602
+ logRefs?: string[] | undefined;
3603
+ eventRefs?: string[] | undefined;
3604
+ nextActions?: string[] | undefined;
3605
+ } | null | undefined;
3606
+ strategy?: "attempts" | "create" | "race" | "until_clean" | "deep_scan" | null | undefined;
3607
+ spendUsd?: number | null | undefined;
3608
+ spendEstimated?: boolean | undefined;
3609
+ inputTokens?: number | null | undefined;
3610
+ outputTokens?: number | null | undefined;
3611
+ cachedInputTokens?: number | null | undefined;
3612
+ outputConformance?: "passed" | "failed" | null | undefined;
3613
+ authRoute?: {
3614
+ requested: "auto" | "subscription" | "api_key";
3615
+ reason: "as_requested" | "native_first" | "no_native_session_fallback" | "requested_route_unavailable" | "undisclosed";
3616
+ source?: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none" | null | undefined;
3617
+ harnessId?: string | null | undefined;
3618
+ attemptId?: string | null | undefined;
3619
+ effective?: "unknown" | "api_key" | "local_session" | null | undefined;
3620
+ modelMismatch?: {
3621
+ requested: string;
3622
+ observed: string;
3623
+ } | null | undefined;
3624
+ } | null | undefined;
3625
+ requestedAccess?: "readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native" | undefined;
3626
+ effectiveAccess?: "readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native" | undefined;
3627
+ webRequired?: boolean | undefined;
3628
+ webMode?: "off" | "auto" | "cached" | "live" | undefined;
3629
+ webEvidence?: {
3630
+ status?: "failed" | "none" | "unverified" | "attempted" | "satisfied" | undefined;
3631
+ available?: boolean | undefined;
3632
+ target?: string | null | undefined;
3633
+ mode?: "off" | "auto" | "cached" | "live" | undefined;
3634
+ required?: boolean | undefined;
3635
+ tool?: string | null | undefined;
3636
+ attempted?: boolean | undefined;
3637
+ rawDetailRef?: string | null | undefined;
3638
+ effectiveMode?: "off" | "auto" | "cached" | "live" | undefined;
3639
+ satisfied?: boolean | undefined;
3640
+ errorSummary?: string | null | undefined;
3641
+ } | undefined;
3642
+ requestRequirements?: {
3643
+ requested: boolean;
3644
+ effective: boolean;
3645
+ harness_id: string;
3646
+ reason: "effective" | "runtime_unavailable" | "manifest_unsupported" | "not_requested" | "access_profile_incompatible" | "web_policy_off" | "postdiff_only";
3647
+ eligible: boolean;
3648
+ capability: "browser" | "delegation" | "path_deny";
3649
+ evidence_refs?: string[] | undefined;
3650
+ }[] | undefined;
3651
+ toolPermissionPolicy?: Record<string, unknown> | undefined;
3652
+ outputReadyState?: "pending" | "finalizing" | "ready" | "diagnostic" | undefined;
3653
+ toolWarningsTotal?: number | undefined;
3654
+ result?: {
3655
+ kind?: "plan" | "none" | "patch" | "answer" | "report" | undefined;
3656
+ applyState?: "not_applied" | "applied" | "applied_review_blocked" | "reverted" | undefined;
3657
+ revertAnchorId?: string | null | undefined;
3658
+ postTurnSha?: string | null | undefined;
3659
+ diffStat?: {
3660
+ files: number;
3661
+ additions: number;
3662
+ deletions: number;
3663
+ } | null | undefined;
3664
+ blockers?: number | undefined;
3665
+ adopted?: boolean | null | undefined;
3666
+ preTurnSha?: string | null | undefined;
3667
+ revertable?: boolean | undefined;
3668
+ } | undefined;
3669
+ outcomeFacts?: {
3670
+ lifecycle: "failed" | "cancelled" | "succeeded" | "interrupted";
3671
+ review?: "not_run" | "approved" | "blocked" | undefined;
3672
+ reason?: "harness_failed" | "no_changes" | "review_blocked" | "checks_failed" | "budget_exhausted" | "budget_overshoot" | "cost_unverifiable" | "not_converged" | "stuck_no_progress" | "wall_clock_exceeded" | "user_cancelled" | "crash_interrupted" | "input_required" | "work_incomplete" | "context_capacity_exhausted" | "work_report_contract" | null | undefined;
3673
+ checks?: "passed" | "failed" | "not_configured" | undefined;
3674
+ noChanges?: boolean | undefined;
3675
+ work_state?: {
3676
+ source: "constrained" | "validated" | "absent";
3677
+ state: "completed" | "needs_input" | "incomplete" | "unverified";
3678
+ required_inputs?: {
3679
+ kind: "file" | "context" | "decision" | "credential" | "permission" | "external_dependency";
3680
+ description: string;
3681
+ locator?: string | null | undefined;
3682
+ }[] | undefined;
3683
+ } | undefined;
3684
+ } | null | undefined;
3685
+ waitingOnUser?: boolean | undefined;
3686
+ route?: {
3687
+ harnessId?: string | null | undefined;
3688
+ verified?: boolean | undefined;
3689
+ requestedModel?: string | null | undefined;
3690
+ observedModel?: string | null | undefined;
3691
+ } | null | undefined;
3692
+ routingRationale?: {
3693
+ reason: "subscription_entitlement_first" | "lowest_incremental_cash" | "quality_tier" | "expiring_quota_slack" | "all_incremental_cash_unknown" | "delegate_effective_first" | "explicit_primary" | "declared_order";
3694
+ goal: "auto" | "quality" | "economy";
3695
+ paid_fallback: "never" | "when_unavailable" | "allowed_within_cap";
3696
+ entries?: {
3697
+ harness_id: string;
3698
+ billing_knowledge: "unknown" | "proven_zero" | "subscription_entitlement" | "metered";
3699
+ eligible: boolean;
3700
+ incremental_cost_usd?: number | null | undefined;
3701
+ }[] | undefined;
3702
+ order?: string[] | undefined;
3703
+ dropped?: string[] | undefined;
3704
+ } | null | undefined;
3705
+ finishedAt?: string | undefined;
3706
+ }[] | undefined;
2499
3707
  lastSeq?: number | undefined;
2500
3708
  primaryOutput?: {
2501
3709
  path: string;