@resolveio/server-lib 22.3.158 → 22.3.159

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.
@@ -1,4 +1,4 @@
1
- import { ResolveIOAIManagerRecoveryCheckpoint, ResolveIOAIManagerRecoveryActionPacket, ResolveIOAIManagerRecoveryActionDispatchRecord, ResolveIOAIManagerRecoveryExecutionDirective, ResolveIOAIManagerRecoveryEvidenceProbe, ResolveIOAIManagerRecoveryPlan } from './ai-runner-manager-policy';
1
+ import { ResolveIOAIManagerHotfixContinuationDecision, ResolveIOAIManagerHotfixFirstReleasePolicy, ResolveIOAIManagerEvidenceStrength, ResolveIOAIManagerRecoveryCheckpoint, ResolveIOAIManagerRecoveryActionPacket, ResolveIOAIManagerRecoveryActionDispatchRecord, ResolveIOAIManagerRecoveryExecutionDirective, ResolveIOAIManagerRecoveryEvidenceProbe, ResolveIOAIManagerRecoveryPlan } from './ai-runner-manager-policy';
2
2
  export type ResolveIOSupportV5StepType = 'diagnosis_gate' | 'reproduction_probe' | 'issue_class_probe' | 'business_proof' | 'compile_check' | 'startup_check' | 'live_seed' | 'auth_bootstrap' | 'route_probe' | 'qa_row' | 'build_repair' | 'qa_retest' | 'pr_review' | 'artifact_package' | 'cleanup';
3
3
  export type ResolveIOSupportV5Outcome = 'pass' | 'needs_repair' | 'retry_same_step' | 'park_manual' | 'budget_stop' | 'infra_retry' | 'ready_for_merge';
4
4
  export type ResolveIOSupportV5Lane = 'build' | 'qa' | 'review' | 'supervisor';
@@ -57,6 +57,35 @@ export interface ResolveIOSupportDiagnosisHint {
57
57
  commitMessage?: string;
58
58
  reason?: string;
59
59
  }
60
+ export type ResolveIOSupportSimilarCaseSource = 'airun' | 'support_ticket' | 'git_commit' | 'manual';
61
+ export interface ResolveIOSupportSimilarCaseCandidate extends ResolveIOSupportDiagnosisHint {
62
+ source: ResolveIOSupportSimilarCaseSource;
63
+ summary?: string;
64
+ keywords?: string[];
65
+ updatedAt?: string;
66
+ metadata?: Record<string, any>;
67
+ }
68
+ export interface ResolveIOSupportSimilarCaseRankedHint extends ResolveIOSupportDiagnosisHint {
69
+ source: ResolveIOSupportSimilarCaseSource;
70
+ score: number;
71
+ structuredSignals: string[];
72
+ advisoryOnly: true;
73
+ }
74
+ export interface ResolveIOSupportSimilarCaseSelectionInput {
75
+ issueClass?: ResolveIOSupportIssueClass | string;
76
+ ownerFiles?: any;
77
+ text?: any;
78
+ candidates?: any[];
79
+ limit?: number;
80
+ now?: Date | string;
81
+ }
82
+ export interface ResolveIOSupportSimilarCaseSelection {
83
+ ranked: ResolveIOSupportSimilarCaseRankedHint[];
84
+ similarTickets: ResolveIOSupportSimilarCaseRankedHint[];
85
+ similarCommits: ResolveIOSupportSimilarCaseRankedHint[];
86
+ ignoredCount: number;
87
+ generatedAt: string;
88
+ }
60
89
  export interface ResolveIOSupportDiagnosisEvidence {
61
90
  type: 'ticket' | 'browser' | 'mongo' | 'log' | 'code' | 'commit' | 'qa' | 'other';
62
91
  summary: string;
@@ -95,12 +124,35 @@ export interface ResolveIOSupportDiagnosisEvidenceQuality {
95
124
  hasReproductionEvidence: boolean;
96
125
  }
97
126
  export type ResolveIOSupportCustomerReplyAction = 'draft_resolution_reply' | 'ask_clarification' | 'hold_internal';
127
+ export type ResolveIOSupportHumanReviewType = 'diagnosis_gate' | 'owner_scoped_repair' | 'business_proof_qa' | 'release_hotfix' | 'customer_resolution_reply' | 'customer_clarification' | 'new_evidence' | 'internal_hold';
128
+ export interface ResolveIOSupportHumanReviewPacket {
129
+ reviewType: ResolveIOSupportHumanReviewType;
130
+ title: string;
131
+ summary: string;
132
+ primaryAction: string;
133
+ question?: string;
134
+ customerFacingDraftAllowed: boolean;
135
+ customerSendAllowed: boolean;
136
+ requiresHumanApproval: boolean;
137
+ safety: 'safe_to_draft' | 'needs_clarification' | 'internal_hold';
138
+ reason: string;
139
+ blockers: string[];
140
+ requiredEvidence: string[];
141
+ evidenceRefs: string[];
142
+ nextCommands: string[];
143
+ forbiddenActions: string[];
144
+ costRisk: 'free_or_deterministic' | 'small_model_or_qa' | 'expensive_model' | 'release_or_customer_send';
145
+ createdAt: string;
146
+ }
98
147
  export interface ResolveIOSupportCustomerReplyPolicyInput {
99
148
  diagnosisGate?: any;
100
149
  outcomeLabel?: string;
101
150
  confidence?: any;
102
151
  businessAssertionStatus?: string;
152
+ businessAssertions?: any[];
103
153
  businessProofArtifacts?: any[];
154
+ previousProofFingerprint?: string;
155
+ previousArtifactFingerprint?: string;
104
156
  unresolvedBlockers?: any[];
105
157
  releaseStatus?: string;
106
158
  }
@@ -113,6 +165,7 @@ export interface ResolveIOSupportCustomerReplyPolicy {
113
165
  reason: string;
114
166
  requiredEvidence: string[];
115
167
  clarificationQuestion?: string;
168
+ humanReviewPacket?: ResolveIOSupportHumanReviewPacket;
116
169
  draftBasis?: {
117
170
  issueClass: ResolveIOSupportIssueClass;
118
171
  businessProof: string;
@@ -122,18 +175,69 @@ export interface ResolveIOSupportCustomerReplyPolicy {
122
175
  export interface ResolveIOSupportIssueClassProbe {
123
176
  issue_class: ResolveIOSupportIssueClass;
124
177
  probe_type: ResolveIOSupportV5StepType;
178
+ failure_class: ResolveIOSupportV5FailureClass;
125
179
  objective: string;
126
180
  route?: string;
127
181
  action: string;
128
182
  expected_evidence: string;
183
+ expected_business_proof: string;
184
+ required_artifacts: string[];
185
+ state_transition: {
186
+ before: string;
187
+ action: string;
188
+ after: string;
189
+ assertion: string;
190
+ };
191
+ acceptance_gate: 'aiqa_business_assertion';
129
192
  blocks_acceptance_without_business_assertion: boolean;
130
193
  }
194
+ export interface ResolveIOSupportBusinessProofAssertion {
195
+ assertion: string;
196
+ status: string;
197
+ workflow?: string;
198
+ route?: string;
199
+ before?: string;
200
+ action?: string;
201
+ expected?: string;
202
+ after?: string;
203
+ observed?: string;
204
+ dataProof?: string;
205
+ mongoDelta?: Record<string, any>;
206
+ artifactPaths: string[];
207
+ message?: string;
208
+ acceptanceBlocked?: boolean;
209
+ routeOnly?: boolean;
210
+ metadata?: Record<string, any>;
211
+ }
212
+ export interface ResolveIOSupportBusinessProofReadinessInput {
213
+ diagnosisGate?: any;
214
+ outcomeLabel?: string;
215
+ businessAssertionStatus?: string;
216
+ businessAssertions?: any[];
217
+ businessProofArtifacts?: any[];
218
+ previousProofFingerprint?: string;
219
+ previousArtifactFingerprint?: string;
220
+ }
221
+ export interface ResolveIOSupportBusinessProofReadiness {
222
+ ready: boolean;
223
+ status: 'missing' | 'route_only' | 'failed' | 'blocked' | 'weak' | 'stale' | 'passed';
224
+ reason: string;
225
+ blockers: string[];
226
+ requiredEvidence: string[];
227
+ artifactPaths: string[];
228
+ proofFingerprint: string;
229
+ artifactFingerprint: string;
230
+ proofFreshness: 'missing' | 'fresh' | 'same_as_previous' | 'stale_artifact' | 'unknown';
231
+ matchedAssertion?: ResolveIOSupportBusinessProofAssertion;
232
+ }
131
233
  export interface ResolveIOSupportV5RepeatStopInput {
132
234
  history: ResolveIOSupportV5StepRecord[];
133
235
  failureClass?: ResolveIOSupportV5FailureClass | string;
134
236
  blocker?: string;
135
237
  evidence?: any;
136
238
  evidenceHash?: string;
239
+ changedFiles?: any;
240
+ artifactPaths?: any;
137
241
  limit?: number;
138
242
  ignoreInfra?: boolean;
139
243
  }
@@ -143,13 +247,39 @@ export interface ResolveIOSupportV5RepeatStopDecision {
143
247
  failureClass: string;
144
248
  blockerFingerprint: string;
145
249
  evidenceHash: string;
250
+ newEvidence?: boolean;
251
+ materialEvidence?: boolean;
252
+ evidenceStrength?: ResolveIOAIManagerEvidenceStrength;
253
+ evidenceSignals?: string[];
146
254
  reason: string;
147
255
  }
256
+ export type ResolveIOSupportEvidenceFreshnessStatus = 'missing' | 'fresh' | 'retry_below_limit' | 'material_evidence' | 'weak_evidence' | 'stale_repeated' | 'ping_pong' | 'infra_ignored';
257
+ export interface ResolveIOSupportEvidenceFreshness {
258
+ status: ResolveIOSupportEvidenceFreshnessStatus;
259
+ failureClass: string;
260
+ blockerFingerprint: string;
261
+ evidenceHash: string;
262
+ sameFailureCount: number;
263
+ pingPongCount: number;
264
+ newEvidence: boolean;
265
+ materialEvidence: boolean;
266
+ evidenceStrength: ResolveIOAIManagerEvidenceStrength;
267
+ evidenceSignals: string[];
268
+ loopBudgetShouldReset: boolean;
269
+ canRetry: boolean;
270
+ mustCollectNewEvidence: boolean;
271
+ productRepairFailure: boolean;
272
+ reason: string;
273
+ requiredResetEvidence: string[];
274
+ changedFiles: string[];
275
+ artifactPaths: string[];
276
+ }
148
277
  export type ResolveIOSupportV5RepairGateAction = 'diagnose_only' | 'infra_repair_only' | 'allow_product_repair' | 'reject_out_of_scope' | 'park_repeated_failure';
149
278
  export interface ResolveIOSupportV5RepairGateInput {
150
279
  diagnosisGate?: any;
151
280
  activeStepType?: ResolveIOSupportV5StepType | string;
152
281
  changedFiles?: any;
282
+ artifactPaths?: any;
153
283
  failureClass?: ResolveIOSupportV5FailureClass | string;
154
284
  blocker?: string;
155
285
  evidence?: any;
@@ -374,7 +504,36 @@ export interface ResolveIOSupportV5ContinuationDecision {
374
504
  recoveryEvidenceProbe: ResolveIOAIManagerRecoveryEvidenceProbe;
375
505
  recoveryAction: ResolveIOAIManagerRecoveryActionPacket;
376
506
  }
377
- export type ResolveIOSupportV5AutonomousNextAction = 'run_diagnosis_gate' | 'repair_infra_only' | 'revise_diagnosis_scope' | 'run_owner_scoped_repair' | 'run_business_proof_qa' | 'repair_release_hotfix_first' | 'collect_new_evidence' | 'draft_customer_reply' | 'ready_for_release_gate' | 'park_manual';
507
+ export type ResolveIOSupportV5AutonomousNextAction = 'run_diagnosis_gate' | 'ask_customer_clarification' | 'repair_infra_only' | 'revise_diagnosis_scope' | 'run_owner_scoped_repair' | 'run_business_proof_qa' | 'repair_release_hotfix_first' | 'collect_new_evidence' | 'draft_customer_reply' | 'ready_for_release_gate' | 'park_manual';
508
+ export type ResolveIOSupportRootCauseReadinessStatus = 'diagnosis_required' | 'customer_clarification_required' | 'infra_repair_only' | 'scope_revision_required' | 'owner_scoped_repair_ready' | 'business_proof_required' | 'release_hotfix_required' | 'release_gate_ready' | 'customer_reply_draft_ready' | 'collect_new_evidence' | 'parked';
509
+ export interface ResolveIOSupportRootCauseReadiness {
510
+ status: ResolveIOSupportRootCauseReadinessStatus;
511
+ nextGate: 'diagnosis' | 'infra' | 'scope' | 'repair' | 'business_proof' | 'release' | 'customer_reply' | 'evidence' | 'manual';
512
+ nextCommand: string;
513
+ rootCauseFirstSatisfied: boolean;
514
+ diagnosisValid: boolean;
515
+ ownerFilesReady: boolean;
516
+ proofPlanReady: boolean;
517
+ businessProofReady: boolean;
518
+ infraOnly: boolean;
519
+ sameFailureParked: boolean;
520
+ canEditProductCode: boolean;
521
+ canRunIssueClassProbe: boolean;
522
+ canRunBusinessProofQa: boolean;
523
+ canRelease: boolean;
524
+ canDraftCustomerReply: boolean;
525
+ requiresHumanDecision: boolean;
526
+ reason: string;
527
+ blockers: string[];
528
+ ownerFiles: string[];
529
+ issueClass?: ResolveIOSupportIssueClass;
530
+ expectedProof?: string;
531
+ issueClassProbes?: ResolveIOSupportIssueClassProbe[];
532
+ businessProofStatus?: ResolveIOSupportBusinessProofReadiness['status'];
533
+ proofFingerprint?: string;
534
+ artifactFingerprint?: string;
535
+ proofFreshness?: ResolveIOSupportBusinessProofReadiness['proofFreshness'];
536
+ }
378
537
  export interface ResolveIOSupportV5AutonomousDecisionInput {
379
538
  bundle: ResolveIOSupportV5StateBundle;
380
539
  changedFiles?: any;
@@ -385,9 +544,16 @@ export interface ResolveIOSupportV5AutonomousDecisionInput {
385
544
  outcomeLabel?: string;
386
545
  confidence?: any;
387
546
  businessAssertionStatus?: string;
547
+ businessAssertions?: any[];
388
548
  businessProofArtifacts?: any[];
549
+ artifactPaths?: any;
550
+ previousProofFingerprint?: string;
551
+ previousArtifactFingerprint?: string;
389
552
  unresolvedBlockers?: any[];
390
553
  releaseStatus?: string;
554
+ hotfixEvidence?: any;
555
+ releasePolicy?: ResolveIOAIManagerHotfixFirstReleasePolicy;
556
+ releaseGatePassed?: boolean;
391
557
  maxOwnerFiles?: number;
392
558
  now?: Date | string;
393
559
  }
@@ -413,23 +579,44 @@ export interface ResolveIOSupportV5AutonomousDecision {
413
579
  ownerFiles: string[];
414
580
  issueClass?: ResolveIOSupportIssueClass;
415
581
  expectedProof?: string;
582
+ issueClassProbes: ResolveIOSupportIssueClassProbe[];
416
583
  activeMicrotask?: ResolveIOSupportV5Microtask;
417
584
  diagnosisValidation: ResolveIOSupportDiagnosisGateValidation;
418
585
  repairGate: ResolveIOSupportV5RepairGateDecision;
419
586
  continuation: ResolveIOSupportV5ContinuationDecision;
420
587
  customerReplyPolicy: ResolveIOSupportCustomerReplyPolicy;
588
+ businessProofReadiness: ResolveIOSupportBusinessProofReadiness;
589
+ evidenceFreshness: ResolveIOSupportEvidenceFreshness;
590
+ rootCauseReadiness: ResolveIOSupportRootCauseReadiness;
591
+ humanReviewPacket: ResolveIOSupportHumanReviewPacket;
592
+ hotfixContinuation?: ResolveIOAIManagerHotfixContinuationDecision;
421
593
  recordedAt: string;
422
594
  }
595
+ export declare function selectResolveIOSupportSimilarCaseHints(input?: ResolveIOSupportSimilarCaseSelectionInput): ResolveIOSupportSimilarCaseSelection;
423
596
  export declare function evaluateResolveIOSupportDiagnosisEvidenceQuality(value: any): ResolveIOSupportDiagnosisEvidenceQuality;
424
597
  export declare function normalizeResolveIOSupportDiagnosisGate(value: any, now?: Date | string): ResolveIOSupportDiagnosisGate | undefined;
425
598
  export declare function extractResolveIOSupportDiagnosisGateFromText(value: string, now?: Date | string): ResolveIOSupportDiagnosisGate | undefined;
426
599
  export declare function validateResolveIOSupportDiagnosisGate(value: any, options?: {
427
600
  maxOwnerFiles?: number;
428
601
  }): ResolveIOSupportDiagnosisGateValidation;
602
+ export declare function evaluateResolveIOSupportBusinessProofReadiness(input?: ResolveIOSupportBusinessProofReadinessInput): ResolveIOSupportBusinessProofReadiness;
429
603
  export declare function decideResolveIOSupportCustomerReplyPolicy(input?: ResolveIOSupportCustomerReplyPolicyInput): ResolveIOSupportCustomerReplyPolicy;
430
604
  export declare function buildResolveIOSupportIssueClassProbes(value: any): ResolveIOSupportIssueClassProbe[];
431
605
  export declare function hashResolveIOSupportV5Evidence(value: any): string;
432
606
  export declare function decideResolveIOSupportV5RepeatedFailureStop(input: ResolveIOSupportV5RepeatStopInput): ResolveIOSupportV5RepeatStopDecision;
607
+ export declare function evaluateResolveIOSupportEvidenceFreshness(input: {
608
+ history?: ResolveIOSupportV5StepRecord[];
609
+ failureClass?: ResolveIOSupportV5FailureClass | string;
610
+ blocker?: any;
611
+ evidence?: any;
612
+ evidenceHash?: string;
613
+ changedFiles?: any;
614
+ artifactPaths?: any;
615
+ lane?: ResolveIOSupportV5Lane | string;
616
+ stepType?: ResolveIOSupportV5StepType | string;
617
+ limit?: number;
618
+ ignoreInfra?: boolean;
619
+ }): ResolveIOSupportEvidenceFreshness;
433
620
  export declare function changedFilesOutsideResolveIOSupportDiagnosisOwnerFiles(diagnosisGate: any, changedFiles: any, options?: {
434
621
  allowTests?: boolean;
435
622
  }): string[];
@@ -479,6 +666,7 @@ export declare function buildResolveIOSupportV5MicrotaskPrompt(input: {
479
666
  artifactPaths?: string[];
480
667
  targetFiles?: string[];
481
668
  contextSnippets?: string[];
669
+ similarCaseHints?: any;
482
670
  activeQaRow?: ResolveIOSupportV5LaneMemory['activeQaRow'];
483
671
  }): {
484
672
  prompt: string;