@sema-agent/core 7.42.1 → 7.43.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/CHANGELOG.md +100 -0
  2. package/dist/agents/send-message-tool.js +1 -0
  3. package/dist/agents/subagent.d.ts +1 -0
  4. package/dist/agents/subagent.js +5 -3
  5. package/dist/agents/teacher.js +1 -1
  6. package/dist/agents/verify.js +2 -0
  7. package/dist/core/allow-entry.d.ts +50 -31
  8. package/dist/core/allow-entry.js +100 -37
  9. package/dist/core/ask-origin.d.ts +16 -5
  10. package/dist/core/ask-origin.js +11 -3
  11. package/dist/core/ask-unresolvable-notice.d.ts +3 -2
  12. package/dist/core/ask-unresolvable-notice.js +1 -1
  13. package/dist/core/auto-mode.d.ts +5 -4
  14. package/dist/core/auto-mode.js +3 -1
  15. package/dist/core/checkpoint-store.d.ts +18 -7
  16. package/dist/core/checkpoint-store.js +6 -3
  17. package/dist/core/child-clamp-seats.d.ts +15 -1
  18. package/dist/core/child-clamp-seats.js +6 -2
  19. package/dist/core/classifier-unavailable-arm.d.ts +42 -23
  20. package/dist/core/classifier-unavailable-arm.js +14 -3
  21. package/dist/core/decision-receipt.js +2 -0
  22. package/dist/core/gate-lanes.js +37 -29
  23. package/dist/core/hooks.d.ts +6 -1
  24. package/dist/core/hooks.js +3 -0
  25. package/dist/core/mode-policy.d.ts +5 -4
  26. package/dist/core/mode-policy.js +4 -0
  27. package/dist/core/permission-rule-consent.d.ts +3 -2
  28. package/dist/core/permission-rule-consent.js +25 -20
  29. package/dist/core/permission-rule-model.d.ts +47 -7
  30. package/dist/core/permission-rule-model.js +80 -6
  31. package/dist/core/permission-rules.d.ts +8 -2
  32. package/dist/core/permission-rules.js +26 -9
  33. package/dist/core/runner/classifier-ladder.d.ts +10 -8
  34. package/dist/core/runner/classifier-ladder.js +3 -1
  35. package/dist/core/runner/denial-limit-arms.d.ts +25 -8
  36. package/dist/core/runner/denial-limit-arms.js +24 -10
  37. package/dist/core/runner/gate-exit.js +2 -1
  38. package/dist/core/runner/permission-rule-lanes.d.ts +2 -2
  39. package/dist/core/runner/permission-rule-lanes.js +8 -2
  40. package/dist/core/runner/prepare-ask-lane.d.ts +3 -0
  41. package/dist/core/runner/prepare-ask-lane.js +2 -1
  42. package/dist/core/runner/prepare-caps-and-workflow.d.ts +2 -3
  43. package/dist/core/runner/prepare-caps-and-workflow.js +3 -2
  44. package/dist/core/runner/prepare-config-doors.d.ts +3 -0
  45. package/dist/core/runner/prepare-config-doors.js +6 -5
  46. package/dist/core/runner/prepare-gate-stations.js +1 -1
  47. package/dist/core/runner/prepare-inherited-gate.d.ts +7 -5
  48. package/dist/core/runner/prepare-inherited-gate.js +5 -3
  49. package/dist/core/runner/prepare-park-ask.d.ts +4 -4
  50. package/dist/core/runner/prepare-park-ask.js +2 -4
  51. package/dist/core/runner/prepare-policy-chain.d.ts +7 -1
  52. package/dist/core/runner/prepare-policy-chain.js +59 -38
  53. package/dist/core/runner/prepare-project-context.js +6 -2
  54. package/dist/core/runner/prepare-task.js +6 -6
  55. package/dist/core/runner/prepare-wiring-manifest.d.ts +6 -5
  56. package/dist/core/runner/prepare-wiring-manifest.js +8 -9
  57. package/dist/core/runner/resume-checkpoint-screen.js +1 -1
  58. package/dist/core/runner/synthetic-tools.d.ts +3 -2
  59. package/dist/core/runner/synthetic-tools.js +1 -1
  60. package/dist/core/session-policy-store.d.ts +3 -3
  61. package/dist/core/session-policy-store.js +18 -4
  62. package/dist/core/skill-grant-binding.d.ts +44 -0
  63. package/dist/core/skill-grant-binding.js +22 -0
  64. package/dist/core/skill-grant.d.ts +59 -28
  65. package/dist/core/skill-grant.js +96 -23
  66. package/dist/core/task-spec.d.ts +14 -1
  67. package/dist/core/tighten-task-spec.d.ts +2 -0
  68. package/dist/core/tighten-task-spec.js +3 -0
  69. package/dist/core/tool-name-aliases.d.ts +35 -5
  70. package/dist/core/tool-name-aliases.js +29 -4
  71. package/dist/core/tool-policy.d.ts +10 -0
  72. package/dist/core/tool-policy.js +9 -2
  73. package/dist/core/tool-spec.d.ts +7 -0
  74. package/dist/core/wiring-manifest.d.ts +56 -14
  75. package/dist/core/wiring-manifest.js +29 -4
  76. package/dist/index.d.ts +3 -2
  77. package/dist/index.js +2 -2
  78. package/dist/orchestration/run-workflow-tool.d.ts +4 -0
  79. package/dist/orchestration/run-workflow-tool.js +1 -1
  80. package/dist/orchestration/workflow-primitives.d.ts +3 -1
  81. package/dist/orchestration/workflow-primitives.js +6 -6
  82. package/package.json +1 -1
  83. package/test/export-surface.snapshot.json +11 -1
  84. package/wire-changes/core@7.43.0.json +985 -0
@@ -0,0 +1,985 @@
1
+ {
2
+ "repo": "core",
3
+ "version": "7.43.0",
4
+ "from": "596c3a64df139e695e8354751c520d3d944010c9",
5
+ "to": "f91ca4b8b3dd618fb90e1e4dd339b10255dd9051",
6
+ "added": [
7
+ {
8
+ "name": "APPROVAL_REACH",
9
+ "kind": "variable",
10
+ "tier": "advanced",
11
+ "at": [
12
+ "src/core/wiring-manifest.ts:68",
13
+ "src/index.ts:1177"
14
+ ],
15
+ "criteriaCovered": false,
16
+ "breaking": false
17
+ },
18
+ {
19
+ "name": "ApprovalReach",
20
+ "kind": "type",
21
+ "tier": "advanced",
22
+ "at": [
23
+ "src/core/wiring-manifest.ts:69",
24
+ "src/index.ts:1178"
25
+ ],
26
+ "criteriaCovered": false,
27
+ "breaking": false
28
+ },
29
+ {
30
+ "name": "BoundSkillGrants",
31
+ "kind": "interface",
32
+ "tier": "advanced",
33
+ "at": [
34
+ "src/core/skill-grant-binding.ts:12",
35
+ "src/index.ts:1476"
36
+ ],
37
+ "criteriaCovered": false,
38
+ "breaking": false
39
+ },
40
+ {
41
+ "name": "abortedSeatDeny",
42
+ "kind": "function",
43
+ "tier": "advanced",
44
+ "at": [
45
+ "src/core/tool-policy.ts:235",
46
+ "src/index.ts:1406"
47
+ ],
48
+ "criteriaCovered": false,
49
+ "breaking": false
50
+ },
51
+ {
52
+ "name": "isApprovalReach",
53
+ "kind": "function",
54
+ "tier": "advanced",
55
+ "at": [
56
+ "src/core/wiring-manifest.ts:72",
57
+ "src/index.ts:1179"
58
+ ],
59
+ "criteriaCovered": false,
60
+ "breaking": false
61
+ }
62
+ ],
63
+ "removed": [],
64
+ "changed": [],
65
+ "narrowed": [],
66
+ "closedSetMembers": [
67
+ {
68
+ "set": "ALLOW_ENTRY_INERT_REASONS",
69
+ "at": [
70
+ "src/core/allow-entry.ts:39"
71
+ ],
72
+ "newSet": false,
73
+ "added": [
74
+ "near_miss",
75
+ "tool_name"
76
+ ],
77
+ "removed": [],
78
+ "breaking": false,
79
+ "criteriaCovered": false
80
+ },
81
+ {
82
+ "set": "APPROVAL_REACH",
83
+ "at": [
84
+ "src/core/wiring-manifest.ts:68"
85
+ ],
86
+ "newSet": true,
87
+ "added": [
88
+ "none"
89
+ ],
90
+ "removed": [],
91
+ "breaking": false,
92
+ "criteriaCovered": false
93
+ },
94
+ {
95
+ "set": "ASK_CLASSES",
96
+ "at": [
97
+ "src/core/ask-origin.ts:596"
98
+ ],
99
+ "newSet": false,
100
+ "added": [
101
+ "classifier_no_ruling"
102
+ ],
103
+ "removed": [],
104
+ "breaking": false,
105
+ "criteriaCovered": false
106
+ },
107
+ {
108
+ "set": "ApprovalReach",
109
+ "at": [
110
+ "src/core/wiring-manifest.ts:69",
111
+ "src/index.ts:1178"
112
+ ],
113
+ "newSet": true,
114
+ "added": [
115
+ "none"
116
+ ],
117
+ "removed": [],
118
+ "breaking": false,
119
+ "criteriaCovered": false
120
+ },
121
+ {
122
+ "set": "AskSeamForm",
123
+ "at": [
124
+ "src/core/wiring-manifest.ts:60"
125
+ ],
126
+ "newSet": false,
127
+ "added": [
128
+ "declared_none"
129
+ ],
130
+ "removed": [],
131
+ "breaking": false,
132
+ "criteriaCovered": false
133
+ },
134
+ {
135
+ "set": "CHECKPOINT_CONFIG_REFUSAL_CODES",
136
+ "at": [
137
+ "src/core/checkpoint-store.ts:2426"
138
+ ],
139
+ "newSet": false,
140
+ "added": [
141
+ "config.approval_reach_invalid",
142
+ "config.skill_deny_unreadable",
143
+ "config.user_invoked_skill_unknown"
144
+ ],
145
+ "removed": [],
146
+ "breaking": false,
147
+ "criteriaCovered": false
148
+ },
149
+ {
150
+ "set": "CHILD_CLAMP_SEATS",
151
+ "at": [
152
+ "src/core/child-clamp-seats.ts:32"
153
+ ],
154
+ "newSet": false,
155
+ "added": [
156
+ "approvalReach"
157
+ ],
158
+ "removed": [],
159
+ "breaking": false,
160
+ "criteriaCovered": false
161
+ },
162
+ {
163
+ "set": "HeadlessApproverSeat",
164
+ "at": [
165
+ "src/core/ask-origin.ts:858"
166
+ ],
167
+ "newSet": false,
168
+ "added": [
169
+ "declared_none"
170
+ ],
171
+ "removed": [],
172
+ "breaking": false,
173
+ "criteriaCovered": false
174
+ },
175
+ {
176
+ "set": "PersistedRuleMatch",
177
+ "at": [
178
+ "src/core/permission-rule-model.ts:252"
179
+ ],
180
+ "newSet": false,
181
+ "added": [
182
+ "name",
183
+ "name_prefix"
184
+ ],
185
+ "removed": [],
186
+ "breaking": false,
187
+ "criteriaCovered": false
188
+ },
189
+ {
190
+ "set": "RULE_TOOL_NAME_VERDICTS",
191
+ "at": [
192
+ "src/core/tool-name-aliases.ts:75"
193
+ ],
194
+ "newSet": false,
195
+ "added": [
196
+ "unmintable_segment"
197
+ ],
198
+ "removed": [],
199
+ "breaking": false,
200
+ "criteriaCovered": false
201
+ },
202
+ {
203
+ "set": "RuleToolNameVerdict.kind",
204
+ "at": [
205
+ "src/core/tool-name-aliases.ts:97",
206
+ "src/core/tool-name-aliases.ts:98",
207
+ "src/core/tool-name-aliases.ts:99",
208
+ "src/core/tool-name-aliases.ts:100"
209
+ ],
210
+ "newSet": false,
211
+ "added": [
212
+ "unmintable_segment"
213
+ ],
214
+ "removed": [],
215
+ "breaking": false,
216
+ "criteriaCovered": false
217
+ },
218
+ {
219
+ "set": "RunWorkflowToolDeps.parentApprovalReach",
220
+ "at": [
221
+ "src/orchestration/run-workflow-tool.ts:584"
222
+ ],
223
+ "newSet": true,
224
+ "added": [
225
+ "none"
226
+ ],
227
+ "removed": [],
228
+ "breaking": false,
229
+ "criteriaCovered": false
230
+ },
231
+ {
232
+ "set": "ToolExecuteContext.approvalReach",
233
+ "at": [
234
+ "src/core/tool-spec.ts:952"
235
+ ],
236
+ "newSet": true,
237
+ "added": [
238
+ "none"
239
+ ],
240
+ "removed": [],
241
+ "breaking": false,
242
+ "criteriaCovered": false
243
+ }
244
+ ],
245
+ "closedSetsUnreadable": [],
246
+ "typeKeys": [
247
+ {
248
+ "type": "AskCarry",
249
+ "at": [
250
+ "src/core/hooks.ts:2204"
251
+ ],
252
+ "added": [
253
+ "classifierNoRuling"
254
+ ],
255
+ "addedDetail": [
256
+ {
257
+ "key": "classifierNoRuling",
258
+ "optional": true
259
+ }
260
+ ],
261
+ "addedRequired": [],
262
+ "removed": [],
263
+ "breaking": false,
264
+ "criteriaCovered": false
265
+ },
266
+ {
267
+ "type": "AskRequest",
268
+ "at": [
269
+ "src/core/tool-policy.ts:2828"
270
+ ],
271
+ "added": [
272
+ "boundGrantDigest",
273
+ "boundGrants",
274
+ "classifierNoRuling"
275
+ ],
276
+ "addedDetail": [
277
+ {
278
+ "key": "boundGrantDigest",
279
+ "optional": true
280
+ },
281
+ {
282
+ "key": "boundGrants",
283
+ "optional": true
284
+ },
285
+ {
286
+ "key": "classifierNoRuling",
287
+ "optional": true
288
+ }
289
+ ],
290
+ "addedRequired": [],
291
+ "removed": [],
292
+ "breaking": false,
293
+ "criteriaCovered": true
294
+ },
295
+ {
296
+ "type": "CheckpointSummary",
297
+ "at": [
298
+ "src/core/checkpoint-store.ts:2096"
299
+ ],
300
+ "added": [
301
+ "boundGrantDigest",
302
+ "boundGrants",
303
+ "classifierNoRuling"
304
+ ],
305
+ "addedDetail": [
306
+ {
307
+ "key": "boundGrantDigest",
308
+ "optional": true
309
+ },
310
+ {
311
+ "key": "boundGrants",
312
+ "optional": true
313
+ },
314
+ {
315
+ "key": "classifierNoRuling",
316
+ "optional": true
317
+ }
318
+ ],
319
+ "addedRequired": [],
320
+ "removed": [],
321
+ "breaking": false,
322
+ "criteriaCovered": true
323
+ },
324
+ {
325
+ "type": "PendingAction",
326
+ "at": [
327
+ "src/core/checkpoint-store.ts:951"
328
+ ],
329
+ "added": [
330
+ "tool_approval.boundGrants",
331
+ "tool_approval.classifierNoRuling"
332
+ ],
333
+ "addedDetail": [
334
+ {
335
+ "key": "tool_approval.boundGrants",
336
+ "optional": true
337
+ },
338
+ {
339
+ "key": "tool_approval.classifierNoRuling",
340
+ "optional": true
341
+ }
342
+ ],
343
+ "addedRequired": [],
344
+ "removed": [],
345
+ "breaking": false,
346
+ "criteriaCovered": false
347
+ },
348
+ {
349
+ "type": "PermissionResult",
350
+ "at": [
351
+ "src/core/tool-policy.ts:474"
352
+ ],
353
+ "added": [
354
+ "ask.classifierNoRuling"
355
+ ],
356
+ "addedDetail": [
357
+ {
358
+ "key": "ask.classifierNoRuling",
359
+ "optional": true
360
+ }
361
+ ],
362
+ "addedRequired": [],
363
+ "removed": [],
364
+ "breaking": false,
365
+ "criteriaCovered": false
366
+ },
367
+ {
368
+ "type": "PreToolUseResult",
369
+ "at": [
370
+ "src/core/hooks.ts:1180"
371
+ ],
372
+ "added": [
373
+ "ask.classifierNoRuling"
374
+ ],
375
+ "addedDetail": [
376
+ {
377
+ "key": "ask.classifierNoRuling",
378
+ "optional": true
379
+ }
380
+ ],
381
+ "addedRequired": [],
382
+ "removed": [],
383
+ "breaking": false,
384
+ "criteriaCovered": false
385
+ },
386
+ {
387
+ "type": "RuleToolNameVerdict",
388
+ "at": [
389
+ "src/core/tool-name-aliases.ts:96"
390
+ ],
391
+ "added": [
392
+ "unmintable_segment.currentName",
393
+ "unmintable_segment.guidance",
394
+ "unmintable_segment.kind"
395
+ ],
396
+ "addedDetail": [
397
+ {
398
+ "key": "unmintable_segment.currentName",
399
+ "optional": true
400
+ },
401
+ {
402
+ "key": "unmintable_segment.guidance",
403
+ "optional": false
404
+ },
405
+ {
406
+ "key": "unmintable_segment.kind",
407
+ "optional": false
408
+ }
409
+ ],
410
+ "addedRequired": [],
411
+ "removed": [],
412
+ "breaking": false,
413
+ "criteriaCovered": false
414
+ },
415
+ {
416
+ "type": "RunWorkflowToolDeps",
417
+ "at": [
418
+ "src/orchestration/run-workflow-tool.ts:430"
419
+ ],
420
+ "added": [
421
+ "parentApprovalReach"
422
+ ],
423
+ "addedDetail": [
424
+ {
425
+ "key": "parentApprovalReach",
426
+ "optional": true
427
+ }
428
+ ],
429
+ "addedRequired": [],
430
+ "removed": [],
431
+ "breaking": false,
432
+ "criteriaCovered": false
433
+ },
434
+ {
435
+ "type": "SkillGrantHit",
436
+ "at": [
437
+ "src/core/skill-grant.ts:200"
438
+ ],
439
+ "added": [
440
+ "readsAsNothing"
441
+ ],
442
+ "addedDetail": [
443
+ {
444
+ "key": "readsAsNothing",
445
+ "optional": true
446
+ }
447
+ ],
448
+ "addedRequired": [],
449
+ "removed": [],
450
+ "breaking": false,
451
+ "criteriaCovered": false
452
+ },
453
+ {
454
+ "type": "TaskSpec",
455
+ "at": [
456
+ "src/core/task-spec.ts:52"
457
+ ],
458
+ "added": [
459
+ "approvalReach"
460
+ ],
461
+ "addedDetail": [
462
+ {
463
+ "key": "approvalReach",
464
+ "optional": true
465
+ }
466
+ ],
467
+ "addedRequired": [],
468
+ "removed": [],
469
+ "breaking": false,
470
+ "criteriaCovered": true
471
+ },
472
+ {
473
+ "type": "ToolExecuteContext",
474
+ "at": [
475
+ "src/core/tool-spec.ts:613"
476
+ ],
477
+ "added": [
478
+ "approvalReach"
479
+ ],
480
+ "addedDetail": [
481
+ {
482
+ "key": "approvalReach",
483
+ "optional": true
484
+ }
485
+ ],
486
+ "addedRequired": [],
487
+ "removed": [],
488
+ "breaking": false,
489
+ "criteriaCovered": false
490
+ },
491
+ {
492
+ "type": "ToolGateInput",
493
+ "at": [
494
+ "src/core/hooks.ts:1470"
495
+ ],
496
+ "via": "runToolGate.ToolGateInput",
497
+ "added": [
498
+ "askSeatForm"
499
+ ],
500
+ "addedDetail": [
501
+ {
502
+ "key": "askSeatForm",
503
+ "optional": true
504
+ }
505
+ ],
506
+ "addedRequired": [],
507
+ "removed": [],
508
+ "breaking": false,
509
+ "criteriaCovered": false
510
+ }
511
+ ],
512
+ "typeKeysUnreadableArms": [],
513
+ "typeKeysFlattenedCount": 225,
514
+ "signatures": [
515
+ {
516
+ "name": "compileAllowEntry",
517
+ "at": [
518
+ "src/core/allow-entry.ts:150"
519
+ ],
520
+ "from": [
521
+ "(raw: string, behavior: \"allow\" | \"deny\"): AllowEntryInertReason | CompiledAllowEntry"
522
+ ],
523
+ "to": [
524
+ "(raw: string, behavior: \"allow\" | \"deny\", roster?: ReadonlySet<string>): AllowEntryInertReason | CompiledAllowEntry"
525
+ ],
526
+ "changes": [
527
+ {
528
+ "aspect": "param",
529
+ "detail": "+optional param `roster?: ReadonlySet<string>`",
530
+ "breaking": false
531
+ }
532
+ ],
533
+ "breaking": false,
534
+ "criteriaCovered": false
535
+ },
536
+ {
537
+ "name": "compileAllowList",
538
+ "at": [
539
+ "src/core/allow-entry.ts:162"
540
+ ],
541
+ "from": [
542
+ "(entries: readonly string[], behavior: \"allow\" | \"deny\"): { rows: Array<{ entry: string; compiled: CompiledAllowEntry; }>; inert: Array<{ entry: string; reason: AllowEntryInertReason; }>; }"
543
+ ],
544
+ "to": [
545
+ "(entries: readonly string[], behavior: \"allow\" | \"deny\", roster?: ReadonlySet<string>): { rows: Array<{ entry: string; compiled: CompiledAllowEntry; }>; inert: AllowEntryInert[]; }"
546
+ ],
547
+ "changes": [
548
+ {
549
+ "aspect": "param",
550
+ "detail": "+optional param `roster?: ReadonlySet<string>`",
551
+ "breaking": false
552
+ },
553
+ {
554
+ "aspect": "returns",
555
+ "detail": "return type …AllowEntry; }>; inert: A[rray<{ entry: string; reason: AllowEntryInertReason; }> -> llowEntryInert[]]; }",
556
+ "breaking": true
557
+ }
558
+ ],
559
+ "breaking": true,
560
+ "criteriaCovered": false
561
+ },
562
+ {
563
+ "name": "resolveAskSeamForm",
564
+ "at": [
565
+ "src/core/wiring-manifest.ts:985"
566
+ ],
567
+ "from": [
568
+ "(spec: Pick<TaskSpec, \"onAsk\">, deps: Pick<RunnerDeps, \"onAsk\">): { form: AskSeamForm; provenance?: SeamProvenance; }"
569
+ ],
570
+ "to": [
571
+ "(spec: Pick<TaskSpec, \"onAsk\" | \"approvalReach\">, deps: Pick<RunnerDeps, \"onAsk\">): { form: AskSeamForm; provenance?: SeamProvenance; }"
572
+ ],
573
+ "changes": [
574
+ {
575
+ "aspect": "param",
576
+ "detail": "param 1 `spec` type changed, direction not read: Pick<TaskSpec, \"onAsk\"[ -> | \"approvalReach\"]>",
577
+ "breaking": true,
578
+ "uncertain": true
579
+ }
580
+ ],
581
+ "uncertain": "param 1 `spec` type changed, direction not read: Pick<TaskSpec, \"onAsk\"[ -> | \"approvalReach\"]> — the direction of a type change is not read syntactically, so it is reported breaking: check whether existing call sites still type-check before writing the BREAKING line",
582
+ "breaking": true,
583
+ "criteriaCovered": false
584
+ },
585
+ {
586
+ "name": "ruleToolGrammarOf",
587
+ "at": [
588
+ "src/core/permission-rule-model.ts:207"
589
+ ],
590
+ "from": [
591
+ "(toolName: string): \"command\" | \"path\" | undefined"
592
+ ],
593
+ "to": [
594
+ "(toolName: string): \"command\" | \"name\" | \"path\" | undefined"
595
+ ],
596
+ "changes": [
597
+ {
598
+ "aspect": "returns",
599
+ "detail": "return type \"command\" | \"[ -> name\" | \"]path\" | undefined",
600
+ "breaking": true
601
+ }
602
+ ],
603
+ "breaking": true,
604
+ "criteriaCovered": false
605
+ }
606
+ ],
607
+ "declarationMoves": [
608
+ {
609
+ "name": "abortedSeatDeny",
610
+ "kind": "function",
611
+ "onSurface": true,
612
+ "from": [
613
+ "src/core/tool-policy.ts"
614
+ ],
615
+ "to": [
616
+ "src/core/tool-policy.ts",
617
+ "src/index.ts"
618
+ ]
619
+ }
620
+ ],
621
+ "mintMoves": [],
622
+ "criteriaObserves": [
623
+ {
624
+ "kind": "engineNoticeCode",
625
+ "name": "classifier.denial_limit",
626
+ "assertions": [
627
+ "G7.b",
628
+ "G8.b",
629
+ "G10.c"
630
+ ]
631
+ },
632
+ {
633
+ "kind": "engineNoticeCode",
634
+ "name": "classifier.unavailable",
635
+ "assertions": [
636
+ "G7.a"
637
+ ]
638
+ },
639
+ {
640
+ "kind": "engineNoticeCode",
641
+ "name": "delegation.ask_unresolvable",
642
+ "assertions": [
643
+ "G10.b"
644
+ ]
645
+ },
646
+ {
647
+ "kind": "engineNoticeCode",
648
+ "name": "permission.allowed_tool_not_granted",
649
+ "assertions": [
650
+ "G12.a",
651
+ "G12.b"
652
+ ]
653
+ },
654
+ {
655
+ "kind": "taskEventField",
656
+ "name": "tool_end.gate",
657
+ "assertions": [
658
+ "G1.c",
659
+ "G4.c",
660
+ "G7.b",
661
+ "G7.d",
662
+ "G15.a"
663
+ ]
664
+ },
665
+ {
666
+ "kind": "taskEventField",
667
+ "name": "tool_end.isError",
668
+ "assertions": [
669
+ "G15.a"
670
+ ]
671
+ },
672
+ {
673
+ "kind": "taskEventField",
674
+ "name": "tool_end.output",
675
+ "assertions": [
676
+ "G15.a"
677
+ ]
678
+ },
679
+ {
680
+ "kind": "taskEventField",
681
+ "name": "wiring_manifest.manifest",
682
+ "assertions": [
683
+ "G4.a"
684
+ ]
685
+ },
686
+ {
687
+ "kind": "typeMember",
688
+ "name": "AskRequest.askClass",
689
+ "assertions": [
690
+ "G1.b"
691
+ ]
692
+ },
693
+ {
694
+ "kind": "typeMember",
695
+ "name": "AskRequest.boundGrantDigest",
696
+ "assertions": [
697
+ "G13.b"
698
+ ]
699
+ },
700
+ {
701
+ "kind": "typeMember",
702
+ "name": "AskRequest.boundGrants",
703
+ "assertions": [
704
+ "G13.b",
705
+ "G13.c"
706
+ ]
707
+ },
708
+ {
709
+ "kind": "typeMember",
710
+ "name": "AskRequest.classes",
711
+ "assertions": [
712
+ "G7.a",
713
+ "G7.c",
714
+ "G9.a",
715
+ "G9.b"
716
+ ]
717
+ },
718
+ {
719
+ "kind": "typeMember",
720
+ "name": "AskRequest.classifierNoRuling",
721
+ "assertions": [
722
+ "G7.a",
723
+ "G7.c",
724
+ "G9.d"
725
+ ]
726
+ },
727
+ {
728
+ "kind": "typeMember",
729
+ "name": "AskRequest.denialLimitFallback",
730
+ "assertions": [
731
+ "G8.a"
732
+ ]
733
+ },
734
+ {
735
+ "kind": "typeMember",
736
+ "name": "AskRequest.message",
737
+ "assertions": [
738
+ "G1.a",
739
+ "G1.b",
740
+ "G3.b"
741
+ ]
742
+ },
743
+ {
744
+ "kind": "typeMember",
745
+ "name": "AskRequest.ruleOffers",
746
+ "assertions": [
747
+ "G3.a"
748
+ ]
749
+ },
750
+ {
751
+ "kind": "typeMember",
752
+ "name": "AskRequest.ruleOffersAbsence",
753
+ "assertions": [
754
+ "G3.a"
755
+ ]
756
+ },
757
+ {
758
+ "kind": "typeMember",
759
+ "name": "Checkpoint.pendingAction.boundGrantDigest",
760
+ "assertions": [
761
+ "G13.a",
762
+ "G14.a"
763
+ ]
764
+ },
765
+ {
766
+ "kind": "typeMember",
767
+ "name": "Checkpoint.pendingAction.boundGrants",
768
+ "assertions": [
769
+ "G13.a",
770
+ "G13.c"
771
+ ]
772
+ },
773
+ {
774
+ "kind": "typeMember",
775
+ "name": "CheckpointError.code",
776
+ "assertions": [
777
+ "G16.a"
778
+ ]
779
+ },
780
+ {
781
+ "kind": "typeMember",
782
+ "name": "CheckpointError.detail.field",
783
+ "assertions": [
784
+ "G14.a",
785
+ "G16.a"
786
+ ]
787
+ },
788
+ {
789
+ "kind": "typeMember",
790
+ "name": "CheckpointSummary.boundGrantDigest",
791
+ "assertions": [
792
+ "G13.a",
793
+ "G14.b"
794
+ ]
795
+ },
796
+ {
797
+ "kind": "typeMember",
798
+ "name": "CheckpointSummary.boundGrants",
799
+ "assertions": [
800
+ "G13.a",
801
+ "G14.b"
802
+ ]
803
+ },
804
+ {
805
+ "kind": "typeMember",
806
+ "name": "CheckpointSummary.classifierNoRuling",
807
+ "assertions": [
808
+ "G9.c"
809
+ ]
810
+ },
811
+ {
812
+ "kind": "typeMember",
813
+ "name": "PermissionRuleIssue.code",
814
+ "assertions": [
815
+ "G2.a"
816
+ ]
817
+ },
818
+ {
819
+ "kind": "typeMember",
820
+ "name": "PermissionRuleIssue.message",
821
+ "assertions": [
822
+ "G2.a"
823
+ ]
824
+ },
825
+ {
826
+ "kind": "typeMember",
827
+ "name": "PersistedRule.match",
828
+ "assertions": [
829
+ "G1.a"
830
+ ]
831
+ },
832
+ {
833
+ "kind": "typeMember",
834
+ "name": "RuleReject.code",
835
+ "assertions": [
836
+ "G2.b"
837
+ ]
838
+ },
839
+ {
840
+ "kind": "typeMember",
841
+ "name": "RuleReject.message",
842
+ "assertions": [
843
+ "G2.b"
844
+ ]
845
+ },
846
+ {
847
+ "kind": "typeMember",
848
+ "name": "SessionRuleNameRefusal.currentName",
849
+ "assertions": [
850
+ "G11.a"
851
+ ]
852
+ },
853
+ {
854
+ "kind": "typeMember",
855
+ "name": "SessionRuleNameRefusal.verdict",
856
+ "assertions": [
857
+ "G11.a"
858
+ ]
859
+ },
860
+ {
861
+ "kind": "typeMember",
862
+ "name": "TaskResult.terminal",
863
+ "assertions": [
864
+ "G4.b",
865
+ "G4.c",
866
+ "G6.a",
867
+ "G6.c",
868
+ "G7.b",
869
+ "G8.a",
870
+ "G8.b",
871
+ "G8.c",
872
+ "G11.b"
873
+ ]
874
+ },
875
+ {
876
+ "kind": "typeMember",
877
+ "name": "TaskResult.terminal.code",
878
+ "assertions": [
879
+ "G15.b",
880
+ "G17.a"
881
+ ]
882
+ },
883
+ {
884
+ "kind": "typeMember",
885
+ "name": "TaskResult.terminal.message",
886
+ "assertions": [
887
+ "G15.b",
888
+ "G17.a"
889
+ ]
890
+ },
891
+ {
892
+ "kind": "typeMember",
893
+ "name": "TaskSpec.approvalReach",
894
+ "assertions": [
895
+ "G5.a",
896
+ "G5.b",
897
+ "G5.c",
898
+ "G6.b"
899
+ ]
900
+ },
901
+ {
902
+ "kind": "typeMember",
903
+ "name": "TaskSpec.interactionPosture",
904
+ "assertions": [
905
+ "G10.a"
906
+ ]
907
+ },
908
+ {
909
+ "kind": "typeMember",
910
+ "name": "WiringManifest.ask.effective",
911
+ "assertions": [
912
+ "G4.a",
913
+ "G4.b"
914
+ ]
915
+ },
916
+ {
917
+ "kind": "typeMember",
918
+ "name": "WiringManifest.ask.form",
919
+ "assertions": [
920
+ "G4.a",
921
+ "G4.d"
922
+ ]
923
+ },
924
+ {
925
+ "kind": "typeMember",
926
+ "name": "WiringManifest.ask.provenance",
927
+ "assertions": [
928
+ "G4.d"
929
+ ]
930
+ }
931
+ ],
932
+ "consumersHint": {
933
+ "cli": [
934
+ "ASK_CLASSES",
935
+ "AskCarry",
936
+ "AskRequest",
937
+ "CHECKPOINT_CONFIG_REFUSAL_CODES",
938
+ "CHILD_CLAMP_SEATS",
939
+ "CheckpointSummary",
940
+ "PendingAction",
941
+ "PermissionResult",
942
+ "PreToolUseResult",
943
+ "RunWorkflowToolDeps",
944
+ "TaskSpec",
945
+ "ToolExecuteContext",
946
+ "ToolGateInput",
947
+ "ruleToolGrammarOf"
948
+ ],
949
+ "server": [
950
+ "ASK_CLASSES",
951
+ "AskCarry",
952
+ "AskRequest",
953
+ "CHECKPOINT_CONFIG_REFUSAL_CODES",
954
+ "CheckpointSummary",
955
+ "PendingAction",
956
+ "PermissionResult",
957
+ "PersistedRuleMatch",
958
+ "PreToolUseResult",
959
+ "RULE_TOOL_NAME_VERDICTS",
960
+ "RunWorkflowToolDeps",
961
+ "TaskSpec",
962
+ "ToolExecuteContext",
963
+ "ToolGateInput",
964
+ "resolveAskSeamForm",
965
+ "ruleToolGrammarOf"
966
+ ],
967
+ "sdk": [
968
+ "ASK_CLASSES",
969
+ "AskRequest",
970
+ "CheckpointSummary",
971
+ "PendingAction",
972
+ "PermissionResult",
973
+ "PersistedRuleMatch",
974
+ "PreToolUseResult",
975
+ "TaskSpec"
976
+ ],
977
+ "note": "scanned cli@bf15b2f9 server@72e966f3 sdk@e3a5370 — a name listed is MENTIONED there today, which is evidence of consumption, not proof of it. Ledger files (**/docs/core-consumption/**, **/docs/wire-consumption/**, **/*LEDGER*.json) are not evidence of use — server: 3 name(s) matched ONLY in bookkeeping files and were set aside (AskSeamForm, RuleToolNameVerdict, SkillGrantHit)"
978
+ },
979
+ "breakingCount": 3,
980
+ "breakingItems": [
981
+ "signature changed: compileAllowList — return type …AllowEntry; }>; inert: A[rray<{ entry: string; reason: AllowEntryInertReason; }> -> llowEntryInert[]]; }",
982
+ "signature changed: resolveAskSeamForm — param 1 `spec` type changed, direction not read: Pick<TaskSpec, \"onAsk\"[ -> | \"approvalReach\"]>",
983
+ "signature changed: ruleToolGrammarOf — return type \"command\" | \"[ -> name\" | \"]path\" | undefined"
984
+ ]
985
+ }