@resolveio/server-lib 22.3.158 → 22.3.160

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
  }
@@ -399,7 +565,9 @@ export interface ResolveIOSupportV5AutonomousDecision {
399
565
  canEditProductCode: boolean;
400
566
  canRunModel: boolean;
401
567
  canRunQa: boolean;
568
+ canPrepareHotfixPatch: boolean;
402
569
  canHotfixBackend: boolean;
570
+ liveHotfixBlockedUntilCommit: boolean;
403
571
  canDraftCustomerReply: boolean;
404
572
  canSendCustomerReply: boolean;
405
573
  lane: ResolveIOSupportV5Lane | 'release' | 'customer';
@@ -413,23 +581,44 @@ export interface ResolveIOSupportV5AutonomousDecision {
413
581
  ownerFiles: string[];
414
582
  issueClass?: ResolveIOSupportIssueClass;
415
583
  expectedProof?: string;
584
+ issueClassProbes: ResolveIOSupportIssueClassProbe[];
416
585
  activeMicrotask?: ResolveIOSupportV5Microtask;
417
586
  diagnosisValidation: ResolveIOSupportDiagnosisGateValidation;
418
587
  repairGate: ResolveIOSupportV5RepairGateDecision;
419
588
  continuation: ResolveIOSupportV5ContinuationDecision;
420
589
  customerReplyPolicy: ResolveIOSupportCustomerReplyPolicy;
590
+ businessProofReadiness: ResolveIOSupportBusinessProofReadiness;
591
+ evidenceFreshness: ResolveIOSupportEvidenceFreshness;
592
+ rootCauseReadiness: ResolveIOSupportRootCauseReadiness;
593
+ humanReviewPacket: ResolveIOSupportHumanReviewPacket;
594
+ hotfixContinuation?: ResolveIOAIManagerHotfixContinuationDecision;
421
595
  recordedAt: string;
422
596
  }
597
+ export declare function selectResolveIOSupportSimilarCaseHints(input?: ResolveIOSupportSimilarCaseSelectionInput): ResolveIOSupportSimilarCaseSelection;
423
598
  export declare function evaluateResolveIOSupportDiagnosisEvidenceQuality(value: any): ResolveIOSupportDiagnosisEvidenceQuality;
424
599
  export declare function normalizeResolveIOSupportDiagnosisGate(value: any, now?: Date | string): ResolveIOSupportDiagnosisGate | undefined;
425
600
  export declare function extractResolveIOSupportDiagnosisGateFromText(value: string, now?: Date | string): ResolveIOSupportDiagnosisGate | undefined;
426
601
  export declare function validateResolveIOSupportDiagnosisGate(value: any, options?: {
427
602
  maxOwnerFiles?: number;
428
603
  }): ResolveIOSupportDiagnosisGateValidation;
604
+ export declare function evaluateResolveIOSupportBusinessProofReadiness(input?: ResolveIOSupportBusinessProofReadinessInput): ResolveIOSupportBusinessProofReadiness;
429
605
  export declare function decideResolveIOSupportCustomerReplyPolicy(input?: ResolveIOSupportCustomerReplyPolicyInput): ResolveIOSupportCustomerReplyPolicy;
430
606
  export declare function buildResolveIOSupportIssueClassProbes(value: any): ResolveIOSupportIssueClassProbe[];
431
607
  export declare function hashResolveIOSupportV5Evidence(value: any): string;
432
608
  export declare function decideResolveIOSupportV5RepeatedFailureStop(input: ResolveIOSupportV5RepeatStopInput): ResolveIOSupportV5RepeatStopDecision;
609
+ export declare function evaluateResolveIOSupportEvidenceFreshness(input: {
610
+ history?: ResolveIOSupportV5StepRecord[];
611
+ failureClass?: ResolveIOSupportV5FailureClass | string;
612
+ blocker?: any;
613
+ evidence?: any;
614
+ evidenceHash?: string;
615
+ changedFiles?: any;
616
+ artifactPaths?: any;
617
+ lane?: ResolveIOSupportV5Lane | string;
618
+ stepType?: ResolveIOSupportV5StepType | string;
619
+ limit?: number;
620
+ ignoreInfra?: boolean;
621
+ }): ResolveIOSupportEvidenceFreshness;
433
622
  export declare function changedFilesOutsideResolveIOSupportDiagnosisOwnerFiles(diagnosisGate: any, changedFiles: any, options?: {
434
623
  allowTests?: boolean;
435
624
  }): string[];
@@ -479,6 +668,7 @@ export declare function buildResolveIOSupportV5MicrotaskPrompt(input: {
479
668
  artifactPaths?: string[];
480
669
  targetFiles?: string[];
481
670
  contextSnippets?: string[];
671
+ similarCaseHints?: any;
482
672
  activeQaRow?: ResolveIOSupportV5LaneMemory['activeQaRow'];
483
673
  }): {
484
674
  prompt: string;