@claudexor/schema 3.8.0 → 3.8.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 (106) hide show
  1. package/dist/agent-capabilities.d.ts +16 -16
  2. package/dist/config.d.ts +20 -20
  3. package/dist/control-harness-list.d.ts +18 -18
  4. package/dist/control-operation-responses.d.ts +28 -13
  5. package/dist/control-operation-responses.d.ts.map +1 -1
  6. package/dist/control-run-detail.d.ts +61 -46
  7. package/dist/control-run-detail.d.ts.map +1 -1
  8. package/dist/control-run-detail.js +10 -19
  9. package/dist/control-run-detail.js.map +1 -1
  10. package/dist/control-run-execution.d.ts +16 -0
  11. package/dist/control-run-execution.d.ts.map +1 -0
  12. package/dist/control-run-execution.js +19 -0
  13. package/dist/control-run-execution.js.map +1 -0
  14. package/dist/control-run-failure.d.ts +4 -4
  15. package/dist/control-run-failure.d.ts.map +1 -1
  16. package/dist/control-run-failure.js +6 -4
  17. package/dist/control-run-failure.js.map +1 -1
  18. package/dist/control-run-retry.d.ts +21 -0
  19. package/dist/control-run-retry.d.ts.map +1 -1
  20. package/dist/control-run-retry.js +6 -0
  21. package/dist/control-run-retry.js.map +1 -1
  22. package/dist/control-trust.d.ts +13 -13
  23. package/dist/control.d.ts +390 -36
  24. package/dist/control.d.ts.map +1 -1
  25. package/dist/control.js +15 -20
  26. package/dist/control.js.map +1 -1
  27. package/dist/credential-profile-snapshot.d.ts +78 -36
  28. package/dist/credential-profile-snapshot.d.ts.map +1 -1
  29. package/dist/credential-profile.d.ts +44 -0
  30. package/dist/credential-profile.d.ts.map +1 -1
  31. package/dist/credential-profile.js +11 -0
  32. package/dist/credential-profile.js.map +1 -1
  33. package/dist/harness-confinement.d.ts +37 -30
  34. package/dist/harness-confinement.d.ts.map +1 -1
  35. package/dist/harness-confinement.js +18 -26
  36. package/dist/harness-confinement.js.map +1 -1
  37. package/dist/harness.d.ts +18 -48
  38. package/dist/harness.d.ts.map +1 -1
  39. package/dist/harness.js +1 -6
  40. package/dist/harness.js.map +1 -1
  41. package/dist/mcp-run-result.d.ts +10 -10
  42. package/dist/primitives.d.ts +6 -1
  43. package/dist/primitives.d.ts.map +1 -1
  44. package/dist/primitives.js +8 -2
  45. package/dist/primitives.js.map +1 -1
  46. package/dist/readiness.d.ts +14 -14
  47. package/dist/review.d.ts +10 -0
  48. package/dist/review.d.ts.map +1 -1
  49. package/dist/review.js +10 -0
  50. package/dist/review.js.map +1 -1
  51. package/dist/route.d.ts +10 -0
  52. package/dist/route.d.ts.map +1 -1
  53. package/dist/route.js +10 -0
  54. package/dist/route.js.map +1 -1
  55. package/dist/run-strategy.d.ts +51 -3
  56. package/dist/run-strategy.d.ts.map +1 -1
  57. package/dist/run-strategy.js +58 -2
  58. package/dist/run-strategy.js.map +1 -1
  59. package/dist/surface-run-controls.d.ts.map +1 -1
  60. package/dist/surface-run-controls.js +4 -1
  61. package/dist/surface-run-controls.js.map +1 -1
  62. package/dist/task.d.ts +641 -19
  63. package/dist/task.d.ts.map +1 -1
  64. package/dist/task.js +40 -5
  65. package/dist/task.js.map +1 -1
  66. package/dist/telemetry.d.ts +2 -2
  67. package/dist/telemetry.js +3 -3
  68. package/dist/telemetry.js.map +1 -1
  69. package/dist/thread.d.ts +5 -3
  70. package/dist/thread.d.ts.map +1 -1
  71. package/dist/thread.js +7 -5
  72. package/dist/thread.js.map +1 -1
  73. package/generated/AgentCapabilityCatalog.schema.json +1 -2
  74. package/generated/ControlCredentialProfileCreateResponse.schema.json +9 -0
  75. package/generated/ControlCredentialProfileUpdateResponse.schema.json +9 -0
  76. package/generated/ControlCredentialProfilesQueryResponse.schema.json +12 -3
  77. package/generated/ControlCredentialProfilesResponse.schema.json +9 -0
  78. package/generated/ControlCredentialProfilesSnapshotResponse.schema.json +12 -3
  79. package/generated/ControlHarnessListResponse.schema.json +3 -3
  80. package/generated/ControlRunAgainDraft.schema.json +26 -5
  81. package/generated/ControlRunDetail.schema.json +29 -9
  82. package/generated/ControlRunListResponse.schema.json +11 -5
  83. package/generated/ControlRunStartRequest.schema.json +11 -4
  84. package/generated/ControlRunSummary.schema.json +11 -5
  85. package/generated/ControlThread.schema.json +3 -3
  86. package/generated/ControlThreadCreateRequest.schema.json +0 -1
  87. package/generated/ControlThreadDetail.schema.json +3 -3
  88. package/generated/ControlThreadListResponse.schema.json +3 -3
  89. package/generated/ControlThreadTurnRequest.schema.json +6 -3
  90. package/generated/ControlThreadUpdateRequest.schema.json +1 -2
  91. package/generated/ControlTrustListResponse.schema.json +0 -1
  92. package/generated/ControlTrustState.schema.json +0 -1
  93. package/generated/ControlTrustUpdateRequest.schema.json +0 -1
  94. package/generated/CredentialProfileStatus.schema.json +9 -0
  95. package/generated/HarnessManifest.schema.json +3 -3
  96. package/generated/HarnessStatusDto.schema.json +3 -3
  97. package/generated/McpRunHandleResult.schema.json +4 -2
  98. package/generated/McpRunToolResult.schema.json +4 -2
  99. package/generated/ReviewFinding.schema.json +14 -0
  100. package/generated/RouteProof.schema.json +14 -0
  101. package/generated/RunFailure.schema.json +4 -2
  102. package/generated/RunTelemetry.schema.json +5 -5
  103. package/generated/TaskContract.schema.json +8 -8
  104. package/generated/Thread.schema.json +4 -4
  105. package/generated/TrustConfig.schema.json +0 -2
  106. package/package.json +2 -2
@@ -164,9 +164,11 @@
164
164
  "credential_pool_exhausted",
165
165
  "delegated_home_unavailable",
166
166
  "delegated_confinement_unavailable",
167
- "delegated_evidence_incomplete"
167
+ "delegated_evidence_incomplete",
168
+ "access_profile_incompatible",
169
+ "retired_access_profile"
168
170
  ],
169
- "description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, an exhausted credential rotation pool whose EARLIEST known member reset is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
171
+ "description": "Machine-readable failure sub-code within a RunFailure category, including historical delegated-run failures and active access-profile refusals."
170
172
  },
171
173
  {
172
174
  "type": "null"
@@ -382,13 +384,17 @@
382
384
  "maxLength": 32,
383
385
  "pattern": "^[a-z0-9]+(?:[_-][a-z0-9]+)*$",
384
386
  "description": "Per-reviewer effort hint, passed to that harness only."
387
+ },
388
+ "credentialProfileId": {
389
+ "$ref": "#/definitions/ControlRunDetail/properties/summary/properties/reviewerPanel/items/properties/model",
390
+ "description": "Per-reviewer credential profile id; explicit pins are strict and never fall back."
385
391
  }
386
392
  },
387
393
  "required": [
388
394
  "harness"
389
395
  ],
390
396
  "additionalProperties": false,
391
- "description": "One reviewer of an explicit reviewer panel — a harness plus optional model and effort. The CLI spells one entry `harness=model:effort` (e.g. `claude=claude-opus-4-8:max`)."
397
+ "description": "One reviewer of an explicit reviewer panel — a harness plus optional model, effort, and strict credentialProfileId. Compact entries are unpinned; structured JSON carries pins."
392
398
  },
393
399
  "description": "Explicit reviewer panel used for the run."
394
400
  },
@@ -648,8 +654,8 @@
648
654
  "readonly",
649
655
  "workspace_write",
650
656
  "full",
651
- "external_sandbox_full",
652
- "inherit_native"
657
+ "inherit_native",
658
+ "external_sandbox_full"
653
659
  ],
654
660
  "description": "Access profile of the run: the effective profile when known, else the requested one (prefer requestedAccess/effectiveAccess)."
655
661
  },
@@ -2815,6 +2821,20 @@
2815
2821
  "default": null,
2816
2822
  "description": "Reasoning effort requested for the reviewer route."
2817
2823
  },
2824
+ "credential_profile_id": {
2825
+ "type": [
2826
+ "string",
2827
+ "null"
2828
+ ],
2829
+ "description": "Credential profile requested/effective for the reviewer route; absent = account pool/default."
2830
+ },
2831
+ "observed_credential_profile_id": {
2832
+ "type": [
2833
+ "string",
2834
+ "null"
2835
+ ],
2836
+ "description": "Credential profile actually reported by the reviewer route; absent when undisclosed."
2837
+ },
2818
2838
  "observed_model": {
2819
2839
  "type": [
2820
2840
  "string",
@@ -3138,7 +3158,7 @@
3138
3158
  "properties": {
3139
3159
  "proven": {
3140
3160
  "type": "boolean",
3141
- "description": "Whether a boundary was actually enforced for this attempt: a named mechanism AND the path it was proven to deny. The only field a consumer should branch on."
3161
+ "description": "Whether a historical outer boundary was proven by a named mechanism, digest, and denied path; false for current native-access attempts."
3142
3162
  },
3143
3163
  "mechanism": {
3144
3164
  "type": [
@@ -3159,7 +3179,7 @@
3159
3179
  "string",
3160
3180
  "null"
3161
3181
  ],
3162
- "description": "Why this attempt ran with NO boundary; null when one was applied. Present exactly when proven is false for a run that asked for a boundary."
3182
+ "description": "Why no additional outer boundary was applied; current delegated attempts carry the schema-owned deliberate-absence reason."
3163
3183
  }
3164
3184
  },
3165
3185
  "required": [
@@ -3169,13 +3189,13 @@
3169
3189
  "unavailableReason"
3170
3190
  ],
3171
3191
  "additionalProperties": false,
3172
- "description": "Applied OS filesystem boundary for one attempt, or the stated reason there was none."
3192
+ "description": "Historical outer-boundary proof for one attempt, or the deliberate reason current native-access execution applied none."
3173
3193
  },
3174
3194
  {
3175
3195
  "type": "null"
3176
3196
  }
3177
3197
  ],
3178
- "description": "Applied OS boundary for this attempt; null when the run never asked for one (every non-delegated run).",
3198
+ "description": "Historical outer-boundary evidence or current deliberate-absence evidence; null when the attempt has neither.",
3179
3199
  "default": null
3180
3200
  }
3181
3201
  },
@@ -166,9 +166,11 @@
166
166
  "credential_pool_exhausted",
167
167
  "delegated_home_unavailable",
168
168
  "delegated_confinement_unavailable",
169
- "delegated_evidence_incomplete"
169
+ "delegated_evidence_incomplete",
170
+ "access_profile_incompatible",
171
+ "retired_access_profile"
170
172
  ],
171
- "description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, an exhausted credential rotation pool whose EARLIEST known member reset is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
173
+ "description": "Machine-readable failure sub-code within a RunFailure category, including historical delegated-run failures and active access-profile refusals."
172
174
  },
173
175
  {
174
176
  "type": "null"
@@ -384,13 +386,17 @@
384
386
  "maxLength": 32,
385
387
  "pattern": "^[a-z0-9]+(?:[_-][a-z0-9]+)*$",
386
388
  "description": "Per-reviewer effort hint, passed to that harness only."
389
+ },
390
+ "credentialProfileId": {
391
+ "$ref": "#/definitions/ControlRunListResponse/properties/runs/items/properties/reviewerPanel/items/properties/model",
392
+ "description": "Per-reviewer credential profile id; explicit pins are strict and never fall back."
387
393
  }
388
394
  },
389
395
  "required": [
390
396
  "harness"
391
397
  ],
392
398
  "additionalProperties": false,
393
- "description": "One reviewer of an explicit reviewer panel — a harness plus optional model and effort. The CLI spells one entry `harness=model:effort` (e.g. `claude=claude-opus-4-8:max`)."
399
+ "description": "One reviewer of an explicit reviewer panel — a harness plus optional model, effort, and strict credentialProfileId. Compact entries are unpinned; structured JSON carries pins."
394
400
  },
395
401
  "description": "Explicit reviewer panel used for the run."
396
402
  },
@@ -650,8 +656,8 @@
650
656
  "readonly",
651
657
  "workspace_write",
652
658
  "full",
653
- "external_sandbox_full",
654
- "inherit_native"
659
+ "inherit_native",
660
+ "external_sandbox_full"
655
661
  ],
656
662
  "description": "Access profile of the run: the effective profile when known, else the requested one (prefer requestedAccess/effectiveAccess)."
657
663
  },
@@ -111,7 +111,11 @@
111
111
  "delegated": {
112
112
  "type": "boolean",
113
113
  "default": false,
114
- "description": "Marks a run driven by an EXTERNAL orchestrator that owns the workspace, not by the operator at a surface. Such a run is confined to a scoped harness HOME even under isolation='live' (an in-place delegated attempt therefore cannot resume a native vendor session stored under the real HOME). Unrelated to the `delegate` belt flag and to `delegatedFromRunId` (belt-child provenance)."
114
+ "description": "Marks a run driven by an EXTERNAL orchestrator that owns the workspace, not by the operator at a surface. Such a run uses a scoped harness HOME even under isolation='live' (an in-place delegated attempt therefore cannot resume a native vendor session stored under the real HOME). Unrelated to the `delegate` belt flag and to `delegatedFromRunId` (belt-child provenance)."
115
+ },
116
+ "workspaceRoot": {
117
+ "type": "string",
118
+ "description": "Absolute existing execution workspace for a project-scoped delegated agent live run. The stable project identity remains scope.root."
115
119
  }
116
120
  },
117
121
  "additionalProperties": false,
@@ -298,7 +302,6 @@
298
302
  "readonly",
299
303
  "workspace_write",
300
304
  "full",
301
- "external_sandbox_full",
302
305
  "inherit_native"
303
306
  ],
304
307
  "description": "Requested access profile; effective access is derived by the engine and never client-supplied."
@@ -451,16 +454,20 @@
451
454
  "effort": {
452
455
  "$ref": "#/definitions/ControlRunStartRequest/properties/effort",
453
456
  "description": "Per-reviewer effort hint, passed to that harness only."
457
+ },
458
+ "credentialProfileId": {
459
+ "$ref": "#/definitions/ControlRunStartRequest/properties/harnesses/items",
460
+ "description": "Per-reviewer credential profile id; explicit pins are strict and never fall back."
454
461
  }
455
462
  },
456
463
  "required": [
457
464
  "harness"
458
465
  ],
459
466
  "additionalProperties": false,
460
- "description": "One reviewer of an explicit reviewer panel — a harness plus optional model and effort. The CLI spells one entry `harness=model:effort` (e.g. `claude=claude-opus-4-8:max`)."
467
+ "description": "One reviewer of an explicit reviewer panel — a harness plus optional model, effort, and strict credentialProfileId. Compact entries are unpinned; structured JSON carries pins."
461
468
  },
462
469
  "minItems": 1,
463
- "description": "Explicit Agent reviewer panel — who reviews the change, one entry per reviewer as `harness=model:effort` (CLI `--reviewer-panel \"claude=claude-opus-4-8:max,cursor=gemini-3.1-pro\"`). Duplicate harness entries are kept so one provider can review through several models; overrides the legacy reviewerModels/reviewerEfforts maps."
470
+ "description": "Explicit Agent reviewer panel — who reviews the change, one entry per reviewer as `harness=model:effort` (CLI `--reviewer-panel`, unpinned) or structured `--reviewer-panel-json` with optional strict credentialProfileId. Duplicate harness entries are kept so one provider can review through several models; overrides the legacy reviewerModels/reviewerEfforts maps."
464
471
  },
465
472
  "authPreference": {
466
473
  "type": "string",
@@ -161,9 +161,11 @@
161
161
  "credential_pool_exhausted",
162
162
  "delegated_home_unavailable",
163
163
  "delegated_confinement_unavailable",
164
- "delegated_evidence_incomplete"
164
+ "delegated_evidence_incomplete",
165
+ "access_profile_incompatible",
166
+ "retired_access_profile"
165
167
  ],
166
- "description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, an exhausted credential rotation pool whose EARLIEST known member reset is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
168
+ "description": "Machine-readable failure sub-code within a RunFailure category, including historical delegated-run failures and active access-profile refusals."
167
169
  },
168
170
  {
169
171
  "type": "null"
@@ -379,13 +381,17 @@
379
381
  "maxLength": 32,
380
382
  "pattern": "^[a-z0-9]+(?:[_-][a-z0-9]+)*$",
381
383
  "description": "Per-reviewer effort hint, passed to that harness only."
384
+ },
385
+ "credentialProfileId": {
386
+ "$ref": "#/definitions/ControlRunSummary/properties/reviewerPanel/items/properties/model",
387
+ "description": "Per-reviewer credential profile id; explicit pins are strict and never fall back."
382
388
  }
383
389
  },
384
390
  "required": [
385
391
  "harness"
386
392
  ],
387
393
  "additionalProperties": false,
388
- "description": "One reviewer of an explicit reviewer panel — a harness plus optional model and effort. The CLI spells one entry `harness=model:effort` (e.g. `claude=claude-opus-4-8:max`)."
394
+ "description": "One reviewer of an explicit reviewer panel — a harness plus optional model, effort, and strict credentialProfileId. Compact entries are unpinned; structured JSON carries pins."
389
395
  },
390
396
  "description": "Explicit reviewer panel used for the run."
391
397
  },
@@ -645,8 +651,8 @@
645
651
  "readonly",
646
652
  "workspace_write",
647
653
  "full",
648
- "external_sandbox_full",
649
- "inherit_native"
654
+ "inherit_native",
655
+ "external_sandbox_full"
650
656
  ],
651
657
  "description": "Access profile of the run: the effective profile when known, else the requested one (prefer requestedAccess/effectiveAccess)."
652
658
  },
@@ -91,10 +91,10 @@
91
91
  "readonly",
92
92
  "workspace_write",
93
93
  "full",
94
- "external_sandbox_full",
95
- "inherit_native"
94
+ "inherit_native",
95
+ "external_sandbox_full"
96
96
  ],
97
- "description": "Filesystem/command access profile for a run: readonly (no writes), workspace_write (writes inside the workspace only), full (unrestricted; requires the per-repo trust allow), external_sandbox_full (the harness stands its native sandbox down; the engine applies its own OS boundary only on delegated runs — requested directly this is unrestricted, and not behind the trust allow), inherit_native (defer to the harness's own native sandbox settings)."
97
+ "description": "Access profile recorded by an immutable historical artifact. external_sandbox_full is retired and cannot be requested by active surfaces."
98
98
  },
99
99
  {
100
100
  "type": "null"
@@ -111,7 +111,6 @@
111
111
  "readonly",
112
112
  "workspace_write",
113
113
  "full",
114
- "external_sandbox_full",
115
114
  "inherit_native"
116
115
  ],
117
116
  "description": "Sticky write scope for the thread's write turns; omit = the repo trust default."
@@ -94,10 +94,10 @@
94
94
  "readonly",
95
95
  "workspace_write",
96
96
  "full",
97
- "external_sandbox_full",
98
- "inherit_native"
97
+ "inherit_native",
98
+ "external_sandbox_full"
99
99
  ],
100
- "description": "Filesystem/command access profile for a run: readonly (no writes), workspace_write (writes inside the workspace only), full (unrestricted; requires the per-repo trust allow), external_sandbox_full (the harness stands its native sandbox down; the engine applies its own OS boundary only on delegated runs — requested directly this is unrestricted, and not behind the trust allow), inherit_native (defer to the harness's own native sandbox settings)."
100
+ "description": "Access profile recorded by an immutable historical artifact. external_sandbox_full is retired and cannot be requested by active surfaces."
101
101
  },
102
102
  {
103
103
  "type": "null"
@@ -96,10 +96,10 @@
96
96
  "readonly",
97
97
  "workspace_write",
98
98
  "full",
99
- "external_sandbox_full",
100
- "inherit_native"
99
+ "inherit_native",
100
+ "external_sandbox_full"
101
101
  ],
102
- "description": "Filesystem/command access profile for a run: readonly (no writes), workspace_write (writes inside the workspace only), full (unrestricted; requires the per-repo trust allow), external_sandbox_full (the harness stands its native sandbox down; the engine applies its own OS boundary only on delegated runs — requested directly this is unrestricted, and not behind the trust allow), inherit_native (defer to the harness's own native sandbox settings)."
102
+ "description": "Access profile recorded by an immutable historical artifact. external_sandbox_full is retired and cannot be requested by active surfaces."
103
103
  },
104
104
  {
105
105
  "type": "null"
@@ -220,7 +220,6 @@
220
220
  "readonly",
221
221
  "workspace_write",
222
222
  "full",
223
- "external_sandbox_full",
224
223
  "inherit_native"
225
224
  ],
226
225
  "description": "Requested access profile; effective access is derived by the engine and never client-supplied."
@@ -330,16 +329,20 @@
330
329
  "effort": {
331
330
  "$ref": "#/definitions/ControlThreadTurnRequest/properties/effort",
332
331
  "description": "Per-reviewer effort hint, passed to that harness only."
332
+ },
333
+ "credentialProfileId": {
334
+ "$ref": "#/definitions/ControlThreadTurnRequest/properties/harnesses/items",
335
+ "description": "Per-reviewer credential profile id; explicit pins are strict and never fall back."
333
336
  }
334
337
  },
335
338
  "required": [
336
339
  "harness"
337
340
  ],
338
341
  "additionalProperties": false,
339
- "description": "One reviewer of an explicit reviewer panel — a harness plus optional model and effort. The CLI spells one entry `harness=model:effort` (e.g. `claude=claude-opus-4-8:max`)."
342
+ "description": "One reviewer of an explicit reviewer panel — a harness plus optional model, effort, and strict credentialProfileId. Compact entries are unpinned; structured JSON carries pins."
340
343
  },
341
344
  "minItems": 1,
342
- "description": "Explicit Agent reviewer panel — who reviews the change, one entry per reviewer as `harness=model:effort` (CLI `--reviewer-panel \"claude=claude-opus-4-8:max,cursor=gemini-3.1-pro\"`). Duplicate harness entries are kept so one provider can review through several models; overrides the legacy reviewerModels/reviewerEfforts maps."
345
+ "description": "Explicit Agent reviewer panel — who reviews the change, one entry per reviewer as `harness=model:effort` (CLI `--reviewer-panel`, unpinned) or structured `--reviewer-panel-json` with optional strict credentialProfileId. Duplicate harness entries are kept so one provider can review through several models; overrides the legacy reviewerModels/reviewerEfforts maps."
343
346
  },
344
347
  "authPreference": {
345
348
  "type": "string",
@@ -56,10 +56,9 @@
56
56
  "readonly",
57
57
  "workspace_write",
58
58
  "full",
59
- "external_sandbox_full",
60
59
  "inherit_native"
61
60
  ],
62
- "description": "Filesystem/command access profile for a run: readonly (no writes), workspace_write (writes inside the workspace only), full (unrestricted; requires the per-repo trust allow), external_sandbox_full (the harness stands its native sandbox down; the engine applies its own OS boundary only on delegated runs — requested directly this is unrestricted, and not behind the trust allow), inherit_native (defer to the harness's own native sandbox settings)."
61
+ "description": "Active filesystem/command access profile for a run: readonly (no writes), workspace_write (use the harness's native workspace-write policy), full (unrestricted; requires the per-repo trust allow), inherit_native (defer to the harness's own native settings)."
63
62
  },
64
63
  {
65
64
  "type": "null"
@@ -30,7 +30,6 @@
30
30
  "readonly",
31
31
  "workspace_write",
32
32
  "full",
33
- "external_sandbox_full",
34
33
  "inherit_native"
35
34
  ],
36
35
  "description": "Default access profile for runs in the repo."
@@ -25,7 +25,6 @@
25
25
  "readonly",
26
26
  "workspace_write",
27
27
  "full",
28
- "external_sandbox_full",
29
28
  "inherit_native"
30
29
  ],
31
30
  "description": "Default access profile for runs in the repo."
@@ -66,7 +66,6 @@
66
66
  "readonly",
67
67
  "workspace_write",
68
68
  "full",
69
- "external_sandbox_full",
70
69
  "inherit_native"
71
70
  ],
72
71
  "description": "Effective access profile covered by grantTestCommand; defaults to the trust default."
@@ -37,6 +37,15 @@
37
37
  "default": "local_store",
38
38
  "description": "How the verification verdict was reached: local_store = the binding's required local state or managed secret is present (says nothing about a token being live); vendor = the vendor answered under the exact binding environment and effective platform credential policy."
39
39
  },
40
+ "stale": {
41
+ "type": "boolean",
42
+ "description": "True only for a bounded stale last-known-good observation; stale is never a fresh passed verification."
43
+ },
44
+ "stale_age_ms": {
45
+ "type": "integer",
46
+ "minimum": 0,
47
+ "description": "Age in milliseconds of the bounded stale observation, when stale is true."
48
+ },
40
49
  "detail": {
41
50
  "type": "string",
42
51
  "description": "Redacted human-readable probe evidence."
@@ -258,11 +258,12 @@
258
258
  "enum": [
259
259
  "env_or_file_injection",
260
260
  "scoped_home_keychain_bridge",
261
+ "private_per_profile_keychain",
261
262
  "host_user_context",
262
263
  "process_sandbox",
263
264
  "container"
264
265
  ],
265
- "description": "Isolation containment level an adapter supports for run environments, from env/file injection through scoped-HOME keychain bridging to process sandboxes and containers."
266
+ "description": "Isolation containment level an adapter supports for run environments, from env/file injection through scoped-HOME keychain bridging or a private per-profile keychain to process sandboxes and containers."
266
267
  },
267
268
  "default": [
268
269
  "env_or_file_injection"
@@ -567,10 +568,9 @@
567
568
  "readonly",
568
569
  "workspace_write",
569
570
  "full",
570
- "external_sandbox_full",
571
571
  "inherit_native"
572
572
  ],
573
- "description": "Filesystem/command access profile for a run: readonly (no writes), workspace_write (writes inside the workspace only), full (unrestricted; requires the per-repo trust allow), external_sandbox_full (the harness stands its native sandbox down; the engine applies its own OS boundary only on delegated runs — requested directly this is unrestricted, and not behind the trust allow), inherit_native (defer to the harness's own native sandbox settings)."
573
+ "description": "Active filesystem/command access profile for a run: readonly (no writes), workspace_write (use the harness's native workspace-write policy), full (unrestricted; requires the per-repo trust allow), inherit_native (defer to the harness's own native settings)."
574
574
  },
575
575
  "default": [],
576
576
  "description": "Access profiles the adapter can enforce."
@@ -276,11 +276,12 @@
276
276
  "enum": [
277
277
  "env_or_file_injection",
278
278
  "scoped_home_keychain_bridge",
279
+ "private_per_profile_keychain",
279
280
  "host_user_context",
280
281
  "process_sandbox",
281
282
  "container"
282
283
  ],
283
- "description": "Isolation containment level an adapter supports for run environments, from env/file injection through scoped-HOME keychain bridging to process sandboxes and containers."
284
+ "description": "Isolation containment level an adapter supports for run environments, from env/file injection through scoped-HOME keychain bridging or a private per-profile keychain to process sandboxes and containers."
284
285
  },
285
286
  "default": [
286
287
  "env_or_file_injection"
@@ -585,10 +586,9 @@
585
586
  "readonly",
586
587
  "workspace_write",
587
588
  "full",
588
- "external_sandbox_full",
589
589
  "inherit_native"
590
590
  ],
591
- "description": "Filesystem/command access profile for a run: readonly (no writes), workspace_write (writes inside the workspace only), full (unrestricted; requires the per-repo trust allow), external_sandbox_full (the harness stands its native sandbox down; the engine applies its own OS boundary only on delegated runs — requested directly this is unrestricted, and not behind the trust allow), inherit_native (defer to the harness's own native sandbox settings)."
591
+ "description": "Active filesystem/command access profile for a run: readonly (no writes), workspace_write (use the harness's native workspace-write policy), full (unrestricted; requires the per-repo trust allow), inherit_native (defer to the harness's own native settings)."
592
592
  },
593
593
  "default": [],
594
594
  "description": "Access profiles the adapter can enforce."
@@ -681,9 +681,11 @@
681
681
  "credential_pool_exhausted",
682
682
  "delegated_home_unavailable",
683
683
  "delegated_confinement_unavailable",
684
- "delegated_evidence_incomplete"
684
+ "delegated_evidence_incomplete",
685
+ "access_profile_incompatible",
686
+ "retired_access_profile"
685
687
  ],
686
- "description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, an exhausted credential rotation pool whose EARLIEST known member reset is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
688
+ "description": "Machine-readable failure sub-code within a RunFailure category, including historical delegated-run failures and active access-profile refusals."
687
689
  },
688
690
  {
689
691
  "type": "null"
@@ -657,9 +657,11 @@
657
657
  "credential_pool_exhausted",
658
658
  "delegated_home_unavailable",
659
659
  "delegated_confinement_unavailable",
660
- "delegated_evidence_incomplete"
660
+ "delegated_evidence_incomplete",
661
+ "access_profile_incompatible",
662
+ "retired_access_profile"
661
663
  ],
662
- "description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, an exhausted credential rotation pool whose EARLIEST known member reset is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
664
+ "description": "Machine-readable failure sub-code within a RunFailure category, including historical delegated-run failures and active access-profile refusals."
663
665
  },
664
666
  {
665
667
  "type": "null"
@@ -164,6 +164,20 @@
164
164
  "default": null,
165
165
  "description": "Reasoning effort requested for the reviewer route."
166
166
  },
167
+ "credential_profile_id": {
168
+ "type": [
169
+ "string",
170
+ "null"
171
+ ],
172
+ "description": "Credential profile requested/effective for the reviewer route; absent = account pool/default."
173
+ },
174
+ "observed_credential_profile_id": {
175
+ "type": [
176
+ "string",
177
+ "null"
178
+ ],
179
+ "description": "Credential profile actually reported by the reviewer route; absent when undisclosed."
180
+ },
167
181
  "observed_model": {
168
182
  "type": [
169
183
  "string",
@@ -33,6 +33,13 @@
33
33
  ],
34
34
  "default": null,
35
35
  "description": "Model requested for the route; null = harness default."
36
+ },
37
+ "credential_profile_id": {
38
+ "type": [
39
+ "string",
40
+ "null"
41
+ ],
42
+ "description": "Credential profile requested/effective for the route; absent = account pool/default."
36
43
  }
37
44
  },
38
45
  "required": [
@@ -61,6 +68,13 @@
61
68
  "default": null,
62
69
  "description": "Model actually observed; null when no evidence."
63
70
  },
71
+ "credential_profile_id": {
72
+ "type": [
73
+ "string",
74
+ "null"
75
+ ],
76
+ "description": "Credential profile actually observed on the harness route; absent when undisclosed."
77
+ },
64
78
  "evidence_source": {
65
79
  "type": "string",
66
80
  "enum": [
@@ -43,9 +43,11 @@
43
43
  "credential_pool_exhausted",
44
44
  "delegated_home_unavailable",
45
45
  "delegated_confinement_unavailable",
46
- "delegated_evidence_incomplete"
46
+ "delegated_evidence_incomplete",
47
+ "access_profile_incompatible",
48
+ "retired_access_profile"
47
49
  ],
48
- "description": "Machine-readable failure sub-code within a RunFailure category (budget-denial reasons, Delegate child-drain timeout, a spent subscription quota window whose reopen time is RunFailure.resetsAt, an exhausted credential rotation pool whose EARLIEST known member reset is RunFailure.resetsAt, and the delegated-run confinement refusals: missing scoped home, no OS-enforced boundary on this host, incomplete applied evidence)."
50
+ "description": "Machine-readable failure sub-code within a RunFailure category, including historical delegated-run failures and active access-profile refusals."
49
51
  },
50
52
  {
51
53
  "type": "null"
@@ -34,8 +34,8 @@
34
34
  "readonly",
35
35
  "workspace_write",
36
36
  "full",
37
- "external_sandbox_full",
38
- "inherit_native"
37
+ "inherit_native",
38
+ "external_sandbox_full"
39
39
  ],
40
40
  "description": "Access profile the caller requested."
41
41
  },
@@ -45,10 +45,10 @@
45
45
  "readonly",
46
46
  "workspace_write",
47
47
  "full",
48
- "external_sandbox_full",
49
- "inherit_native"
48
+ "inherit_native",
49
+ "external_sandbox_full"
50
50
  ],
51
- "description": "Access profile actually enforced by the engine."
51
+ "description": "Access profile enforced by the engine."
52
52
  },
53
53
  "external_context_policy": {
54
54
  "type": "string",
@@ -347,10 +347,10 @@
347
347
  "readonly",
348
348
  "workspace_write",
349
349
  "full",
350
- "external_sandbox_full",
351
- "inherit_native"
350
+ "inherit_native",
351
+ "external_sandbox_full"
352
352
  ],
353
- "description": "Effective access profile covered by this grant."
353
+ "description": "Effective access profile recorded by this historical grant."
354
354
  }
355
355
  },
356
356
  "required": [
@@ -362,13 +362,13 @@
362
362
  "accessProfile"
363
363
  ],
364
364
  "additionalProperties": false,
365
- "description": "External exact grant for one versioned project test command."
365
+ "description": "Historical exact grant for one versioned project test command."
366
366
  },
367
367
  {
368
368
  "type": "null"
369
369
  }
370
370
  ],
371
- "description": "Matching external grant; null when none was found.",
371
+ "description": "Matching historical external grant; null when none was found.",
372
372
  "default": null
373
373
  }
374
374
  },
@@ -377,7 +377,7 @@
377
377
  "id"
378
378
  ],
379
379
  "additionalProperties": false,
380
- "description": "A deterministic typed-argv test command used as a verification gate."
380
+ "description": "A deterministic typed-argv test command recorded in an immutable TaskContract."
381
381
  },
382
382
  "default": [],
383
383
  "description": "Deterministic test commands configured as gates."
@@ -398,8 +398,8 @@
398
398
  "readonly",
399
399
  "workspace_write",
400
400
  "full",
401
- "external_sandbox_full",
402
- "inherit_native"
401
+ "inherit_native",
402
+ "external_sandbox_full"
403
403
  ],
404
404
  "description": "Access profile the caller requested.",
405
405
  "default": "workspace_write"