@sentry/warden 0.46.1 → 0.46.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1011 @@
1
+ import { z } from 'zod';
2
+ import type { EventContext, SkillReport } from '../types/index.js';
3
+ import { SeverityThresholdSchema } from '../types/index.js';
4
+ import type { FindingObservation } from './outcomes.js';
5
+ import type { FindingProcessingEvent } from '../sdk/types.js';
6
+ /**
7
+ * Action-level fallbacks every trigger falls back to when its own config
8
+ * doesn't override them. Deliberately narrower than a per-trigger
9
+ * ResolvedTrigger: model/runtime/minConfidence/verifyFindings are resolved
10
+ * per skill/trigger in this repo, not at the action level, so there's no
11
+ * single run-wide value to report for them here.
12
+ */
13
+ declare const ResolvedDefaultsSchema: z.ZodObject<{
14
+ failOn: z.ZodOptional<z.ZodPreprocess<z.ZodEnum<{
15
+ high: "high";
16
+ low: "low";
17
+ medium: "medium";
18
+ off: "off";
19
+ }>>>;
20
+ reportOn: z.ZodOptional<z.ZodPreprocess<z.ZodEnum<{
21
+ high: "high";
22
+ low: "low";
23
+ medium: "medium";
24
+ off: "off";
25
+ }>>>;
26
+ failCheck: z.ZodOptional<z.ZodBoolean>;
27
+ requestChanges: z.ZodOptional<z.ZodBoolean>;
28
+ maxFindings: z.ZodOptional<z.ZodNumber>;
29
+ }, z.core.$strip>;
30
+ export declare const SkippedTriggerReasonSchema: z.ZodEnum<{
31
+ error: "error";
32
+ pending: "pending";
33
+ no_event_match: "no_event_match";
34
+ path_filter: "path_filter";
35
+ draft_state: "draft_state";
36
+ label_mismatch: "label_mismatch";
37
+ no_changes: "no_changes";
38
+ }>;
39
+ declare const SkippedTriggerSchema: z.ZodObject<{
40
+ skillName: z.ZodString;
41
+ triggerId: z.ZodOptional<z.ZodString>;
42
+ triggerName: z.ZodOptional<z.ZodString>;
43
+ reason: z.ZodEnum<{
44
+ error: "error";
45
+ pending: "pending";
46
+ no_event_match: "no_event_match";
47
+ path_filter: "path_filter";
48
+ draft_state: "draft_state";
49
+ label_mismatch: "label_mismatch";
50
+ no_changes: "no_changes";
51
+ }>;
52
+ }, z.core.$strip>;
53
+ export declare const TriggerRunResultSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
54
+ triggerId: z.ZodOptional<z.ZodString>;
55
+ triggerName: z.ZodString;
56
+ skillName: z.ZodString;
57
+ status: z.ZodLiteral<"success">;
58
+ report: z.ZodObject<{
59
+ skill: z.ZodString;
60
+ summary: z.ZodString;
61
+ findings: z.ZodArray<z.ZodObject<{
62
+ id: z.ZodString;
63
+ severity: z.ZodPreprocess<z.ZodEnum<{
64
+ high: "high";
65
+ low: "low";
66
+ medium: "medium";
67
+ }>>;
68
+ confidence: z.ZodOptional<z.ZodEnum<{
69
+ high: "high";
70
+ low: "low";
71
+ medium: "medium";
72
+ }>>;
73
+ title: z.ZodString;
74
+ description: z.ZodString;
75
+ verification: z.ZodOptional<z.ZodString>;
76
+ location: z.ZodOptional<z.ZodObject<{
77
+ path: z.ZodString;
78
+ startLine: z.ZodNumber;
79
+ endLine: z.ZodOptional<z.ZodNumber>;
80
+ }, z.core.$strip>>;
81
+ additionalLocations: z.ZodOptional<z.ZodArray<z.ZodObject<{
82
+ path: z.ZodString;
83
+ startLine: z.ZodNumber;
84
+ endLine: z.ZodOptional<z.ZodNumber>;
85
+ }, z.core.$strip>>>;
86
+ sourceSnippet: z.ZodOptional<z.ZodObject<{
87
+ path: z.ZodString;
88
+ language: z.ZodOptional<z.ZodString>;
89
+ startLine: z.ZodNumber;
90
+ endLine: z.ZodNumber;
91
+ targetStartLine: z.ZodNumber;
92
+ targetEndLine: z.ZodNumber;
93
+ lines: z.ZodArray<z.ZodObject<{
94
+ line: z.ZodNumber;
95
+ content: z.ZodString;
96
+ highlighted: z.ZodOptional<z.ZodBoolean>;
97
+ }, z.core.$strip>>;
98
+ }, z.core.$strip>>;
99
+ elapsedMs: z.ZodOptional<z.ZodNumber>;
100
+ }, z.core.$strip>>;
101
+ durationMs: z.ZodOptional<z.ZodNumber>;
102
+ usage: z.ZodOptional<z.ZodObject<{
103
+ inputTokens: z.ZodNumber;
104
+ outputTokens: z.ZodNumber;
105
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
106
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
107
+ cacheCreation5mInputTokens: z.ZodOptional<z.ZodNumber>;
108
+ cacheCreation1hInputTokens: z.ZodOptional<z.ZodNumber>;
109
+ webSearchRequests: z.ZodOptional<z.ZodNumber>;
110
+ costUSD: z.ZodNumber;
111
+ }, z.core.$strip>>;
112
+ auxiliaryUsage: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
113
+ inputTokens: z.ZodNumber;
114
+ outputTokens: z.ZodNumber;
115
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
116
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
117
+ cacheCreation5mInputTokens: z.ZodOptional<z.ZodNumber>;
118
+ cacheCreation1hInputTokens: z.ZodOptional<z.ZodNumber>;
119
+ webSearchRequests: z.ZodOptional<z.ZodNumber>;
120
+ costUSD: z.ZodNumber;
121
+ }, z.core.$strip>>>;
122
+ auxiliaryUsageAttribution: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
123
+ model: z.ZodOptional<z.ZodString>;
124
+ models: z.ZodOptional<z.ZodArray<z.ZodString>>;
125
+ runtime: z.ZodOptional<z.ZodString>;
126
+ runtimes: z.ZodOptional<z.ZodArray<z.ZodString>>;
127
+ }, z.core.$strip>>>;
128
+ model: z.ZodOptional<z.ZodString>;
129
+ runtime: z.ZodOptional<z.ZodString>;
130
+ }, z.core.$strip>;
131
+ error: z.ZodOptional<z.ZodNever>;
132
+ findingProcessingEvents: z.ZodOptional<z.ZodArray<z.ZodObject<{
133
+ stage: z.ZodEnum<{
134
+ verification: "verification";
135
+ dedupe: "dedupe";
136
+ merge: "merge";
137
+ fix_gate: "fix_gate";
138
+ }>;
139
+ action: z.ZodEnum<{
140
+ dropped: "dropped";
141
+ rejected: "rejected";
142
+ revised: "revised";
143
+ merged: "merged";
144
+ stripped_fix: "stripped_fix";
145
+ }>;
146
+ finding: z.ZodObject<{
147
+ id: z.ZodString;
148
+ severity: z.ZodPreprocess<z.ZodEnum<{
149
+ high: "high";
150
+ low: "low";
151
+ medium: "medium";
152
+ }>>;
153
+ confidence: z.ZodOptional<z.ZodEnum<{
154
+ high: "high";
155
+ low: "low";
156
+ medium: "medium";
157
+ }>>;
158
+ title: z.ZodString;
159
+ description: z.ZodString;
160
+ verification: z.ZodOptional<z.ZodString>;
161
+ location: z.ZodOptional<z.ZodObject<{
162
+ path: z.ZodString;
163
+ startLine: z.ZodNumber;
164
+ endLine: z.ZodOptional<z.ZodNumber>;
165
+ }, z.core.$strip>>;
166
+ additionalLocations: z.ZodOptional<z.ZodArray<z.ZodObject<{
167
+ path: z.ZodString;
168
+ startLine: z.ZodNumber;
169
+ endLine: z.ZodOptional<z.ZodNumber>;
170
+ }, z.core.$strip>>>;
171
+ sourceSnippet: z.ZodOptional<z.ZodObject<{
172
+ path: z.ZodString;
173
+ language: z.ZodOptional<z.ZodString>;
174
+ startLine: z.ZodNumber;
175
+ endLine: z.ZodNumber;
176
+ targetStartLine: z.ZodNumber;
177
+ targetEndLine: z.ZodNumber;
178
+ lines: z.ZodArray<z.ZodObject<{
179
+ line: z.ZodNumber;
180
+ content: z.ZodString;
181
+ highlighted: z.ZodOptional<z.ZodBoolean>;
182
+ }, z.core.$strip>>;
183
+ }, z.core.$strip>>;
184
+ elapsedMs: z.ZodOptional<z.ZodNumber>;
185
+ }, z.core.$strip>;
186
+ reason: z.ZodOptional<z.ZodString>;
187
+ replacement: z.ZodOptional<z.ZodObject<{
188
+ id: z.ZodString;
189
+ severity: z.ZodPreprocess<z.ZodEnum<{
190
+ high: "high";
191
+ low: "low";
192
+ medium: "medium";
193
+ }>>;
194
+ confidence: z.ZodOptional<z.ZodEnum<{
195
+ high: "high";
196
+ low: "low";
197
+ medium: "medium";
198
+ }>>;
199
+ title: z.ZodString;
200
+ description: z.ZodString;
201
+ verification: z.ZodOptional<z.ZodString>;
202
+ location: z.ZodOptional<z.ZodObject<{
203
+ path: z.ZodString;
204
+ startLine: z.ZodNumber;
205
+ endLine: z.ZodOptional<z.ZodNumber>;
206
+ }, z.core.$strip>>;
207
+ additionalLocations: z.ZodOptional<z.ZodArray<z.ZodObject<{
208
+ path: z.ZodString;
209
+ startLine: z.ZodNumber;
210
+ endLine: z.ZodOptional<z.ZodNumber>;
211
+ }, z.core.$strip>>>;
212
+ sourceSnippet: z.ZodOptional<z.ZodObject<{
213
+ path: z.ZodString;
214
+ language: z.ZodOptional<z.ZodString>;
215
+ startLine: z.ZodNumber;
216
+ endLine: z.ZodNumber;
217
+ targetStartLine: z.ZodNumber;
218
+ targetEndLine: z.ZodNumber;
219
+ lines: z.ZodArray<z.ZodObject<{
220
+ line: z.ZodNumber;
221
+ content: z.ZodString;
222
+ highlighted: z.ZodOptional<z.ZodBoolean>;
223
+ }, z.core.$strip>>;
224
+ }, z.core.$strip>>;
225
+ elapsedMs: z.ZodOptional<z.ZodNumber>;
226
+ }, z.core.$strip>>;
227
+ }, z.core.$strip>>>;
228
+ auxiliaryModel: z.ZodOptional<z.ZodString>;
229
+ synthesisModel: z.ZodOptional<z.ZodString>;
230
+ }, z.core.$strip>, z.ZodObject<{
231
+ triggerId: z.ZodOptional<z.ZodString>;
232
+ triggerName: z.ZodString;
233
+ skillName: z.ZodString;
234
+ status: z.ZodLiteral<"error">;
235
+ report: z.ZodOptional<z.ZodNever>;
236
+ error: z.ZodObject<{
237
+ name: z.ZodOptional<z.ZodString>;
238
+ message: z.ZodString;
239
+ }, z.core.$strip>;
240
+ }, z.core.$strip>], "status">;
241
+ export declare const FindingsOutputSchema: z.ZodObject<{
242
+ version: z.ZodLiteral<"1">;
243
+ timestamp: z.ZodString;
244
+ runAttempt: z.ZodOptional<z.ZodString>;
245
+ harness: z.ZodOptional<z.ZodObject<{
246
+ name: z.ZodLiteral<"warden">;
247
+ version: z.ZodString;
248
+ actionRef: z.ZodOptional<z.ZodString>;
249
+ }, z.core.$strip>>;
250
+ repository: z.ZodObject<{
251
+ owner: z.ZodString;
252
+ name: z.ZodString;
253
+ fullName: z.ZodString;
254
+ }, z.core.$strip>;
255
+ event: z.ZodEnum<{
256
+ pull_request: "pull_request";
257
+ issues: "issues";
258
+ issue_comment: "issue_comment";
259
+ pull_request_review: "pull_request_review";
260
+ pull_request_review_comment: "pull_request_review_comment";
261
+ schedule: "schedule";
262
+ }>;
263
+ pullRequest: z.ZodOptional<z.ZodObject<{
264
+ number: z.ZodNumber;
265
+ author: z.ZodString;
266
+ title: z.ZodString;
267
+ baseBranch: z.ZodString;
268
+ headBranch: z.ZodString;
269
+ headSha: z.ZodString;
270
+ }, z.core.$strip>>;
271
+ runId: z.ZodString;
272
+ recalledMemories: z.ZodOptional<z.ZodArray<z.ZodObject<{
273
+ id: z.ZodString;
274
+ version: z.ZodNumber;
275
+ }, z.core.$strict>>>;
276
+ memoryRecallId: z.ZodOptional<z.ZodString>;
277
+ resolvedDefaults: z.ZodOptional<z.ZodObject<{
278
+ failOn: z.ZodOptional<z.ZodPreprocess<z.ZodEnum<{
279
+ high: "high";
280
+ low: "low";
281
+ medium: "medium";
282
+ off: "off";
283
+ }>>>;
284
+ reportOn: z.ZodOptional<z.ZodPreprocess<z.ZodEnum<{
285
+ high: "high";
286
+ low: "low";
287
+ medium: "medium";
288
+ off: "off";
289
+ }>>>;
290
+ failCheck: z.ZodOptional<z.ZodBoolean>;
291
+ requestChanges: z.ZodOptional<z.ZodBoolean>;
292
+ maxFindings: z.ZodOptional<z.ZodNumber>;
293
+ }, z.core.$strip>>;
294
+ skippedTriggers: z.ZodOptional<z.ZodArray<z.ZodObject<{
295
+ skillName: z.ZodString;
296
+ triggerId: z.ZodOptional<z.ZodString>;
297
+ triggerName: z.ZodOptional<z.ZodString>;
298
+ reason: z.ZodEnum<{
299
+ error: "error";
300
+ pending: "pending";
301
+ no_event_match: "no_event_match";
302
+ path_filter: "path_filter";
303
+ draft_state: "draft_state";
304
+ label_mismatch: "label_mismatch";
305
+ no_changes: "no_changes";
306
+ }>;
307
+ }, z.core.$strip>>>;
308
+ summary: z.ZodObject<{
309
+ totalFindings: z.ZodNumber;
310
+ findingsBySeverity: z.ZodObject<{
311
+ high: z.ZodNumber;
312
+ medium: z.ZodNumber;
313
+ low: z.ZodNumber;
314
+ }, z.core.$strip>;
315
+ totalSkills: z.ZodNumber;
316
+ totalSkillExecutions: z.ZodOptional<z.ZodNumber>;
317
+ byOutcome: z.ZodOptional<z.ZodObject<{
318
+ posted: z.ZodNumber;
319
+ deduped: z.ZodNumber;
320
+ skipped: z.ZodNumber;
321
+ resolved: z.ZodNumber;
322
+ failed: z.ZodNumber;
323
+ }, z.core.$strip>>;
324
+ }, z.core.$strip>;
325
+ skills: z.ZodArray<z.ZodObject<{
326
+ name: z.ZodString;
327
+ summary: z.ZodString;
328
+ model: z.ZodOptional<z.ZodString>;
329
+ runtime: z.ZodOptional<z.ZodString>;
330
+ auxiliaryUsage: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
331
+ inputTokens: z.ZodNumber;
332
+ outputTokens: z.ZodNumber;
333
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
334
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
335
+ cacheCreation5mInputTokens: z.ZodOptional<z.ZodNumber>;
336
+ cacheCreation1hInputTokens: z.ZodOptional<z.ZodNumber>;
337
+ webSearchRequests: z.ZodOptional<z.ZodNumber>;
338
+ costUSD: z.ZodNumber;
339
+ }, z.core.$strip>>>;
340
+ auxiliaryUsageAttribution: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
341
+ model: z.ZodOptional<z.ZodString>;
342
+ models: z.ZodOptional<z.ZodArray<z.ZodString>>;
343
+ runtime: z.ZodOptional<z.ZodString>;
344
+ runtimes: z.ZodOptional<z.ZodArray<z.ZodString>>;
345
+ }, z.core.$strip>>>;
346
+ auxiliaryModel: z.ZodOptional<z.ZodString>;
347
+ synthesisModel: z.ZodOptional<z.ZodString>;
348
+ durationMs: z.ZodOptional<z.ZodNumber>;
349
+ usage: z.ZodOptional<z.ZodObject<{
350
+ inputTokens: z.ZodNumber;
351
+ outputTokens: z.ZodNumber;
352
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
353
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
354
+ cacheCreation5mInputTokens: z.ZodOptional<z.ZodNumber>;
355
+ cacheCreation1hInputTokens: z.ZodOptional<z.ZodNumber>;
356
+ webSearchRequests: z.ZodOptional<z.ZodNumber>;
357
+ costUSD: z.ZodNumber;
358
+ }, z.core.$strip>>;
359
+ failedHunks: z.ZodOptional<z.ZodNumber>;
360
+ failedExtractions: z.ZodOptional<z.ZodNumber>;
361
+ error: z.ZodOptional<z.ZodObject<{
362
+ code: z.ZodEnum<{
363
+ unknown: "unknown";
364
+ auth_failed: "auth_failed";
365
+ provider_unavailable: "provider_unavailable";
366
+ sdk_error: "sdk_error";
367
+ subprocess_failure: "subprocess_failure";
368
+ max_turns: "max_turns";
369
+ aborted: "aborted";
370
+ all_hunks_failed: "all_hunks_failed";
371
+ invalid_model_selector: "invalid_model_selector";
372
+ skill_resolution_failed: "skill_resolution_failed";
373
+ extraction_invalid_json: "extraction_invalid_json";
374
+ extraction_unbalanced_json: "extraction_unbalanced_json";
375
+ extraction_no_findings_json: "extraction_no_findings_json";
376
+ extraction_missing_findings_key: "extraction_missing_findings_key";
377
+ extraction_findings_not_array: "extraction_findings_not_array";
378
+ extraction_llm_failed: "extraction_llm_failed";
379
+ extraction_llm_timeout: "extraction_llm_timeout";
380
+ extraction_no_api_key: "extraction_no_api_key";
381
+ }>;
382
+ message: z.ZodString;
383
+ timestamp: z.ZodOptional<z.ZodString>;
384
+ }, z.core.$strip>>;
385
+ skillExecutionId: z.ZodOptional<z.ZodString>;
386
+ triggerId: z.ZodOptional<z.ZodString>;
387
+ triggerName: z.ZodOptional<z.ZodString>;
388
+ findingsBySeverity: z.ZodOptional<z.ZodObject<{
389
+ high: z.ZodNumber;
390
+ medium: z.ZodNumber;
391
+ low: z.ZodNumber;
392
+ }, z.core.$strip>>;
393
+ checkRunUrl: z.ZodOptional<z.ZodString>;
394
+ checkRunId: z.ZodOptional<z.ZodNumber>;
395
+ reviewEvent: z.ZodOptional<z.ZodEnum<{
396
+ APPROVE: "APPROVE";
397
+ REQUEST_CHANGES: "REQUEST_CHANGES";
398
+ COMMENT: "COMMENT";
399
+ }>>;
400
+ checkConclusion: z.ZodOptional<z.ZodEnum<{
401
+ success: "success";
402
+ failure: "failure";
403
+ cancelled: "cancelled";
404
+ neutral: "neutral";
405
+ }>>;
406
+ issueNumber: z.ZodOptional<z.ZodNumber>;
407
+ issueUrl: z.ZodOptional<z.ZodString>;
408
+ findings: z.ZodArray<z.ZodObject<{
409
+ id: z.ZodString;
410
+ reportedId: z.ZodOptional<z.ZodString>;
411
+ severity: z.ZodPreprocess<z.ZodEnum<{
412
+ high: "high";
413
+ low: "low";
414
+ medium: "medium";
415
+ }>>;
416
+ confidence: z.ZodOptional<z.ZodEnum<{
417
+ high: "high";
418
+ low: "low";
419
+ medium: "medium";
420
+ }>>;
421
+ title: z.ZodString;
422
+ description: z.ZodString;
423
+ verification: z.ZodOptional<z.ZodString>;
424
+ location: z.ZodOptional<z.ZodObject<{
425
+ path: z.ZodString;
426
+ startLine: z.ZodNumber;
427
+ endLine: z.ZodOptional<z.ZodNumber>;
428
+ }, z.core.$strip>>;
429
+ additionalLocations: z.ZodOptional<z.ZodArray<z.ZodObject<{
430
+ path: z.ZodString;
431
+ startLine: z.ZodNumber;
432
+ endLine: z.ZodOptional<z.ZodNumber>;
433
+ }, z.core.$strip>>>;
434
+ sourceSnippet: z.ZodOptional<z.ZodObject<{
435
+ path: z.ZodString;
436
+ language: z.ZodOptional<z.ZodString>;
437
+ startLine: z.ZodNumber;
438
+ endLine: z.ZodNumber;
439
+ targetStartLine: z.ZodNumber;
440
+ targetEndLine: z.ZodNumber;
441
+ lines: z.ZodArray<z.ZodObject<{
442
+ line: z.ZodNumber;
443
+ content: z.ZodString;
444
+ highlighted: z.ZodOptional<z.ZodBoolean>;
445
+ }, z.core.$strip>>;
446
+ }, z.core.$strip>>;
447
+ contentHash: z.ZodOptional<z.ZodString>;
448
+ reportedBy: z.ZodOptional<z.ZodArray<z.ZodObject<{
449
+ skillExecutionId: z.ZodOptional<z.ZodString>;
450
+ skillName: z.ZodString;
451
+ role: z.ZodEnum<{
452
+ primary: "primary";
453
+ corroborating: "corroborating";
454
+ }>;
455
+ matchType: z.ZodOptional<z.ZodEnum<{
456
+ hash: "hash";
457
+ semantic: "semantic";
458
+ }>>;
459
+ }, z.core.$strip>>>;
460
+ provenance: z.ZodOptional<z.ZodObject<{
461
+ originSkillExecutionId: z.ZodOptional<z.ZodString>;
462
+ originModel: z.ZodOptional<z.ZodString>;
463
+ verification: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
464
+ outcome: z.ZodLiteral<"revised">;
465
+ model: z.ZodOptional<z.ZodString>;
466
+ evidence: z.ZodOptional<z.ZodString>;
467
+ before: z.ZodObject<{
468
+ title: z.ZodString;
469
+ description: z.ZodString;
470
+ severity: z.ZodPreprocess<z.ZodEnum<{
471
+ high: "high";
472
+ low: "low";
473
+ medium: "medium";
474
+ }>>;
475
+ confidence: z.ZodOptional<z.ZodEnum<{
476
+ high: "high";
477
+ low: "low";
478
+ medium: "medium";
479
+ }>>;
480
+ }, z.core.$strip>;
481
+ }, z.core.$strip>], "outcome">>;
482
+ merge: z.ZodOptional<z.ZodObject<{
483
+ model: z.ZodOptional<z.ZodString>;
484
+ absorbedFindingIds: z.ZodArray<z.ZodString>;
485
+ }, z.core.$strip>>;
486
+ }, z.core.$strip>>;
487
+ }, z.core.$strip>>;
488
+ }, z.core.$strip>>;
489
+ discardedFindings: z.ZodOptional<z.ZodArray<z.ZodObject<{
490
+ originSkillExecutionId: z.ZodOptional<z.ZodString>;
491
+ stage: z.ZodEnum<{
492
+ verification_rejected: "verification_rejected";
493
+ merge_absorbed: "merge_absorbed";
494
+ dedupe_dropped: "dedupe_dropped";
495
+ }>;
496
+ severity: z.ZodPreprocess<z.ZodEnum<{
497
+ high: "high";
498
+ low: "low";
499
+ medium: "medium";
500
+ }>>;
501
+ title: z.ZodString;
502
+ location: z.ZodOptional<z.ZodObject<{
503
+ path: z.ZodString;
504
+ startLine: z.ZodNumber;
505
+ endLine: z.ZodOptional<z.ZodNumber>;
506
+ }, z.core.$strip>>;
507
+ model: z.ZodOptional<z.ZodString>;
508
+ reason: z.ZodOptional<z.ZodString>;
509
+ survivorFindingId: z.ZodOptional<z.ZodString>;
510
+ }, z.core.$strip>>>;
511
+ triggerResults: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
512
+ triggerId: z.ZodOptional<z.ZodString>;
513
+ triggerName: z.ZodString;
514
+ skillName: z.ZodString;
515
+ status: z.ZodLiteral<"success">;
516
+ report: z.ZodObject<{
517
+ skill: z.ZodString;
518
+ summary: z.ZodString;
519
+ findings: z.ZodArray<z.ZodObject<{
520
+ id: z.ZodString;
521
+ severity: z.ZodPreprocess<z.ZodEnum<{
522
+ high: "high";
523
+ low: "low";
524
+ medium: "medium";
525
+ }>>;
526
+ confidence: z.ZodOptional<z.ZodEnum<{
527
+ high: "high";
528
+ low: "low";
529
+ medium: "medium";
530
+ }>>;
531
+ title: z.ZodString;
532
+ description: z.ZodString;
533
+ verification: z.ZodOptional<z.ZodString>;
534
+ location: z.ZodOptional<z.ZodObject<{
535
+ path: z.ZodString;
536
+ startLine: z.ZodNumber;
537
+ endLine: z.ZodOptional<z.ZodNumber>;
538
+ }, z.core.$strip>>;
539
+ additionalLocations: z.ZodOptional<z.ZodArray<z.ZodObject<{
540
+ path: z.ZodString;
541
+ startLine: z.ZodNumber;
542
+ endLine: z.ZodOptional<z.ZodNumber>;
543
+ }, z.core.$strip>>>;
544
+ sourceSnippet: z.ZodOptional<z.ZodObject<{
545
+ path: z.ZodString;
546
+ language: z.ZodOptional<z.ZodString>;
547
+ startLine: z.ZodNumber;
548
+ endLine: z.ZodNumber;
549
+ targetStartLine: z.ZodNumber;
550
+ targetEndLine: z.ZodNumber;
551
+ lines: z.ZodArray<z.ZodObject<{
552
+ line: z.ZodNumber;
553
+ content: z.ZodString;
554
+ highlighted: z.ZodOptional<z.ZodBoolean>;
555
+ }, z.core.$strip>>;
556
+ }, z.core.$strip>>;
557
+ elapsedMs: z.ZodOptional<z.ZodNumber>;
558
+ }, z.core.$strip>>;
559
+ durationMs: z.ZodOptional<z.ZodNumber>;
560
+ usage: z.ZodOptional<z.ZodObject<{
561
+ inputTokens: z.ZodNumber;
562
+ outputTokens: z.ZodNumber;
563
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
564
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
565
+ cacheCreation5mInputTokens: z.ZodOptional<z.ZodNumber>;
566
+ cacheCreation1hInputTokens: z.ZodOptional<z.ZodNumber>;
567
+ webSearchRequests: z.ZodOptional<z.ZodNumber>;
568
+ costUSD: z.ZodNumber;
569
+ }, z.core.$strip>>;
570
+ auxiliaryUsage: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
571
+ inputTokens: z.ZodNumber;
572
+ outputTokens: z.ZodNumber;
573
+ cacheReadInputTokens: z.ZodOptional<z.ZodNumber>;
574
+ cacheCreationInputTokens: z.ZodOptional<z.ZodNumber>;
575
+ cacheCreation5mInputTokens: z.ZodOptional<z.ZodNumber>;
576
+ cacheCreation1hInputTokens: z.ZodOptional<z.ZodNumber>;
577
+ webSearchRequests: z.ZodOptional<z.ZodNumber>;
578
+ costUSD: z.ZodNumber;
579
+ }, z.core.$strip>>>;
580
+ auxiliaryUsageAttribution: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
581
+ model: z.ZodOptional<z.ZodString>;
582
+ models: z.ZodOptional<z.ZodArray<z.ZodString>>;
583
+ runtime: z.ZodOptional<z.ZodString>;
584
+ runtimes: z.ZodOptional<z.ZodArray<z.ZodString>>;
585
+ }, z.core.$strip>>>;
586
+ model: z.ZodOptional<z.ZodString>;
587
+ runtime: z.ZodOptional<z.ZodString>;
588
+ }, z.core.$strip>;
589
+ error: z.ZodOptional<z.ZodNever>;
590
+ findingProcessingEvents: z.ZodOptional<z.ZodArray<z.ZodObject<{
591
+ stage: z.ZodEnum<{
592
+ verification: "verification";
593
+ dedupe: "dedupe";
594
+ merge: "merge";
595
+ fix_gate: "fix_gate";
596
+ }>;
597
+ action: z.ZodEnum<{
598
+ dropped: "dropped";
599
+ rejected: "rejected";
600
+ revised: "revised";
601
+ merged: "merged";
602
+ stripped_fix: "stripped_fix";
603
+ }>;
604
+ finding: z.ZodObject<{
605
+ id: z.ZodString;
606
+ severity: z.ZodPreprocess<z.ZodEnum<{
607
+ high: "high";
608
+ low: "low";
609
+ medium: "medium";
610
+ }>>;
611
+ confidence: z.ZodOptional<z.ZodEnum<{
612
+ high: "high";
613
+ low: "low";
614
+ medium: "medium";
615
+ }>>;
616
+ title: z.ZodString;
617
+ description: z.ZodString;
618
+ verification: z.ZodOptional<z.ZodString>;
619
+ location: z.ZodOptional<z.ZodObject<{
620
+ path: z.ZodString;
621
+ startLine: z.ZodNumber;
622
+ endLine: z.ZodOptional<z.ZodNumber>;
623
+ }, z.core.$strip>>;
624
+ additionalLocations: z.ZodOptional<z.ZodArray<z.ZodObject<{
625
+ path: z.ZodString;
626
+ startLine: z.ZodNumber;
627
+ endLine: z.ZodOptional<z.ZodNumber>;
628
+ }, z.core.$strip>>>;
629
+ sourceSnippet: z.ZodOptional<z.ZodObject<{
630
+ path: z.ZodString;
631
+ language: z.ZodOptional<z.ZodString>;
632
+ startLine: z.ZodNumber;
633
+ endLine: z.ZodNumber;
634
+ targetStartLine: z.ZodNumber;
635
+ targetEndLine: z.ZodNumber;
636
+ lines: z.ZodArray<z.ZodObject<{
637
+ line: z.ZodNumber;
638
+ content: z.ZodString;
639
+ highlighted: z.ZodOptional<z.ZodBoolean>;
640
+ }, z.core.$strip>>;
641
+ }, z.core.$strip>>;
642
+ elapsedMs: z.ZodOptional<z.ZodNumber>;
643
+ }, z.core.$strip>;
644
+ reason: z.ZodOptional<z.ZodString>;
645
+ replacement: z.ZodOptional<z.ZodObject<{
646
+ id: z.ZodString;
647
+ severity: z.ZodPreprocess<z.ZodEnum<{
648
+ high: "high";
649
+ low: "low";
650
+ medium: "medium";
651
+ }>>;
652
+ confidence: z.ZodOptional<z.ZodEnum<{
653
+ high: "high";
654
+ low: "low";
655
+ medium: "medium";
656
+ }>>;
657
+ title: z.ZodString;
658
+ description: z.ZodString;
659
+ verification: z.ZodOptional<z.ZodString>;
660
+ location: z.ZodOptional<z.ZodObject<{
661
+ path: z.ZodString;
662
+ startLine: z.ZodNumber;
663
+ endLine: z.ZodOptional<z.ZodNumber>;
664
+ }, z.core.$strip>>;
665
+ additionalLocations: z.ZodOptional<z.ZodArray<z.ZodObject<{
666
+ path: z.ZodString;
667
+ startLine: z.ZodNumber;
668
+ endLine: z.ZodOptional<z.ZodNumber>;
669
+ }, z.core.$strip>>>;
670
+ sourceSnippet: z.ZodOptional<z.ZodObject<{
671
+ path: z.ZodString;
672
+ language: z.ZodOptional<z.ZodString>;
673
+ startLine: z.ZodNumber;
674
+ endLine: z.ZodNumber;
675
+ targetStartLine: z.ZodNumber;
676
+ targetEndLine: z.ZodNumber;
677
+ lines: z.ZodArray<z.ZodObject<{
678
+ line: z.ZodNumber;
679
+ content: z.ZodString;
680
+ highlighted: z.ZodOptional<z.ZodBoolean>;
681
+ }, z.core.$strip>>;
682
+ }, z.core.$strip>>;
683
+ elapsedMs: z.ZodOptional<z.ZodNumber>;
684
+ }, z.core.$strip>>;
685
+ }, z.core.$strip>>>;
686
+ auxiliaryModel: z.ZodOptional<z.ZodString>;
687
+ synthesisModel: z.ZodOptional<z.ZodString>;
688
+ }, z.core.$strip>, z.ZodObject<{
689
+ triggerId: z.ZodOptional<z.ZodString>;
690
+ triggerName: z.ZodString;
691
+ skillName: z.ZodString;
692
+ status: z.ZodLiteral<"error">;
693
+ report: z.ZodOptional<z.ZodNever>;
694
+ error: z.ZodObject<{
695
+ name: z.ZodOptional<z.ZodString>;
696
+ message: z.ZodString;
697
+ }, z.core.$strip>;
698
+ }, z.core.$strip>], "status">>>;
699
+ findingObservations: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
700
+ outcome: z.ZodLiteral<"posted">;
701
+ finding: z.ZodObject<{
702
+ id: z.ZodString;
703
+ severity: z.ZodPreprocess<z.ZodEnum<{
704
+ high: "high";
705
+ low: "low";
706
+ medium: "medium";
707
+ }>>;
708
+ confidence: z.ZodOptional<z.ZodEnum<{
709
+ high: "high";
710
+ low: "low";
711
+ medium: "medium";
712
+ }>>;
713
+ title: z.ZodString;
714
+ description: z.ZodString;
715
+ verification: z.ZodOptional<z.ZodString>;
716
+ location: z.ZodOptional<z.ZodObject<{
717
+ path: z.ZodString;
718
+ startLine: z.ZodNumber;
719
+ endLine: z.ZodOptional<z.ZodNumber>;
720
+ }, z.core.$strip>>;
721
+ additionalLocations: z.ZodOptional<z.ZodArray<z.ZodObject<{
722
+ path: z.ZodString;
723
+ startLine: z.ZodNumber;
724
+ endLine: z.ZodOptional<z.ZodNumber>;
725
+ }, z.core.$strip>>>;
726
+ sourceSnippet: z.ZodOptional<z.ZodObject<{
727
+ path: z.ZodString;
728
+ language: z.ZodOptional<z.ZodString>;
729
+ startLine: z.ZodNumber;
730
+ endLine: z.ZodNumber;
731
+ targetStartLine: z.ZodNumber;
732
+ targetEndLine: z.ZodNumber;
733
+ lines: z.ZodArray<z.ZodObject<{
734
+ line: z.ZodNumber;
735
+ content: z.ZodString;
736
+ highlighted: z.ZodOptional<z.ZodBoolean>;
737
+ }, z.core.$strip>>;
738
+ }, z.core.$strip>>;
739
+ elapsedMs: z.ZodOptional<z.ZodNumber>;
740
+ }, z.core.$strip>;
741
+ skill: z.ZodOptional<z.ZodString>;
742
+ skillExecutionId: z.ZodOptional<z.ZodString>;
743
+ }, z.core.$strip>, z.ZodObject<{
744
+ outcome: z.ZodLiteral<"deduped">;
745
+ finding: z.ZodObject<{
746
+ id: z.ZodString;
747
+ severity: z.ZodPreprocess<z.ZodEnum<{
748
+ high: "high";
749
+ low: "low";
750
+ medium: "medium";
751
+ }>>;
752
+ confidence: z.ZodOptional<z.ZodEnum<{
753
+ high: "high";
754
+ low: "low";
755
+ medium: "medium";
756
+ }>>;
757
+ title: z.ZodString;
758
+ description: z.ZodString;
759
+ verification: z.ZodOptional<z.ZodString>;
760
+ location: z.ZodOptional<z.ZodObject<{
761
+ path: z.ZodString;
762
+ startLine: z.ZodNumber;
763
+ endLine: z.ZodOptional<z.ZodNumber>;
764
+ }, z.core.$strip>>;
765
+ additionalLocations: z.ZodOptional<z.ZodArray<z.ZodObject<{
766
+ path: z.ZodString;
767
+ startLine: z.ZodNumber;
768
+ endLine: z.ZodOptional<z.ZodNumber>;
769
+ }, z.core.$strip>>>;
770
+ sourceSnippet: z.ZodOptional<z.ZodObject<{
771
+ path: z.ZodString;
772
+ language: z.ZodOptional<z.ZodString>;
773
+ startLine: z.ZodNumber;
774
+ endLine: z.ZodNumber;
775
+ targetStartLine: z.ZodNumber;
776
+ targetEndLine: z.ZodNumber;
777
+ lines: z.ZodArray<z.ZodObject<{
778
+ line: z.ZodNumber;
779
+ content: z.ZodString;
780
+ highlighted: z.ZodOptional<z.ZodBoolean>;
781
+ }, z.core.$strip>>;
782
+ }, z.core.$strip>>;
783
+ elapsedMs: z.ZodOptional<z.ZodNumber>;
784
+ }, z.core.$strip>;
785
+ skill: z.ZodOptional<z.ZodString>;
786
+ skillExecutionId: z.ZodOptional<z.ZodString>;
787
+ dedupe: z.ZodObject<{
788
+ source: z.ZodEnum<{
789
+ warden: "warden";
790
+ external: "external";
791
+ }>;
792
+ matchType: z.ZodEnum<{
793
+ hash: "hash";
794
+ semantic: "semantic";
795
+ }>;
796
+ existingFindingId: z.ZodOptional<z.ZodString>;
797
+ existingCommentId: z.ZodOptional<z.ZodNumber>;
798
+ existingThreadId: z.ZodOptional<z.ZodString>;
799
+ existingResolved: z.ZodOptional<z.ZodBoolean>;
800
+ existingSkills: z.ZodOptional<z.ZodArray<z.ZodString>>;
801
+ actor: z.ZodOptional<z.ZodString>;
802
+ }, z.core.$strip>;
803
+ }, z.core.$strip>, z.ZodObject<{
804
+ outcome: z.ZodLiteral<"skipped">;
805
+ finding: z.ZodObject<{
806
+ id: z.ZodString;
807
+ severity: z.ZodPreprocess<z.ZodEnum<{
808
+ high: "high";
809
+ low: "low";
810
+ medium: "medium";
811
+ }>>;
812
+ confidence: z.ZodOptional<z.ZodEnum<{
813
+ high: "high";
814
+ low: "low";
815
+ medium: "medium";
816
+ }>>;
817
+ title: z.ZodString;
818
+ description: z.ZodString;
819
+ verification: z.ZodOptional<z.ZodString>;
820
+ location: z.ZodOptional<z.ZodObject<{
821
+ path: z.ZodString;
822
+ startLine: z.ZodNumber;
823
+ endLine: z.ZodOptional<z.ZodNumber>;
824
+ }, z.core.$strip>>;
825
+ additionalLocations: z.ZodOptional<z.ZodArray<z.ZodObject<{
826
+ path: z.ZodString;
827
+ startLine: z.ZodNumber;
828
+ endLine: z.ZodOptional<z.ZodNumber>;
829
+ }, z.core.$strip>>>;
830
+ sourceSnippet: z.ZodOptional<z.ZodObject<{
831
+ path: z.ZodString;
832
+ language: z.ZodOptional<z.ZodString>;
833
+ startLine: z.ZodNumber;
834
+ endLine: z.ZodNumber;
835
+ targetStartLine: z.ZodNumber;
836
+ targetEndLine: z.ZodNumber;
837
+ lines: z.ZodArray<z.ZodObject<{
838
+ line: z.ZodNumber;
839
+ content: z.ZodString;
840
+ highlighted: z.ZodOptional<z.ZodBoolean>;
841
+ }, z.core.$strip>>;
842
+ }, z.core.$strip>>;
843
+ elapsedMs: z.ZodOptional<z.ZodNumber>;
844
+ }, z.core.$strip>;
845
+ skill: z.ZodOptional<z.ZodString>;
846
+ skillExecutionId: z.ZodOptional<z.ZodString>;
847
+ skippedReason: z.ZodEnum<{
848
+ max_findings: "max_findings";
849
+ duplicate_in_batch: "duplicate_in_batch";
850
+ no_inline_location: "no_inline_location";
851
+ pull_request_changed: "pull_request_changed";
852
+ review_not_posted: "review_not_posted";
853
+ }>;
854
+ }, z.core.$strip>, z.ZodObject<{
855
+ outcome: z.ZodLiteral<"resolved">;
856
+ finding: z.ZodObject<{
857
+ id: z.ZodString;
858
+ severity: z.ZodPreprocess<z.ZodEnum<{
859
+ high: "high";
860
+ low: "low";
861
+ medium: "medium";
862
+ }>>;
863
+ confidence: z.ZodOptional<z.ZodEnum<{
864
+ high: "high";
865
+ low: "low";
866
+ medium: "medium";
867
+ }>>;
868
+ title: z.ZodString;
869
+ description: z.ZodString;
870
+ verification: z.ZodOptional<z.ZodString>;
871
+ location: z.ZodOptional<z.ZodObject<{
872
+ path: z.ZodString;
873
+ startLine: z.ZodNumber;
874
+ endLine: z.ZodOptional<z.ZodNumber>;
875
+ }, z.core.$strip>>;
876
+ additionalLocations: z.ZodOptional<z.ZodArray<z.ZodObject<{
877
+ path: z.ZodString;
878
+ startLine: z.ZodNumber;
879
+ endLine: z.ZodOptional<z.ZodNumber>;
880
+ }, z.core.$strip>>>;
881
+ sourceSnippet: z.ZodOptional<z.ZodObject<{
882
+ path: z.ZodString;
883
+ language: z.ZodOptional<z.ZodString>;
884
+ startLine: z.ZodNumber;
885
+ endLine: z.ZodNumber;
886
+ targetStartLine: z.ZodNumber;
887
+ targetEndLine: z.ZodNumber;
888
+ lines: z.ZodArray<z.ZodObject<{
889
+ line: z.ZodNumber;
890
+ content: z.ZodString;
891
+ highlighted: z.ZodOptional<z.ZodBoolean>;
892
+ }, z.core.$strip>>;
893
+ }, z.core.$strip>>;
894
+ elapsedMs: z.ZodOptional<z.ZodNumber>;
895
+ }, z.core.$strip>;
896
+ skill: z.ZodOptional<z.ZodString>;
897
+ skillExecutionId: z.ZodOptional<z.ZodString>;
898
+ resolvedReason: z.ZodEnum<{
899
+ fix_evaluation: "fix_evaluation";
900
+ stale_check: "stale_check";
901
+ }>;
902
+ }, z.core.$strip>, z.ZodObject<{
903
+ outcome: z.ZodLiteral<"failed">;
904
+ finding: z.ZodObject<{
905
+ id: z.ZodString;
906
+ severity: z.ZodPreprocess<z.ZodEnum<{
907
+ high: "high";
908
+ low: "low";
909
+ medium: "medium";
910
+ }>>;
911
+ confidence: z.ZodOptional<z.ZodEnum<{
912
+ high: "high";
913
+ low: "low";
914
+ medium: "medium";
915
+ }>>;
916
+ title: z.ZodString;
917
+ description: z.ZodString;
918
+ verification: z.ZodOptional<z.ZodString>;
919
+ location: z.ZodOptional<z.ZodObject<{
920
+ path: z.ZodString;
921
+ startLine: z.ZodNumber;
922
+ endLine: z.ZodOptional<z.ZodNumber>;
923
+ }, z.core.$strip>>;
924
+ additionalLocations: z.ZodOptional<z.ZodArray<z.ZodObject<{
925
+ path: z.ZodString;
926
+ startLine: z.ZodNumber;
927
+ endLine: z.ZodOptional<z.ZodNumber>;
928
+ }, z.core.$strip>>>;
929
+ sourceSnippet: z.ZodOptional<z.ZodObject<{
930
+ path: z.ZodString;
931
+ language: z.ZodOptional<z.ZodString>;
932
+ startLine: z.ZodNumber;
933
+ endLine: z.ZodNumber;
934
+ targetStartLine: z.ZodNumber;
935
+ targetEndLine: z.ZodNumber;
936
+ lines: z.ZodArray<z.ZodObject<{
937
+ line: z.ZodNumber;
938
+ content: z.ZodString;
939
+ highlighted: z.ZodOptional<z.ZodBoolean>;
940
+ }, z.core.$strip>>;
941
+ }, z.core.$strip>>;
942
+ elapsedMs: z.ZodOptional<z.ZodNumber>;
943
+ }, z.core.$strip>;
944
+ skill: z.ZodOptional<z.ZodString>;
945
+ skillExecutionId: z.ZodOptional<z.ZodString>;
946
+ }, z.core.$strip>], "outcome">>>;
947
+ }, z.core.$strip>;
948
+ export type FindingsOutput = z.infer<typeof FindingsOutputSchema>;
949
+ export interface ReplayTriggerResult {
950
+ triggerId?: string;
951
+ triggerName: string;
952
+ skillName: string;
953
+ report?: SkillReport;
954
+ error?: unknown;
955
+ findingProcessingEvents?: FindingProcessingEvent[];
956
+ auxiliaryModel?: string;
957
+ synthesisModel?: string;
958
+ }
959
+ /** Per-execution metadata for one `reports[]` entry, matched by object identity. */
960
+ export interface SkillExecutionMeta {
961
+ report: SkillReport;
962
+ skillExecutionId?: string;
963
+ triggerId?: string;
964
+ triggerName?: string;
965
+ auxiliaryModel?: string;
966
+ synthesisModel?: string;
967
+ checkRunUrl?: string;
968
+ checkRunId?: number;
969
+ reviewEvent?: 'APPROVE' | 'REQUEST_CHANGES' | 'COMMENT';
970
+ checkConclusion?: 'success' | 'failure' | 'neutral' | 'cancelled';
971
+ issueNumber?: number;
972
+ issueUrl?: string;
973
+ findingProcessingEvents?: FindingProcessingEvent[];
974
+ }
975
+ export interface BuildFindingsOutputOptions {
976
+ timestamp?: string;
977
+ runId?: string;
978
+ runAttempt?: string;
979
+ actionRef?: string;
980
+ triggerResults?: ReplayTriggerResult[];
981
+ resolvedDefaults?: z.infer<typeof ResolvedDefaultsSchema>;
982
+ skippedTriggers?: z.infer<typeof SkippedTriggerSchema>[];
983
+ /** Per-execution metadata (skillExecutionId, posting-derived fields, captured provenance events) matched to `reports[]` by object identity. */
984
+ skillExecutions?: SkillExecutionMeta[];
985
+ recalledMemories?: readonly {
986
+ id: string;
987
+ version: number;
988
+ }[];
989
+ memoryRecallId?: string;
990
+ }
991
+ /** Build the action-level `resolvedDefaults` block from parsed action inputs. */
992
+ export declare function buildResolvedDefaults(inputs: {
993
+ failOn?: z.infer<typeof SeverityThresholdSchema>;
994
+ reportOn?: z.infer<typeof SeverityThresholdSchema>;
995
+ failCheck?: boolean;
996
+ requestChanges?: boolean;
997
+ maxFindings: number;
998
+ }): NonNullable<BuildFindingsOutputOptions['resolvedDefaults']>;
999
+ /**
1000
+ * Build the `actionRef`/`resolvedDefaults`/`skippedTriggers` triple every
1001
+ * `writeFindingsOutput(Live)` call site needs. Centralizing this keeps a
1002
+ * future field addition from requiring an edit at every individual write
1003
+ * call site across `pr-workflow.ts`/`schedule.ts`.
1004
+ */
1005
+ export declare function buildBaseOutputOptions(inputs: Parameters<typeof buildResolvedDefaults>[0] & {
1006
+ actionRef?: string;
1007
+ }, skippedTriggers: BuildFindingsOutputOptions['skippedTriggers']): Pick<BuildFindingsOutputOptions, 'actionRef' | 'resolvedDefaults' | 'skippedTriggers'>;
1008
+ /** Build the public findings export payload. */
1009
+ export declare function buildFindingsOutput(reports: SkillReport[], context: EventContext, findingObservations?: FindingObservation[], options?: BuildFindingsOutputOptions): FindingsOutput;
1010
+ export {};
1011
+ //# sourceMappingURL=output.d.ts.map