@claudexor/schema 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +16 -0
- package/dist/agent-capabilities.d.ts +366 -0
- package/dist/agent-capabilities.d.ts.map +1 -0
- package/dist/agent-capabilities.js +125 -0
- package/dist/agent-capabilities.js.map +1 -0
- package/dist/apply-eligibility.d.ts +76 -0
- package/dist/apply-eligibility.d.ts.map +1 -0
- package/dist/apply-eligibility.js +37 -0
- package/dist/apply-eligibility.js.map +1 -0
- package/dist/attachment.d.ts +69 -0
- package/dist/attachment.d.ts.map +1 -0
- package/dist/attachment.js +54 -0
- package/dist/attachment.js.map +1 -0
- package/dist/budget.d.ts +75 -0
- package/dist/budget.d.ts.map +1 -0
- package/dist/budget.js +54 -0
- package/dist/budget.js.map +1 -0
- package/dist/config.d.ts +743 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +194 -0
- package/dist/config.js.map +1 -0
- package/dist/context.d.ts +222 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +70 -0
- package/dist/context.js.map +1 -0
- package/dist/control-run-detail.d.ts +1686 -0
- package/dist/control-run-detail.d.ts.map +1 -0
- package/dist/control-run-detail.js +107 -0
- package/dist/control-run-detail.js.map +1 -0
- package/dist/control-trust.d.ts +79 -0
- package/dist/control-trust.d.ts.map +1 -0
- package/dist/control-trust.js +39 -0
- package/dist/control-trust.js.map +1 -0
- package/dist/control.d.ts +4226 -0
- package/dist/control.d.ts.map +1 -0
- package/dist/control.js +1022 -0
- package/dist/control.js.map +1 -0
- package/dist/decision.d.ts +208 -0
- package/dist/decision.d.ts.map +1 -0
- package/dist/decision.js +98 -0
- package/dist/decision.js.map +1 -0
- package/dist/events.d.ts +70 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +105 -0
- package/dist/events.js.map +1 -0
- package/dist/gate.d.ts +37 -0
- package/dist/gate.d.ts.map +1 -0
- package/dist/gate.js +20 -0
- package/dist/gate.js.map +1 -0
- package/dist/harness.d.ts +1418 -0
- package/dist/harness.d.ts.map +1 -0
- package/dist/harness.js +552 -0
- package/dist/harness.js.map +1 -0
- package/dist/index.d.ts +32 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +32 -0
- package/dist/index.js.map +1 -0
- package/dist/orchestrate.d.ts +428 -0
- package/dist/orchestrate.d.ts.map +1 -0
- package/dist/orchestrate.js +246 -0
- package/dist/orchestrate.js.map +1 -0
- package/dist/primitives.d.ts +71 -0
- package/dist/primitives.d.ts.map +1 -0
- package/dist/primitives.js +114 -0
- package/dist/primitives.js.map +1 -0
- package/dist/review.d.ts +220 -0
- package/dist/review.d.ts.map +1 -0
- package/dist/review.js +91 -0
- package/dist/review.js.map +1 -0
- package/dist/route.d.ts +67 -0
- package/dist/route.d.ts.map +1 -0
- package/dist/route.js +33 -0
- package/dist/route.js.map +1 -0
- package/dist/spec.d.ts +561 -0
- package/dist/spec.d.ts.map +1 -0
- package/dist/spec.js +133 -0
- package/dist/spec.js.map +1 -0
- package/dist/surface-run-controls.d.ts +14 -0
- package/dist/surface-run-controls.d.ts.map +1 -0
- package/dist/surface-run-controls.js +142 -0
- package/dist/surface-run-controls.js.map +1 -0
- package/dist/task.d.ts +565 -0
- package/dist/task.d.ts.map +1 -0
- package/dist/task.js +186 -0
- package/dist/task.js.map +1 -0
- package/dist/telemetry.d.ts +660 -0
- package/dist/telemetry.d.ts.map +1 -0
- package/dist/telemetry.js +140 -0
- package/dist/telemetry.js.map +1 -0
- package/dist/thread.d.ts +348 -0
- package/dist/thread.d.ts.map +1 -0
- package/dist/thread.js +194 -0
- package/dist/thread.js.map +1 -0
- package/dist/workproduct.d.ts +31 -0
- package/dist/workproduct.d.ts.map +1 -0
- package/dist/workproduct.js +25 -0
- package/dist/workproduct.js.map +1 -0
- package/dist/workspace.d.ts +53 -0
- package/dist/workspace.d.ts.map +1 -0
- package/dist/workspace.js +30 -0
- package/dist/workspace.js.map +1 -0
- package/generated/AgentCapabilityCatalog.schema.json +389 -0
- package/generated/ApplyEligibility.schema.json +44 -0
- package/generated/BudgetLease.schema.json +95 -0
- package/generated/BudgetObservation.schema.json +76 -0
- package/generated/ConformanceReport.schema.json +107 -0
- package/generated/ContextPack.schema.json +186 -0
- package/generated/ControlApplyCheckRequest.schema.json +54 -0
- package/generated/ControlApplyRequest.schema.json +74 -0
- package/generated/ControlHarnessListResponse.schema.json +498 -0
- package/generated/ControlHarnessModelsResponse.schema.json +78 -0
- package/generated/ControlHarnessSettingsPatch.schema.json +130 -0
- package/generated/ControlInteractionAnswerRequest.schema.json +48 -0
- package/generated/ControlInteractionAnswerResponse.schema.json +35 -0
- package/generated/ControlPendingInteraction.schema.json +129 -0
- package/generated/ControlQueuedRunInfo.schema.json +44 -0
- package/generated/ControlRunControlRequest.schema.json +61 -0
- package/generated/ControlRunControlResponse.schema.json +40 -0
- package/generated/ControlRunDecisionRequest.schema.json +98 -0
- package/generated/ControlRunDecisionResponse.schema.json +40 -0
- package/generated/ControlRunDetail.schema.json +1925 -0
- package/generated/ControlRunStartInfo.schema.json +33 -0
- package/generated/ControlRunStartRequest.schema.json +429 -0
- package/generated/ControlRunSummary.schema.json +666 -0
- package/generated/ControlSecretListResponse.schema.json +57 -0
- package/generated/ControlSettingsSnapshot.schema.json +281 -0
- package/generated/ControlSettingsUpdateRequest.schema.json +212 -0
- package/generated/ControlSetupJob.schema.json +148 -0
- package/generated/ControlSetupJobConfirmRequest.schema.json +18 -0
- package/generated/ControlSetupJobCreateRequest.schema.json +38 -0
- package/generated/ControlSetupJobEvent.schema.json +58 -0
- package/generated/ControlSetupJobListResponse.schema.json +162 -0
- package/generated/ControlSpecFreezeRequest.schema.json +83 -0
- package/generated/ControlSpecQuestionsRequest.schema.json +80 -0
- package/generated/ControlThread.schema.json +129 -0
- package/generated/ControlThreadApplyRequest.schema.json +32 -0
- package/generated/ControlThreadApplyResponse.schema.json +47 -0
- package/generated/ControlThreadCreateRequest.schema.json +107 -0
- package/generated/ControlThreadDetail.schema.json +515 -0
- package/generated/ControlThreadListResponse.schema.json +141 -0
- package/generated/ControlThreadUpdateRequest.schema.json +46 -0
- package/generated/ControlTrustListResponse.schema.json +59 -0
- package/generated/ControlTrustState.schema.json +45 -0
- package/generated/ControlTrustUpdateRequest.schema.json +26 -0
- package/generated/DecisionRecord.schema.json +232 -0
- package/generated/GateResult.schema.json +81 -0
- package/generated/GlobalConfig.schema.json +313 -0
- package/generated/HarnessEvent.schema.json +360 -0
- package/generated/HarnessManifest.schema.json +350 -0
- package/generated/HarnessModel.schema.json +41 -0
- package/generated/HarnessStatusDto.schema.json +486 -0
- package/generated/McpRunToolResult.schema.json +91 -0
- package/generated/OrchestrateContract.schema.json +93 -0
- package/generated/OrchestratePlan.schema.json +244 -0
- package/generated/OrchestratePlanProgress.schema.json +103 -0
- package/generated/ProjectConfig.schema.json +95 -0
- package/generated/ReviewFinding.schema.json +226 -0
- package/generated/RouteFallbackPayload.schema.json +79 -0
- package/generated/RouteProof.schema.json +111 -0
- package/generated/RunControl.schema.json +51 -0
- package/generated/RunEvent.schema.json +103 -0
- package/generated/RunFailure.schema.json +98 -0
- package/generated/RunTelemetry.schema.json +433 -0
- package/generated/SecretMetadata.schema.json +34 -0
- package/generated/Session.schema.json +80 -0
- package/generated/SessionReboundLineage.schema.json +73 -0
- package/generated/SpecPack.schema.json +372 -0
- package/generated/TaskContract.schema.json +501 -0
- package/generated/Thread.schema.json +176 -0
- package/generated/ThreadTurn.schema.json +172 -0
- package/generated/TrustConfig.schema.json +44 -0
- package/generated/WorkProduct.schema.json +60 -0
- package/generated/WorkspaceEnvelope.schema.json +94 -0
- package/package.json +43 -0
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$ref": "#/definitions/OrchestratePlan",
|
|
3
|
+
"definitions": {
|
|
4
|
+
"OrchestratePlan": {
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"tool_calls": {
|
|
8
|
+
"type": "array",
|
|
9
|
+
"items": {
|
|
10
|
+
"anyOf": [
|
|
11
|
+
{
|
|
12
|
+
"type": "object",
|
|
13
|
+
"properties": {
|
|
14
|
+
"tool": {
|
|
15
|
+
"type": "string",
|
|
16
|
+
"const": "start_run"
|
|
17
|
+
},
|
|
18
|
+
"prompt": {
|
|
19
|
+
"type": "string",
|
|
20
|
+
"minLength": 1,
|
|
21
|
+
"description": "Prompt for the sub-run."
|
|
22
|
+
},
|
|
23
|
+
"mode": {
|
|
24
|
+
"type": "string",
|
|
25
|
+
"enum": [
|
|
26
|
+
"ask",
|
|
27
|
+
"plan",
|
|
28
|
+
"audit",
|
|
29
|
+
"agent",
|
|
30
|
+
"orchestrate"
|
|
31
|
+
],
|
|
32
|
+
"description": "Mode for the sub-run.",
|
|
33
|
+
"default": "agent"
|
|
34
|
+
},
|
|
35
|
+
"harness": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"description": "Harness to run on; omitted = engine routing."
|
|
38
|
+
},
|
|
39
|
+
"why": {
|
|
40
|
+
"type": "string",
|
|
41
|
+
"default": "",
|
|
42
|
+
"description": "Planner's reason for this step."
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
"required": [
|
|
46
|
+
"tool",
|
|
47
|
+
"prompt"
|
|
48
|
+
],
|
|
49
|
+
"additionalProperties": false,
|
|
50
|
+
"description": "Start one isolated sub-run."
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"type": "object",
|
|
54
|
+
"properties": {
|
|
55
|
+
"tool": {
|
|
56
|
+
"type": "string",
|
|
57
|
+
"const": "race"
|
|
58
|
+
},
|
|
59
|
+
"prompt": {
|
|
60
|
+
"type": "string",
|
|
61
|
+
"minLength": 1,
|
|
62
|
+
"description": "Prompt raced across harnesses."
|
|
63
|
+
},
|
|
64
|
+
"n": {
|
|
65
|
+
"type": "integer",
|
|
66
|
+
"minimum": 2,
|
|
67
|
+
"default": 2,
|
|
68
|
+
"description": "Number of race candidates (one per harness)."
|
|
69
|
+
},
|
|
70
|
+
"why": {
|
|
71
|
+
"type": "string",
|
|
72
|
+
"default": "",
|
|
73
|
+
"description": "Planner's reason for this step."
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
"required": [
|
|
77
|
+
"tool",
|
|
78
|
+
"prompt"
|
|
79
|
+
],
|
|
80
|
+
"additionalProperties": false,
|
|
81
|
+
"description": "Race the prompt as a best-of-N run."
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"type": "object",
|
|
85
|
+
"properties": {
|
|
86
|
+
"tool": {
|
|
87
|
+
"type": "string",
|
|
88
|
+
"const": "review"
|
|
89
|
+
},
|
|
90
|
+
"run_id": {
|
|
91
|
+
"type": "string",
|
|
92
|
+
"minLength": 1,
|
|
93
|
+
"description": "Run to review."
|
|
94
|
+
},
|
|
95
|
+
"why": {
|
|
96
|
+
"type": "string",
|
|
97
|
+
"default": "",
|
|
98
|
+
"description": "Planner's reason for this step."
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
"required": [
|
|
102
|
+
"tool",
|
|
103
|
+
"run_id"
|
|
104
|
+
],
|
|
105
|
+
"additionalProperties": false,
|
|
106
|
+
"description": "Review an existing run."
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
"type": "object",
|
|
110
|
+
"properties": {
|
|
111
|
+
"tool": {
|
|
112
|
+
"type": "string",
|
|
113
|
+
"const": "status"
|
|
114
|
+
},
|
|
115
|
+
"run_id": {
|
|
116
|
+
"type": "string",
|
|
117
|
+
"minLength": 1,
|
|
118
|
+
"description": "Run to inspect."
|
|
119
|
+
},
|
|
120
|
+
"why": {
|
|
121
|
+
"type": "string",
|
|
122
|
+
"default": "",
|
|
123
|
+
"description": "Planner's reason for this step."
|
|
124
|
+
}
|
|
125
|
+
},
|
|
126
|
+
"required": [
|
|
127
|
+
"tool",
|
|
128
|
+
"run_id"
|
|
129
|
+
],
|
|
130
|
+
"additionalProperties": false,
|
|
131
|
+
"description": "Read the status of an existing run."
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"type": "object",
|
|
135
|
+
"properties": {
|
|
136
|
+
"tool": {
|
|
137
|
+
"type": "string",
|
|
138
|
+
"const": "answer_question"
|
|
139
|
+
},
|
|
140
|
+
"interaction_id": {
|
|
141
|
+
"type": "string",
|
|
142
|
+
"minLength": 1,
|
|
143
|
+
"description": "Pending interaction to answer."
|
|
144
|
+
},
|
|
145
|
+
"answers": {
|
|
146
|
+
"type": "array",
|
|
147
|
+
"items": {
|
|
148
|
+
"type": "object",
|
|
149
|
+
"properties": {
|
|
150
|
+
"question_id": {
|
|
151
|
+
"type": "string",
|
|
152
|
+
"minLength": 1,
|
|
153
|
+
"description": "Id of the question being answered."
|
|
154
|
+
},
|
|
155
|
+
"selected_labels": {
|
|
156
|
+
"type": "array",
|
|
157
|
+
"items": {
|
|
158
|
+
"type": "string"
|
|
159
|
+
},
|
|
160
|
+
"default": [],
|
|
161
|
+
"description": "Labels of the selected options."
|
|
162
|
+
},
|
|
163
|
+
"free_text": {
|
|
164
|
+
"type": [
|
|
165
|
+
"string",
|
|
166
|
+
"null"
|
|
167
|
+
],
|
|
168
|
+
"default": null,
|
|
169
|
+
"description": "Free-text answer; null when only options were selected."
|
|
170
|
+
}
|
|
171
|
+
},
|
|
172
|
+
"required": [
|
|
173
|
+
"question_id"
|
|
174
|
+
],
|
|
175
|
+
"additionalProperties": false
|
|
176
|
+
},
|
|
177
|
+
"default": [],
|
|
178
|
+
"description": "Answers, one per question."
|
|
179
|
+
},
|
|
180
|
+
"why": {
|
|
181
|
+
"type": "string",
|
|
182
|
+
"default": "",
|
|
183
|
+
"description": "Planner's reason for this step."
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
"required": [
|
|
187
|
+
"tool",
|
|
188
|
+
"interaction_id"
|
|
189
|
+
],
|
|
190
|
+
"additionalProperties": false,
|
|
191
|
+
"description": "Answer a pending interactive question of a sub-run."
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
"type": "object",
|
|
195
|
+
"properties": {
|
|
196
|
+
"tool": {
|
|
197
|
+
"type": "string",
|
|
198
|
+
"const": "apply"
|
|
199
|
+
},
|
|
200
|
+
"run_id": {
|
|
201
|
+
"type": "string",
|
|
202
|
+
"minLength": 1,
|
|
203
|
+
"description": "Run whose work product to deliver."
|
|
204
|
+
},
|
|
205
|
+
"mode": {
|
|
206
|
+
"type": "string",
|
|
207
|
+
"enum": [
|
|
208
|
+
"apply",
|
|
209
|
+
"branch",
|
|
210
|
+
"commit",
|
|
211
|
+
"pr"
|
|
212
|
+
],
|
|
213
|
+
"default": "apply",
|
|
214
|
+
"description": "Delivery mode: apply to the tree, or as a branch, commit, or PR."
|
|
215
|
+
},
|
|
216
|
+
"why": {
|
|
217
|
+
"type": "string",
|
|
218
|
+
"default": "",
|
|
219
|
+
"description": "Planner's reason for this step."
|
|
220
|
+
}
|
|
221
|
+
},
|
|
222
|
+
"required": [
|
|
223
|
+
"tool",
|
|
224
|
+
"run_id"
|
|
225
|
+
],
|
|
226
|
+
"additionalProperties": false,
|
|
227
|
+
"description": "Deliver a run's work product to the project (the only live-tree-mutating tool)."
|
|
228
|
+
}
|
|
229
|
+
],
|
|
230
|
+
"description": "One concrete tool invocation in a planner plan, with per-tool typed args discriminated on `tool`."
|
|
231
|
+
},
|
|
232
|
+
"minItems": 1,
|
|
233
|
+
"description": "Ordered tool invocations of the plan."
|
|
234
|
+
}
|
|
235
|
+
},
|
|
236
|
+
"required": [
|
|
237
|
+
"tool_calls"
|
|
238
|
+
],
|
|
239
|
+
"additionalProperties": false,
|
|
240
|
+
"description": "The typed orchestration plan extracted from the planner's report; persisted as final/orchestration.yaml."
|
|
241
|
+
}
|
|
242
|
+
},
|
|
243
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
244
|
+
}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$ref": "#/definitions/OrchestratePlanProgress",
|
|
3
|
+
"definitions": {
|
|
4
|
+
"OrchestratePlanProgress": {
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"steps": {
|
|
8
|
+
"type": "array",
|
|
9
|
+
"items": {
|
|
10
|
+
"type": "object",
|
|
11
|
+
"properties": {
|
|
12
|
+
"index": {
|
|
13
|
+
"type": "integer",
|
|
14
|
+
"minimum": 0,
|
|
15
|
+
"description": "Position of the step in the plan."
|
|
16
|
+
},
|
|
17
|
+
"tool": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"enum": [
|
|
20
|
+
"start_run",
|
|
21
|
+
"race",
|
|
22
|
+
"status",
|
|
23
|
+
"answer_question",
|
|
24
|
+
"apply",
|
|
25
|
+
"review"
|
|
26
|
+
],
|
|
27
|
+
"description": "Tool in the orchestrate planner's belt, mapping 1:1 onto engine entry points: start_run, race (best-of-N), status, answer_question, apply, and review."
|
|
28
|
+
},
|
|
29
|
+
"risk": {
|
|
30
|
+
"type": "string",
|
|
31
|
+
"enum": [
|
|
32
|
+
"safe",
|
|
33
|
+
"risky"
|
|
34
|
+
],
|
|
35
|
+
"description": "Risk class of the step: safe (no live-tree mutation) or risky."
|
|
36
|
+
},
|
|
37
|
+
"status": {
|
|
38
|
+
"type": "string",
|
|
39
|
+
"enum": [
|
|
40
|
+
"pending",
|
|
41
|
+
"running",
|
|
42
|
+
"done",
|
|
43
|
+
"skipped",
|
|
44
|
+
"blocked",
|
|
45
|
+
"failed"
|
|
46
|
+
],
|
|
47
|
+
"description": "Executor status of one plan step: pending, running, done, skipped, blocked (risky step awaiting a human), or failed."
|
|
48
|
+
},
|
|
49
|
+
"run_id": {
|
|
50
|
+
"type": [
|
|
51
|
+
"string",
|
|
52
|
+
"null"
|
|
53
|
+
],
|
|
54
|
+
"default": null,
|
|
55
|
+
"description": "Sub-run id this step started/targeted, when known."
|
|
56
|
+
},
|
|
57
|
+
"detail": {
|
|
58
|
+
"type": [
|
|
59
|
+
"string",
|
|
60
|
+
"null"
|
|
61
|
+
],
|
|
62
|
+
"default": null,
|
|
63
|
+
"description": "Human-readable step detail."
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
"required": [
|
|
67
|
+
"index",
|
|
68
|
+
"tool",
|
|
69
|
+
"risk",
|
|
70
|
+
"status"
|
|
71
|
+
],
|
|
72
|
+
"additionalProperties": false
|
|
73
|
+
},
|
|
74
|
+
"default": [],
|
|
75
|
+
"description": "Per-step outcomes, in plan order."
|
|
76
|
+
},
|
|
77
|
+
"autonomy": {
|
|
78
|
+
"type": "string",
|
|
79
|
+
"enum": [
|
|
80
|
+
"suggest",
|
|
81
|
+
"auto_safe",
|
|
82
|
+
"auto_full"
|
|
83
|
+
],
|
|
84
|
+
"description": "How much the orchestrate planner may act without confirmation: suggest (user executes the plan), auto_safe (auto-runs only provably safe steps), auto_full (auto-runs everything)."
|
|
85
|
+
},
|
|
86
|
+
"stopped_reason": {
|
|
87
|
+
"type": [
|
|
88
|
+
"string",
|
|
89
|
+
"null"
|
|
90
|
+
],
|
|
91
|
+
"default": null,
|
|
92
|
+
"description": "Set when the executor stopped early (first risky step under auto_safe, budget, abort)."
|
|
93
|
+
}
|
|
94
|
+
},
|
|
95
|
+
"required": [
|
|
96
|
+
"autonomy"
|
|
97
|
+
],
|
|
98
|
+
"additionalProperties": false,
|
|
99
|
+
"description": "Typed executor progress over a plan's tool calls, persisted as final/orchestration_progress.yaml and projected into run detail."
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
103
|
+
}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$ref": "#/definitions/ProjectConfig",
|
|
3
|
+
"definitions": {
|
|
4
|
+
"ProjectConfig": {
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"version": {
|
|
8
|
+
"type": "number",
|
|
9
|
+
"const": 1,
|
|
10
|
+
"default": 1,
|
|
11
|
+
"description": "Config format version."
|
|
12
|
+
},
|
|
13
|
+
"context": {
|
|
14
|
+
"type": "object",
|
|
15
|
+
"properties": {
|
|
16
|
+
"mandatory_files": {
|
|
17
|
+
"type": "array",
|
|
18
|
+
"items": {
|
|
19
|
+
"type": "string"
|
|
20
|
+
},
|
|
21
|
+
"default": [],
|
|
22
|
+
"description": "Files every context pack must include."
|
|
23
|
+
},
|
|
24
|
+
"include": {
|
|
25
|
+
"type": "array",
|
|
26
|
+
"items": {
|
|
27
|
+
"type": "string"
|
|
28
|
+
},
|
|
29
|
+
"default": [],
|
|
30
|
+
"description": "Globs to include in context building."
|
|
31
|
+
},
|
|
32
|
+
"exclude": {
|
|
33
|
+
"type": "array",
|
|
34
|
+
"items": {
|
|
35
|
+
"type": "string"
|
|
36
|
+
},
|
|
37
|
+
"default": [],
|
|
38
|
+
"description": "Globs to exclude from context building."
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
"additionalProperties": false,
|
|
42
|
+
"default": {},
|
|
43
|
+
"description": "Context-building preferences for the project."
|
|
44
|
+
},
|
|
45
|
+
"tests": {
|
|
46
|
+
"type": "object",
|
|
47
|
+
"properties": {
|
|
48
|
+
"commands": {
|
|
49
|
+
"type": "array",
|
|
50
|
+
"items": {
|
|
51
|
+
"type": "string"
|
|
52
|
+
},
|
|
53
|
+
"default": [],
|
|
54
|
+
"description": "Test commands run as deterministic gates."
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
"additionalProperties": false,
|
|
58
|
+
"default": {
|
|
59
|
+
"commands": []
|
|
60
|
+
},
|
|
61
|
+
"description": "Project-configured deterministic test gates."
|
|
62
|
+
},
|
|
63
|
+
"budget": {
|
|
64
|
+
"type": "object",
|
|
65
|
+
"properties": {
|
|
66
|
+
"portfolio": {
|
|
67
|
+
"type": "string",
|
|
68
|
+
"enum": [
|
|
69
|
+
"daily-rich",
|
|
70
|
+
"balanced",
|
|
71
|
+
"cheapest",
|
|
72
|
+
"strongest",
|
|
73
|
+
"burn",
|
|
74
|
+
"subscription-first",
|
|
75
|
+
"api-overflow",
|
|
76
|
+
"conserve-claude",
|
|
77
|
+
"conserve-codex"
|
|
78
|
+
],
|
|
79
|
+
"description": "Budget portfolio weighting the harness router's quality/cost/latency and subscription-vs-API preferences (e.g. cheapest minimizes spend, burn maximizes quality, conserve-* deprioritizes one vendor).",
|
|
80
|
+
"default": "subscription-first"
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
"additionalProperties": false,
|
|
84
|
+
"default": {
|
|
85
|
+
"portfolio": "subscription-first"
|
|
86
|
+
},
|
|
87
|
+
"description": "Project budget preferences."
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
"additionalProperties": false,
|
|
91
|
+
"description": "Project config (.claudexor/config.yaml) — safe, versioned settings only; sensitive settings live in global/user-local/trust configs."
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
95
|
+
}
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$ref": "#/definitions/ReviewFinding",
|
|
3
|
+
"definitions": {
|
|
4
|
+
"ReviewFinding": {
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"id": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"minLength": 1,
|
|
10
|
+
"description": "Finding id."
|
|
11
|
+
},
|
|
12
|
+
"severity": {
|
|
13
|
+
"type": "string",
|
|
14
|
+
"enum": [
|
|
15
|
+
"BLOCK",
|
|
16
|
+
"FIX_FIRST",
|
|
17
|
+
"WARN",
|
|
18
|
+
"NIT",
|
|
19
|
+
"OUT_OF_SCOPE",
|
|
20
|
+
"INSUFFICIENT_EVIDENCE",
|
|
21
|
+
"NEEDS_HUMAN"
|
|
22
|
+
],
|
|
23
|
+
"description": "Reviewer-assigned severity of a finding: BLOCK and FIX_FIRST can block convergence when accepted with evidence, WARN/NIT are advisory, OUT_OF_SCOPE and INSUFFICIENT_EVIDENCE are triage verdicts, NEEDS_HUMAN escalates to a human decision."
|
|
24
|
+
},
|
|
25
|
+
"category": {
|
|
26
|
+
"type": "string",
|
|
27
|
+
"enum": [
|
|
28
|
+
"correctness",
|
|
29
|
+
"regression",
|
|
30
|
+
"security",
|
|
31
|
+
"performance",
|
|
32
|
+
"maintainability",
|
|
33
|
+
"test_gap",
|
|
34
|
+
"spec_gap",
|
|
35
|
+
"deploy",
|
|
36
|
+
"architecture",
|
|
37
|
+
"ux"
|
|
38
|
+
],
|
|
39
|
+
"description": "Subject-matter category of a review finding."
|
|
40
|
+
},
|
|
41
|
+
"claim": {
|
|
42
|
+
"type": "string",
|
|
43
|
+
"description": "The reviewer's claim, stated concretely."
|
|
44
|
+
},
|
|
45
|
+
"linked_acceptance_criteria": {
|
|
46
|
+
"type": "array",
|
|
47
|
+
"items": {
|
|
48
|
+
"type": "string",
|
|
49
|
+
"minLength": 1,
|
|
50
|
+
"description": "Non-empty identifier string."
|
|
51
|
+
},
|
|
52
|
+
"default": [],
|
|
53
|
+
"description": "Ids of acceptance criteria this finding relates to."
|
|
54
|
+
},
|
|
55
|
+
"evidence": {
|
|
56
|
+
"type": "object",
|
|
57
|
+
"properties": {
|
|
58
|
+
"files": {
|
|
59
|
+
"type": "array",
|
|
60
|
+
"items": {
|
|
61
|
+
"type": "object",
|
|
62
|
+
"properties": {
|
|
63
|
+
"path": {
|
|
64
|
+
"type": "string",
|
|
65
|
+
"description": "Repo-relative file path."
|
|
66
|
+
},
|
|
67
|
+
"lines": {
|
|
68
|
+
"type": [
|
|
69
|
+
"string",
|
|
70
|
+
"null"
|
|
71
|
+
],
|
|
72
|
+
"default": null,
|
|
73
|
+
"description": "Line range in the file (e.g. \"10-42\"); null when the whole file is cited."
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
"required": [
|
|
77
|
+
"path"
|
|
78
|
+
],
|
|
79
|
+
"additionalProperties": false,
|
|
80
|
+
"description": "File citation supporting a finding."
|
|
81
|
+
},
|
|
82
|
+
"default": [],
|
|
83
|
+
"description": "File citations."
|
|
84
|
+
},
|
|
85
|
+
"diff_hunks": {
|
|
86
|
+
"type": "array",
|
|
87
|
+
"items": {
|
|
88
|
+
"type": "string"
|
|
89
|
+
},
|
|
90
|
+
"default": [],
|
|
91
|
+
"description": "Diff hunks quoted as evidence."
|
|
92
|
+
},
|
|
93
|
+
"commands": {
|
|
94
|
+
"type": "array",
|
|
95
|
+
"items": {
|
|
96
|
+
"type": "object",
|
|
97
|
+
"properties": {
|
|
98
|
+
"command": {
|
|
99
|
+
"type": "string",
|
|
100
|
+
"description": "Command whose output supports the finding."
|
|
101
|
+
}
|
|
102
|
+
},
|
|
103
|
+
"required": [
|
|
104
|
+
"command"
|
|
105
|
+
],
|
|
106
|
+
"additionalProperties": false,
|
|
107
|
+
"description": "Command citation supporting a finding."
|
|
108
|
+
},
|
|
109
|
+
"default": [],
|
|
110
|
+
"description": "Commands whose output supports the finding."
|
|
111
|
+
},
|
|
112
|
+
"logs": {
|
|
113
|
+
"type": "array",
|
|
114
|
+
"items": {
|
|
115
|
+
"type": "object",
|
|
116
|
+
"properties": {
|
|
117
|
+
"path": {
|
|
118
|
+
"type": "string",
|
|
119
|
+
"description": "Log file path."
|
|
120
|
+
}
|
|
121
|
+
},
|
|
122
|
+
"required": [
|
|
123
|
+
"path"
|
|
124
|
+
],
|
|
125
|
+
"additionalProperties": false
|
|
126
|
+
},
|
|
127
|
+
"default": [],
|
|
128
|
+
"description": "Log files cited as evidence."
|
|
129
|
+
}
|
|
130
|
+
},
|
|
131
|
+
"additionalProperties": false,
|
|
132
|
+
"description": "Evidence backing a finding; a finding without evidence cannot block.",
|
|
133
|
+
"default": {}
|
|
134
|
+
},
|
|
135
|
+
"proposed_fix": {
|
|
136
|
+
"type": [
|
|
137
|
+
"string",
|
|
138
|
+
"null"
|
|
139
|
+
],
|
|
140
|
+
"default": null,
|
|
141
|
+
"description": "Reviewer-proposed fix; null when none was offered."
|
|
142
|
+
},
|
|
143
|
+
"reviewer": {
|
|
144
|
+
"type": "object",
|
|
145
|
+
"properties": {
|
|
146
|
+
"harness_id": {
|
|
147
|
+
"type": "string",
|
|
148
|
+
"minLength": 1,
|
|
149
|
+
"description": "Harness that produced the review."
|
|
150
|
+
},
|
|
151
|
+
"requested_model": {
|
|
152
|
+
"type": [
|
|
153
|
+
"string",
|
|
154
|
+
"null"
|
|
155
|
+
],
|
|
156
|
+
"default": null,
|
|
157
|
+
"description": "Model requested for the reviewer route."
|
|
158
|
+
},
|
|
159
|
+
"requested_effort": {
|
|
160
|
+
"type": [
|
|
161
|
+
"string",
|
|
162
|
+
"null"
|
|
163
|
+
],
|
|
164
|
+
"default": null,
|
|
165
|
+
"description": "Reasoning effort requested for the reviewer route."
|
|
166
|
+
},
|
|
167
|
+
"observed_model": {
|
|
168
|
+
"type": [
|
|
169
|
+
"string",
|
|
170
|
+
"null"
|
|
171
|
+
],
|
|
172
|
+
"default": null,
|
|
173
|
+
"description": "Model the harness actually reported using."
|
|
174
|
+
},
|
|
175
|
+
"route_proof_status": {
|
|
176
|
+
"type": "string",
|
|
177
|
+
"enum": [
|
|
178
|
+
"verified",
|
|
179
|
+
"accepted_model_arg",
|
|
180
|
+
"unverified",
|
|
181
|
+
"same_model_fallback"
|
|
182
|
+
],
|
|
183
|
+
"description": "How strongly the executed route is proven: verified (observed evidence matches the request), accepted_model_arg (the requested model arg was accepted without stream evidence), unverified, or same_model_fallback (a fallback landed on the same model).",
|
|
184
|
+
"default": "unverified"
|
|
185
|
+
}
|
|
186
|
+
},
|
|
187
|
+
"required": [
|
|
188
|
+
"harness_id"
|
|
189
|
+
],
|
|
190
|
+
"additionalProperties": false,
|
|
191
|
+
"description": "Who reviewed: the harness/model route and its verification status."
|
|
192
|
+
},
|
|
193
|
+
"status": {
|
|
194
|
+
"type": "string",
|
|
195
|
+
"enum": [
|
|
196
|
+
"proposed",
|
|
197
|
+
"accepted",
|
|
198
|
+
"rebutted",
|
|
199
|
+
"fixed",
|
|
200
|
+
"accepted_risk",
|
|
201
|
+
"duplicate",
|
|
202
|
+
"stale",
|
|
203
|
+
"out_of_scope",
|
|
204
|
+
"insufficient_evidence"
|
|
205
|
+
],
|
|
206
|
+
"description": "Lifecycle status of a finding, from proposed through accepted/rebutted/fixed to terminal triage states (accepted_risk, duplicate, stale, out_of_scope, insufficient_evidence).",
|
|
207
|
+
"default": "proposed"
|
|
208
|
+
},
|
|
209
|
+
"revalidation_note": {
|
|
210
|
+
"type": "string",
|
|
211
|
+
"description": "Note recorded when the finding was revalidated against a changed tree."
|
|
212
|
+
}
|
|
213
|
+
},
|
|
214
|
+
"required": [
|
|
215
|
+
"id",
|
|
216
|
+
"severity",
|
|
217
|
+
"category",
|
|
218
|
+
"claim",
|
|
219
|
+
"reviewer"
|
|
220
|
+
],
|
|
221
|
+
"additionalProperties": false,
|
|
222
|
+
"description": "One evidence-backed review finding produced by a reviewer harness."
|
|
223
|
+
}
|
|
224
|
+
},
|
|
225
|
+
"$schema": "http://json-schema.org/draft-07/schema#"
|
|
226
|
+
}
|