monarchic-agent-protocol 0.1.16 → 0.1.17
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.
- checksums.yaml +4 -4
- data/README.md +51 -14
- data/schemas/v1/monarchic_agent_protocol.proto +238 -1
- data/schemas/v1/task.json +0 -6
- data/src/ruby/monarchic_agent_protocol_pb.rb +41 -1
- metadata +2 -4
- data/schemas/v1/delivery_contract.json +0 -78
- data/schemas/v1/monarchic.agent_protocol.v1.DeliveryContract.schema.json +0 -9
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e70cc011515a1d46f8b369074834a2abc5ee0d30f928636b333d78e1bcbda9af
|
|
4
|
+
data.tar.gz: 39007a55b96bd1273f66c377063c0a3adba90acff4044be335a8dd2dbcbcb041
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 74384051cc3abf842ec9725ce9cc4842a84481c26ddf4247f423d620ec3a5ff87a36d8721525f839745f188d5f4d236596d42055689acc27ccd478bd86b3328e
|
|
7
|
+
data.tar.gz: 408137845db2c3e52def8b77a0c6c33fb80d7da283cd1c44c816f35fd862bff5ed427831873ed7aebe97db6366b2530d2c90848c132e5aad8400c91a224a53e3
|
data/README.md
CHANGED
|
@@ -58,6 +58,8 @@ Project-state contract fixtures used by the shell verification suite live under
|
|
|
58
58
|
- Protocol versions live under `schemas/v1/`.
|
|
59
59
|
- Each v1 object requires `version: "v1"`.
|
|
60
60
|
- New versions must be added under a new directory (e.g. `schemas/v2/`) without changing existing v1 files.
|
|
61
|
+
- The package/crate transition operator runbook lives at
|
|
62
|
+
[`docs/protocol-release-transition-runbook.md`](docs/protocol-release-transition-runbook.md).
|
|
61
63
|
|
|
62
64
|
### Client boundary contracts
|
|
63
65
|
|
|
@@ -70,12 +72,16 @@ Frozen v1 client-boundary types:
|
|
|
70
72
|
- `PlanStep`
|
|
71
73
|
- `ExecutionReceipt`
|
|
72
74
|
- `VerificationReceipt`
|
|
75
|
+
- `PublicationAction`
|
|
76
|
+
- `ModerationDecision`
|
|
73
77
|
- `ReviewDecision`
|
|
74
78
|
- `RerunScope`
|
|
75
79
|
- `BlockedOutcome`
|
|
76
80
|
- `ArtifactDescriptor`
|
|
77
81
|
|
|
78
82
|
Canonical JSON fixtures for these contracts live under `fixtures/client_boundary/v1/`.
|
|
83
|
+
The protocol-owned MAP operation handoff bundle for downstream client snapshots
|
|
84
|
+
also lives there as `map_operation_bundle.v1.json`.
|
|
79
85
|
Legacy runtime compatibility fixtures live under `fixtures/client_boundary/v0/`.
|
|
80
86
|
|
|
81
87
|
### Durable authority contracts
|
|
@@ -90,9 +96,54 @@ Frozen v1 durable-authority types:
|
|
|
90
96
|
- `StepLifecycleState`
|
|
91
97
|
- `LeaseRejectionReason`
|
|
92
98
|
- `RecoveryEvent`
|
|
99
|
+
- `ManualOverrideRecord`
|
|
93
100
|
|
|
94
101
|
Canonical JSON fixtures for these contracts live under `fixtures/durable_authority/v1/`.
|
|
95
102
|
|
|
103
|
+
### Service boundary contracts
|
|
104
|
+
|
|
105
|
+
The Rust crate also exposes a frozen service-boundary surface under `monarchic_agent_protocol::service_boundary`.
|
|
106
|
+
|
|
107
|
+
Frozen v1 service-boundary types:
|
|
108
|
+
|
|
109
|
+
- `PrincipalRef`
|
|
110
|
+
- `TenantRef`
|
|
111
|
+
- `AuthContext`
|
|
112
|
+
- `UsageRecord`
|
|
113
|
+
- `AuditExportManifest`
|
|
114
|
+
- `ControlPlaneQueueJob`
|
|
115
|
+
- `ControlPlaneDispatchRequest`
|
|
116
|
+
|
|
117
|
+
The queue job contract uses the explicit wire marker
|
|
118
|
+
`monarchic.control-plane.queue-job.v1` because it is consumed across the API,
|
|
119
|
+
control-plane queue, and worker boundary. Canonical JSON fixtures for
|
|
120
|
+
service-boundary contracts live under `fixtures/service_boundary/v1/`.
|
|
121
|
+
The cross-service protocol ownership boundary is documented in
|
|
122
|
+
[`docs/service-boundary-architecture.md`](docs/service-boundary-architecture.md).
|
|
123
|
+
|
|
124
|
+
## Lean4 Formalization
|
|
125
|
+
|
|
126
|
+
A Lean4 proof model now lives under `formal/lean/`.
|
|
127
|
+
|
|
128
|
+
It currently formalizes a bounded set of invariants derived from real downstream usage in this workspace:
|
|
129
|
+
|
|
130
|
+
- client-boundary id safety heuristics
|
|
131
|
+
- role normalization aliases
|
|
132
|
+
- verification receipt status consistency
|
|
133
|
+
- terminal lifecycle sink behavior
|
|
134
|
+
- plan dependency grounding
|
|
135
|
+
- protobuf message well-formedness and cross-message integrity
|
|
136
|
+
- protobuf lifecycle transitions and bounded lease control-plane safety
|
|
137
|
+
- protobuf request/report admissibility and fencing-token monotonicity
|
|
138
|
+
- bounded protobuf control-plane trace safety and authority preservation
|
|
139
|
+
- inductive consistency preservation over protobuf control-plane event traces
|
|
140
|
+
- continuous active-authority traces preserve the bound `(run_id, step_id, task_id)` scope
|
|
141
|
+
- active traces exclude competing authorities for the same `(run_id, step_id)` scope
|
|
142
|
+
- a checked protobuf coverage manifest makes the currently formalized subset explicit relative to the full `.proto` surface
|
|
143
|
+
- the schema-side Lean coverage manifest is generated from `schemas/v1/monarchic_agent_protocol.proto` and validated in CI
|
|
144
|
+
|
|
145
|
+
See `docs/lean4-formal-verification.md` for scope and usage.
|
|
146
|
+
|
|
96
147
|
### Schema summary
|
|
97
148
|
|
|
98
149
|
JSON Schema files are generated from the protobuf definitions. Do not edit them by hand.
|
|
@@ -113,7 +164,6 @@ Schema files live under `schemas/v1/`:
|
|
|
113
164
|
- `schemas/v1/execution_receipt.json`
|
|
114
165
|
- `schemas/v1/run_context.json`
|
|
115
166
|
- `schemas/v1/run_outcome.json`
|
|
116
|
-
- `schemas/v1/delivery_contract.json`
|
|
117
167
|
- `schemas/v1/agent_role.json`
|
|
118
168
|
- `schemas/v1/dataset_ref.json`
|
|
119
169
|
- `schemas/v1/experiment_spec.json`
|
|
@@ -336,19 +386,6 @@ Example:
|
|
|
336
386
|
}
|
|
337
387
|
```
|
|
338
388
|
|
|
339
|
-
### DeliveryContract
|
|
340
|
-
|
|
341
|
-
Typed acceptance contract for autonomous delivery execution.
|
|
342
|
-
|
|
343
|
-
Required fields:
|
|
344
|
-
|
|
345
|
-
- `objective`: plain-language objective statement
|
|
346
|
-
- `definition_of_done`: ordered completion checklist
|
|
347
|
-
- `required_checks`: required gate/check names for merge readiness
|
|
348
|
-
- `risk_tier`: `low | medium | high | critical`
|
|
349
|
-
|
|
350
|
-
Optional fields include cycle/turn budgets (`max_cycle_minutes`, `max_agent_turns`) and PR/review/rollback strategy hints.
|
|
351
|
-
|
|
352
389
|
### RunContext
|
|
353
390
|
|
|
354
391
|
Execution hints for a runner.
|
|
@@ -142,6 +142,231 @@ message Intent {
|
|
|
142
142
|
IntentClass intent_class = 10;
|
|
143
143
|
}
|
|
144
144
|
|
|
145
|
+
message BootstrapIntent {
|
|
146
|
+
string contract_version = 1;
|
|
147
|
+
string bootstrap_intent_id = 2;
|
|
148
|
+
string project_key = 3;
|
|
149
|
+
repeated string target_repos = 4;
|
|
150
|
+
optional string pipeline_template_id = 5;
|
|
151
|
+
string campaign_goal = 6;
|
|
152
|
+
optional string notes = 7;
|
|
153
|
+
string priority_profile = 8;
|
|
154
|
+
uint64 created_at_ms = 9;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
message AgentRunnerPreference {
|
|
158
|
+
string runner_id = 1;
|
|
159
|
+
optional string model = 2;
|
|
160
|
+
optional string provider = 3;
|
|
161
|
+
optional string reasoning_effort = 4;
|
|
162
|
+
repeated string required_capabilities = 5;
|
|
163
|
+
repeated string labels = 6;
|
|
164
|
+
google.protobuf.Struct extensions = 7;
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
message AgentRunnerPolicy {
|
|
168
|
+
string runner_policy_id = 1;
|
|
169
|
+
string display_name = 2;
|
|
170
|
+
optional string description = 3;
|
|
171
|
+
repeated AgentRunnerPreference runner_preferences = 4;
|
|
172
|
+
repeated string role_ids = 5;
|
|
173
|
+
google.protobuf.Struct extensions = 6;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
message AgentProfile {
|
|
177
|
+
string agent_id = 1;
|
|
178
|
+
string role_id = 2;
|
|
179
|
+
string display_name = 3;
|
|
180
|
+
optional string description = 4;
|
|
181
|
+
repeated AgentRunnerPreference runner_preferences = 5;
|
|
182
|
+
repeated string allowed_network_modes = 6;
|
|
183
|
+
bool requires_human_review = 7;
|
|
184
|
+
repeated string required_skill_ids = 8;
|
|
185
|
+
repeated string required_mcp_ids = 9;
|
|
186
|
+
google.protobuf.Struct extensions = 10;
|
|
187
|
+
optional string runner_policy_id = 11;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
message ResolvedAgentRunner {
|
|
191
|
+
string runner_id = 1;
|
|
192
|
+
optional string model = 2;
|
|
193
|
+
optional string provider = 3;
|
|
194
|
+
optional string reasoning_effort = 4;
|
|
195
|
+
uint32 preference_index = 5;
|
|
196
|
+
optional string selection_reason = 6;
|
|
197
|
+
google.protobuf.Struct extensions = 7;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
message BootstrapPlanTask {
|
|
201
|
+
string task_id = 1;
|
|
202
|
+
string display_name = 2;
|
|
203
|
+
string role_id = 3;
|
|
204
|
+
string task_milestone = 4;
|
|
205
|
+
repeated string depends_on = 5;
|
|
206
|
+
optional string target_repo = 6;
|
|
207
|
+
repeated string required_skill_ids = 7;
|
|
208
|
+
repeated string required_mcp_ids = 8;
|
|
209
|
+
optional string interaction_mode = 9;
|
|
210
|
+
optional string network_mode = 10;
|
|
211
|
+
optional bool requires_human_review = 11;
|
|
212
|
+
google.protobuf.Struct filesystem_policy = 12;
|
|
213
|
+
optional string template_slot_id = 13;
|
|
214
|
+
optional string notes = 14;
|
|
215
|
+
optional string agent_id = 15;
|
|
216
|
+
optional string injected_by_role_id = 16;
|
|
217
|
+
repeated AgentRunnerPreference runner_preferences = 17;
|
|
218
|
+
optional ResolvedAgentRunner resolved_runner = 18;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
enum BootstrapPlanningMode {
|
|
222
|
+
BOOTSTRAP_PLANNING_MODE_UNSPECIFIED = 0;
|
|
223
|
+
BOOTSTRAP_PLANNING_MODE_DIRECT_TEMPLATE_FILL = 1;
|
|
224
|
+
BOOTSTRAP_PLANNING_MODE_BOUNDED_RESEARCH_REPLAN = 2;
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
message BootstrapPlan {
|
|
228
|
+
string contract_version = 1;
|
|
229
|
+
string bootstrap_plan_id = 2;
|
|
230
|
+
string bootstrap_intent_id = 3;
|
|
231
|
+
string project_key = 4;
|
|
232
|
+
BootstrapPlanningMode planning_mode = 5;
|
|
233
|
+
optional string pipeline_template_id = 6;
|
|
234
|
+
string campaign_goal = 7;
|
|
235
|
+
uint64 created_at_ms = 8;
|
|
236
|
+
repeated BootstrapPlanTask tasks = 9;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
message BootstrapFilesystemPolicy {
|
|
240
|
+
repeated string read = 1;
|
|
241
|
+
repeated string write = 2;
|
|
242
|
+
repeated string execute = 3;
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
message BootstrapSkillBinding {
|
|
246
|
+
string id = 1;
|
|
247
|
+
bool required = 2;
|
|
248
|
+
string purpose = 3;
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
message BootstrapTemplateSlotContext {
|
|
252
|
+
string slot_id = 1;
|
|
253
|
+
string display_name = 2;
|
|
254
|
+
string role = 3;
|
|
255
|
+
string interaction_mode = 4;
|
|
256
|
+
string network_mode = 5;
|
|
257
|
+
bool requires_human_review = 6;
|
|
258
|
+
BootstrapFilesystemPolicy filesystem_policy = 7;
|
|
259
|
+
repeated BootstrapSkillBinding required_skills = 8;
|
|
260
|
+
repeated string required_mcps = 9;
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
message BootstrapTemplateConnectionContext {
|
|
264
|
+
string from_slot_id = 1;
|
|
265
|
+
string to_slot_id = 2;
|
|
266
|
+
string kind = 3;
|
|
267
|
+
bool required = 4;
|
|
268
|
+
optional string description = 5;
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
message BootstrapTemplateLaneContext {
|
|
272
|
+
string lane_id = 1;
|
|
273
|
+
string display_name = 2;
|
|
274
|
+
string from_slot_id = 3;
|
|
275
|
+
string to_slot_id = 4;
|
|
276
|
+
repeated string slot_ids = 5;
|
|
277
|
+
bool repeat_per_task_group = 6;
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
message BootstrapTemplateContext {
|
|
281
|
+
string template_id = 1;
|
|
282
|
+
string display_name = 2;
|
|
283
|
+
repeated BootstrapTemplateSlotContext slots = 3;
|
|
284
|
+
repeated BootstrapTemplateConnectionContext connections = 4;
|
|
285
|
+
repeated BootstrapTemplateLaneContext lanes = 5;
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
message AgentCommand {
|
|
289
|
+
string runner_id = 1;
|
|
290
|
+
repeated string argv = 2;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
message BootstrapPlanningContext {
|
|
294
|
+
string contract_version = 1;
|
|
295
|
+
string project_key = 2;
|
|
296
|
+
string target_repo = 3;
|
|
297
|
+
repeated string target_repos = 4;
|
|
298
|
+
string campaign_goal = 5;
|
|
299
|
+
optional string notes = 6;
|
|
300
|
+
string priority_profile = 7;
|
|
301
|
+
repeated string codex_cmd = 8 [deprecated = true];
|
|
302
|
+
repeated string available_skill_ids = 9;
|
|
303
|
+
optional BootstrapTemplateContext selected_template = 10;
|
|
304
|
+
BootstrapPlanningMode planning_mode = 11;
|
|
305
|
+
repeated string enabled_role_ids = 12;
|
|
306
|
+
repeated AgentCommand agent_cmds = 13;
|
|
307
|
+
repeated string default_agent_cmd = 14;
|
|
308
|
+
repeated AgentProfile agent_profiles = 15;
|
|
309
|
+
repeated RunnerCapabilities available_runners = 16;
|
|
310
|
+
repeated AgentRunnerPolicy runner_policies = 17;
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
enum CampaignPipelineConnectionKind {
|
|
314
|
+
CAMPAIGN_PIPELINE_CONNECTION_KIND_UNSPECIFIED = 0;
|
|
315
|
+
CAMPAIGN_PIPELINE_CONNECTION_KIND_DEPENDS_ON = 1;
|
|
316
|
+
CAMPAIGN_PIPELINE_CONNECTION_KIND_HANDOFF = 2;
|
|
317
|
+
CAMPAIGN_PIPELINE_CONNECTION_KIND_REVIEW = 3;
|
|
318
|
+
CAMPAIGN_PIPELINE_CONNECTION_KIND_MESSAGE_ROUTE = 4;
|
|
319
|
+
CAMPAIGN_PIPELINE_CONNECTION_KIND_ARTIFACT_FLOW = 5;
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
message CampaignPipelineTaskRef {
|
|
323
|
+
string task_id = 1;
|
|
324
|
+
string task_artifact = 2;
|
|
325
|
+
optional string role_id = 3;
|
|
326
|
+
optional string task_milestone = 4;
|
|
327
|
+
optional string task_format = 5;
|
|
328
|
+
repeated string depends_on = 6;
|
|
329
|
+
repeated string runner_args = 7;
|
|
330
|
+
optional string interaction_mode = 8;
|
|
331
|
+
optional string network_mode = 9;
|
|
332
|
+
bool requires_human_review = 10;
|
|
333
|
+
BootstrapFilesystemPolicy filesystem_policy = 11;
|
|
334
|
+
repeated BootstrapSkillBinding required_skills = 12;
|
|
335
|
+
repeated string required_mcp_ids = 13;
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
message CampaignPipelineConnection {
|
|
339
|
+
string from_task_id = 1;
|
|
340
|
+
string to_task_id = 2;
|
|
341
|
+
CampaignPipelineConnectionKind kind = 3;
|
|
342
|
+
bool required = 4;
|
|
343
|
+
optional string description = 5;
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
message CampaignPipelineGate {
|
|
347
|
+
string name = 1;
|
|
348
|
+
repeated string command = 2;
|
|
349
|
+
optional string workdir = 3;
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
message CampaignPipelineGatePolicy {
|
|
353
|
+
bool require_standard = 1;
|
|
354
|
+
repeated CampaignPipelineGate required_gates = 2;
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
message CampaignPipelineSpec {
|
|
358
|
+
string contract_version = 1;
|
|
359
|
+
string pipeline_id = 2;
|
|
360
|
+
string version = 3;
|
|
361
|
+
optional string objective = 4;
|
|
362
|
+
optional string project_key = 5;
|
|
363
|
+
bool continue_on_error = 6;
|
|
364
|
+
optional CampaignPipelineGatePolicy gate_policy = 7;
|
|
365
|
+
google.protobuf.Struct metadata = 8;
|
|
366
|
+
repeated CampaignPipelineConnection connections = 9;
|
|
367
|
+
repeated CampaignPipelineTaskRef tasks = 10;
|
|
368
|
+
}
|
|
369
|
+
|
|
145
370
|
enum PlanStatus {
|
|
146
371
|
PLAN_STATUS_UNSPECIFIED = 0;
|
|
147
372
|
DRAFT = 1;
|
|
@@ -357,6 +582,7 @@ message ExecutionReceipt {
|
|
|
357
582
|
PlanStatus status = 8;
|
|
358
583
|
optional FailureDetail failure = 9;
|
|
359
584
|
uint64 generated_at_ms = 10;
|
|
585
|
+
optional ResolvedAgentRunner resolved_runner = 11;
|
|
360
586
|
}
|
|
361
587
|
|
|
362
588
|
enum VerificationStatus {
|
|
@@ -580,13 +806,20 @@ message RunEventRecord {
|
|
|
580
806
|
repeated string artifact_ids = 13;
|
|
581
807
|
}
|
|
582
808
|
|
|
809
|
+
enum TaskMessageKind {
|
|
810
|
+
TASK_MESSAGE_KIND_UNSPECIFIED = 0;
|
|
811
|
+
TASK_MESSAGE_KIND_ARTIFACT_READY = 1;
|
|
812
|
+
TASK_MESSAGE_KIND_CLARIFICATION_REQUEST = 2;
|
|
813
|
+
TASK_MESSAGE_KIND_CLARIFICATION_RESPONSE = 3;
|
|
814
|
+
}
|
|
815
|
+
|
|
583
816
|
message TaskMessage {
|
|
584
817
|
string version = 1;
|
|
585
818
|
string message_id = 2;
|
|
586
819
|
string run_id = 3;
|
|
587
820
|
string from_task_id = 4;
|
|
588
821
|
string to_task_id = 5;
|
|
589
|
-
|
|
822
|
+
TaskMessageKind kind = 6;
|
|
590
823
|
optional string subject = 7;
|
|
591
824
|
optional string body = 8;
|
|
592
825
|
repeated string artifact_refs = 9;
|
|
@@ -661,6 +894,10 @@ message RunnerCapabilities {
|
|
|
661
894
|
bool supports_resume = 7;
|
|
662
895
|
google.protobuf.Struct extensions = 8;
|
|
663
896
|
repeated string supported_role_ids = 9;
|
|
897
|
+
repeated string supported_models = 10;
|
|
898
|
+
repeated string supported_reasoning_efforts = 11;
|
|
899
|
+
repeated string supported_runner_capabilities = 12;
|
|
900
|
+
repeated string supported_providers = 13;
|
|
664
901
|
}
|
|
665
902
|
|
|
666
903
|
// LeaseRef is the canonical identity for a runner-owned execution lease. The
|
data/schemas/v1/task.json
CHANGED
|
@@ -3,9 +3,6 @@
|
|
|
3
3
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
4
4
|
"additionalProperties": true,
|
|
5
5
|
"patternProperties": {
|
|
6
|
-
"^(deliveryContract)$": {
|
|
7
|
-
"$ref": "monarchic.agent_protocol.v1.DeliveryContract.schema.json"
|
|
8
|
-
},
|
|
9
6
|
"^(experimentSpec)$": {
|
|
10
7
|
"$ref": "monarchic.agent_protocol.v1.ExperimentSpec.schema.json"
|
|
11
8
|
},
|
|
@@ -30,9 +27,6 @@
|
|
|
30
27
|
"constraints": {
|
|
31
28
|
"$ref": "google.protobuf.Struct.schema.json"
|
|
32
29
|
},
|
|
33
|
-
"delivery_contract": {
|
|
34
|
-
"$ref": "monarchic.agent_protocol.v1.DeliveryContract.schema.json"
|
|
35
|
-
},
|
|
36
30
|
"experiment_spec": {
|
|
37
31
|
"$ref": "monarchic.agent_protocol.v1.ExperimentSpec.schema.json"
|
|
38
32
|
},
|
|
@@ -7,7 +7,7 @@ require 'google/protobuf'
|
|
|
7
7
|
require 'google/protobuf/struct_pb'
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
descriptor_data = "\n\x1emonarchic_agent_protocol.proto\x12\x1bmonarchic.agent_protocol.v1\x1a\x1cgoogle/protobuf/struct.proto\"\xf7\x01\n\nDatasetRef\x12\x12\n\ndataset_id\x18\x01 \x01(\t\x12\x10\n\x03uri\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x0e\n\x06sha256\x18\x03 \x01(\t\x12\x0e\n\x06\x66ormat\x18\x04 \x01(\t\x12\x12\n\x05split\x18\x05 \x01(\tH\x01\x88\x01\x01\x12\x17\n\nsize_bytes\x18\x06 \x01(\x04H\x02\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x03\x88\x01\x01\x12+\n\nextensions\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x06\n\x04_uriB\x08\n\x06_splitB\r\n\x0b_size_bytesB\x0e\n\x0c_description\"\x89\x02\n\x12\x41\x63\x63\x65ptanceCriteria\x12\x0e\n\x06metric\x18\x01 \x01(\t\x12\x11\n\tdirection\x18\x02 \x01(\t\x12\x11\n\tthreshold\x18\x03 \x01(\x01\x12\x1c\n\x0fmin_effect_size\x18\x04 \x01(\x01H\x00\x88\x01\x01\x12\x19\n\x0cmax_variance\x18\x05 \x01(\x01H\x01\x88\x01\x01\x12\x1d\n\x10\x63onfidence_level\x18\x06 \x01(\x01H\x02\x88\x01\x01\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x12\n\x10_min_effect_sizeB\x0f\n\r_max_varianceB\x13\n\x11_confidence_level\"\xfc\x02\n\x0e\x45xperimentSpec\x12\x15\n\rexperiment_id\x18\x01 \x01(\t\x12\x11\n\tobjective\x18\x02 \x01(\t\x12\x17\n\nhypothesis\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x0cmodel_family\x18\x04 \x01(\tH\x01\x88\x01\x01\x12\r\n\x05seeds\x18\x05 \x03(\x03\x12=\n\x0c\x64\x61taset_refs\x18\x06 \x03(\x0b\x32\'.monarchic.agent_protocol.v1.DatasetRef\x12\x43\n\nacceptance\x18\x07 \x01(\x0b\x32/.monarchic.agent_protocol.v1.AcceptanceCriteria\x12,\n\x0b\x63onstraints\x18\x08 \x01(\x0b\x32\x17.google.protobuf.Struct\x12+\n\nextensions\x18\t \x01(\x0b\x32\x17.google.protobuf.StructB\r\n\x0b_hypothesisB\x0f\n\r_model_family\"\xf3\x02\n\rObjectiveSpec\x12\x12\n\nmetric_key\x18\x01 \x01(\t\x12\x11\n\tdirection\x18\x02 \x01(\t\x12\x13\n\x06target\x18\x03 \x01(\x01H\x00\x88\x01\x01\x12\x16\n\tmin_delta\x18\x04 \x01(\x01H\x01\x88\x01\x01\x12\x16\n\ttolerance\x18\x05 \x01(\x01H\x02\x88\x01\x01\x12\x18\n\x0breport_file\x18\x06 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\x0ereport_task_id\x18\x07 \x01(\tH\x04\x88\x01\x01\x12\x13\n\x06weight\x18\x08 \x01(\x01H\x05\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\t \x01(\tH\x06\x88\x01\x01\x12+\n\nextensions\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\t\n\x07_targetB\x0c\n\n_min_deltaB\x0c\n\n_toleranceB\x0e\n\x0c_report_fileB\x11\n\x0f_report_task_idB\t\n\x07_weightB\x0e\n\x0c_description\"\x8e\x02\n\nEvalResult\x12\x0e\n\x06metric\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x01\x12\x15\n\x08lower_ci\x18\x03 \x01(\x01H\x00\x88\x01\x01\x12\x15\n\x08upper_ci\x18\x04 \x01(\x01H\x01\x88\x01\x01\x12\x15\n\x08variance\x18\x05 \x01(\x01H\x02\x88\x01\x01\x12\x11\n\x04seed\x18\x06 \x01(\x03H\x03\x88\x01\x01\x12\x0e\n\x06passed\x18\x07 \x01(\x08\x12\x12\n\x05notes\x18\x08 \x01(\tH\x04\x88\x01\x01\x12+\n\nextensions\x18\t \x01(\x0b\x32\x17.google.protobuf.StructB\x0b\n\t_lower_ciB\x0b\n\t_upper_ciB\x0b\n\t_varianceB\x07\n\x05_seedB\x08\n\x06_notes\"\xf6\x01\n\x0c\x46\x61ilureClass\x12\x10\n\x08\x63\x61tegory\x18\x01 \x01(\t\x12\x0c\n\x04\x63ode\x18\x02 \x01(\t\x12\x11\n\tretryable\x18\x03 \x01(\x08\x12\x13\n\x06\x64\x65tail\x18\x04 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x05scope\x18\x05 \x01(\tH\x01\x88\x01\x01\x12\x13\n\x06source\x18\x06 \x01(\tH\x02\x88\x01\x01\x12\x18\n\x0bnext_action\x18\x07 \x01(\tH\x03\x88\x01\x01\x12+\n\nextensions\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\t\n\x07_detailB\x08\n\x06_scopeB\t\n\x07_sourceB\x0e\n\x0c_next_action\"\xeb\x03\n\nProvenance\x12\x15\n\rprompt_sha256\x18\x01 \x01(\t\x12\x13\n\x0b\x63ode_sha256\x18\x02 \x01(\t\x12\x16\n\x0e\x64\x61taset_sha256\x18\x03 \x03(\t\x12\x0f\n\x07runtime\x18\x04 \x01(\t\x12\x12\n\x05model\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\x0e\n\x06runner\x18\x06 \x01(\t\x12\x14\n\x0corchestrator\x18\x07 \x01(\t\x12\x1d\n\x10task_spec_sha256\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0fpipeline_sha256\x18\t \x01(\tH\x02\x88\x01\x01\x12\x1b\n\x0e\x63ommand_sha256\x18\n \x01(\tH\x03\x88\x01\x01\x12\x12\n\ncreated_at\x18\x0b \x01(\t\x12\x1b\n\x0esource_task_id\x18\x0c \x01(\tH\x04\x88\x01\x01\x12=\n\x0c\x64\x61taset_refs\x18\r \x03(\x0b\x32\'.monarchic.agent_protocol.v1.DatasetRef\x12+\n\nextensions\x18\x0e \x01(\x0b\x32\x17.google.protobuf.StructB\x08\n\x06_modelB\x13\n\x11_task_spec_sha256B\x12\n\x10_pipeline_sha256B\x11\n\x0f_command_sha256B\x11\n\x0f_source_task_id\"\x99\x02\n\x06Intent\x12\x11\n\tintent_id\x18\x01 \x01(\t\x12\x14\n\x0csubmitted_at\x18\x02 \x01(\x04\x12\x11\n\tsubmitter\x18\x03 \x01(\t\x12\x16\n\x0epolicy_version\x18\x04 \x01(\t\x12\x13\n\x0btarget_repo\x18\x05 \x01(\t\x12\x12\n\ntarget_ref\x18\x06 \x01(\t\x12\x0c\n\x04goal\x18\x07 \x01(\t\x12,\n\x0b\x63onstraints\x18\x08 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x16\n\x0e\x63ontext_digest\x18\t \x01(\t\x12>\n\x0cintent_class\x18\n \x01(\x0e\x32(.monarchic.agent_protocol.v1.IntentClass\"O\n\x0eRoleProvenance\x12\x11\n\trole_name\x18\x01 \x01(\t\x12\x15\n\rtemplate_hash\x18\x02 \x01(\t\x12\x13\n\x0brender_hash\x18\x03 \x01(\t\"\xb8\x01\n\x0ePlanProvenance\x12\x14\n\x0cgenerated_by\x18\x01 \x01(\t\x12\x1b\n\x0epolicy_profile\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x0fgenerated_at_ms\x18\x03 \x01(\x04\x12>\n\x04role\x18\x04 \x01(\x0b\x32+.monarchic.agent_protocol.v1.RoleProvenanceH\x01\x88\x01\x01\x42\x11\n\x0f_policy_profileB\x07\n\x05_role\"g\n\rFailureDetail\x12\r\n\x05\x63lass\x18\x01 \x01(\t\x12\x0c\n\x04\x63ode\x18\x02 \x01(\t\x12\x0f\n\x07message\x18\x03 \x01(\t\x12(\n\x07\x64\x65tails\x18\x04 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xc8\x01\n\x12\x41rtifactDescriptor\x12\x13\n\x0b\x61rtifact_id\x18\x01 \x01(\t\x12\x37\n\x04kind\x18\x02 \x01(\x0e\x32).monarchic.agent_protocol.v1.ArtifactKind\x12\x0e\n\x06\x64igest\x18\x03 \x01(\t\x12\x12\n\nmedia_type\x18\x04 \x01(\t\x12\x14\n\x0clogical_name\x18\x05 \x01(\t\x12\x10\n\x08producer\x18\x06 \x01(\t\x12\x18\n\x10\x63ontract_version\x18\x07 \x01(\t\"\xf2\x01\n\x0e\x44igestManifest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x13\n\x0bmanifest_id\x18\x02 \x01(\t\x12\x0e\n\x06run_id\x18\x03 \x01(\t\x12\x0f\n\x07plan_id\x18\x04 \x01(\t\x12\x12\n\ncreated_at\x18\x05 \x01(\x04\x12\x17\n\x0f\x63ombined_digest\x18\x06 \x01(\t\x12\x14\n\x0c\x65vent_digest\x18\x07 \x01(\t\x12M\n\x14\x61rtifact_descriptors\x18\x08 \x03(\x0b\x32/.monarchic.agent_protocol.v1.ArtifactDescriptor\"b\n\x0cPrincipalRef\x12\x14\n\x0cprincipal_id\x18\x01 \x01(\t\x12\x10\n\x08provider\x18\x02 \x01(\t\x12\x19\n\x0c\x64isplay_name\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_display_name\"J\n\tTenantRef\x12\x11\n\ttenant_id\x18\x01 \x01(\t\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_display_name\"\xd7\x02\n\x0b\x41uthContext\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0f\x61uth_context_id\x18\x02 \x01(\t\x12<\n\tprincipal\x18\x03 \x01(\x0b\x32).monarchic.agent_protocol.v1.PrincipalRef\x12\x36\n\x06tenant\x18\x04 \x01(\x0b\x32&.monarchic.agent_protocol.v1.TenantRef\x12=\n\tmechanism\x18\x05 \x01(\x0e\x32*.monarchic.agent_protocol.v1.AuthMechanism\x12\x15\n\rcredential_id\x18\x06 \x01(\t\x12\x0e\n\x06scopes\x18\x07 \x03(\t\x12\x11\n\tissued_at\x18\x08 \x01(\x04\x12\x17\n\nexpires_at\x18\t \x01(\x04H\x00\x88\x01\x01\x42\r\n\x0b_expires_at\"\xa1\x03\n\x0bUsageRecord\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x10\n\x08usage_id\x18\x02 \x01(\t\x12<\n\tprincipal\x18\x03 \x01(\x0b\x32).monarchic.agent_protocol.v1.PrincipalRef\x12\x36\n\x06tenant\x18\x04 \x01(\x0b\x32&.monarchic.agent_protocol.v1.TenantRef\x12\x13\n\x06run_id\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x07plan_id\x18\x06 \x01(\tH\x01\x88\x01\x01\x12<\n\x08\x63\x61tegory\x18\x07 \x01(\x0e\x32*.monarchic.agent_protocol.v1.UsageCategory\x12\x13\n\x0bmetric_name\x18\x08 \x01(\t\x12\x10\n\x08quantity\x18\t \x01(\x04\x12\x34\n\x04unit\x18\n \x01(\x0e\x32&.monarchic.agent_protocol.v1.UsageUnit\x12\x13\n\x0brecorded_at\x18\x0b \x01(\x04\x42\t\n\x07_run_idB\n\n\x08_plan_id\"\xd6\x02\n\x13\x41uditExportManifest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\texport_id\x18\x02 \x01(\t\x12<\n\tprincipal\x18\x03 \x01(\x0b\x32).monarchic.agent_protocol.v1.PrincipalRef\x12\x36\n\x06tenant\x18\x04 \x01(\x0b\x32&.monarchic.agent_protocol.v1.TenantRef\x12\x0e\n\x06run_id\x18\x05 \x01(\t\x12\x0f\n\x07plan_id\x18\x06 \x01(\t\x12\x13\n\x0b\x65xported_at\x18\x07 \x01(\x04\x12\x17\n\x0f\x63ombined_digest\x18\x08 \x01(\t\x12M\n\x14\x61rtifact_descriptors\x18\t \x03(\x0b\x32/.monarchic.agent_protocol.v1.ArtifactDescriptor\"c\n\x0cReplanPolicy\x12=\n\x08strategy\x18\x01 \x01(\x0e\x32+.monarchic.agent_protocol.v1.ReplanStrategy\x12\x14\n\x0cmax_attempts\x18\x02 \x01(\r\"f\n\x15StepOutputExpectation\x12\x37\n\x04kind\x18\x01 \x01(\x0e\x32).monarchic.agent_protocol.v1.ArtifactKind\x12\x14\n\x0clogical_name\x18\x02 \x01(\t\"\xa9\x03\n\x08PlanStep\x12\x0f\n\x07step_id\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x12\n\ndepends_on\x18\x03 \x03(\t\x12.\n\rtask_template\x18\x04 \x01(\x0b\x32\x17.google.protobuf.Struct\x12@\n\x07\x66\x61ilure\x18\x05 \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12\x14\n\x07task_id\x18\x06 \x01(\tH\x01\x88\x01\x01\x12\x37\n\x04kind\x18\x07 \x01(\x0e\x32).monarchic.agent_protocol.v1.PlanStepKind\x12\'\n\x06inputs\x18\x08 \x01(\x0b\x32\x17.google.protobuf.Struct\x12L\n\x10\x65xpected_outputs\x18\t \x03(\x0b\x32\x32.monarchic.agent_protocol.v1.StepOutputExpectation\x12\x13\n\x0bpolicy_tags\x18\n \x03(\tB\n\n\x08_failureB\n\n\x08_task_id\"\xb4\x04\n\x04Plan\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x0f\n\x07plan_id\x18\x02 \x01(\t\x12\x13\n\x06run_id\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x11\n\tobjective\x18\x04 \x01(\t\x12\x37\n\x06status\x18\x05 \x01(\x0e\x32\'.monarchic.agent_protocol.v1.PlanStatus\x12\x15\n\rcreated_at_ms\x18\x06 \x01(\x04\x12\x15\n\rupdated_at_ms\x18\x07 \x01(\x04\x12?\n\nprovenance\x18\x08 \x01(\x0b\x32+.monarchic.agent_protocol.v1.PlanProvenance\x12\x34\n\x05steps\x18\t \x03(\x0b\x32%.monarchic.agent_protocol.v1.PlanStep\x12\x16\n\tintent_id\x18\n \x01(\tH\x01\x88\x01\x01\x12\x19\n\x0cplan_version\x18\x0b \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0fplanner_version\x18\x0c \x01(\tH\x03\x88\x01\x01\x12@\n\rreplan_policy\x18\r \x01(\x0b\x32).monarchic.agent_protocol.v1.ReplanPolicy\x12\x19\n\x0cinput_digest\x18\x0e \x01(\tH\x04\x88\x01\x01\x42\t\n\x07_run_idB\x0c\n\n_intent_idB\x0f\n\r_plan_versionB\x12\n\x10_planner_versionB\x0f\n\r_input_digest\"\xc4\x02\n\x10\x45xecutionReceipt\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x0e\n\x06run_id\x18\x02 \x01(\t\x12\x0f\n\x07plan_id\x18\x03 \x01(\t\x12\x11\n\tplan_hash\x18\x04 \x01(\t\x12\x13\n\x0btask_hashes\x18\x05 \x03(\t\x12\x17\n\x0f\x61rtifact_hashes\x18\x06 \x03(\t\x12\x14\n\x0coutcome_hash\x18\x07 \x01(\t\x12\x37\n\x06status\x18\x08 \x01(\x0e\x32\'.monarchic.agent_protocol.v1.PlanStatus\x12@\n\x07\x66\x61ilure\x18\t \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12\x17\n\x0fgenerated_at_ms\x18\n \x01(\x04\x42\n\n\x08_failure\"\xa0\x01\n\x11VerificationCheck\x12\x10\n\x08\x63heck_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x44\n\x06status\x18\x03 \x01(\x0e\x32\x34.monarchic.agent_protocol.v1.VerificationCheckStatus\x12\x0f\n\x07message\x18\x04 \x01(\t\x12\x14\n\x0c\x61rtifact_ids\x18\x05 \x03(\t\"\xe7\x01\n\x0e\x42lockedOutcome\x12\x0c\n\x04\x63ode\x18\x01 \x01(\t\x12?\n\x05scope\x18\x02 \x01(\x0e\x32\x30.monarchic.agent_protocol.v1.BlockedOutcomeScope\x12\x0f\n\x07message\x18\x03 \x01(\t\x12(\n\x07\x64\x65tails\x18\x04 \x01(\x0b\x32\x17.google.protobuf.Struct\x12K\n\x12\x62locking_artifacts\x18\x05 \x03(\x0b\x32/.monarchic.agent_protocol.v1.ArtifactDescriptor\"\x9a\x03\n\x13VerificationReceipt\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0fverification_id\x18\x02 \x01(\t\x12\x0f\n\x07plan_id\x18\x03 \x01(\t\x12\x1d\n\x15\x65xecution_receipt_ids\x18\x04 \x03(\t\x12#\n\x1bverification_policy_version\x18\x05 \x01(\t\x12?\n\x06status\x18\x06 \x01(\x0e\x32/.monarchic.agent_protocol.v1.VerificationStatus\x12>\n\x06\x63hecks\x18\x07 \x03(\x0b\x32..monarchic.agent_protocol.v1.VerificationCheck\x12\x45\n\x10\x62locked_outcomes\x18\x08 \x03(\x0b\x32+.monarchic.agent_protocol.v1.BlockedOutcome\x12\x1b\n\x13\x61rtifact_digest_set\x18\t \x03(\t\x12\x16\n\x0everified_at_ms\x18\n \x01(\x04\"\xec\x01\n\x0eReviewDecision\x12\x13\n\x0b\x64\x65\x63ision_id\x18\x01 \x01(\t\x12\x0f\n\x07plan_id\x18\x02 \x01(\t\x12?\n\x05scope\x18\x03 \x01(\x0e\x32\x30.monarchic.agent_protocol.v1.ReviewDecisionScope\x12\r\n\x05\x61\x63tor\x18\x04 \x01(\t\x12@\n\x08\x64\x65\x63ision\x18\x05 \x01(\x0e\x32..monarchic.agent_protocol.v1.ReviewDisposition\x12\x0e\n\x06reason\x18\x06 \x01(\t\x12\x12\n\ncreated_at\x18\x07 \x01(\x04\"\xfa\x01\n\nRerunScope\x12\x10\n\x08scope_id\x18\x01 \x01(\t\x12\x0f\n\x07plan_id\x18\x02 \x01(\t\x12:\n\x07trigger\x18\x03 \x01(\x0e\x32).monarchic.agent_protocol.v1.RerunTrigger\x12\x0e\n\x06reason\x18\x04 \x01(\t\x12\x1f\n\x12source_decision_id\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x08task_ids\x18\x06 \x03(\t\x12\x10\n\x08step_ids\x18\x07 \x03(\t\x12\r\n\x05paths\x18\x08 \x03(\t\x12\x12\n\ncreated_at\x18\t \x01(\x04\x42\x15\n\x13_source_decision_id\"\x99\x04\n\x14RerunExecutionResult\x12\x11\n\tresult_id\x18\x01 \x01(\t\x12\x0f\n\x07plan_id\x18\x02 \x01(\t\x12\x16\n\x0ererun_scope_id\x18\x03 \x01(\t\x12\x1f\n\x12source_decision_id\x18\x04 \x01(\tH\x00\x88\x01\x01\x12:\n\x07trigger\x18\x05 \x01(\x0e\x32).monarchic.agent_protocol.v1.RerunTrigger\x12M\n\x10matched_strategy\x18\x06 \x01(\x0e\x32\x33.monarchic.agent_protocol.v1.RerunSelectionStrategy\x12\x12\n\nroot_tasks\x18\x07 \x03(\t\x12\x16\n\x0eselected_tasks\x18\x08 \x03(\t\x12\x15\n\rmatched_paths\x18\t \x03(\t\x12\x0e\n\x06reason\x18\n \x01(\t\x12\x41\n\x06status\x18\x0b \x01(\x0e\x32\x31.monarchic.agent_protocol.v1.RerunExecutionStatus\x12\x17\n\x0f\x63ompleted_tasks\x18\x0c \x03(\t\x12\x14\n\x0c\x66\x61iled_tasks\x18\r \x03(\t\x12\x15\n\rskipped_tasks\x18\x0e \x03(\t\x12\x12\n\ncreated_at\x18\x0f \x01(\x04\x12\x12\n\nupdated_at\x18\x10 \x01(\x04\x42\x15\n\x13_source_decision_id\"\x81\x05\n\x10PrLifecycleState\x12\x10\n\x08state_id\x18\x01 \x01(\t\x12\x0f\n\x07plan_id\x18\x02 \x01(\t\x12\x16\n\tpr_number\x18\x03 \x01(\x04H\x00\x88\x01\x01\x12\x13\n\x06pr_url\x18\x04 \x01(\tH\x01\x88\x01\x01\x12I\n\x0freview_decision\x18\x05 \x01(\x0b\x32+.monarchic.agent_protocol.v1.ReviewDecisionH\x02\x88\x01\x01\x12\x41\n\x0brerun_scope\x18\x06 \x01(\x0b\x32\'.monarchic.agent_protocol.v1.RerunScopeH\x03\x88\x01\x01\x12L\n\x0crerun_result\x18\x07 \x01(\x0b\x32\x31.monarchic.agent_protocol.v1.RerunExecutionResultH\x04\x88\x01\x01\x12S\n\x14verification_receipt\x18\x08 \x01(\x0b\x32\x30.monarchic.agent_protocol.v1.VerificationReceiptH\x05\x88\x01\x01\x12\x13\n\x0bmerge_ready\x18\t \x01(\x08\x12\x15\n\rrelease_ready\x18\n \x01(\x08\x12\x45\n\x10\x62locked_outcomes\x18\x0b \x03(\x0b\x32+.monarchic.agent_protocol.v1.BlockedOutcome\x12\x12\n\nupdated_at\x18\x0c \x01(\x04\x42\x0c\n\n_pr_numberB\t\n\x07_pr_urlB\x12\n\x10_review_decisionB\x0e\n\x0c_rerun_scopeB\x0f\n\r_rerun_resultB\x17\n\x15_verification_receipt\"\xd0\x03\n\x04Task\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x0f\n\x07task_id\x18\x02 \x01(\t\x12\x34\n\x04role\x18\x03 \x01(\x0e\x32&.monarchic.agent_protocol.v1.AgentRole\x12\x0c\n\x04goal\x18\x04 \x01(\t\x12\'\n\x06inputs\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12,\n\x0b\x63onstraints\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x16\n\x0egates_required\x18\x07 \x03(\t\x12<\n\x0brun_context\x18\x08 \x01(\x0b\x32\'.monarchic.agent_protocol.v1.RunContext\x12+\n\nextensions\x18\t \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x44\n\x0f\x65xperiment_spec\x18\n \x01(\x0b\x32+.monarchic.agent_protocol.v1.ExperimentSpec\x12\x42\n\x0eobjective_spec\x18\x0b \x01(\x0b\x32*.monarchic.agent_protocol.v1.ObjectiveSpec\"\x9c\x03\n\x08\x41rtifact\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x13\n\x0b\x61rtifact_id\x18\x02 \x01(\t\x12\x0c\n\x04type\x18\x03 \x01(\t\x12\x0f\n\x07summary\x18\x04 \x01(\t\x12\x0c\n\x04path\x18\x05 \x01(\t\x12\x0f\n\x07task_id\x18\x06 \x01(\t\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.Struct\x12;\n\nprovenance\x18\x08 \x01(\x0b\x32\'.monarchic.agent_protocol.v1.Provenance\x12=\n\x0c\x64\x61taset_refs\x18\t \x03(\x0b\x32\'.monarchic.agent_protocol.v1.DatasetRef\x12=\n\x0c\x65val_results\x18\n \x03(\x0b\x32\'.monarchic.agent_protocol.v1.EvalResult\x12\x44\n\x0f\x65xperiment_spec\x18\x0b \x01(\x0b\x32+.monarchic.agent_protocol.v1.ExperimentSpec\"\xed\x02\n\x05\x45vent\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x12\n\nevent_type\x18\x02 \x01(\t\x12\x11\n\ttimestamp\x18\x03 \x01(\t\x12\x0f\n\x07task_id\x18\x04 \x01(\t\x12\x0e\n\x06status\x18\x05 \x01(\t\x12\x14\n\x07message\x18\x06 \x01(\tH\x00\x88\x01\x01\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.Struct\x12;\n\nprovenance\x18\x08 \x01(\x0b\x32\'.monarchic.agent_protocol.v1.Provenance\x12=\n\x0c\x65val_results\x18\t \x03(\x0b\x32\'.monarchic.agent_protocol.v1.EvalResult\x12@\n\rfailure_class\x18\n \x01(\x0b\x32).monarchic.agent_protocol.v1.FailureClassB\n\n\x08_message\"\xe1\x02\n\x0eRunEventRecord\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x10\n\x08\x65vent_id\x18\x02 \x01(\t\x12\x0e\n\x06run_id\x18\x03 \x01(\t\x12\x0f\n\x07plan_id\x18\x04 \x01(\t\x12\x10\n\x08sequence\x18\x05 \x01(\x04\x12;\n\x06stream\x18\x06 \x01(\x0e\x32+.monarchic.agent_protocol.v1.RunEventStream\x12\x13\n\x0brecorded_at\x18\x07 \x01(\x04\x12\x14\n\x07step_id\x18\x08 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x07task_id\x18\t \x01(\tH\x01\x88\x01\x01\x12\x12\n\nevent_type\x18\n \x01(\t\x12\x0e\n\x06status\x18\x0b \x01(\t\x12\x14\n\x07message\x18\x0c \x01(\tH\x02\x88\x01\x01\x12\x14\n\x0c\x61rtifact_ids\x18\r \x03(\tB\n\n\x08_step_idB\n\n\x08_task_idB\n\n\x08_message\"\x87\x03\n\x0bTaskMessage\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x12\n\nmessage_id\x18\x02 \x01(\t\x12\x0e\n\x06run_id\x18\x03 \x01(\t\x12\x14\n\x0c\x66rom_task_id\x18\x04 \x01(\t\x12\x12\n\nto_task_id\x18\x05 \x01(\t\x12\x0c\n\x04kind\x18\x06 \x01(\t\x12\x14\n\x07subject\x18\x07 \x01(\tH\x00\x88\x01\x01\x12\x11\n\x04\x62ody\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x15\n\rartifact_refs\x18\t \x03(\t\x12\x15\n\x08reply_to\x18\n \x01(\tH\x02\x88\x01\x01\x12\x12\n\ncreated_at\x18\x0b \x01(\t\x12\x14\n\x0crequires_ack\x18\x0c \x01(\x08\x12+\n\nextensions\x18\r \x01(\x0b\x32\x17.google.protobuf.Struct\x12;\n\nprovenance\x18\x0e \x01(\x0b\x32\'.monarchic.agent_protocol.v1.ProvenanceB\n\n\x08_subjectB\x07\n\x05_bodyB\x0b\n\t_reply_to\"\xc1\x01\n\x0eTaskMessageAck\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x12\n\nmessage_id\x18\x02 \x01(\t\x12\x0e\n\x06run_id\x18\x03 \x01(\t\x12\x0f\n\x07task_id\x18\x04 \x01(\t\x12\x10\n\x08\x61\x63ked_at\x18\x05 \x01(\t\x12\x0e\n\x06status\x18\x06 \x01(\t\x12\x11\n\x04note\x18\x07 \x01(\tH\x00\x88\x01\x01\x12+\n\nextensions\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x07\n\x05_note\"\xf5\x01\n\nGateResult\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x0c\n\x04gate\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\x12\x13\n\x06reason\x18\x04 \x01(\tH\x00\x88\x01\x01\x12)\n\x08\x65vidence\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12+\n\nextensions\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\x12@\n\rfailure_class\x18\x07 \x01(\x0b\x32).monarchic.agent_protocol.v1.FailureClassB\t\n\x07_reason\"\x88\x06\n\nRunOutcome\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x0f\n\x07task_id\x18\x02 \x01(\t\x12\x13\n\x06run_id\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x10objective_metric\x18\x04 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0fobjective_score\x18\x05 \x01(\x01H\x02\x88\x01\x01\x12H\n\x12objective_decision\x18\x06 \x01(\x0e\x32,.monarchic.agent_protocol.v1.OutcomeDecision\x12\x1f\n\x12\x65stimated_cost_usd\x18\x07 \x01(\x01H\x03\x88\x01\x01\x12\x1d\n\x10\x62udget_limit_usd\x18\x08 \x01(\x01H\x04\x88\x01\x01\x12\x43\n\rcost_decision\x18\t \x01(\x0e\x32,.monarchic.agent_protocol.v1.OutcomeDecision\x12\x17\n\nrisk_level\x18\n \x01(\tH\x05\x88\x01\x01\x12\x19\n\x0crisk_summary\x18\x0b \x01(\tH\x06\x88\x01\x01\x12\x43\n\rrisk_decision\x18\x0c \x01(\x0e\x32,.monarchic.agent_protocol.v1.OutcomeDecision\x12\x44\n\x0e\x66inal_decision\x18\r \x01(\x0e\x32,.monarchic.agent_protocol.v1.OutcomeDecision\x12\x14\n\x07summary\x18\x0e \x01(\tH\x07\x88\x01\x01\x12)\n\x08\x65vidence\x18\x0f \x01(\x0b\x32\x17.google.protobuf.Struct\x12+\n\nextensions\x18\x10 \x01(\x0b\x32\x17.google.protobuf.StructB\t\n\x07_run_idB\x13\n\x11_objective_metricB\x12\n\x10_objective_scoreB\x15\n\x13_estimated_cost_usdB\x13\n\x11_budget_limit_usdB\r\n\x0b_risk_levelB\x0f\n\r_risk_summaryB\n\n\x08_summary\"\x99\x01\n\nRunContext\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x0c\n\x04repo\x18\x02 \x01(\t\x12\x10\n\x08worktree\x18\x03 \x01(\t\x12\r\n\x05image\x18\x04 \x01(\t\x12\x0e\n\x06runner\x18\x05 \x01(\t\x12\x0e\n\x06labels\x18\x06 \x03(\t\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.Struct\"\x91\x02\n\x12RunnerCapabilities\x12\x10\n\x08platform\x18\x01 \x01(\t\x12\x0f\n\x07runtime\x18\x02 \x01(\t\x12?\n\x0fsupported_roles\x18\x03 \x03(\x0e\x32&.monarchic.agent_protocol.v1.AgentRole\x12\x1f\n\x17supported_task_versions\x18\x04 \x03(\t\x12\x0e\n\x06labels\x18\x05 \x03(\t\x12 \n\x18supports_interactive_pty\x18\x06 \x01(\x08\x12\x17\n\x0fsupports_resume\x18\x07 \x01(\x08\x12+\n\nextensions\x18\x08 \x01(\x0b\x32\x17.google.protobuf.Struct\"v\n\x08LeaseRef\x12\x10\n\x08lease_id\x18\x01 \x01(\t\x12\x15\n\rfencing_token\x18\x02 \x01(\t\x12\x0e\n\x06run_id\x18\x03 \x01(\t\x12\x0f\n\x07plan_id\x18\x04 \x01(\t\x12\x0f\n\x07step_id\x18\x05 \x01(\t\x12\x0f\n\x07task_id\x18\x06 \x01(\t\"\x7f\n\x0c\x46\x65ncingToken\x12\r\n\x05token\x18\x01 \x01(\t\x12\x14\n\x0cissued_at_ms\x18\x02 \x01(\x04\x12\x0e\n\x06issuer\x18\x03 \x01(\t\x12\r\n\x05scope\x18\x04 \x01(\t\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xe1\x02\n\x05Lease\x12\x10\n\x08lease_id\x18\x01 \x01(\t\x12\x0e\n\x06run_id\x18\x02 \x01(\t\x12\x0f\n\x07plan_id\x18\x03 \x01(\t\x12\x0f\n\x07step_id\x18\x04 \x01(\t\x12\x0f\n\x07task_id\x18\x05 \x01(\t\x12\x11\n\trunner_id\x18\x06 \x01(\t\x12\x12\n\nsession_id\x18\x07 \x01(\t\x12@\n\rfencing_token\x18\x08 \x01(\x0b\x32).monarchic.agent_protocol.v1.FencingToken\x12\x14\n\x0cissued_at_ms\x18\t \x01(\x04\x12\x15\n\rexpires_at_ms\x18\n \x01(\x04\x12@\n\x06status\x18\x0b \x01(\x0e\x32\x30.monarchic.agent_protocol.v1.LeaseLifecycleState\x12+\n\nextensions\x18\x0c \x01(\x0b\x32\x17.google.protobuf.Struct\"\xaf\x04\n\rRecoveryEvent\x12\x10\n\x08\x65vent_id\x18\x01 \x01(\t\x12\x0e\n\x06run_id\x18\x02 \x01(\t\x12\x0f\n\x07plan_id\x18\x03 \x01(\t\x12\x14\n\x07step_id\x18\x04 \x01(\tH\x00\x88\x01\x01\x12<\n\x04kind\x18\x05 \x01(\x0e\x32..monarchic.agent_protocol.v1.RecoveryEventKind\x12\x16\n\x0eoccurred_at_ms\x18\x06 \x01(\x04\x12\r\n\x05\x61\x63tor\x18\x07 \x01(\t\x12(\n\x07\x64\x65tails\x18\x08 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x18\n\x10\x63ontract_version\x18\t \x01(\t\x12\x46\n\trun_state\x18\n \x01(\x0e\x32..monarchic.agent_protocol.v1.RunLifecycleStateH\x01\x88\x01\x01\x12H\n\nstep_state\x18\x0b \x01(\x0e\x32/.monarchic.agent_protocol.v1.StepLifecycleStateH\x02\x88\x01\x01\x12V\n\x16lease_rejection_reason\x18\x0c \x01(\x0e\x32\x31.monarchic.agent_protocol.v1.LeaseRejectionReasonH\x03\x88\x01\x01\x42\n\n\x08_step_idB\x0c\n\n_run_stateB\r\n\x0b_step_stateB\x19\n\x17_lease_rejection_reason\"\xe4\x01\n\x0bLeaseStatus\x12\x34\n\x05lease\x18\x01 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12\r\n\x05state\x18\x02 \x01(\t\x12\x15\n\rupdated_at_ms\x18\x03 \x01(\x04\x12@\n\x07\x66\x61ilure\x18\x04 \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.StructB\n\n\x08_failure\"\xaf\x01\n\x12\x43\x61ncellationIntent\x12\x34\n\x05lease\x18\x01 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12\x0e\n\x06reason\x18\x02 \x01(\t\x12\x17\n\x0frequested_at_ms\x18\x03 \x01(\x04\x12\r\n\x05\x66orce\x18\x04 \x01(\x08\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xd1\x01\n\x0fLeaseAssignment\x12\x34\n\x05lease\x18\x01 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12/\n\x04task\x18\x02 \x01(\x0b\x32!.monarchic.agent_protocol.v1.Task\x12\x14\n\x0cissued_at_ms\x18\x03 \x01(\x04\x12\x14\n\x0clease_ttl_ms\x18\x04 \x01(\x04\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xab\x02\n\x15RegisterRunnerRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x45\n\x0c\x63\x61pabilities\x18\x03 \x01(\x0b\x32/.monarchic.agent_protocol.v1.RunnerCapabilities\x12\x1b\n\x13max_parallel_leases\x18\x04 \x01(\r\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x06 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x00\x88\x01\x01\x42\x0f\n\r_auth_context\"\xcb\x01\n\x16RegisterRunnerResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x1d\n\x15heartbeat_interval_ms\x18\x04 \x01(\x04\x12\x1e\n\x16lease_poll_interval_ms\x18\x05 \x01(\x04\x12+\n\nextensions\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\"\x97\x02\n\x10HeartbeatRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12?\n\ractive_leases\x18\x04 \x03(\x0b\x32(.monarchic.agent_protocol.v1.LeaseStatus\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x06 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x00\x88\x01\x01\x42\x0f\n\r_auth_context\"\xd6\x01\n\x11HeartbeatResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x19\n\x11next_heartbeat_ms\x18\x03 \x01(\x04\x12\x46\n\rcancellations\x18\x04 \x03(\x0b\x32/.monarchic.agent_protocol.v1.CancellationIntent\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\"\x8c\x02\n\x13\x41\x63quireLeaseRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x17\n\x0f\x61vailable_slots\x18\x04 \x01(\r\x12\x18\n\x10\x61\x63tive_lease_ids\x18\x05 \x03(\t\x12+\n\nextensions\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x07 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x00\x88\x01\x01\x42\x0f\n\r_auth_context\"\x98\x02\n\x14\x41\x63quireLeaseResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12@\n\nassignment\x18\x03 \x01(\x0b\x32,.monarchic.agent_protocol.v1.LeaseAssignment\x12\x16\n\x0eretry_after_ms\x18\x04 \x01(\x04\x12\x46\n\rcancellations\x18\x05 \x03(\x0b\x32/.monarchic.agent_protocol.v1.CancellationIntent\x12+\n\nextensions\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\"\x8d\x02\n\x11RenewLeaseRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x34\n\x05lease\x18\x04 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x06 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x00\x88\x01\x01\x42\x0f\n\r_auth_context\"\xb2\x02\n\x12RenewLeaseResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x03 \x01(\x08\x12\x14\n\x0clease_ttl_ms\x18\x04 \x01(\x04\x12\x46\n\rcancellations\x18\x05 \x03(\x0b\x32/.monarchic.agent_protocol.v1.CancellationIntent\x12@\n\x07\x66\x61ilure\x18\x06 \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\n\n\x08_failure\"\x8e\x02\n\x12ResumeLeaseRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x34\n\x05lease\x18\x04 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x06 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x00\x88\x01\x01\x42\x0f\n\r_auth_context\"\xc4\x02\n\x13ResumeLeaseResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x03 \x01(\x08\x12\x31\n\x05lease\x18\x04 \x01(\x0b\x32\".monarchic.agent_protocol.v1.Lease\x12\x15\n\rexpires_at_ms\x18\x05 \x01(\x04\x12\x1d\n\x15\x63urrent_fencing_token\x18\x06 \x01(\t\x12\x41\n\x06reason\x18\x07 \x01(\x0e\x32\x31.monarchic.agent_protocol.v1.LeaseRejectionReason\x12\x0f\n\x07message\x18\x08 \x01(\t\x12+\n\nextensions\x18\t \x01(\x0b\x32\x17.google.protobuf.Struct\"\xa8\x02\n\x18ReportStepStartedRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x34\n\x05lease\x18\x04 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12\x12\n\nstarted_at\x18\x05 \x01(\t\x12+\n\nextensions\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x07 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x00\x88\x01\x01\x42\x0f\n\r_auth_context\"\xdb\x01\n\x19ReportStepStartedResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x03 \x01(\x08\x12@\n\x07\x66\x61ilure\x18\x04 \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.StructB\n\n\x08_failure\"\x83\x03\n\x19ReportStepProgressRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x34\n\x05lease\x18\x04 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12\x32\n\x06\x65vents\x18\x05 \x03(\x0b\x32\".monarchic.agent_protocol.v1.Event\x12\x38\n\tartifacts\x18\x06 \x03(\x0b\x32%.monarchic.agent_protocol.v1.Artifact\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x08 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x00\x88\x01\x01\x42\x0f\n\r_auth_context\"\xa4\x02\n\x1aReportStepProgressResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x03 \x01(\x08\x12\x46\n\rcancellations\x18\x04 \x03(\x0b\x32/.monarchic.agent_protocol.v1.CancellationIntent\x12@\n\x07\x66\x61ilure\x18\x05 \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12+\n\nextensions\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\n\n\x08_failure\"\xf1\x04\n\x18ReportStepOutcomeRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x34\n\x05lease\x18\x04 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12\x37\n\x06status\x18\x05 \x01(\x0e\x32\'.monarchic.agent_protocol.v1.PlanStatus\x12\x32\n\x06\x65vents\x18\x06 \x03(\x0b\x32\".monarchic.agent_protocol.v1.Event\x12\x38\n\tartifacts\x18\x07 \x03(\x0b\x32%.monarchic.agent_protocol.v1.Artifact\x12\x41\n\x0brun_outcome\x18\x08 \x01(\x0b\x32\'.monarchic.agent_protocol.v1.RunOutcomeH\x00\x88\x01\x01\x12@\n\x07\x66\x61ilure\x18\t \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x01\x88\x01\x01\x12\x13\n\x0b\x66inished_at\x18\n \x01(\t\x12+\n\nextensions\x18\x0b \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x0c \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x02\x88\x01\x01\x42\x0e\n\x0c_run_outcomeB\n\n\x08_failureB\x0f\n\r_auth_context\"\xdb\x01\n\x19ReportStepOutcomeResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x03 \x01(\x08\x12@\n\x07\x66\x61ilure\x18\x04 \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.StructB\n\n\x08_failure\"\xc4\x02\n\x16\x41\x63kCancellationRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x34\n\x05lease\x18\x04 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12\x0e\n\x06status\x18\x05 \x01(\t\x12\x14\n\x07message\x18\x06 \x01(\tH\x00\x88\x01\x01\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x08 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x01\x88\x01\x01\x42\n\n\x08_messageB\x0f\n\r_auth_context\"\xd9\x01\n\x17\x41\x63kCancellationResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x03 \x01(\x08\x12@\n\x07\x66\x61ilure\x18\x04 \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.StructB\n\n\x08_failure*\xb6\x01\n\tAgentRole\x12\x1a\n\x16\x41GENT_ROLE_UNSPECIFIED\x10\x00\x12\x11\n\rPRODUCT_OWNER\x10\x01\x12\x13\n\x0fPROJECT_MANAGER\x10\x02\x12\x07\n\x03\x44\x45V\x10\x03\x12\x06\n\x02QA\x10\x04\x12\x0c\n\x08REVIEWER\x10\x05\x12\x0c\n\x08SECURITY\x10\x06\x12\x07\n\x03OPS\x10\x07\x12\r\n\tPUBLISHER\x10\x08\x12\x0e\n\nRESEARCHER\x10\t\x12\x10\n\x0cVERIFICATION\x10\n*f\n\x0fOutcomeDecision\x12 \n\x1cOUTCOME_DECISION_UNSPECIFIED\x10\x00\x12\n\n\x06\x41\x43\x43\x45PT\x10\x01\x12\x0b\n\x07ITERATE\x10\x02\x12\n\n\x06REJECT\x10\x03\x12\x0c\n\x08\x45SCALATE\x10\x04*\x93\x01\n\x0bIntentClass\x12\x1c\n\x18INTENT_CLASS_UNSPECIFIED\x10\x00\x12\x18\n\x14INTENT_CLASS_INSPECT\x10\x01\x12\x19\n\x15INTENT_CLASS_VALIDATE\x10\x02\x12\x18\n\x14INTENT_CLASS_EXECUTE\x10\x03\x12\x17\n\x13INTENT_CLASS_VERIFY\x10\x04*\x93\x01\n\nPlanStatus\x12\x1b\n\x17PLAN_STATUS_UNSPECIFIED\x10\x00\x12\t\n\x05\x44RAFT\x10\x01\x12\x0b\n\x07PLANNED\x10\x02\x12\r\n\tEXECUTING\x10\x03\x12\x0c\n\x08\x43OMPLETE\x10\x04\x12\x0b\n\x07\x42OUNDED\x10\x05\x12\n\n\x06\x46\x41ILED\x10\x06\x12\r\n\tCANCELLED\x10\x07\x12\x0b\n\x07UNKNOWN\x10\x08*\xfd\x02\n\x0c\x41rtifactKind\x12\x1d\n\x19\x41RTIFACT_KIND_UNSPECIFIED\x10\x00\x12\x16\n\x12\x41RTIFACT_KIND_PLAN\x10\x01\x12#\n\x1f\x41RTIFACT_KIND_EXECUTION_RECEIPT\x10\x02\x12&\n\"ARTIFACT_KIND_VERIFICATION_RECEIPT\x10\x03\x12\x1b\n\x17\x41RTIFACT_KIND_EVENT_LOG\x10\x04\x12!\n\x1d\x41RTIFACT_KIND_DIGEST_MANIFEST\x10\x05\x12 \n\x1c\x41RTIFACT_KIND_PROOF_MANIFEST\x10\x06\x12\x17\n\x13\x41RTIFACT_KIND_PATCH\x10\x07\x12\x1d\n\x19\x41RTIFACT_KIND_TEST_REPORT\x10\x08\x12\x1b\n\x17\x41RTIFACT_KIND_BUILD_LOG\x10\t\x12\x18\n\x14\x41RTIFACT_KIND_BUNDLE\x10\n\x12\x18\n\x14\x41RTIFACT_KIND_CUSTOM\x10\x0b*\xcd\x01\n\rAuthMechanism\x12\x1e\n\x1a\x41UTH_MECHANISM_UNSPECIFIED\x10\x00\x12 \n\x1c\x41UTH_MECHANISM_SHARED_SECRET\x10\x01\x12\x1f\n\x1b\x41UTH_MECHANISM_BEARER_TOKEN\x10\x02\x12\x1f\n\x1b\x41UTH_MECHANISM_SIGNED_TOKEN\x10\x03\x12\x1d\n\x19\x41UTH_MECHANISM_MUTUAL_TLS\x10\x04\x12\x19\n\x15\x41UTH_MECHANISM_CUSTOM\x10\x05*\xcc\x01\n\rUsageCategory\x12\x1e\n\x1aUSAGE_CATEGORY_UNSPECIFIED\x10\x00\x12 \n\x1cUSAGE_CATEGORY_CONTROL_PLANE\x10\x01\x12\x1c\n\x18USAGE_CATEGORY_EXECUTION\x10\x02\x12\x1f\n\x1bUSAGE_CATEGORY_VERIFICATION\x10\x03\x12\x1f\n\x1bUSAGE_CATEGORY_AUDIT_EXPORT\x10\x04\x12\x19\n\x15USAGE_CATEGORY_CUSTOM\x10\x05*\xb6\x01\n\tUsageUnit\x12\x1a\n\x16USAGE_UNIT_UNSPECIFIED\x10\x00\x12\x17\n\x13USAGE_UNIT_REQUESTS\x10\x01\x12\x1b\n\x17USAGE_UNIT_MILLISECONDS\x10\x02\x12\x14\n\x10USAGE_UNIT_BYTES\x10\x03\x12\x15\n\x11USAGE_UNIT_TOKENS\x10\x04\x12\x13\n\x0fUSAGE_UNIT_RUNS\x10\x05\x12\x15\n\x11USAGE_UNIT_CUSTOM\x10\x06*\xf6\x01\n\x0cPlanStepKind\x12\x1e\n\x1aPLAN_STEP_KIND_UNSPECIFIED\x10\x00\x12\x1b\n\x17PLAN_STEP_KIND_ANALYSIS\x10\x01\x12\x1c\n\x18PLAN_STEP_KIND_EXECUTION\x10\x02\x12\x1f\n\x1bPLAN_STEP_KIND_VERIFICATION\x10\x03\x12\x19\n\x15PLAN_STEP_KIND_REVIEW\x10\x04\x12\x18\n\x14PLAN_STEP_KIND_MERGE\x10\x05\x12\x1a\n\x16PLAN_STEP_KIND_RELEASE\x10\x06\x12\x19\n\x15PLAN_STEP_KIND_CUSTOM\x10\x07*\xa1\x01\n\x0eReplanStrategy\x12\x1f\n\x1bREPLAN_STRATEGY_UNSPECIFIED\x10\x00\x12\x19\n\x15REPLAN_STRATEGY_RETRY\x10\x01\x12\x1a\n\x16REPLAN_STRATEGY_REPAIR\x10\x02\x12\x1c\n\x18REPLAN_STRATEGY_ESCALATE\x10\x03\x12\x19\n\x15REPLAN_STRATEGY_BLOCK\x10\x04*\xbb\x01\n\x12VerificationStatus\x12#\n\x1fVERIFICATION_STATUS_UNSPECIFIED\x10\x00\x12\x1f\n\x1bVERIFICATION_STATUS_PENDING\x10\x01\x12\x1e\n\x1aVERIFICATION_STATUS_PASSED\x10\x02\x12\x1e\n\x1aVERIFICATION_STATUS_FAILED\x10\x03\x12\x1f\n\x1bVERIFICATION_STATUS_BLOCKED\x10\x04*\xde\x01\n\x17VerificationCheckStatus\x12)\n%VERIFICATION_CHECK_STATUS_UNSPECIFIED\x10\x00\x12$\n VERIFICATION_CHECK_STATUS_PASSED\x10\x01\x12$\n VERIFICATION_CHECK_STATUS_FAILED\x10\x02\x12%\n!VERIFICATION_CHECK_STATUS_BLOCKED\x10\x03\x12%\n!VERIFICATION_CHECK_STATUS_SKIPPED\x10\x04*\xa9\x02\n\x13\x42lockedOutcomeScope\x12%\n!BLOCKED_OUTCOME_SCOPE_UNSPECIFIED\x10\x00\x12 \n\x1c\x42LOCKED_OUTCOME_SCOPE_INTENT\x10\x01\x12\x1e\n\x1a\x42LOCKED_OUTCOME_SCOPE_PLAN\x10\x02\x12\x1e\n\x1a\x42LOCKED_OUTCOME_SCOPE_STEP\x10\x03\x12\x1d\n\x19\x42LOCKED_OUTCOME_SCOPE_RUN\x10\x04\x12&\n\"BLOCKED_OUTCOME_SCOPE_VERIFICATION\x10\x05\x12\x1f\n\x1b\x42LOCKED_OUTCOME_SCOPE_MERGE\x10\x06\x12!\n\x1d\x42LOCKED_OUTCOME_SCOPE_RELEASE\x10\x07*\xef\x01\n\x13ReviewDecisionScope\x12%\n!REVIEW_DECISION_SCOPE_UNSPECIFIED\x10\x00\x12\x1e\n\x1aREVIEW_DECISION_SCOPE_PLAN\x10\x01\x12\x1e\n\x1aREVIEW_DECISION_SCOPE_STEP\x10\x02\x12&\n\"REVIEW_DECISION_SCOPE_PULL_REQUEST\x10\x03\x12&\n\"REVIEW_DECISION_SCOPE_VERIFICATION\x10\x04\x12!\n\x1dREVIEW_DECISION_SCOPE_RELEASE\x10\x05*\xbc\x01\n\x11ReviewDisposition\x12\"\n\x1eREVIEW_DISPOSITION_UNSPECIFIED\x10\x00\x12\x1e\n\x1aREVIEW_DISPOSITION_APPROVE\x10\x01\x12&\n\"REVIEW_DISPOSITION_REQUEST_CHANGES\x10\x02\x12\x1d\n\x19REVIEW_DISPOSITION_REJECT\x10\x03\x12\x1c\n\x18REVIEW_DISPOSITION_DEFER\x10\x04*j\n\x0cRerunTrigger\x12\x1d\n\x19RERUN_TRIGGER_UNSPECIFIED\x10\x00\x12!\n\x1dRERUN_TRIGGER_REVIEW_DECISION\x10\x01\x12\x18\n\x14RERUN_TRIGGER_MANUAL\x10\x02*\xb4\x01\n\x16RerunSelectionStrategy\x12(\n$RERUN_SELECTION_STRATEGY_UNSPECIFIED\x10\x00\x12%\n!RERUN_SELECTION_STRATEGY_TASK_IDS\x10\x01\x12%\n!RERUN_SELECTION_STRATEGY_STEP_IDS\x10\x02\x12\"\n\x1eRERUN_SELECTION_STRATEGY_PATHS\x10\x03*\xcf\x01\n\x14RerunExecutionStatus\x12&\n\"RERUN_EXECUTION_STATUS_UNSPECIFIED\x10\x00\x12\"\n\x1eRERUN_EXECUTION_STATUS_PENDING\x10\x01\x12$\n RERUN_EXECUTION_STATUS_SUCCEEDED\x10\x02\x12!\n\x1dRERUN_EXECUTION_STATUS_FAILED\x10\x03\x12\"\n\x1eRERUN_EXECUTION_STATUS_PARTIAL\x10\x04*\xee\x01\n\x0eRunEventStream\x12 \n\x1cRUN_EVENT_STREAM_UNSPECIFIED\x10\x00\x12\x1e\n\x1aRUN_EVENT_STREAM_EXECUTION\x10\x01\x12\x1d\n\x19RUN_EVENT_STREAM_RECOVERY\x10\x02\x12\x1b\n\x17RUN_EVENT_STREAM_REVIEW\x10\x03\x12!\n\x1dRUN_EVENT_STREAM_VERIFICATION\x10\x04\x12\x1e\n\x1aRUN_EVENT_STREAM_LIFECYCLE\x10\x05\x12\x1b\n\x17RUN_EVENT_STREAM_CUSTOM\x10\x06*\xb0\x01\n\x13LeaseLifecycleState\x12%\n!LEASE_LIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12\x10\n\x0cLEASE_ISSUED\x10\x01\x12\x10\n\x0cLEASE_ACTIVE\x10\x02\x12\x12\n\x0eLEASE_RELEASED\x10\x03\x12\x11\n\rLEASE_EXPIRED\x10\x04\x12\x13\n\x0fLEASE_CANCELLED\x10\x05\x12\x12\n\x0eLEASE_REJECTED\x10\x06*\xc6\x01\n\x11RunLifecycleState\x12#\n\x1fRUN_LIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bRUN_PENDING\x10\x01\x12\x11\n\rRUN_EXECUTING\x10\x02\x12\x0e\n\nRUN_PAUSED\x10\x03\x12\x12\n\x0eRUN_CANCELLING\x10\x04\x12\x11\n\rRUN_CANCELLED\x10\x05\x12\x0e\n\nRUN_FAILED\x10\x06\x12\x10\n\x0cRUN_COMPLETE\x10\x07\x12\x0f\n\x0bRUN_BLOCKED\x10\x08*\xc9\x01\n\x12StepLifecycleState\x12$\n STEP_LIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12\x10\n\x0cSTEP_PENDING\x10\x01\x12\x0e\n\nSTEP_READY\x10\x02\x12\x0f\n\x0bSTEP_LEASED\x10\x03\x12\x10\n\x0cSTEP_RUNNING\x10\x04\x12\x11\n\rSTEP_COMPLETE\x10\x05\x12\x0f\n\x0bSTEP_FAILED\x10\x06\x12\x12\n\x0eSTEP_CANCELLED\x10\x07\x12\x10\n\x0cSTEP_BLOCKED\x10\x08*\xee\x02\n\x14LeaseRejectionReason\x12&\n\"LEASE_REJECTION_REASON_UNSPECIFIED\x10\x00\x12\'\n#LEASE_REJECTION_STALE_FENCING_TOKEN\x10\x01\x12\x1b\n\x17LEASE_REJECTION_EXPIRED\x10\x02\x12$\n LEASE_REJECTION_SESSION_MISMATCH\x10\x03\x12!\n\x1dLEASE_REJECTION_UNKNOWN_LEASE\x10\x04\x12)\n%LEASE_REJECTION_STEP_ALREADY_TERMINAL\x10\x05\x12&\n\"LEASE_REJECTION_RUN_NOT_EXECUTABLE\x10\x06\x12&\n\"LEASE_REJECTION_DEPENDENCY_BLOCKED\x10\x07\x12$\n LEASE_REJECTION_LEASE_SUPERSEDED\x10\x08*\x88\x03\n\x11RecoveryEventKind\x12#\n\x1fRECOVERY_EVENT_KIND_UNSPECIFIED\x10\x00\x12\'\n#RECOVERY_EVENT_ORCHESTRATOR_STARTED\x10\x01\x12!\n\x1dRECOVERY_EVENT_STATE_RELOADED\x10\x02\x12!\n\x1dRECOVERY_EVENT_LEASE_RESTORED\x10\x03\x12!\n\x1dRECOVERY_EVENT_LEASE_REJECTED\x10\x04\x12 \n\x1cRECOVERY_EVENT_STEP_REQUEUED\x10\x05\x12\x1f\n\x1bRECOVERY_EVENT_STEP_BLOCKED\x10\x06\x12 \n\x1cRECOVERY_EVENT_RUN_RECOVERED\x10\x07\x12)\n%RECOVERY_EVENT_CANCELLATION_REQUESTED\x10\x08\x12,\n(RECOVERY_EVENT_CANCELLATION_ACKNOWLEDGED\x10\t2\xe3\x08\n\x14RunnerControlService\x12y\n\x0eRegisterRunner\x12\x32.monarchic.agent_protocol.v1.RegisterRunnerRequest\x1a\x33.monarchic.agent_protocol.v1.RegisterRunnerResponse\x12j\n\tHeartbeat\x12-.monarchic.agent_protocol.v1.HeartbeatRequest\x1a..monarchic.agent_protocol.v1.HeartbeatResponse\x12s\n\x0c\x41\x63quireLease\x12\x30.monarchic.agent_protocol.v1.AcquireLeaseRequest\x1a\x31.monarchic.agent_protocol.v1.AcquireLeaseResponse\x12m\n\nRenewLease\x12..monarchic.agent_protocol.v1.RenewLeaseRequest\x1a/.monarchic.agent_protocol.v1.RenewLeaseResponse\x12p\n\x0bResumeLease\x12/.monarchic.agent_protocol.v1.ResumeLeaseRequest\x1a\x30.monarchic.agent_protocol.v1.ResumeLeaseResponse\x12\x82\x01\n\x11ReportStepStarted\x12\x35.monarchic.agent_protocol.v1.ReportStepStartedRequest\x1a\x36.monarchic.agent_protocol.v1.ReportStepStartedResponse\x12\x85\x01\n\x12ReportStepProgress\x12\x36.monarchic.agent_protocol.v1.ReportStepProgressRequest\x1a\x37.monarchic.agent_protocol.v1.ReportStepProgressResponse\x12\x82\x01\n\x11ReportStepOutcome\x12\x35.monarchic.agent_protocol.v1.ReportStepOutcomeRequest\x1a\x36.monarchic.agent_protocol.v1.ReportStepOutcomeResponse\x12|\n\x0f\x41\x63kCancellation\x12\x33.monarchic.agent_protocol.v1.AckCancellationRequest\x1a\x34.monarchic.agent_protocol.v1.AckCancellationResponseB\x88\x02\n\x1e\x61i.monarchic.agent_protocol.v1B\x18MonarchicAgentProtocolV1P\x01Zdgithub.com/monarchic-ai/monarchic-agent-protocol/src/go/monarchic/agent_protocol/v1;agent_protocolv1\xa2\x02\x03MAP\xaa\x02\x1aMonarchic.AgentProtocol.V1\xca\x02\x1aMonarchic\\AgentProtocol\\V1\xe2\x02#Monarchic\\AgentProtocol\\V1\\Metadatab\x06proto3"
|
|
10
|
+
descriptor_data = "\n\x1emonarchic_agent_protocol.proto\x12\x1bmonarchic.agent_protocol.v1\x1a\x1cgoogle/protobuf/struct.proto\"\xf7\x01\n\nDatasetRef\x12\x12\n\ndataset_id\x18\x01 \x01(\t\x12\x10\n\x03uri\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x0e\n\x06sha256\x18\x03 \x01(\t\x12\x0e\n\x06\x66ormat\x18\x04 \x01(\t\x12\x12\n\x05split\x18\x05 \x01(\tH\x01\x88\x01\x01\x12\x17\n\nsize_bytes\x18\x06 \x01(\x04H\x02\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\x07 \x01(\tH\x03\x88\x01\x01\x12+\n\nextensions\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x06\n\x04_uriB\x08\n\x06_splitB\r\n\x0b_size_bytesB\x0e\n\x0c_description\"\x89\x02\n\x12\x41\x63\x63\x65ptanceCriteria\x12\x0e\n\x06metric\x18\x01 \x01(\t\x12\x11\n\tdirection\x18\x02 \x01(\t\x12\x11\n\tthreshold\x18\x03 \x01(\x01\x12\x1c\n\x0fmin_effect_size\x18\x04 \x01(\x01H\x00\x88\x01\x01\x12\x19\n\x0cmax_variance\x18\x05 \x01(\x01H\x01\x88\x01\x01\x12\x1d\n\x10\x63onfidence_level\x18\x06 \x01(\x01H\x02\x88\x01\x01\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x12\n\x10_min_effect_sizeB\x0f\n\r_max_varianceB\x13\n\x11_confidence_level\"\xfc\x02\n\x0e\x45xperimentSpec\x12\x15\n\rexperiment_id\x18\x01 \x01(\t\x12\x11\n\tobjective\x18\x02 \x01(\t\x12\x17\n\nhypothesis\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x0cmodel_family\x18\x04 \x01(\tH\x01\x88\x01\x01\x12\r\n\x05seeds\x18\x05 \x03(\x03\x12=\n\x0c\x64\x61taset_refs\x18\x06 \x03(\x0b\x32\'.monarchic.agent_protocol.v1.DatasetRef\x12\x43\n\nacceptance\x18\x07 \x01(\x0b\x32/.monarchic.agent_protocol.v1.AcceptanceCriteria\x12,\n\x0b\x63onstraints\x18\x08 \x01(\x0b\x32\x17.google.protobuf.Struct\x12+\n\nextensions\x18\t \x01(\x0b\x32\x17.google.protobuf.StructB\r\n\x0b_hypothesisB\x0f\n\r_model_family\"\xf3\x02\n\rObjectiveSpec\x12\x12\n\nmetric_key\x18\x01 \x01(\t\x12\x11\n\tdirection\x18\x02 \x01(\t\x12\x13\n\x06target\x18\x03 \x01(\x01H\x00\x88\x01\x01\x12\x16\n\tmin_delta\x18\x04 \x01(\x01H\x01\x88\x01\x01\x12\x16\n\ttolerance\x18\x05 \x01(\x01H\x02\x88\x01\x01\x12\x18\n\x0breport_file\x18\x06 \x01(\tH\x03\x88\x01\x01\x12\x1b\n\x0ereport_task_id\x18\x07 \x01(\tH\x04\x88\x01\x01\x12\x13\n\x06weight\x18\x08 \x01(\x01H\x05\x88\x01\x01\x12\x18\n\x0b\x64\x65scription\x18\t \x01(\tH\x06\x88\x01\x01\x12+\n\nextensions\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\t\n\x07_targetB\x0c\n\n_min_deltaB\x0c\n\n_toleranceB\x0e\n\x0c_report_fileB\x11\n\x0f_report_task_idB\t\n\x07_weightB\x0e\n\x0c_description\"\x8e\x02\n\nEvalResult\x12\x0e\n\x06metric\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x01\x12\x15\n\x08lower_ci\x18\x03 \x01(\x01H\x00\x88\x01\x01\x12\x15\n\x08upper_ci\x18\x04 \x01(\x01H\x01\x88\x01\x01\x12\x15\n\x08variance\x18\x05 \x01(\x01H\x02\x88\x01\x01\x12\x11\n\x04seed\x18\x06 \x01(\x03H\x03\x88\x01\x01\x12\x0e\n\x06passed\x18\x07 \x01(\x08\x12\x12\n\x05notes\x18\x08 \x01(\tH\x04\x88\x01\x01\x12+\n\nextensions\x18\t \x01(\x0b\x32\x17.google.protobuf.StructB\x0b\n\t_lower_ciB\x0b\n\t_upper_ciB\x0b\n\t_varianceB\x07\n\x05_seedB\x08\n\x06_notes\"\xf6\x01\n\x0c\x46\x61ilureClass\x12\x10\n\x08\x63\x61tegory\x18\x01 \x01(\t\x12\x0c\n\x04\x63ode\x18\x02 \x01(\t\x12\x11\n\tretryable\x18\x03 \x01(\x08\x12\x13\n\x06\x64\x65tail\x18\x04 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x05scope\x18\x05 \x01(\tH\x01\x88\x01\x01\x12\x13\n\x06source\x18\x06 \x01(\tH\x02\x88\x01\x01\x12\x18\n\x0bnext_action\x18\x07 \x01(\tH\x03\x88\x01\x01\x12+\n\nextensions\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\t\n\x07_detailB\x08\n\x06_scopeB\t\n\x07_sourceB\x0e\n\x0c_next_action\"\xeb\x03\n\nProvenance\x12\x15\n\rprompt_sha256\x18\x01 \x01(\t\x12\x13\n\x0b\x63ode_sha256\x18\x02 \x01(\t\x12\x16\n\x0e\x64\x61taset_sha256\x18\x03 \x03(\t\x12\x0f\n\x07runtime\x18\x04 \x01(\t\x12\x12\n\x05model\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\x0e\n\x06runner\x18\x06 \x01(\t\x12\x14\n\x0corchestrator\x18\x07 \x01(\t\x12\x1d\n\x10task_spec_sha256\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0fpipeline_sha256\x18\t \x01(\tH\x02\x88\x01\x01\x12\x1b\n\x0e\x63ommand_sha256\x18\n \x01(\tH\x03\x88\x01\x01\x12\x12\n\ncreated_at\x18\x0b \x01(\t\x12\x1b\n\x0esource_task_id\x18\x0c \x01(\tH\x04\x88\x01\x01\x12=\n\x0c\x64\x61taset_refs\x18\r \x03(\x0b\x32\'.monarchic.agent_protocol.v1.DatasetRef\x12+\n\nextensions\x18\x0e \x01(\x0b\x32\x17.google.protobuf.StructB\x08\n\x06_modelB\x13\n\x11_task_spec_sha256B\x12\n\x10_pipeline_sha256B\x11\n\x0f_command_sha256B\x11\n\x0f_source_task_id\"\x99\x02\n\x06Intent\x12\x11\n\tintent_id\x18\x01 \x01(\t\x12\x14\n\x0csubmitted_at\x18\x02 \x01(\x04\x12\x11\n\tsubmitter\x18\x03 \x01(\t\x12\x16\n\x0epolicy_version\x18\x04 \x01(\t\x12\x13\n\x0btarget_repo\x18\x05 \x01(\t\x12\x12\n\ntarget_ref\x18\x06 \x01(\t\x12\x0c\n\x04goal\x18\x07 \x01(\t\x12,\n\x0b\x63onstraints\x18\x08 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x16\n\x0e\x63ontext_digest\x18\t \x01(\t\x12>\n\x0cintent_class\x18\n \x01(\x0e\x32(.monarchic.agent_protocol.v1.IntentClass\"\x95\x02\n\x0f\x42ootstrapIntent\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x1b\n\x13\x62ootstrap_intent_id\x18\x02 \x01(\t\x12\x13\n\x0bproject_key\x18\x03 \x01(\t\x12\x14\n\x0ctarget_repos\x18\x04 \x03(\t\x12!\n\x14pipeline_template_id\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\x15\n\rcampaign_goal\x18\x06 \x01(\t\x12\x12\n\x05notes\x18\x07 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x10priority_profile\x18\x08 \x01(\t\x12\x15\n\rcreated_at_ms\x18\t \x01(\x04\x42\x17\n\x15_pipeline_template_idB\x08\n\x06_notes\"\xfc\x01\n\x15\x41gentRunnerPreference\x12\x11\n\trunner_id\x18\x01 \x01(\t\x12\x12\n\x05model\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x08provider\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x10reasoning_effort\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x1d\n\x15required_capabilities\x18\x05 \x03(\t\x12\x0e\n\x06labels\x18\x06 \x03(\t\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x08\n\x06_modelB\x0b\n\t_providerB\x13\n\x11_reasoning_effort\"\xfc\x01\n\x11\x41gentRunnerPolicy\x12\x18\n\x10runner_policy_id\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x03 \x01(\tH\x00\x88\x01\x01\x12N\n\x12runner_preferences\x18\x04 \x03(\x0b\x32\x32.monarchic.agent_protocol.v1.AgentRunnerPreference\x12\x10\n\x08role_ids\x18\x05 \x03(\t\x12+\n\nextensions\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x0e\n\x0c_description\"\x96\x03\n\x0c\x41gentProfile\x12\x10\n\x08\x61gent_id\x18\x01 \x01(\t\x12\x0f\n\x07role_id\x18\x02 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x03 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x04 \x01(\tH\x00\x88\x01\x01\x12N\n\x12runner_preferences\x18\x05 \x03(\x0b\x32\x32.monarchic.agent_protocol.v1.AgentRunnerPreference\x12\x1d\n\x15\x61llowed_network_modes\x18\x06 \x03(\t\x12\x1d\n\x15requires_human_review\x18\x07 \x01(\x08\x12\x1a\n\x12required_skill_ids\x18\x08 \x03(\t\x12\x18\n\x10required_mcp_ids\x18\t \x03(\t\x12+\n\nextensions\x18\n \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x1d\n\x10runner_policy_id\x18\x0b \x01(\tH\x01\x88\x01\x01\x42\x0e\n\x0c_descriptionB\x13\n\x11_runner_policy_id\"\x99\x02\n\x13ResolvedAgentRunner\x12\x11\n\trunner_id\x18\x01 \x01(\t\x12\x12\n\x05model\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x08provider\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x1d\n\x10reasoning_effort\x18\x04 \x01(\tH\x02\x88\x01\x01\x12\x18\n\x10preference_index\x18\x05 \x01(\r\x12\x1d\n\x10selection_reason\x18\x06 \x01(\tH\x03\x88\x01\x01\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x08\n\x06_modelB\x0b\n\t_providerB\x13\n\x11_reasoning_effortB\x13\n\x11_selection_reason\"\x8d\x06\n\x11\x42ootstrapPlanTask\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x0f\n\x07role_id\x18\x03 \x01(\t\x12\x16\n\x0etask_milestone\x18\x04 \x01(\t\x12\x12\n\ndepends_on\x18\x05 \x03(\t\x12\x18\n\x0btarget_repo\x18\x06 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\x12required_skill_ids\x18\x07 \x03(\t\x12\x18\n\x10required_mcp_ids\x18\x08 \x03(\t\x12\x1d\n\x10interaction_mode\x18\t \x01(\tH\x01\x88\x01\x01\x12\x19\n\x0cnetwork_mode\x18\n \x01(\tH\x02\x88\x01\x01\x12\"\n\x15requires_human_review\x18\x0b \x01(\x08H\x03\x88\x01\x01\x12\x32\n\x11\x66ilesystem_policy\x18\x0c \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x1d\n\x10template_slot_id\x18\r \x01(\tH\x04\x88\x01\x01\x12\x12\n\x05notes\x18\x0e \x01(\tH\x05\x88\x01\x01\x12\x15\n\x08\x61gent_id\x18\x0f \x01(\tH\x06\x88\x01\x01\x12 \n\x13injected_by_role_id\x18\x10 \x01(\tH\x07\x88\x01\x01\x12N\n\x12runner_preferences\x18\x11 \x03(\x0b\x32\x32.monarchic.agent_protocol.v1.AgentRunnerPreference\x12N\n\x0fresolved_runner\x18\x12 \x01(\x0b\x32\x30.monarchic.agent_protocol.v1.ResolvedAgentRunnerH\x08\x88\x01\x01\x42\x0e\n\x0c_target_repoB\x13\n\x11_interaction_modeB\x0f\n\r_network_modeB\x18\n\x16_requires_human_reviewB\x13\n\x11_template_slot_idB\x08\n\x06_notesB\x0b\n\t_agent_idB\x16\n\x14_injected_by_role_idB\x12\n\x10_resolved_runner\"\xea\x02\n\rBootstrapPlan\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x19\n\x11\x62ootstrap_plan_id\x18\x02 \x01(\t\x12\x1b\n\x13\x62ootstrap_intent_id\x18\x03 \x01(\t\x12\x13\n\x0bproject_key\x18\x04 \x01(\t\x12I\n\rplanning_mode\x18\x05 \x01(\x0e\x32\x32.monarchic.agent_protocol.v1.BootstrapPlanningMode\x12!\n\x14pipeline_template_id\x18\x06 \x01(\tH\x00\x88\x01\x01\x12\x15\n\rcampaign_goal\x18\x07 \x01(\t\x12\x15\n\rcreated_at_ms\x18\x08 \x01(\x04\x12=\n\x05tasks\x18\t \x03(\x0b\x32..monarchic.agent_protocol.v1.BootstrapPlanTaskB\x17\n\x15_pipeline_template_id\"I\n\x19\x42ootstrapFilesystemPolicy\x12\x0c\n\x04read\x18\x01 \x03(\t\x12\r\n\x05write\x18\x02 \x03(\t\x12\x0f\n\x07\x65xecute\x18\x03 \x03(\t\"F\n\x15\x42ootstrapSkillBinding\x12\n\n\x02id\x18\x01 \x01(\t\x12\x10\n\x08required\x18\x02 \x01(\x08\x12\x0f\n\x07purpose\x18\x03 \x01(\t\"\xd9\x02\n\x1c\x42ootstrapTemplateSlotContext\x12\x0f\n\x07slot_id\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x0c\n\x04role\x18\x03 \x01(\t\x12\x18\n\x10interaction_mode\x18\x04 \x01(\t\x12\x14\n\x0cnetwork_mode\x18\x05 \x01(\t\x12\x1d\n\x15requires_human_review\x18\x06 \x01(\x08\x12Q\n\x11\x66ilesystem_policy\x18\x07 \x01(\x0b\x32\x36.monarchic.agent_protocol.v1.BootstrapFilesystemPolicy\x12K\n\x0frequired_skills\x18\x08 \x03(\x0b\x32\x32.monarchic.agent_protocol.v1.BootstrapSkillBinding\x12\x15\n\rrequired_mcps\x18\t \x03(\t\"\x98\x01\n\"BootstrapTemplateConnectionContext\x12\x14\n\x0c\x66rom_slot_id\x18\x01 \x01(\t\x12\x12\n\nto_slot_id\x18\x02 \x01(\t\x12\x0c\n\x04kind\x18\x03 \x01(\t\x12\x10\n\x08required\x18\x04 \x01(\x08\x12\x18\n\x0b\x64\x65scription\x18\x05 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_description\"\xa0\x01\n\x1c\x42ootstrapTemplateLaneContext\x12\x0f\n\x07lane_id\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12\x14\n\x0c\x66rom_slot_id\x18\x03 \x01(\t\x12\x12\n\nto_slot_id\x18\x04 \x01(\t\x12\x10\n\x08slot_ids\x18\x05 \x03(\t\x12\x1d\n\x15repeat_per_task_group\x18\x06 \x01(\x08\"\xaf\x02\n\x18\x42ootstrapTemplateContext\x12\x13\n\x0btemplate_id\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\x12H\n\x05slots\x18\x03 \x03(\x0b\x32\x39.monarchic.agent_protocol.v1.BootstrapTemplateSlotContext\x12T\n\x0b\x63onnections\x18\x04 \x03(\x0b\x32?.monarchic.agent_protocol.v1.BootstrapTemplateConnectionContext\x12H\n\x05lanes\x18\x05 \x03(\x0b\x32\x39.monarchic.agent_protocol.v1.BootstrapTemplateLaneContext\"/\n\x0c\x41gentCommand\x12\x11\n\trunner_id\x18\x01 \x01(\t\x12\x0c\n\x04\x61rgv\x18\x02 \x03(\t\"\xfb\x05\n\x18\x42ootstrapPlanningContext\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x13\n\x0bproject_key\x18\x02 \x01(\t\x12\x13\n\x0btarget_repo\x18\x03 \x01(\t\x12\x14\n\x0ctarget_repos\x18\x04 \x03(\t\x12\x15\n\rcampaign_goal\x18\x05 \x01(\t\x12\x12\n\x05notes\x18\x06 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x10priority_profile\x18\x07 \x01(\t\x12\x15\n\tcodex_cmd\x18\x08 \x03(\tB\x02\x18\x01\x12\x1b\n\x13\x61vailable_skill_ids\x18\t \x03(\t\x12U\n\x11selected_template\x18\n \x01(\x0b\x32\x35.monarchic.agent_protocol.v1.BootstrapTemplateContextH\x01\x88\x01\x01\x12I\n\rplanning_mode\x18\x0b \x01(\x0e\x32\x32.monarchic.agent_protocol.v1.BootstrapPlanningMode\x12\x18\n\x10\x65nabled_role_ids\x18\x0c \x03(\t\x12=\n\nagent_cmds\x18\r \x03(\x0b\x32).monarchic.agent_protocol.v1.AgentCommand\x12\x19\n\x11\x64\x65\x66\x61ult_agent_cmd\x18\x0e \x03(\t\x12\x41\n\x0e\x61gent_profiles\x18\x0f \x03(\x0b\x32).monarchic.agent_protocol.v1.AgentProfile\x12J\n\x11\x61vailable_runners\x18\x10 \x03(\x0b\x32/.monarchic.agent_protocol.v1.RunnerCapabilities\x12G\n\x0frunner_policies\x18\x11 \x03(\x0b\x32..monarchic.agent_protocol.v1.AgentRunnerPolicyB\x08\n\x06_notesB\x14\n\x12_selected_template\"\x9f\x04\n\x17\x43\x61mpaignPipelineTaskRef\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x15\n\rtask_artifact\x18\x02 \x01(\t\x12\x14\n\x07role_id\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0etask_milestone\x18\x04 \x01(\tH\x01\x88\x01\x01\x12\x18\n\x0btask_format\x18\x05 \x01(\tH\x02\x88\x01\x01\x12\x12\n\ndepends_on\x18\x06 \x03(\t\x12\x13\n\x0brunner_args\x18\x07 \x03(\t\x12\x1d\n\x10interaction_mode\x18\x08 \x01(\tH\x03\x88\x01\x01\x12\x19\n\x0cnetwork_mode\x18\t \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x15requires_human_review\x18\n \x01(\x08\x12Q\n\x11\x66ilesystem_policy\x18\x0b \x01(\x0b\x32\x36.monarchic.agent_protocol.v1.BootstrapFilesystemPolicy\x12K\n\x0frequired_skills\x18\x0c \x03(\x0b\x32\x32.monarchic.agent_protocol.v1.BootstrapSkillBinding\x12\x18\n\x10required_mcp_ids\x18\r \x03(\tB\n\n\x08_role_idB\x11\n\x0f_task_milestoneB\x0e\n\x0c_task_formatB\x13\n\x11_interaction_modeB\x0f\n\r_network_mode\"\xcd\x01\n\x1a\x43\x61mpaignPipelineConnection\x12\x14\n\x0c\x66rom_task_id\x18\x01 \x01(\t\x12\x12\n\nto_task_id\x18\x02 \x01(\t\x12I\n\x04kind\x18\x03 \x01(\x0e\x32;.monarchic.agent_protocol.v1.CampaignPipelineConnectionKind\x12\x10\n\x08required\x18\x04 \x01(\x08\x12\x18\n\x0b\x64\x65scription\x18\x05 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_description\"W\n\x14\x43\x61mpaignPipelineGate\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0f\n\x07\x63ommand\x18\x02 \x03(\t\x12\x14\n\x07workdir\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\n\n\x08_workdir\"\x81\x01\n\x1a\x43\x61mpaignPipelineGatePolicy\x12\x18\n\x10require_standard\x18\x01 \x01(\x08\x12I\n\x0erequired_gates\x18\x02 \x03(\x0b\x32\x31.monarchic.agent_protocol.v1.CampaignPipelineGate\"\xe2\x03\n\x14\x43\x61mpaignPipelineSpec\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x13\n\x0bpipeline_id\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\x12\x16\n\tobjective\x18\x04 \x01(\tH\x00\x88\x01\x01\x12\x18\n\x0bproject_key\x18\x05 \x01(\tH\x01\x88\x01\x01\x12\x19\n\x11\x63ontinue_on_error\x18\x06 \x01(\x08\x12Q\n\x0bgate_policy\x18\x07 \x01(\x0b\x32\x37.monarchic.agent_protocol.v1.CampaignPipelineGatePolicyH\x02\x88\x01\x01\x12)\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.Struct\x12L\n\x0b\x63onnections\x18\t \x03(\x0b\x32\x37.monarchic.agent_protocol.v1.CampaignPipelineConnection\x12\x43\n\x05tasks\x18\n \x03(\x0b\x32\x34.monarchic.agent_protocol.v1.CampaignPipelineTaskRefB\x0c\n\n_objectiveB\x0e\n\x0c_project_keyB\x0e\n\x0c_gate_policy\"O\n\x0eRoleProvenance\x12\x11\n\trole_name\x18\x01 \x01(\t\x12\x15\n\rtemplate_hash\x18\x02 \x01(\t\x12\x13\n\x0brender_hash\x18\x03 \x01(\t\"\xb8\x01\n\x0ePlanProvenance\x12\x14\n\x0cgenerated_by\x18\x01 \x01(\t\x12\x1b\n\x0epolicy_profile\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x0fgenerated_at_ms\x18\x03 \x01(\x04\x12>\n\x04role\x18\x04 \x01(\x0b\x32+.monarchic.agent_protocol.v1.RoleProvenanceH\x01\x88\x01\x01\x42\x11\n\x0f_policy_profileB\x07\n\x05_role\"g\n\rFailureDetail\x12\r\n\x05\x63lass\x18\x01 \x01(\t\x12\x0c\n\x04\x63ode\x18\x02 \x01(\t\x12\x0f\n\x07message\x18\x03 \x01(\t\x12(\n\x07\x64\x65tails\x18\x04 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xc8\x01\n\x12\x41rtifactDescriptor\x12\x13\n\x0b\x61rtifact_id\x18\x01 \x01(\t\x12\x37\n\x04kind\x18\x02 \x01(\x0e\x32).monarchic.agent_protocol.v1.ArtifactKind\x12\x0e\n\x06\x64igest\x18\x03 \x01(\t\x12\x12\n\nmedia_type\x18\x04 \x01(\t\x12\x14\n\x0clogical_name\x18\x05 \x01(\t\x12\x10\n\x08producer\x18\x06 \x01(\t\x12\x18\n\x10\x63ontract_version\x18\x07 \x01(\t\"\xf2\x01\n\x0e\x44igestManifest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x13\n\x0bmanifest_id\x18\x02 \x01(\t\x12\x0e\n\x06run_id\x18\x03 \x01(\t\x12\x0f\n\x07plan_id\x18\x04 \x01(\t\x12\x12\n\ncreated_at\x18\x05 \x01(\x04\x12\x17\n\x0f\x63ombined_digest\x18\x06 \x01(\t\x12\x14\n\x0c\x65vent_digest\x18\x07 \x01(\t\x12M\n\x14\x61rtifact_descriptors\x18\x08 \x03(\x0b\x32/.monarchic.agent_protocol.v1.ArtifactDescriptor\"b\n\x0cPrincipalRef\x12\x14\n\x0cprincipal_id\x18\x01 \x01(\t\x12\x10\n\x08provider\x18\x02 \x01(\t\x12\x19\n\x0c\x64isplay_name\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_display_name\"J\n\tTenantRef\x12\x11\n\ttenant_id\x18\x01 \x01(\t\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tH\x00\x88\x01\x01\x42\x0f\n\r_display_name\"\xd7\x02\n\x0b\x41uthContext\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0f\x61uth_context_id\x18\x02 \x01(\t\x12<\n\tprincipal\x18\x03 \x01(\x0b\x32).monarchic.agent_protocol.v1.PrincipalRef\x12\x36\n\x06tenant\x18\x04 \x01(\x0b\x32&.monarchic.agent_protocol.v1.TenantRef\x12=\n\tmechanism\x18\x05 \x01(\x0e\x32*.monarchic.agent_protocol.v1.AuthMechanism\x12\x15\n\rcredential_id\x18\x06 \x01(\t\x12\x0e\n\x06scopes\x18\x07 \x03(\t\x12\x11\n\tissued_at\x18\x08 \x01(\x04\x12\x17\n\nexpires_at\x18\t \x01(\x04H\x00\x88\x01\x01\x42\r\n\x0b_expires_at\"\xa1\x03\n\x0bUsageRecord\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x10\n\x08usage_id\x18\x02 \x01(\t\x12<\n\tprincipal\x18\x03 \x01(\x0b\x32).monarchic.agent_protocol.v1.PrincipalRef\x12\x36\n\x06tenant\x18\x04 \x01(\x0b\x32&.monarchic.agent_protocol.v1.TenantRef\x12\x13\n\x06run_id\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x07plan_id\x18\x06 \x01(\tH\x01\x88\x01\x01\x12<\n\x08\x63\x61tegory\x18\x07 \x01(\x0e\x32*.monarchic.agent_protocol.v1.UsageCategory\x12\x13\n\x0bmetric_name\x18\x08 \x01(\t\x12\x10\n\x08quantity\x18\t \x01(\x04\x12\x34\n\x04unit\x18\n \x01(\x0e\x32&.monarchic.agent_protocol.v1.UsageUnit\x12\x13\n\x0brecorded_at\x18\x0b \x01(\x04\x42\t\n\x07_run_idB\n\n\x08_plan_id\"\xd6\x02\n\x13\x41uditExportManifest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\texport_id\x18\x02 \x01(\t\x12<\n\tprincipal\x18\x03 \x01(\x0b\x32).monarchic.agent_protocol.v1.PrincipalRef\x12\x36\n\x06tenant\x18\x04 \x01(\x0b\x32&.monarchic.agent_protocol.v1.TenantRef\x12\x0e\n\x06run_id\x18\x05 \x01(\t\x12\x0f\n\x07plan_id\x18\x06 \x01(\t\x12\x13\n\x0b\x65xported_at\x18\x07 \x01(\x04\x12\x17\n\x0f\x63ombined_digest\x18\x08 \x01(\t\x12M\n\x14\x61rtifact_descriptors\x18\t \x03(\x0b\x32/.monarchic.agent_protocol.v1.ArtifactDescriptor\"c\n\x0cReplanPolicy\x12=\n\x08strategy\x18\x01 \x01(\x0e\x32+.monarchic.agent_protocol.v1.ReplanStrategy\x12\x14\n\x0cmax_attempts\x18\x02 \x01(\r\"f\n\x15StepOutputExpectation\x12\x37\n\x04kind\x18\x01 \x01(\x0e\x32).monarchic.agent_protocol.v1.ArtifactKind\x12\x14\n\x0clogical_name\x18\x02 \x01(\t\"\xa9\x03\n\x08PlanStep\x12\x0f\n\x07step_id\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x12\n\ndepends_on\x18\x03 \x03(\t\x12.\n\rtask_template\x18\x04 \x01(\x0b\x32\x17.google.protobuf.Struct\x12@\n\x07\x66\x61ilure\x18\x05 \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12\x14\n\x07task_id\x18\x06 \x01(\tH\x01\x88\x01\x01\x12\x37\n\x04kind\x18\x07 \x01(\x0e\x32).monarchic.agent_protocol.v1.PlanStepKind\x12\'\n\x06inputs\x18\x08 \x01(\x0b\x32\x17.google.protobuf.Struct\x12L\n\x10\x65xpected_outputs\x18\t \x03(\x0b\x32\x32.monarchic.agent_protocol.v1.StepOutputExpectation\x12\x13\n\x0bpolicy_tags\x18\n \x03(\tB\n\n\x08_failureB\n\n\x08_task_id\"\xb4\x04\n\x04Plan\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x0f\n\x07plan_id\x18\x02 \x01(\t\x12\x13\n\x06run_id\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x11\n\tobjective\x18\x04 \x01(\t\x12\x37\n\x06status\x18\x05 \x01(\x0e\x32\'.monarchic.agent_protocol.v1.PlanStatus\x12\x15\n\rcreated_at_ms\x18\x06 \x01(\x04\x12\x15\n\rupdated_at_ms\x18\x07 \x01(\x04\x12?\n\nprovenance\x18\x08 \x01(\x0b\x32+.monarchic.agent_protocol.v1.PlanProvenance\x12\x34\n\x05steps\x18\t \x03(\x0b\x32%.monarchic.agent_protocol.v1.PlanStep\x12\x16\n\tintent_id\x18\n \x01(\tH\x01\x88\x01\x01\x12\x19\n\x0cplan_version\x18\x0b \x01(\tH\x02\x88\x01\x01\x12\x1c\n\x0fplanner_version\x18\x0c \x01(\tH\x03\x88\x01\x01\x12@\n\rreplan_policy\x18\r \x01(\x0b\x32).monarchic.agent_protocol.v1.ReplanPolicy\x12\x19\n\x0cinput_digest\x18\x0e \x01(\tH\x04\x88\x01\x01\x42\t\n\x07_run_idB\x0c\n\n_intent_idB\x0f\n\r_plan_versionB\x12\n\x10_planner_versionB\x0f\n\r_input_digest\"\xa8\x03\n\x10\x45xecutionReceipt\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x0e\n\x06run_id\x18\x02 \x01(\t\x12\x0f\n\x07plan_id\x18\x03 \x01(\t\x12\x11\n\tplan_hash\x18\x04 \x01(\t\x12\x13\n\x0btask_hashes\x18\x05 \x03(\t\x12\x17\n\x0f\x61rtifact_hashes\x18\x06 \x03(\t\x12\x14\n\x0coutcome_hash\x18\x07 \x01(\t\x12\x37\n\x06status\x18\x08 \x01(\x0e\x32\'.monarchic.agent_protocol.v1.PlanStatus\x12@\n\x07\x66\x61ilure\x18\t \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12\x17\n\x0fgenerated_at_ms\x18\n \x01(\x04\x12N\n\x0fresolved_runner\x18\x0b \x01(\x0b\x32\x30.monarchic.agent_protocol.v1.ResolvedAgentRunnerH\x01\x88\x01\x01\x42\n\n\x08_failureB\x12\n\x10_resolved_runner\"\xa0\x01\n\x11VerificationCheck\x12\x10\n\x08\x63heck_id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x44\n\x06status\x18\x03 \x01(\x0e\x32\x34.monarchic.agent_protocol.v1.VerificationCheckStatus\x12\x0f\n\x07message\x18\x04 \x01(\t\x12\x14\n\x0c\x61rtifact_ids\x18\x05 \x03(\t\"\xe7\x01\n\x0e\x42lockedOutcome\x12\x0c\n\x04\x63ode\x18\x01 \x01(\t\x12?\n\x05scope\x18\x02 \x01(\x0e\x32\x30.monarchic.agent_protocol.v1.BlockedOutcomeScope\x12\x0f\n\x07message\x18\x03 \x01(\t\x12(\n\x07\x64\x65tails\x18\x04 \x01(\x0b\x32\x17.google.protobuf.Struct\x12K\n\x12\x62locking_artifacts\x18\x05 \x03(\x0b\x32/.monarchic.agent_protocol.v1.ArtifactDescriptor\"\x9a\x03\n\x13VerificationReceipt\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0fverification_id\x18\x02 \x01(\t\x12\x0f\n\x07plan_id\x18\x03 \x01(\t\x12\x1d\n\x15\x65xecution_receipt_ids\x18\x04 \x03(\t\x12#\n\x1bverification_policy_version\x18\x05 \x01(\t\x12?\n\x06status\x18\x06 \x01(\x0e\x32/.monarchic.agent_protocol.v1.VerificationStatus\x12>\n\x06\x63hecks\x18\x07 \x03(\x0b\x32..monarchic.agent_protocol.v1.VerificationCheck\x12\x45\n\x10\x62locked_outcomes\x18\x08 \x03(\x0b\x32+.monarchic.agent_protocol.v1.BlockedOutcome\x12\x1b\n\x13\x61rtifact_digest_set\x18\t \x03(\t\x12\x16\n\x0everified_at_ms\x18\n \x01(\x04\"\xec\x01\n\x0eReviewDecision\x12\x13\n\x0b\x64\x65\x63ision_id\x18\x01 \x01(\t\x12\x0f\n\x07plan_id\x18\x02 \x01(\t\x12?\n\x05scope\x18\x03 \x01(\x0e\x32\x30.monarchic.agent_protocol.v1.ReviewDecisionScope\x12\r\n\x05\x61\x63tor\x18\x04 \x01(\t\x12@\n\x08\x64\x65\x63ision\x18\x05 \x01(\x0e\x32..monarchic.agent_protocol.v1.ReviewDisposition\x12\x0e\n\x06reason\x18\x06 \x01(\t\x12\x12\n\ncreated_at\x18\x07 \x01(\x04\"\xfa\x01\n\nRerunScope\x12\x10\n\x08scope_id\x18\x01 \x01(\t\x12\x0f\n\x07plan_id\x18\x02 \x01(\t\x12:\n\x07trigger\x18\x03 \x01(\x0e\x32).monarchic.agent_protocol.v1.RerunTrigger\x12\x0e\n\x06reason\x18\x04 \x01(\t\x12\x1f\n\x12source_decision_id\x18\x05 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x08task_ids\x18\x06 \x03(\t\x12\x10\n\x08step_ids\x18\x07 \x03(\t\x12\r\n\x05paths\x18\x08 \x03(\t\x12\x12\n\ncreated_at\x18\t \x01(\x04\x42\x15\n\x13_source_decision_id\"\x99\x04\n\x14RerunExecutionResult\x12\x11\n\tresult_id\x18\x01 \x01(\t\x12\x0f\n\x07plan_id\x18\x02 \x01(\t\x12\x16\n\x0ererun_scope_id\x18\x03 \x01(\t\x12\x1f\n\x12source_decision_id\x18\x04 \x01(\tH\x00\x88\x01\x01\x12:\n\x07trigger\x18\x05 \x01(\x0e\x32).monarchic.agent_protocol.v1.RerunTrigger\x12M\n\x10matched_strategy\x18\x06 \x01(\x0e\x32\x33.monarchic.agent_protocol.v1.RerunSelectionStrategy\x12\x12\n\nroot_tasks\x18\x07 \x03(\t\x12\x16\n\x0eselected_tasks\x18\x08 \x03(\t\x12\x15\n\rmatched_paths\x18\t \x03(\t\x12\x0e\n\x06reason\x18\n \x01(\t\x12\x41\n\x06status\x18\x0b \x01(\x0e\x32\x31.monarchic.agent_protocol.v1.RerunExecutionStatus\x12\x17\n\x0f\x63ompleted_tasks\x18\x0c \x03(\t\x12\x14\n\x0c\x66\x61iled_tasks\x18\r \x03(\t\x12\x15\n\rskipped_tasks\x18\x0e \x03(\t\x12\x12\n\ncreated_at\x18\x0f \x01(\x04\x12\x12\n\nupdated_at\x18\x10 \x01(\x04\x42\x15\n\x13_source_decision_id\"\x81\x05\n\x10PrLifecycleState\x12\x10\n\x08state_id\x18\x01 \x01(\t\x12\x0f\n\x07plan_id\x18\x02 \x01(\t\x12\x16\n\tpr_number\x18\x03 \x01(\x04H\x00\x88\x01\x01\x12\x13\n\x06pr_url\x18\x04 \x01(\tH\x01\x88\x01\x01\x12I\n\x0freview_decision\x18\x05 \x01(\x0b\x32+.monarchic.agent_protocol.v1.ReviewDecisionH\x02\x88\x01\x01\x12\x41\n\x0brerun_scope\x18\x06 \x01(\x0b\x32\'.monarchic.agent_protocol.v1.RerunScopeH\x03\x88\x01\x01\x12L\n\x0crerun_result\x18\x07 \x01(\x0b\x32\x31.monarchic.agent_protocol.v1.RerunExecutionResultH\x04\x88\x01\x01\x12S\n\x14verification_receipt\x18\x08 \x01(\x0b\x32\x30.monarchic.agent_protocol.v1.VerificationReceiptH\x05\x88\x01\x01\x12\x13\n\x0bmerge_ready\x18\t \x01(\x08\x12\x15\n\rrelease_ready\x18\n \x01(\x08\x12\x45\n\x10\x62locked_outcomes\x18\x0b \x03(\x0b\x32+.monarchic.agent_protocol.v1.BlockedOutcome\x12\x12\n\nupdated_at\x18\x0c \x01(\x04\x42\x0c\n\n_pr_numberB\t\n\x07_pr_urlB\x12\n\x10_review_decisionB\x0e\n\x0c_rerun_scopeB\x0f\n\r_rerun_resultB\x17\n\x15_verification_receipt\"\xe1\x03\n\x04Task\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x0f\n\x07task_id\x18\x02 \x01(\t\x12\x34\n\x04role\x18\x03 \x01(\x0e\x32&.monarchic.agent_protocol.v1.AgentRole\x12\x0c\n\x04goal\x18\x04 \x01(\t\x12\'\n\x06inputs\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12,\n\x0b\x63onstraints\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x16\n\x0egates_required\x18\x07 \x03(\t\x12<\n\x0brun_context\x18\x08 \x01(\x0b\x32\'.monarchic.agent_protocol.v1.RunContext\x12+\n\nextensions\x18\t \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x44\n\x0f\x65xperiment_spec\x18\n \x01(\x0b\x32+.monarchic.agent_protocol.v1.ExperimentSpec\x12\x42\n\x0eobjective_spec\x18\x0b \x01(\x0b\x32*.monarchic.agent_protocol.v1.ObjectiveSpec\x12\x0f\n\x07role_id\x18\x0c \x01(\t\"\x9c\x03\n\x08\x41rtifact\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x13\n\x0b\x61rtifact_id\x18\x02 \x01(\t\x12\x0c\n\x04type\x18\x03 \x01(\t\x12\x0f\n\x07summary\x18\x04 \x01(\t\x12\x0c\n\x04path\x18\x05 \x01(\t\x12\x0f\n\x07task_id\x18\x06 \x01(\t\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.Struct\x12;\n\nprovenance\x18\x08 \x01(\x0b\x32\'.monarchic.agent_protocol.v1.Provenance\x12=\n\x0c\x64\x61taset_refs\x18\t \x03(\x0b\x32\'.monarchic.agent_protocol.v1.DatasetRef\x12=\n\x0c\x65val_results\x18\n \x03(\x0b\x32\'.monarchic.agent_protocol.v1.EvalResult\x12\x44\n\x0f\x65xperiment_spec\x18\x0b \x01(\x0b\x32+.monarchic.agent_protocol.v1.ExperimentSpec\"\xed\x02\n\x05\x45vent\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x12\n\nevent_type\x18\x02 \x01(\t\x12\x11\n\ttimestamp\x18\x03 \x01(\t\x12\x0f\n\x07task_id\x18\x04 \x01(\t\x12\x0e\n\x06status\x18\x05 \x01(\t\x12\x14\n\x07message\x18\x06 \x01(\tH\x00\x88\x01\x01\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.Struct\x12;\n\nprovenance\x18\x08 \x01(\x0b\x32\'.monarchic.agent_protocol.v1.Provenance\x12=\n\x0c\x65val_results\x18\t \x03(\x0b\x32\'.monarchic.agent_protocol.v1.EvalResult\x12@\n\rfailure_class\x18\n \x01(\x0b\x32).monarchic.agent_protocol.v1.FailureClassB\n\n\x08_message\"\xe1\x02\n\x0eRunEventRecord\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x10\n\x08\x65vent_id\x18\x02 \x01(\t\x12\x0e\n\x06run_id\x18\x03 \x01(\t\x12\x0f\n\x07plan_id\x18\x04 \x01(\t\x12\x10\n\x08sequence\x18\x05 \x01(\x04\x12;\n\x06stream\x18\x06 \x01(\x0e\x32+.monarchic.agent_protocol.v1.RunEventStream\x12\x13\n\x0brecorded_at\x18\x07 \x01(\x04\x12\x14\n\x07step_id\x18\x08 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x07task_id\x18\t \x01(\tH\x01\x88\x01\x01\x12\x12\n\nevent_type\x18\n \x01(\t\x12\x0e\n\x06status\x18\x0b \x01(\t\x12\x14\n\x07message\x18\x0c \x01(\tH\x02\x88\x01\x01\x12\x14\n\x0c\x61rtifact_ids\x18\r \x03(\tB\n\n\x08_step_idB\n\n\x08_task_idB\n\n\x08_message\"\xb5\x03\n\x0bTaskMessage\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x12\n\nmessage_id\x18\x02 \x01(\t\x12\x0e\n\x06run_id\x18\x03 \x01(\t\x12\x14\n\x0c\x66rom_task_id\x18\x04 \x01(\t\x12\x12\n\nto_task_id\x18\x05 \x01(\t\x12:\n\x04kind\x18\x06 \x01(\x0e\x32,.monarchic.agent_protocol.v1.TaskMessageKind\x12\x14\n\x07subject\x18\x07 \x01(\tH\x00\x88\x01\x01\x12\x11\n\x04\x62ody\x18\x08 \x01(\tH\x01\x88\x01\x01\x12\x15\n\rartifact_refs\x18\t \x03(\t\x12\x15\n\x08reply_to\x18\n \x01(\tH\x02\x88\x01\x01\x12\x12\n\ncreated_at\x18\x0b \x01(\t\x12\x14\n\x0crequires_ack\x18\x0c \x01(\x08\x12+\n\nextensions\x18\r \x01(\x0b\x32\x17.google.protobuf.Struct\x12;\n\nprovenance\x18\x0e \x01(\x0b\x32\'.monarchic.agent_protocol.v1.ProvenanceB\n\n\x08_subjectB\x07\n\x05_bodyB\x0b\n\t_reply_to\"\xc1\x01\n\x0eTaskMessageAck\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x12\n\nmessage_id\x18\x02 \x01(\t\x12\x0e\n\x06run_id\x18\x03 \x01(\t\x12\x0f\n\x07task_id\x18\x04 \x01(\t\x12\x10\n\x08\x61\x63ked_at\x18\x05 \x01(\t\x12\x0e\n\x06status\x18\x06 \x01(\t\x12\x11\n\x04note\x18\x07 \x01(\tH\x00\x88\x01\x01\x12+\n\nextensions\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\x07\n\x05_note\"\xf5\x01\n\nGateResult\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x0c\n\x04gate\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\x12\x13\n\x06reason\x18\x04 \x01(\tH\x00\x88\x01\x01\x12)\n\x08\x65vidence\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12+\n\nextensions\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\x12@\n\rfailure_class\x18\x07 \x01(\x0b\x32).monarchic.agent_protocol.v1.FailureClassB\t\n\x07_reason\"\x88\x06\n\nRunOutcome\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x0f\n\x07task_id\x18\x02 \x01(\t\x12\x13\n\x06run_id\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x1d\n\x10objective_metric\x18\x04 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0fobjective_score\x18\x05 \x01(\x01H\x02\x88\x01\x01\x12H\n\x12objective_decision\x18\x06 \x01(\x0e\x32,.monarchic.agent_protocol.v1.OutcomeDecision\x12\x1f\n\x12\x65stimated_cost_usd\x18\x07 \x01(\x01H\x03\x88\x01\x01\x12\x1d\n\x10\x62udget_limit_usd\x18\x08 \x01(\x01H\x04\x88\x01\x01\x12\x43\n\rcost_decision\x18\t \x01(\x0e\x32,.monarchic.agent_protocol.v1.OutcomeDecision\x12\x17\n\nrisk_level\x18\n \x01(\tH\x05\x88\x01\x01\x12\x19\n\x0crisk_summary\x18\x0b \x01(\tH\x06\x88\x01\x01\x12\x43\n\rrisk_decision\x18\x0c \x01(\x0e\x32,.monarchic.agent_protocol.v1.OutcomeDecision\x12\x44\n\x0e\x66inal_decision\x18\r \x01(\x0e\x32,.monarchic.agent_protocol.v1.OutcomeDecision\x12\x14\n\x07summary\x18\x0e \x01(\tH\x07\x88\x01\x01\x12)\n\x08\x65vidence\x18\x0f \x01(\x0b\x32\x17.google.protobuf.Struct\x12+\n\nextensions\x18\x10 \x01(\x0b\x32\x17.google.protobuf.StructB\t\n\x07_run_idB\x13\n\x11_objective_metricB\x12\n\x10_objective_scoreB\x15\n\x13_estimated_cost_usdB\x13\n\x11_budget_limit_usdB\r\n\x0b_risk_levelB\x0f\n\r_risk_summaryB\n\n\x08_summary\"\x99\x01\n\nRunContext\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x0c\n\x04repo\x18\x02 \x01(\t\x12\x10\n\x08worktree\x18\x03 \x01(\t\x12\r\n\x05image\x18\x04 \x01(\t\x12\x0e\n\x06runner\x18\x05 \x01(\t\x12\x0e\n\x06labels\x18\x06 \x03(\t\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xb0\x03\n\x12RunnerCapabilities\x12\x10\n\x08platform\x18\x01 \x01(\t\x12\x0f\n\x07runtime\x18\x02 \x01(\t\x12?\n\x0fsupported_roles\x18\x03 \x03(\x0e\x32&.monarchic.agent_protocol.v1.AgentRole\x12\x1f\n\x17supported_task_versions\x18\x04 \x03(\t\x12\x0e\n\x06labels\x18\x05 \x03(\t\x12 \n\x18supports_interactive_pty\x18\x06 \x01(\x08\x12\x17\n\x0fsupports_resume\x18\x07 \x01(\x08\x12+\n\nextensions\x18\x08 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x1a\n\x12supported_role_ids\x18\t \x03(\t\x12\x18\n\x10supported_models\x18\n \x03(\t\x12#\n\x1bsupported_reasoning_efforts\x18\x0b \x03(\t\x12%\n\x1dsupported_runner_capabilities\x18\x0c \x03(\t\x12\x1b\n\x13supported_providers\x18\r \x03(\t\"v\n\x08LeaseRef\x12\x10\n\x08lease_id\x18\x01 \x01(\t\x12\x15\n\rfencing_token\x18\x02 \x01(\t\x12\x0e\n\x06run_id\x18\x03 \x01(\t\x12\x0f\n\x07plan_id\x18\x04 \x01(\t\x12\x0f\n\x07step_id\x18\x05 \x01(\t\x12\x0f\n\x07task_id\x18\x06 \x01(\t\"\x7f\n\x0c\x46\x65ncingToken\x12\r\n\x05token\x18\x01 \x01(\t\x12\x14\n\x0cissued_at_ms\x18\x02 \x01(\x04\x12\x0e\n\x06issuer\x18\x03 \x01(\t\x12\r\n\x05scope\x18\x04 \x01(\t\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xe1\x02\n\x05Lease\x12\x10\n\x08lease_id\x18\x01 \x01(\t\x12\x0e\n\x06run_id\x18\x02 \x01(\t\x12\x0f\n\x07plan_id\x18\x03 \x01(\t\x12\x0f\n\x07step_id\x18\x04 \x01(\t\x12\x0f\n\x07task_id\x18\x05 \x01(\t\x12\x11\n\trunner_id\x18\x06 \x01(\t\x12\x12\n\nsession_id\x18\x07 \x01(\t\x12@\n\rfencing_token\x18\x08 \x01(\x0b\x32).monarchic.agent_protocol.v1.FencingToken\x12\x14\n\x0cissued_at_ms\x18\t \x01(\x04\x12\x15\n\rexpires_at_ms\x18\n \x01(\x04\x12@\n\x06status\x18\x0b \x01(\x0e\x32\x30.monarchic.agent_protocol.v1.LeaseLifecycleState\x12+\n\nextensions\x18\x0c \x01(\x0b\x32\x17.google.protobuf.Struct\"\xaf\x04\n\rRecoveryEvent\x12\x10\n\x08\x65vent_id\x18\x01 \x01(\t\x12\x0e\n\x06run_id\x18\x02 \x01(\t\x12\x0f\n\x07plan_id\x18\x03 \x01(\t\x12\x14\n\x07step_id\x18\x04 \x01(\tH\x00\x88\x01\x01\x12<\n\x04kind\x18\x05 \x01(\x0e\x32..monarchic.agent_protocol.v1.RecoveryEventKind\x12\x16\n\x0eoccurred_at_ms\x18\x06 \x01(\x04\x12\r\n\x05\x61\x63tor\x18\x07 \x01(\t\x12(\n\x07\x64\x65tails\x18\x08 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x18\n\x10\x63ontract_version\x18\t \x01(\t\x12\x46\n\trun_state\x18\n \x01(\x0e\x32..monarchic.agent_protocol.v1.RunLifecycleStateH\x01\x88\x01\x01\x12H\n\nstep_state\x18\x0b \x01(\x0e\x32/.monarchic.agent_protocol.v1.StepLifecycleStateH\x02\x88\x01\x01\x12V\n\x16lease_rejection_reason\x18\x0c \x01(\x0e\x32\x31.monarchic.agent_protocol.v1.LeaseRejectionReasonH\x03\x88\x01\x01\x42\n\n\x08_step_idB\x0c\n\n_run_stateB\r\n\x0b_step_stateB\x19\n\x17_lease_rejection_reason\"\xe4\x01\n\x0bLeaseStatus\x12\x34\n\x05lease\x18\x01 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12\r\n\x05state\x18\x02 \x01(\t\x12\x15\n\rupdated_at_ms\x18\x03 \x01(\x04\x12@\n\x07\x66\x61ilure\x18\x04 \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.StructB\n\n\x08_failure\"\xaf\x01\n\x12\x43\x61ncellationIntent\x12\x34\n\x05lease\x18\x01 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12\x0e\n\x06reason\x18\x02 \x01(\t\x12\x17\n\x0frequested_at_ms\x18\x03 \x01(\x04\x12\r\n\x05\x66orce\x18\x04 \x01(\x08\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xd1\x01\n\x0fLeaseAssignment\x12\x34\n\x05lease\x18\x01 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12/\n\x04task\x18\x02 \x01(\x0b\x32!.monarchic.agent_protocol.v1.Task\x12\x14\n\x0cissued_at_ms\x18\x03 \x01(\x04\x12\x14\n\x0clease_ttl_ms\x18\x04 \x01(\x04\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xab\x02\n\x15RegisterRunnerRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x45\n\x0c\x63\x61pabilities\x18\x03 \x01(\x0b\x32/.monarchic.agent_protocol.v1.RunnerCapabilities\x12\x1b\n\x13max_parallel_leases\x18\x04 \x01(\r\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x06 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x00\x88\x01\x01\x42\x0f\n\r_auth_context\"\xcb\x01\n\x16RegisterRunnerResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x1d\n\x15heartbeat_interval_ms\x18\x04 \x01(\x04\x12\x1e\n\x16lease_poll_interval_ms\x18\x05 \x01(\x04\x12+\n\nextensions\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\"\x97\x02\n\x10HeartbeatRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12?\n\ractive_leases\x18\x04 \x03(\x0b\x32(.monarchic.agent_protocol.v1.LeaseStatus\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x06 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x00\x88\x01\x01\x42\x0f\n\r_auth_context\"\xd6\x01\n\x11HeartbeatResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x19\n\x11next_heartbeat_ms\x18\x03 \x01(\x04\x12\x46\n\rcancellations\x18\x04 \x03(\x0b\x32/.monarchic.agent_protocol.v1.CancellationIntent\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\"\x8c\x02\n\x13\x41\x63quireLeaseRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x17\n\x0f\x61vailable_slots\x18\x04 \x01(\r\x12\x18\n\x10\x61\x63tive_lease_ids\x18\x05 \x03(\t\x12+\n\nextensions\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x07 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x00\x88\x01\x01\x42\x0f\n\r_auth_context\"\x98\x02\n\x14\x41\x63quireLeaseResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12@\n\nassignment\x18\x03 \x01(\x0b\x32,.monarchic.agent_protocol.v1.LeaseAssignment\x12\x16\n\x0eretry_after_ms\x18\x04 \x01(\x04\x12\x46\n\rcancellations\x18\x05 \x03(\x0b\x32/.monarchic.agent_protocol.v1.CancellationIntent\x12+\n\nextensions\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\"\x8d\x02\n\x11RenewLeaseRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x34\n\x05lease\x18\x04 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x06 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x00\x88\x01\x01\x42\x0f\n\r_auth_context\"\xb2\x02\n\x12RenewLeaseResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x03 \x01(\x08\x12\x14\n\x0clease_ttl_ms\x18\x04 \x01(\x04\x12\x46\n\rcancellations\x18\x05 \x03(\x0b\x32/.monarchic.agent_protocol.v1.CancellationIntent\x12@\n\x07\x66\x61ilure\x18\x06 \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\n\n\x08_failure\"\x8e\x02\n\x12ResumeLeaseRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x34\n\x05lease\x18\x04 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x06 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x00\x88\x01\x01\x42\x0f\n\r_auth_context\"\xc4\x02\n\x13ResumeLeaseResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x03 \x01(\x08\x12\x31\n\x05lease\x18\x04 \x01(\x0b\x32\".monarchic.agent_protocol.v1.Lease\x12\x15\n\rexpires_at_ms\x18\x05 \x01(\x04\x12\x1d\n\x15\x63urrent_fencing_token\x18\x06 \x01(\t\x12\x41\n\x06reason\x18\x07 \x01(\x0e\x32\x31.monarchic.agent_protocol.v1.LeaseRejectionReason\x12\x0f\n\x07message\x18\x08 \x01(\t\x12+\n\nextensions\x18\t \x01(\x0b\x32\x17.google.protobuf.Struct\"\xa8\x02\n\x18ReportStepStartedRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x34\n\x05lease\x18\x04 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12\x12\n\nstarted_at\x18\x05 \x01(\t\x12+\n\nextensions\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x07 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x00\x88\x01\x01\x42\x0f\n\r_auth_context\"\xdb\x01\n\x19ReportStepStartedResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x03 \x01(\x08\x12@\n\x07\x66\x61ilure\x18\x04 \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.StructB\n\n\x08_failure\"\x83\x03\n\x19ReportStepProgressRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x34\n\x05lease\x18\x04 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12\x32\n\x06\x65vents\x18\x05 \x03(\x0b\x32\".monarchic.agent_protocol.v1.Event\x12\x38\n\tartifacts\x18\x06 \x03(\x0b\x32%.monarchic.agent_protocol.v1.Artifact\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x08 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x00\x88\x01\x01\x42\x0f\n\r_auth_context\"\xa4\x02\n\x1aReportStepProgressResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x03 \x01(\x08\x12\x46\n\rcancellations\x18\x04 \x03(\x0b\x32/.monarchic.agent_protocol.v1.CancellationIntent\x12@\n\x07\x66\x61ilure\x18\x05 \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12+\n\nextensions\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\n\n\x08_failure\"\xf1\x04\n\x18ReportStepOutcomeRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x34\n\x05lease\x18\x04 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12\x37\n\x06status\x18\x05 \x01(\x0e\x32\'.monarchic.agent_protocol.v1.PlanStatus\x12\x32\n\x06\x65vents\x18\x06 \x03(\x0b\x32\".monarchic.agent_protocol.v1.Event\x12\x38\n\tartifacts\x18\x07 \x03(\x0b\x32%.monarchic.agent_protocol.v1.Artifact\x12\x41\n\x0brun_outcome\x18\x08 \x01(\x0b\x32\'.monarchic.agent_protocol.v1.RunOutcomeH\x00\x88\x01\x01\x12@\n\x07\x66\x61ilure\x18\t \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x01\x88\x01\x01\x12\x13\n\x0b\x66inished_at\x18\n \x01(\t\x12+\n\nextensions\x18\x0b \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x0c \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x02\x88\x01\x01\x42\x0e\n\x0c_run_outcomeB\n\n\x08_failureB\x0f\n\r_auth_context\"\xdb\x01\n\x19ReportStepOutcomeResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x03 \x01(\x08\x12@\n\x07\x66\x61ilure\x18\x04 \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.StructB\n\n\x08_failure\"\xc4\x02\n\x16\x41\x63kCancellationRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x11\n\trunner_id\x18\x02 \x01(\t\x12\x12\n\nsession_id\x18\x03 \x01(\t\x12\x34\n\x05lease\x18\x04 \x01(\x0b\x32%.monarchic.agent_protocol.v1.LeaseRef\x12\x0e\n\x06status\x18\x05 \x01(\t\x12\x14\n\x07message\x18\x06 \x01(\tH\x00\x88\x01\x01\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x08 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x01\x88\x01\x01\x42\n\n\x08_messageB\x0f\n\r_auth_context\"\xd9\x01\n\x17\x41\x63kCancellationResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x17\n\x0forchestrator_id\x18\x02 \x01(\t\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x03 \x01(\x08\x12@\n\x07\x66\x61ilure\x18\x04 \x01(\x0b\x32*.monarchic.agent_protocol.v1.FailureDetailH\x00\x88\x01\x01\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.StructB\n\n\x08_failure\"\x8d\x01\n\x11\x43ontrolPlaneScope\x12\x19\n\x0corganization\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x11\n\x04user\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x1c\n\x0f\x64\x65\x66\x61ult_project\x18\x03 \x01(\tH\x02\x88\x01\x01\x42\x0f\n\r_organizationB\x07\n\x05_userB\x12\n\x10_default_project\"\xab\x01\n\x12RunOperatorSignals\x12\x15\n\rprompt_needed\x18\x01 \x01(\x08\x12\x1b\n\x0eprompt_summary\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x17\n\x0fpause_requested\x18\x03 \x01(\x08\x12\x1b\n\x13interrupt_requested\x18\x04 \x01(\x08\x12\x18\n\x10\x63\x61ncel_requested\x18\x05 \x01(\x08\x42\x11\n\x0f_prompt_summary\"\xaa\x06\n\x16\x43ontrolPlaneRunSummary\x12\x13\n\x0bproject_key\x18\x01 \x01(\t\x12\x0e\n\x06run_id\x18\x02 \x01(\t\x12\x14\n\x07run_dir\x18\x03 \x01(\tH\x00\x88\x01\x01\x12L\n\x0flifecycle_state\x18\x04 \x01(\x0e\x32..monarchic.agent_protocol.v1.RunLifecycleStateH\x01\x88\x01\x01\x12\x0e\n\x06status\x18\x05 \x01(\t\x12\x1a\n\rupdated_label\x18\x06 \x01(\tH\x02\x88\x01\x01\x12\x1a\n\rupdated_epoch\x18\x07 \x01(\x04H\x03\x88\x01\x01\x12\x1e\n\x11meaningful_status\x18\x08 \x01(\tH\x04\x88\x01\x01\x12\x1d\n\x10meaningful_score\x18\t \x01(\x01H\x05\x88\x01\x01\x12\x1a\n\x12meaningful_reasons\x18\n \x03(\t\x12\x17\n\ntotal_runs\x18\x0b \x01(\x04H\x06\x88\x01\x01\x12\x1a\n\rtotal_success\x18\x0c \x01(\x04H\x07\x88\x01\x01\x12\x19\n\x0ctotal_failed\x18\r \x01(\x04H\x08\x88\x01\x01\x12\x1a\n\rmessage_count\x18\x0e \x01(\x04H\t\x88\x01\x01\x12*\n\x1dunresolved_required_ack_count\x18\x0f \x01(\x04H\n\x88\x01\x01\x12\x13\n\x0b\x61lert_stale\x18\x10 \x01(\x08\x12\x17\n\x0f\x61lert_low_score\x18\x11 \x01(\x08\x12I\n\x10operator_signals\x18\x12 \x01(\x0b\x32/.monarchic.agent_protocol.v1.RunOperatorSignalsB\n\n\x08_run_dirB\x12\n\x10_lifecycle_stateB\x10\n\x0e_updated_labelB\x10\n\x0e_updated_epochB\x14\n\x12_meaningful_statusB\x13\n\x11_meaningful_scoreB\r\n\x0b_total_runsB\x10\n\x0e_total_successB\x0f\n\r_total_failedB\x10\n\x0e_message_countB \n\x1e_unresolved_required_ack_count\"{\n\x1d\x43ontrolPlaneRunActivityCursor\x12\x1b\n\x0e\x61\x66ter_sequence\x18\x01 \x01(\x04H\x00\x88\x01\x01\x12\x19\n\x0cresume_token\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\x11\n\x0f_after_sequenceB\x0f\n\r_resume_token\"\xc1\x02\n\x1bListControlPlaneRunsRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12=\n\x05scope\x18\x02 \x01(\x0b\x32..monarchic.agent_protocol.v1.ControlPlaneScope\x12\x18\n\x0bproject_key\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x12\n\x05limit\x18\x04 \x01(\rH\x01\x88\x01\x01\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x06 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x02\x88\x01\x01\x42\x0e\n\x0c_project_keyB\x08\n\x06_limitB\x0f\n\r_auth_context\"\xa8\x01\n\x1cListControlPlaneRunsResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x41\n\x04runs\x18\x02 \x03(\x0b\x32\x33.monarchic.agent_protocol.v1.ControlPlaneRunSummary\x12+\n\nextensions\x18\x03 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xb1\x02\n\x19GetControlPlaneRunRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12=\n\x05scope\x18\x02 \x01(\x0b\x32..monarchic.agent_protocol.v1.ControlPlaneScope\x12\x18\n\x0bproject_key\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x0e\n\x06run_id\x18\x04 \x01(\t\x12+\n\nextensions\x18\x05 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x06 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x01\x88\x01\x01\x42\x0e\n\x0c_project_keyB\x0f\n\r_auth_context\"\xa5\x01\n\x1aGetControlPlaneRunResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12@\n\x03run\x18\x02 \x01(\x0b\x32\x33.monarchic.agent_protocol.v1.ControlPlaneRunSummary\x12+\n\nextensions\x18\x03 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xa7\x03\n%GetControlPlaneRunActivityPageRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12=\n\x05scope\x18\x02 \x01(\x0b\x32..monarchic.agent_protocol.v1.ControlPlaneScope\x12\x18\n\x0bproject_key\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x0e\n\x06run_id\x18\x04 \x01(\t\x12\x12\n\x05limit\x18\x05 \x01(\rH\x01\x88\x01\x01\x12J\n\x06\x63ursor\x18\x06 \x01(\x0b\x32:.monarchic.agent_protocol.v1.ControlPlaneRunActivityCursor\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x08 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x02\x88\x01\x01\x42\x0e\n\x0c_project_keyB\x08\n\x06_limitB\x0f\n\r_auth_context\"\xfe\x01\n&GetControlPlaneRunActivityPageResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12<\n\x07records\x18\x02 \x03(\x0b\x32+.monarchic.agent_protocol.v1.RunEventRecord\x12O\n\x0bnext_cursor\x18\x03 \x01(\x0b\x32:.monarchic.agent_protocol.v1.ControlPlaneRunActivityCursor\x12+\n\nextensions\x18\x04 \x01(\x0b\x32\x17.google.protobuf.Struct\"\xf3\x02\n!ApplyControlPlaneRunActionRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12=\n\x05scope\x18\x02 \x01(\x0b\x32..monarchic.agent_protocol.v1.ControlPlaneScope\x12\x0e\n\x06run_id\x18\x03 \x01(\t\x12\x42\n\x06\x61\x63tion\x18\x04 \x01(\x0e\x32\x32.monarchic.agent_protocol.v1.ControlPlaneRunAction\x12\x13\n\x06reason\x18\x05 \x01(\tH\x00\x88\x01\x01\x12+\n\nextensions\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x07 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x01\x88\x01\x01\x42\t\n\x07_reasonB\x0f\n\r_auth_context\"\xd5\x02\n\"ApplyControlPlaneRunActionResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x0e\n\x06run_id\x18\x02 \x01(\t\x12\x42\n\x06\x61\x63tion\x18\x03 \x01(\x0e\x32\x32.monarchic.agent_protocol.v1.ControlPlaneRunAction\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x04 \x01(\x08\x12L\n\x0flifecycle_state\x18\x05 \x01(\x0e\x32..monarchic.agent_protocol.v1.RunLifecycleStateH\x00\x88\x01\x01\x12\x14\n\x07message\x18\x06 \x01(\tH\x01\x88\x01\x01\x12+\n\nextensions\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructB\x12\n\x10_lifecycle_stateB\n\n\x08_message\"\x9f\x03\n)ApplyControlPlaneReviewDispositionRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12=\n\x05scope\x18\x02 \x01(\x0b\x32..monarchic.agent_protocol.v1.ControlPlaneScope\x12\x13\n\x0bproject_key\x18\x03 \x01(\t\x12\x14\n\x07plan_id\x18\x04 \x01(\tH\x00\x88\x01\x01\x12\r\n\x05\x61\x63tor\x18\x05 \x01(\t\x12@\n\x08\x64\x65\x63ision\x18\x06 \x01(\x0e\x32..monarchic.agent_protocol.v1.ReviewDisposition\x12\x0e\n\x06reason\x18\x07 \x01(\t\x12+\n\nextensions\x18\x08 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\t \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x01\x88\x01\x01\x42\n\n\x08_plan_idB\x0f\n\r_auth_context\"\xa4\x03\n*ApplyControlPlaneReviewDispositionResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x13\n\x0bproject_key\x18\x02 \x01(\t\x12\x14\n\x07plan_id\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x04 \x01(\x08\x12I\n\x0freview_decision\x18\x05 \x01(\x0b\x32+.monarchic.agent_protocol.v1.ReviewDecisionH\x01\x88\x01\x01\x12N\n\x12pr_lifecycle_state\x18\x06 \x01(\x0b\x32-.monarchic.agent_protocol.v1.PrLifecycleStateH\x02\x88\x01\x01\x12\x14\n\x07message\x18\x07 \x01(\tH\x03\x88\x01\x01\x12+\n\nextensions\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructB\n\n\x08_plan_idB\x12\n\x10_review_decisionB\x15\n\x13_pr_lifecycle_stateB\n\n\x08_message\"\x92\x02\n\x1f\x45nsureControlPlaneWorkerRequest\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12=\n\x05scope\x18\x02 \x01(\x0b\x32..monarchic.agent_protocol.v1.ControlPlaneScope\x12\x13\n\x0bproject_key\x18\x03 \x01(\t\x12+\n\nextensions\x18\x04 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x43\n\x0c\x61uth_context\x18\x05 \x01(\x0b\x32(.monarchic.agent_protocol.v1.AuthContextH\x00\x88\x01\x01\x42\x0f\n\r_auth_context\"\xd8\x01\n EnsureControlPlaneWorkerResponse\x12\x18\n\x10\x63ontract_version\x18\x01 \x01(\t\x12\x13\n\x0bproject_key\x18\x02 \x01(\t\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x03 \x01(\x08\x12\x16\n\tworker_id\x18\x04 \x01(\tH\x00\x88\x01\x01\x12\x14\n\x07message\x18\x05 \x01(\tH\x01\x88\x01\x01\x12+\n\nextensions\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x0c\n\n_worker_idB\n\n\x08_message*\xb6\x01\n\tAgentRole\x12\x1a\n\x16\x41GENT_ROLE_UNSPECIFIED\x10\x00\x12\x11\n\rPRODUCT_OWNER\x10\x01\x12\x13\n\x0fPROJECT_MANAGER\x10\x02\x12\x07\n\x03\x44\x45V\x10\x03\x12\x06\n\x02QA\x10\x04\x12\x0c\n\x08REVIEWER\x10\x05\x12\x0c\n\x08SECURITY\x10\x06\x12\x07\n\x03OPS\x10\x07\x12\r\n\tPUBLISHER\x10\x08\x12\x0e\n\nRESEARCHER\x10\t\x12\x10\n\x0cVERIFICATION\x10\n*f\n\x0fOutcomeDecision\x12 \n\x1cOUTCOME_DECISION_UNSPECIFIED\x10\x00\x12\n\n\x06\x41\x43\x43\x45PT\x10\x01\x12\x0b\n\x07ITERATE\x10\x02\x12\n\n\x06REJECT\x10\x03\x12\x0c\n\x08\x45SCALATE\x10\x04*\x93\x01\n\x0bIntentClass\x12\x1c\n\x18INTENT_CLASS_UNSPECIFIED\x10\x00\x12\x18\n\x14INTENT_CLASS_INSPECT\x10\x01\x12\x19\n\x15INTENT_CLASS_VALIDATE\x10\x02\x12\x18\n\x14INTENT_CLASS_EXECUTE\x10\x03\x12\x17\n\x13INTENT_CLASS_VERIFY\x10\x04*\xa7\x01\n\x15\x42ootstrapPlanningMode\x12\'\n#BOOTSTRAP_PLANNING_MODE_UNSPECIFIED\x10\x00\x12\x30\n,BOOTSTRAP_PLANNING_MODE_DIRECT_TEMPLATE_FILL\x10\x01\x12\x33\n/BOOTSTRAP_PLANNING_MODE_BOUNDED_RESEARCH_REPLAN\x10\x02*\xcc\x02\n\x1e\x43\x61mpaignPipelineConnectionKind\x12\x31\n-CAMPAIGN_PIPELINE_CONNECTION_KIND_UNSPECIFIED\x10\x00\x12\x30\n,CAMPAIGN_PIPELINE_CONNECTION_KIND_DEPENDS_ON\x10\x01\x12-\n)CAMPAIGN_PIPELINE_CONNECTION_KIND_HANDOFF\x10\x02\x12,\n(CAMPAIGN_PIPELINE_CONNECTION_KIND_REVIEW\x10\x03\x12\x33\n/CAMPAIGN_PIPELINE_CONNECTION_KIND_MESSAGE_ROUTE\x10\x04\x12\x33\n/CAMPAIGN_PIPELINE_CONNECTION_KIND_ARTIFACT_FLOW\x10\x05*\x93\x01\n\nPlanStatus\x12\x1b\n\x17PLAN_STATUS_UNSPECIFIED\x10\x00\x12\t\n\x05\x44RAFT\x10\x01\x12\x0b\n\x07PLANNED\x10\x02\x12\r\n\tEXECUTING\x10\x03\x12\x0c\n\x08\x43OMPLETE\x10\x04\x12\x0b\n\x07\x42OUNDED\x10\x05\x12\n\n\x06\x46\x41ILED\x10\x06\x12\r\n\tCANCELLED\x10\x07\x12\x0b\n\x07UNKNOWN\x10\x08*\xfd\x02\n\x0c\x41rtifactKind\x12\x1d\n\x19\x41RTIFACT_KIND_UNSPECIFIED\x10\x00\x12\x16\n\x12\x41RTIFACT_KIND_PLAN\x10\x01\x12#\n\x1f\x41RTIFACT_KIND_EXECUTION_RECEIPT\x10\x02\x12&\n\"ARTIFACT_KIND_VERIFICATION_RECEIPT\x10\x03\x12\x1b\n\x17\x41RTIFACT_KIND_EVENT_LOG\x10\x04\x12!\n\x1d\x41RTIFACT_KIND_DIGEST_MANIFEST\x10\x05\x12 \n\x1c\x41RTIFACT_KIND_PROOF_MANIFEST\x10\x06\x12\x17\n\x13\x41RTIFACT_KIND_PATCH\x10\x07\x12\x1d\n\x19\x41RTIFACT_KIND_TEST_REPORT\x10\x08\x12\x1b\n\x17\x41RTIFACT_KIND_BUILD_LOG\x10\t\x12\x18\n\x14\x41RTIFACT_KIND_BUNDLE\x10\n\x12\x18\n\x14\x41RTIFACT_KIND_CUSTOM\x10\x0b*\xcd\x01\n\rAuthMechanism\x12\x1e\n\x1a\x41UTH_MECHANISM_UNSPECIFIED\x10\x00\x12 \n\x1c\x41UTH_MECHANISM_SHARED_SECRET\x10\x01\x12\x1f\n\x1b\x41UTH_MECHANISM_BEARER_TOKEN\x10\x02\x12\x1f\n\x1b\x41UTH_MECHANISM_SIGNED_TOKEN\x10\x03\x12\x1d\n\x19\x41UTH_MECHANISM_MUTUAL_TLS\x10\x04\x12\x19\n\x15\x41UTH_MECHANISM_CUSTOM\x10\x05*\xcc\x01\n\rUsageCategory\x12\x1e\n\x1aUSAGE_CATEGORY_UNSPECIFIED\x10\x00\x12 \n\x1cUSAGE_CATEGORY_CONTROL_PLANE\x10\x01\x12\x1c\n\x18USAGE_CATEGORY_EXECUTION\x10\x02\x12\x1f\n\x1bUSAGE_CATEGORY_VERIFICATION\x10\x03\x12\x1f\n\x1bUSAGE_CATEGORY_AUDIT_EXPORT\x10\x04\x12\x19\n\x15USAGE_CATEGORY_CUSTOM\x10\x05*\xb6\x01\n\tUsageUnit\x12\x1a\n\x16USAGE_UNIT_UNSPECIFIED\x10\x00\x12\x17\n\x13USAGE_UNIT_REQUESTS\x10\x01\x12\x1b\n\x17USAGE_UNIT_MILLISECONDS\x10\x02\x12\x14\n\x10USAGE_UNIT_BYTES\x10\x03\x12\x15\n\x11USAGE_UNIT_TOKENS\x10\x04\x12\x13\n\x0fUSAGE_UNIT_RUNS\x10\x05\x12\x15\n\x11USAGE_UNIT_CUSTOM\x10\x06*\xf6\x01\n\x0cPlanStepKind\x12\x1e\n\x1aPLAN_STEP_KIND_UNSPECIFIED\x10\x00\x12\x1b\n\x17PLAN_STEP_KIND_ANALYSIS\x10\x01\x12\x1c\n\x18PLAN_STEP_KIND_EXECUTION\x10\x02\x12\x1f\n\x1bPLAN_STEP_KIND_VERIFICATION\x10\x03\x12\x19\n\x15PLAN_STEP_KIND_REVIEW\x10\x04\x12\x18\n\x14PLAN_STEP_KIND_MERGE\x10\x05\x12\x1a\n\x16PLAN_STEP_KIND_RELEASE\x10\x06\x12\x19\n\x15PLAN_STEP_KIND_CUSTOM\x10\x07*\xa1\x01\n\x0eReplanStrategy\x12\x1f\n\x1bREPLAN_STRATEGY_UNSPECIFIED\x10\x00\x12\x19\n\x15REPLAN_STRATEGY_RETRY\x10\x01\x12\x1a\n\x16REPLAN_STRATEGY_REPAIR\x10\x02\x12\x1c\n\x18REPLAN_STRATEGY_ESCALATE\x10\x03\x12\x19\n\x15REPLAN_STRATEGY_BLOCK\x10\x04*\xbb\x01\n\x12VerificationStatus\x12#\n\x1fVERIFICATION_STATUS_UNSPECIFIED\x10\x00\x12\x1f\n\x1bVERIFICATION_STATUS_PENDING\x10\x01\x12\x1e\n\x1aVERIFICATION_STATUS_PASSED\x10\x02\x12\x1e\n\x1aVERIFICATION_STATUS_FAILED\x10\x03\x12\x1f\n\x1bVERIFICATION_STATUS_BLOCKED\x10\x04*\xde\x01\n\x17VerificationCheckStatus\x12)\n%VERIFICATION_CHECK_STATUS_UNSPECIFIED\x10\x00\x12$\n VERIFICATION_CHECK_STATUS_PASSED\x10\x01\x12$\n VERIFICATION_CHECK_STATUS_FAILED\x10\x02\x12%\n!VERIFICATION_CHECK_STATUS_BLOCKED\x10\x03\x12%\n!VERIFICATION_CHECK_STATUS_SKIPPED\x10\x04*\xa9\x02\n\x13\x42lockedOutcomeScope\x12%\n!BLOCKED_OUTCOME_SCOPE_UNSPECIFIED\x10\x00\x12 \n\x1c\x42LOCKED_OUTCOME_SCOPE_INTENT\x10\x01\x12\x1e\n\x1a\x42LOCKED_OUTCOME_SCOPE_PLAN\x10\x02\x12\x1e\n\x1a\x42LOCKED_OUTCOME_SCOPE_STEP\x10\x03\x12\x1d\n\x19\x42LOCKED_OUTCOME_SCOPE_RUN\x10\x04\x12&\n\"BLOCKED_OUTCOME_SCOPE_VERIFICATION\x10\x05\x12\x1f\n\x1b\x42LOCKED_OUTCOME_SCOPE_MERGE\x10\x06\x12!\n\x1d\x42LOCKED_OUTCOME_SCOPE_RELEASE\x10\x07*\xef\x01\n\x13ReviewDecisionScope\x12%\n!REVIEW_DECISION_SCOPE_UNSPECIFIED\x10\x00\x12\x1e\n\x1aREVIEW_DECISION_SCOPE_PLAN\x10\x01\x12\x1e\n\x1aREVIEW_DECISION_SCOPE_STEP\x10\x02\x12&\n\"REVIEW_DECISION_SCOPE_PULL_REQUEST\x10\x03\x12&\n\"REVIEW_DECISION_SCOPE_VERIFICATION\x10\x04\x12!\n\x1dREVIEW_DECISION_SCOPE_RELEASE\x10\x05*\xbc\x01\n\x11ReviewDisposition\x12\"\n\x1eREVIEW_DISPOSITION_UNSPECIFIED\x10\x00\x12\x1e\n\x1aREVIEW_DISPOSITION_APPROVE\x10\x01\x12&\n\"REVIEW_DISPOSITION_REQUEST_CHANGES\x10\x02\x12\x1d\n\x19REVIEW_DISPOSITION_REJECT\x10\x03\x12\x1c\n\x18REVIEW_DISPOSITION_DEFER\x10\x04*j\n\x0cRerunTrigger\x12\x1d\n\x19RERUN_TRIGGER_UNSPECIFIED\x10\x00\x12!\n\x1dRERUN_TRIGGER_REVIEW_DECISION\x10\x01\x12\x18\n\x14RERUN_TRIGGER_MANUAL\x10\x02*\xb4\x01\n\x16RerunSelectionStrategy\x12(\n$RERUN_SELECTION_STRATEGY_UNSPECIFIED\x10\x00\x12%\n!RERUN_SELECTION_STRATEGY_TASK_IDS\x10\x01\x12%\n!RERUN_SELECTION_STRATEGY_STEP_IDS\x10\x02\x12\"\n\x1eRERUN_SELECTION_STRATEGY_PATHS\x10\x03*\xcf\x01\n\x14RerunExecutionStatus\x12&\n\"RERUN_EXECUTION_STATUS_UNSPECIFIED\x10\x00\x12\"\n\x1eRERUN_EXECUTION_STATUS_PENDING\x10\x01\x12$\n RERUN_EXECUTION_STATUS_SUCCEEDED\x10\x02\x12!\n\x1dRERUN_EXECUTION_STATUS_FAILED\x10\x03\x12\"\n\x1eRERUN_EXECUTION_STATUS_PARTIAL\x10\x04*\xee\x01\n\x0eRunEventStream\x12 \n\x1cRUN_EVENT_STREAM_UNSPECIFIED\x10\x00\x12\x1e\n\x1aRUN_EVENT_STREAM_EXECUTION\x10\x01\x12\x1d\n\x19RUN_EVENT_STREAM_RECOVERY\x10\x02\x12\x1b\n\x17RUN_EVENT_STREAM_REVIEW\x10\x03\x12!\n\x1dRUN_EVENT_STREAM_VERIFICATION\x10\x04\x12\x1e\n\x1aRUN_EVENT_STREAM_LIFECYCLE\x10\x05\x12\x1b\n\x17RUN_EVENT_STREAM_CUSTOM\x10\x06*\xb5\x01\n\x0fTaskMessageKind\x12!\n\x1dTASK_MESSAGE_KIND_UNSPECIFIED\x10\x00\x12$\n TASK_MESSAGE_KIND_ARTIFACT_READY\x10\x01\x12+\n\'TASK_MESSAGE_KIND_CLARIFICATION_REQUEST\x10\x02\x12,\n(TASK_MESSAGE_KIND_CLARIFICATION_RESPONSE\x10\x03*\xb0\x01\n\x13LeaseLifecycleState\x12%\n!LEASE_LIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12\x10\n\x0cLEASE_ISSUED\x10\x01\x12\x10\n\x0cLEASE_ACTIVE\x10\x02\x12\x12\n\x0eLEASE_RELEASED\x10\x03\x12\x11\n\rLEASE_EXPIRED\x10\x04\x12\x13\n\x0fLEASE_CANCELLED\x10\x05\x12\x12\n\x0eLEASE_REJECTED\x10\x06*\xc6\x01\n\x11RunLifecycleState\x12#\n\x1fRUN_LIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bRUN_PENDING\x10\x01\x12\x11\n\rRUN_EXECUTING\x10\x02\x12\x0e\n\nRUN_PAUSED\x10\x03\x12\x12\n\x0eRUN_CANCELLING\x10\x04\x12\x11\n\rRUN_CANCELLED\x10\x05\x12\x0e\n\nRUN_FAILED\x10\x06\x12\x10\n\x0cRUN_COMPLETE\x10\x07\x12\x0f\n\x0bRUN_BLOCKED\x10\x08*\xc9\x01\n\x12StepLifecycleState\x12$\n STEP_LIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12\x10\n\x0cSTEP_PENDING\x10\x01\x12\x0e\n\nSTEP_READY\x10\x02\x12\x0f\n\x0bSTEP_LEASED\x10\x03\x12\x10\n\x0cSTEP_RUNNING\x10\x04\x12\x11\n\rSTEP_COMPLETE\x10\x05\x12\x0f\n\x0bSTEP_FAILED\x10\x06\x12\x12\n\x0eSTEP_CANCELLED\x10\x07\x12\x10\n\x0cSTEP_BLOCKED\x10\x08*\xee\x02\n\x14LeaseRejectionReason\x12&\n\"LEASE_REJECTION_REASON_UNSPECIFIED\x10\x00\x12\'\n#LEASE_REJECTION_STALE_FENCING_TOKEN\x10\x01\x12\x1b\n\x17LEASE_REJECTION_EXPIRED\x10\x02\x12$\n LEASE_REJECTION_SESSION_MISMATCH\x10\x03\x12!\n\x1dLEASE_REJECTION_UNKNOWN_LEASE\x10\x04\x12)\n%LEASE_REJECTION_STEP_ALREADY_TERMINAL\x10\x05\x12&\n\"LEASE_REJECTION_RUN_NOT_EXECUTABLE\x10\x06\x12&\n\"LEASE_REJECTION_DEPENDENCY_BLOCKED\x10\x07\x12$\n LEASE_REJECTION_LEASE_SUPERSEDED\x10\x08*\x88\x03\n\x11RecoveryEventKind\x12#\n\x1fRECOVERY_EVENT_KIND_UNSPECIFIED\x10\x00\x12\'\n#RECOVERY_EVENT_ORCHESTRATOR_STARTED\x10\x01\x12!\n\x1dRECOVERY_EVENT_STATE_RELOADED\x10\x02\x12!\n\x1dRECOVERY_EVENT_LEASE_RESTORED\x10\x03\x12!\n\x1dRECOVERY_EVENT_LEASE_REJECTED\x10\x04\x12 \n\x1cRECOVERY_EVENT_STEP_REQUEUED\x10\x05\x12\x1f\n\x1bRECOVERY_EVENT_STEP_BLOCKED\x10\x06\x12 \n\x1cRECOVERY_EVENT_RUN_RECOVERED\x10\x07\x12)\n%RECOVERY_EVENT_CANCELLATION_REQUESTED\x10\x08\x12,\n(RECOVERY_EVENT_CANCELLATION_ACKNOWLEDGED\x10\t*\xd7\x01\n\x15\x43ontrolPlaneRunAction\x12(\n$CONTROL_PLANE_RUN_ACTION_UNSPECIFIED\x10\x00\x12\"\n\x1e\x43ONTROL_PLANE_RUN_ACTION_PAUSE\x10\x01\x12#\n\x1f\x43ONTROL_PLANE_RUN_ACTION_RESUME\x10\x02\x12&\n\"CONTROL_PLANE_RUN_ACTION_INTERRUPT\x10\x03\x12#\n\x1f\x43ONTROL_PLANE_RUN_ACTION_CANCEL\x10\x04\x32\xe3\x08\n\x14RunnerControlService\x12y\n\x0eRegisterRunner\x12\x32.monarchic.agent_protocol.v1.RegisterRunnerRequest\x1a\x33.monarchic.agent_protocol.v1.RegisterRunnerResponse\x12j\n\tHeartbeat\x12-.monarchic.agent_protocol.v1.HeartbeatRequest\x1a..monarchic.agent_protocol.v1.HeartbeatResponse\x12s\n\x0c\x41\x63quireLease\x12\x30.monarchic.agent_protocol.v1.AcquireLeaseRequest\x1a\x31.monarchic.agent_protocol.v1.AcquireLeaseResponse\x12m\n\nRenewLease\x12..monarchic.agent_protocol.v1.RenewLeaseRequest\x1a/.monarchic.agent_protocol.v1.RenewLeaseResponse\x12p\n\x0bResumeLease\x12/.monarchic.agent_protocol.v1.ResumeLeaseRequest\x1a\x30.monarchic.agent_protocol.v1.ResumeLeaseResponse\x12\x82\x01\n\x11ReportStepStarted\x12\x35.monarchic.agent_protocol.v1.ReportStepStartedRequest\x1a\x36.monarchic.agent_protocol.v1.ReportStepStartedResponse\x12\x85\x01\n\x12ReportStepProgress\x12\x36.monarchic.agent_protocol.v1.ReportStepProgressRequest\x1a\x37.monarchic.agent_protocol.v1.ReportStepProgressResponse\x12\x82\x01\n\x11ReportStepOutcome\x12\x35.monarchic.agent_protocol.v1.ReportStepOutcomeRequest\x1a\x36.monarchic.agent_protocol.v1.ReportStepOutcomeResponse\x12|\n\x0f\x41\x63kCancellation\x12\x33.monarchic.agent_protocol.v1.AckCancellationRequest\x1a\x34.monarchic.agent_protocol.v1.AckCancellationResponse2\x80\x07\n\x14\x43lientControlService\x12\x7f\n\x08ListRuns\x12\x38.monarchic.agent_protocol.v1.ListControlPlaneRunsRequest\x1a\x39.monarchic.agent_protocol.v1.ListControlPlaneRunsResponse\x12y\n\x06GetRun\x12\x36.monarchic.agent_protocol.v1.GetControlPlaneRunRequest\x1a\x37.monarchic.agent_protocol.v1.GetControlPlaneRunResponse\x12\x9d\x01\n\x12GetRunActivityPage\x12\x42.monarchic.agent_protocol.v1.GetControlPlaneRunActivityPageRequest\x1a\x43.monarchic.agent_protocol.v1.GetControlPlaneRunActivityPageResponse\x12\x91\x01\n\x0e\x41pplyRunAction\x12>.monarchic.agent_protocol.v1.ApplyControlPlaneRunActionRequest\x1a?.monarchic.agent_protocol.v1.ApplyControlPlaneRunActionResponse\x12\xa9\x01\n\x16\x41pplyReviewDisposition\x12\x46.monarchic.agent_protocol.v1.ApplyControlPlaneReviewDispositionRequest\x1aG.monarchic.agent_protocol.v1.ApplyControlPlaneReviewDispositionResponse\x12\x8b\x01\n\x0c\x45nsureWorker\x12<.monarchic.agent_protocol.v1.EnsureControlPlaneWorkerRequest\x1a=.monarchic.agent_protocol.v1.EnsureControlPlaneWorkerResponseB\x88\x02\n\x1e\x61i.monarchic.agent_protocol.v1B\x18MonarchicAgentProtocolV1P\x01Zdgithub.com/monarchic-ai/monarchic-agent-protocol/src/go/monarchic/agent_protocol/v1;agent_protocolv1\xa2\x02\x03MAP\xaa\x02\x1aMonarchic.AgentProtocol.V1\xca\x02\x1aMonarchic\\AgentProtocol\\V1\xe2\x02#Monarchic\\AgentProtocol\\V1\\Metadatab\x06proto3"
|
|
11
11
|
|
|
12
12
|
pool = ::Google::Protobuf::DescriptorPool.generated_pool
|
|
13
13
|
pool.add_serialized_file(descriptor_data)
|
|
@@ -23,6 +23,26 @@ module Monarchic
|
|
|
23
23
|
FailureClass = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.FailureClass").msgclass
|
|
24
24
|
Provenance = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.Provenance").msgclass
|
|
25
25
|
Intent = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.Intent").msgclass
|
|
26
|
+
BootstrapIntent = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.BootstrapIntent").msgclass
|
|
27
|
+
AgentRunnerPreference = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.AgentRunnerPreference").msgclass
|
|
28
|
+
AgentRunnerPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.AgentRunnerPolicy").msgclass
|
|
29
|
+
AgentProfile = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.AgentProfile").msgclass
|
|
30
|
+
ResolvedAgentRunner = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.ResolvedAgentRunner").msgclass
|
|
31
|
+
BootstrapPlanTask = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.BootstrapPlanTask").msgclass
|
|
32
|
+
BootstrapPlan = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.BootstrapPlan").msgclass
|
|
33
|
+
BootstrapFilesystemPolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.BootstrapFilesystemPolicy").msgclass
|
|
34
|
+
BootstrapSkillBinding = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.BootstrapSkillBinding").msgclass
|
|
35
|
+
BootstrapTemplateSlotContext = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.BootstrapTemplateSlotContext").msgclass
|
|
36
|
+
BootstrapTemplateConnectionContext = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.BootstrapTemplateConnectionContext").msgclass
|
|
37
|
+
BootstrapTemplateLaneContext = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.BootstrapTemplateLaneContext").msgclass
|
|
38
|
+
BootstrapTemplateContext = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.BootstrapTemplateContext").msgclass
|
|
39
|
+
AgentCommand = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.AgentCommand").msgclass
|
|
40
|
+
BootstrapPlanningContext = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.BootstrapPlanningContext").msgclass
|
|
41
|
+
CampaignPipelineTaskRef = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.CampaignPipelineTaskRef").msgclass
|
|
42
|
+
CampaignPipelineConnection = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.CampaignPipelineConnection").msgclass
|
|
43
|
+
CampaignPipelineGate = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.CampaignPipelineGate").msgclass
|
|
44
|
+
CampaignPipelineGatePolicy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.CampaignPipelineGatePolicy").msgclass
|
|
45
|
+
CampaignPipelineSpec = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.CampaignPipelineSpec").msgclass
|
|
26
46
|
RoleProvenance = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.RoleProvenance").msgclass
|
|
27
47
|
PlanProvenance = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.PlanProvenance").msgclass
|
|
28
48
|
FailureDetail = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.FailureDetail").msgclass
|
|
@@ -80,9 +100,27 @@ module Monarchic
|
|
|
80
100
|
ReportStepOutcomeResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.ReportStepOutcomeResponse").msgclass
|
|
81
101
|
AckCancellationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.AckCancellationRequest").msgclass
|
|
82
102
|
AckCancellationResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.AckCancellationResponse").msgclass
|
|
103
|
+
ControlPlaneScope = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.ControlPlaneScope").msgclass
|
|
104
|
+
RunOperatorSignals = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.RunOperatorSignals").msgclass
|
|
105
|
+
ControlPlaneRunSummary = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.ControlPlaneRunSummary").msgclass
|
|
106
|
+
ControlPlaneRunActivityCursor = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.ControlPlaneRunActivityCursor").msgclass
|
|
107
|
+
ListControlPlaneRunsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.ListControlPlaneRunsRequest").msgclass
|
|
108
|
+
ListControlPlaneRunsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.ListControlPlaneRunsResponse").msgclass
|
|
109
|
+
GetControlPlaneRunRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.GetControlPlaneRunRequest").msgclass
|
|
110
|
+
GetControlPlaneRunResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.GetControlPlaneRunResponse").msgclass
|
|
111
|
+
GetControlPlaneRunActivityPageRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.GetControlPlaneRunActivityPageRequest").msgclass
|
|
112
|
+
GetControlPlaneRunActivityPageResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.GetControlPlaneRunActivityPageResponse").msgclass
|
|
113
|
+
ApplyControlPlaneRunActionRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.ApplyControlPlaneRunActionRequest").msgclass
|
|
114
|
+
ApplyControlPlaneRunActionResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.ApplyControlPlaneRunActionResponse").msgclass
|
|
115
|
+
ApplyControlPlaneReviewDispositionRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.ApplyControlPlaneReviewDispositionRequest").msgclass
|
|
116
|
+
ApplyControlPlaneReviewDispositionResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.ApplyControlPlaneReviewDispositionResponse").msgclass
|
|
117
|
+
EnsureControlPlaneWorkerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.EnsureControlPlaneWorkerRequest").msgclass
|
|
118
|
+
EnsureControlPlaneWorkerResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.EnsureControlPlaneWorkerResponse").msgclass
|
|
83
119
|
AgentRole = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.AgentRole").enummodule
|
|
84
120
|
OutcomeDecision = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.OutcomeDecision").enummodule
|
|
85
121
|
IntentClass = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.IntentClass").enummodule
|
|
122
|
+
BootstrapPlanningMode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.BootstrapPlanningMode").enummodule
|
|
123
|
+
CampaignPipelineConnectionKind = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.CampaignPipelineConnectionKind").enummodule
|
|
86
124
|
PlanStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.PlanStatus").enummodule
|
|
87
125
|
ArtifactKind = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.ArtifactKind").enummodule
|
|
88
126
|
AuthMechanism = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.AuthMechanism").enummodule
|
|
@@ -99,11 +137,13 @@ module Monarchic
|
|
|
99
137
|
RerunSelectionStrategy = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.RerunSelectionStrategy").enummodule
|
|
100
138
|
RerunExecutionStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.RerunExecutionStatus").enummodule
|
|
101
139
|
RunEventStream = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.RunEventStream").enummodule
|
|
140
|
+
TaskMessageKind = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.TaskMessageKind").enummodule
|
|
102
141
|
LeaseLifecycleState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.LeaseLifecycleState").enummodule
|
|
103
142
|
RunLifecycleState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.RunLifecycleState").enummodule
|
|
104
143
|
StepLifecycleState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.StepLifecycleState").enummodule
|
|
105
144
|
LeaseRejectionReason = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.LeaseRejectionReason").enummodule
|
|
106
145
|
RecoveryEventKind = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.RecoveryEventKind").enummodule
|
|
146
|
+
ControlPlaneRunAction = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("monarchic.agent_protocol.v1.ControlPlaneRunAction").enummodule
|
|
107
147
|
end
|
|
108
148
|
end
|
|
109
149
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: monarchic-agent-protocol
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.17
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Monarchic AI
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-
|
|
11
|
+
date: 2026-07-10 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: google-protobuf
|
|
@@ -41,7 +41,6 @@ files:
|
|
|
41
41
|
- schemas/v1/agent_role.json
|
|
42
42
|
- schemas/v1/artifact.json
|
|
43
43
|
- schemas/v1/dataset_ref.json
|
|
44
|
-
- schemas/v1/delivery_contract.json
|
|
45
44
|
- schemas/v1/eval_result.json
|
|
46
45
|
- schemas/v1/event.json
|
|
47
46
|
- schemas/v1/execution_receipt.json
|
|
@@ -51,7 +50,6 @@ files:
|
|
|
51
50
|
- schemas/v1/gate_result.json
|
|
52
51
|
- schemas/v1/google.protobuf.Struct.schema.json
|
|
53
52
|
- schemas/v1/monarchic.agent_protocol.v1.DatasetRef.schema.json
|
|
54
|
-
- schemas/v1/monarchic.agent_protocol.v1.DeliveryContract.schema.json
|
|
55
53
|
- schemas/v1/monarchic.agent_protocol.v1.EvalResult.schema.json
|
|
56
54
|
- schemas/v1/monarchic.agent_protocol.v1.ExperimentSpec.schema.json
|
|
57
55
|
- schemas/v1/monarchic.agent_protocol.v1.ObjectiveSpec.schema.json
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$id": "https://monarchic.ai/schema/v1/delivery_contract.json",
|
|
3
|
-
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
4
|
-
"title": "DeliveryContract",
|
|
5
|
-
"type": "object",
|
|
6
|
-
"additionalProperties": true,
|
|
7
|
-
"required": [
|
|
8
|
-
"objective",
|
|
9
|
-
"definition_of_done",
|
|
10
|
-
"required_checks",
|
|
11
|
-
"risk_tier"
|
|
12
|
-
],
|
|
13
|
-
"properties": {
|
|
14
|
-
"objective": {
|
|
15
|
-
"type": "string",
|
|
16
|
-
"minLength": 1
|
|
17
|
-
},
|
|
18
|
-
"definition_of_done": {
|
|
19
|
-
"type": "array",
|
|
20
|
-
"minItems": 1,
|
|
21
|
-
"items": {
|
|
22
|
-
"type": "string",
|
|
23
|
-
"minLength": 1
|
|
24
|
-
}
|
|
25
|
-
},
|
|
26
|
-
"required_checks": {
|
|
27
|
-
"type": "array",
|
|
28
|
-
"minItems": 1,
|
|
29
|
-
"items": {
|
|
30
|
-
"type": "string",
|
|
31
|
-
"minLength": 1
|
|
32
|
-
}
|
|
33
|
-
},
|
|
34
|
-
"risk_tier": {
|
|
35
|
-
"type": "string",
|
|
36
|
-
"enum": [
|
|
37
|
-
"low",
|
|
38
|
-
"medium",
|
|
39
|
-
"high",
|
|
40
|
-
"critical"
|
|
41
|
-
]
|
|
42
|
-
},
|
|
43
|
-
"max_cycle_minutes": {
|
|
44
|
-
"type": "integer",
|
|
45
|
-
"minimum": 1
|
|
46
|
-
},
|
|
47
|
-
"max_agent_turns": {
|
|
48
|
-
"type": "integer",
|
|
49
|
-
"minimum": 1
|
|
50
|
-
},
|
|
51
|
-
"pr_strategy": {
|
|
52
|
-
"type": "string",
|
|
53
|
-
"enum": [
|
|
54
|
-
"single",
|
|
55
|
-
"stacked",
|
|
56
|
-
"incremental"
|
|
57
|
-
]
|
|
58
|
-
},
|
|
59
|
-
"review_policy": {
|
|
60
|
-
"type": "string",
|
|
61
|
-
"enum": [
|
|
62
|
-
"auto",
|
|
63
|
-
"human_required"
|
|
64
|
-
]
|
|
65
|
-
},
|
|
66
|
-
"rollback_strategy": {
|
|
67
|
-
"type": "string",
|
|
68
|
-
"enum": [
|
|
69
|
-
"revert_commit",
|
|
70
|
-
"revert_pr",
|
|
71
|
-
"manual"
|
|
72
|
-
]
|
|
73
|
-
},
|
|
74
|
-
"notes": {
|
|
75
|
-
"type": "string"
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|