@resolveio/server-lib 22.3.181 → 22.3.182

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@resolveio/server-lib",
3
- "version": "22.3.181",
3
+ "version": "22.3.182",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "package": "./build_package.sh",
@@ -198,6 +198,10 @@ export interface ResolveIOSupportCustomerReplyPolicyInput {
198
198
  previousArtifactFingerprint?: string;
199
199
  unresolvedBlockers?: any[];
200
200
  releaseStatus?: string;
201
+ releaseEvidence?: any;
202
+ hotfixEvidence?: any;
203
+ releasePolicy?: ResolveIOAIManagerHotfixFirstReleasePolicy;
204
+ releaseGatePassed?: boolean;
201
205
  }
202
206
  export interface ResolveIOSupportCustomerReplyPolicy {
203
207
  action: ResolveIOSupportCustomerReplyAction;
@@ -1001,6 +1001,146 @@ function normalizeSupportConfidenceLevel(value) {
1001
1001
  function supportReleaseLooksBlocked(value) {
1002
1002
  return /\b(fail|failed|error|blocked|missing|empty|stale|denied|timeout)\b/i.test(cleanText(value, 200));
1003
1003
  }
1004
+ function supportStatusLooksPassed(value) {
1005
+ return /\b(pass|passed|success|succeeded|complete|completed|ready|not_required|not required)\b/i.test(cleanText(value, 200));
1006
+ }
1007
+ function nestedObject(source) {
1008
+ var e_5, _a;
1009
+ var keys = [];
1010
+ for (var _i = 1; _i < arguments.length; _i++) {
1011
+ keys[_i - 1] = arguments[_i];
1012
+ }
1013
+ try {
1014
+ for (var keys_1 = __values(keys), keys_1_1 = keys_1.next(); !keys_1_1.done; keys_1_1 = keys_1.next()) {
1015
+ var key = keys_1_1.value;
1016
+ var value = cleanObject(source[key]);
1017
+ if (Object.keys(value).length) {
1018
+ return value;
1019
+ }
1020
+ }
1021
+ }
1022
+ catch (e_5_1) { e_5 = { error: e_5_1 }; }
1023
+ finally {
1024
+ try {
1025
+ if (keys_1_1 && !keys_1_1.done && (_a = keys_1.return)) _a.call(keys_1);
1026
+ }
1027
+ finally { if (e_5) throw e_5.error; }
1028
+ }
1029
+ return {};
1030
+ }
1031
+ function resolveSupportReplyReleaseGate(input) {
1032
+ var e_6, _a;
1033
+ var _b;
1034
+ var releaseEvidence = cleanObject(input.releaseEvidence);
1035
+ var releaseStatus = cleanText(input.releaseStatus
1036
+ || releaseEvidence.status
1037
+ || releaseEvidence.releaseStatus
1038
+ || releaseEvidence.release_status
1039
+ || nestedObject(releaseEvidence, 'deploy_production', 'production').status
1040
+ || nestedObject(releaseEvidence, 'deploy_dev', 'dev').status
1041
+ || nestedObject(releaseEvidence, 'push_master', 'pushMaster').status, 200);
1042
+ var hotfixEvidenceContainer = nestedObject(releaseEvidence, 'hotfix_evidence', 'hotfixEvidence');
1043
+ var currentHotfixEvidence = nestedObject(hotfixEvidenceContainer, 'current');
1044
+ var hotfixEvidence = cleanObject(input.hotfixEvidence
1045
+ || hotfixEvidenceContainer.normalized
1046
+ || hotfixEvidenceContainer.evidence
1047
+ || currentHotfixEvidence.evidence
1048
+ || currentHotfixEvidence.normalized
1049
+ || hotfixEvidenceContainer.current_evidence
1050
+ || hotfixEvidenceContainer.currentEvidence);
1051
+ var hotfixCommitProof = nestedObject(releaseEvidence, 'hotfix_commit_proof', 'hotfixCommitProof');
1052
+ var hotfixDurabilityContract = nestedObject(releaseEvidence, 'hotfix_durability_contract', 'hotfixDurabilityContract');
1053
+ var hotfixCommitGuard = cleanObject(hotfixCommitProof.github_commit_guard
1054
+ || hotfixCommitProof.githubCommitGuard
1055
+ || hotfixDurabilityContract.hotfix_commit_guard
1056
+ || hotfixDurabilityContract.hotfixCommitGuard
1057
+ || hotfixEvidenceContainer.github_commit_guard
1058
+ || hotfixEvidenceContainer.githubCommitGuard);
1059
+ var hotfixEvidenceStatus = cleanText(hotfixEvidenceContainer.status || currentHotfixEvidence.status || hotfixEvidence.status, 120);
1060
+ var releaseGateStatus = cleanText(hotfixEvidence.releaseGateStatus
1061
+ || hotfixEvidence.release_gate_status
1062
+ || hotfixEvidenceContainer.release_gate_status
1063
+ || hotfixEvidenceContainer.releaseGateStatus
1064
+ || releaseEvidence.releaseGateStatus
1065
+ || releaseEvidence.release_gate_status, 160);
1066
+ var releaseGatePassed = input.releaseGatePassed === true
1067
+ || supportStatusLooksPassed(releaseGateStatus);
1068
+ var missingCommitProofFields = Array.from(new Set(__spreadArray(__spreadArray(__spreadArray(__spreadArray([], __read(cleanList(hotfixCommitProof.missing_fields || hotfixCommitProof.missingFields, 12, 160)), false), __read(cleanList(hotfixEvidenceContainer.missing_fields || hotfixEvidenceContainer.missingFields, 12, 160)), false), __read(cleanList(hotfixDurabilityContract.missing_commit_proof_fields || hotfixDurabilityContract.missingCommitProofFields, 12, 160)), false), __read(cleanList(hotfixCommitGuard.missing_fields || hotfixCommitGuard.missingFields, 12, 160)), false).filter(Boolean)));
1069
+ var commitProofRequired = hotfixCommitProof.required === true
1070
+ || hotfixEvidenceContainer.github_commit_required === true
1071
+ || hotfixEvidenceContainer.githubCommitRequired === true
1072
+ || hotfixCommitGuard.required === true
1073
+ || hotfixDurabilityContract.required === true;
1074
+ var commitProofPassed = hotfixCommitProof.passed === true
1075
+ || hotfixEvidenceContainer.github_commit_proof_passed === true
1076
+ || hotfixEvidenceContainer.githubCommitProofPassed === true
1077
+ || hotfixCommitGuard.passed === true;
1078
+ var commitProofBlocked = hotfixCommitProof.blocked === true
1079
+ || hotfixEvidenceContainer.manager_must_commit_before_hotfix === true
1080
+ || hotfixEvidenceContainer.managerMustCommitBeforeHotfix === true
1081
+ || hotfixDurabilityContract.live_hotfix_blocked_until_commit === true
1082
+ || hotfixDurabilityContract.liveHotfixBlockedUntilCommit === true
1083
+ || hotfixCommitGuard.manager_must_commit_before_hotfix === true
1084
+ || hotfixCommitGuard.managerMustCommitBeforeHotfix === true
1085
+ || (commitProofRequired && !commitProofPassed)
1086
+ || missingCommitProofFields.length > 0;
1087
+ var statusBlocked = supportReleaseLooksBlocked(releaseStatus)
1088
+ || supportReleaseLooksBlocked(hotfixEvidenceStatus)
1089
+ || supportReleaseLooksBlocked(releaseGateStatus);
1090
+ var blockers = [];
1091
+ if (statusBlocked) {
1092
+ blockers.push("release_status=".concat(releaseStatus || hotfixEvidenceStatus || releaseGateStatus || 'blocked'));
1093
+ }
1094
+ if (commitProofBlocked) {
1095
+ blockers.push('hotfix_commit_proof_missing_or_blocked');
1096
+ }
1097
+ try {
1098
+ for (var missingCommitProofFields_1 = __values(missingCommitProofFields), missingCommitProofFields_1_1 = missingCommitProofFields_1.next(); !missingCommitProofFields_1_1.done; missingCommitProofFields_1_1 = missingCommitProofFields_1.next()) {
1099
+ var field = missingCommitProofFields_1_1.value;
1100
+ blockers.push("missing_".concat(field));
1101
+ }
1102
+ }
1103
+ catch (e_6_1) { e_6 = { error: e_6_1 }; }
1104
+ finally {
1105
+ try {
1106
+ if (missingCommitProofFields_1_1 && !missingCommitProofFields_1_1.done && (_a = missingCommitProofFields_1.return)) _a.call(missingCommitProofFields_1);
1107
+ }
1108
+ finally { if (e_6) throw e_6.error; }
1109
+ }
1110
+ var shouldEvaluateHotfix = statusBlocked || commitProofRequired || Object.keys(hotfixEvidence).length > 0;
1111
+ var hotfixContinuation = shouldEvaluateHotfix
1112
+ ? (0, ai_runner_manager_policy_1.decideResolveIOAIManagerHotfixContinuation)({
1113
+ evidence: hotfixEvidence,
1114
+ policy: input.releasePolicy,
1115
+ releaseGatePassed: releaseGatePassed,
1116
+ failureClass: 'release',
1117
+ blocker: blockers.join('; ') || releaseStatus || hotfixEvidenceStatus || releaseGateStatus,
1118
+ now: undefined
1119
+ })
1120
+ : undefined;
1121
+ if (hotfixContinuation && hotfixContinuation.action !== 'continue_runner' && (statusBlocked || commitProofBlocked || hotfixContinuation.action === 'record_hotfix_evidence' || hotfixContinuation.action === 'rerun_release_gate')) {
1122
+ blockers.push("hotfix_next_action=".concat(hotfixContinuation.action));
1123
+ }
1124
+ var uniqueBlockers = Array.from(new Set(blockers.filter(Boolean)));
1125
+ return {
1126
+ blocked: uniqueBlockers.length > 0,
1127
+ reason: uniqueBlockers.length
1128
+ ? 'support_reply_release_or_hotfix_evidence_blocked'
1129
+ : 'support_reply_release_or_hotfix_evidence_clear',
1130
+ status: releaseStatus || hotfixEvidenceStatus || releaseGateStatus || '',
1131
+ blockers: uniqueBlockers,
1132
+ requiredEvidence: [
1133
+ 'release status passed or explicitly not required',
1134
+ 'hotfix commit proof clear when hotfix evidence is required',
1135
+ 'sourceCommitSha, githubCommitUrl, gitCommitStatus=passed, gitPushStatus=passed when backend hotfix was used',
1136
+ 'release gate passed when hotfix evidence requires gate rerun'
1137
+ ],
1138
+ nextCommands: ((_b = hotfixContinuation === null || hotfixContinuation === void 0 ? void 0 : hotfixContinuation.nextCommands) === null || _b === void 0 ? void 0 : _b.length)
1139
+ ? hotfixContinuation.nextCommands
1140
+ : ['record_hotfix_evidence', 'commit_and_push_hotfix_to_github', 'rerun_release_gate_once'],
1141
+ hotfixContinuation: hotfixContinuation
1142
+ };
1143
+ }
1004
1144
  function supportBusinessAssertionPassed(value) {
1005
1145
  return /^(pass|passed|accepted|business_assertion_passed)$/i.test(cleanText(value, 80));
1006
1146
  }
@@ -1011,7 +1151,7 @@ function supportBusinessAssertionRouteOnly(value) {
1011
1151
  return /^(route_probe_pass|route_only_pass|route_pass|route_probe|route_loaded)$/i.test(cleanText(value, 80));
1012
1152
  }
1013
1153
  function normalizeSupportBusinessProofAssertions(input) {
1014
- var e_5, _a;
1154
+ var e_7, _a;
1015
1155
  var gate = normalizeResolveIOSupportDiagnosisGate(input.diagnosisGate);
1016
1156
  var proofPlan = gate === null || gate === void 0 ? void 0 : gate.proof_plan;
1017
1157
  var proofContract = proofPlan === null || proofPlan === void 0 ? void 0 : proofPlan.business_proof_contract;
@@ -1045,12 +1185,12 @@ function normalizeSupportBusinessProofAssertions(input) {
1045
1185
  });
1046
1186
  }
1047
1187
  }
1048
- catch (e_5_1) { e_5 = { error: e_5_1 }; }
1188
+ catch (e_7_1) { e_7 = { error: e_7_1 }; }
1049
1189
  finally {
1050
1190
  try {
1051
1191
  if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
1052
1192
  }
1053
- finally { if (e_5) throw e_5.error; }
1193
+ finally { if (e_7) throw e_7.error; }
1054
1194
  }
1055
1195
  var status = cleanText(input.businessAssertionStatus || input.outcomeLabel, 80);
1056
1196
  if (!assertions.length && (supportBusinessAssertionPassed(status) || supportBusinessAssertionRouteOnly(status) || supportBusinessAssertionFailed(status))) {
@@ -1089,7 +1229,7 @@ function supportBusinessProofAssertionText(assertion) {
1089
1229
  ].filter(Boolean).join(' '), 4000);
1090
1230
  }
1091
1231
  function supportBusinessProofAssertionMatchesContract(assertion, gate) {
1092
- var e_6, _a;
1232
+ var e_8, _a;
1093
1233
  if (!gate) {
1094
1234
  return false;
1095
1235
  }
@@ -1129,12 +1269,12 @@ function supportBusinessProofAssertionMatchesContract(assertion, gate) {
1129
1269
  }
1130
1270
  }
1131
1271
  }
1132
- catch (e_6_1) { e_6 = { error: e_6_1 }; }
1272
+ catch (e_8_1) { e_8 = { error: e_8_1 }; }
1133
1273
  finally {
1134
1274
  try {
1135
1275
  if (proofWords_1_1 && !proofWords_1_1.done && (_a = proofWords_1.return)) _a.call(proofWords_1);
1136
1276
  }
1137
- finally { if (e_6) throw e_6.error; }
1277
+ finally { if (e_8) throw e_8.error; }
1138
1278
  }
1139
1279
  return overlap >= Math.min(5, Math.max(3, Math.ceil(proofWords.size * 0.45)));
1140
1280
  }
@@ -1364,7 +1504,7 @@ function decideResolveIOSupportCustomerReplyPolicy(input) {
1364
1504
  });
1365
1505
  var artifactCount = businessProofReadiness.artifactPaths.length;
1366
1506
  var unresolvedBlockers = cleanList(input.unresolvedBlockers, 20, 500);
1367
- var releaseBlocked = supportReleaseLooksBlocked(input.releaseStatus);
1507
+ var releaseGate = resolveSupportReplyReleaseGate(input);
1368
1508
  var requiredEvidence = [
1369
1509
  'valid SupportDiagnosisGate',
1370
1510
  'validated IssueClassProbePlan',
@@ -1505,7 +1645,8 @@ function decideResolveIOSupportCustomerReplyPolicy(input) {
1505
1645
  })
1506
1646
  };
1507
1647
  }
1508
- if (releaseBlocked) {
1648
+ if (releaseGate.blocked) {
1649
+ var releaseRequiredEvidence = Array.from(new Set(__spreadArray(__spreadArray([], __read(requiredEvidence), false), __read(releaseGate.requiredEvidence), false)));
1509
1650
  return {
1510
1651
  action: 'hold_internal',
1511
1652
  canDraftCustomerReply: false,
@@ -1513,7 +1654,7 @@ function decideResolveIOSupportCustomerReplyPolicy(input) {
1513
1654
  confidenceLevel: confidenceLevel,
1514
1655
  safety: 'internal_hold',
1515
1656
  reason: 'support_reply_blocked_until_release_or_hotfix_gate_finishes',
1516
- requiredEvidence: requiredEvidence,
1657
+ requiredEvidence: releaseRequiredEvidence,
1517
1658
  humanReviewPacket: buildResolveIOSupportHumanReviewPacket({
1518
1659
  reviewType: 'release_hotfix',
1519
1660
  title: 'Finish Release Or Hotfix Gate',
@@ -1521,9 +1662,9 @@ function decideResolveIOSupportCustomerReplyPolicy(input) {
1521
1662
  primaryAction: 'repair_release_hotfix_first',
1522
1663
  safety: 'internal_hold',
1523
1664
  reason: 'support_reply_blocked_until_release_or_hotfix_gate_finishes',
1524
- blockers: [input.releaseStatus],
1525
- requiredEvidence: requiredEvidence,
1526
- nextCommands: ['record_hotfix_evidence', 'commit_and_push_hotfix_to_github', 'rerun_release_gate_once'],
1665
+ blockers: releaseGate.blockers,
1666
+ requiredEvidence: releaseRequiredEvidence,
1667
+ nextCommands: releaseGate.nextCommands,
1527
1668
  forbiddenActions: ['Do not tell the customer the fix is live before release evidence passes.'],
1528
1669
  costRisk: 'release_or_customer_send'
1529
1670
  })
@@ -2424,7 +2565,7 @@ function buildResolveIOSupportV5ScopeDigest(input) {
2424
2565
  return raw.slice(0, maxChars);
2425
2566
  }
2426
2567
  function buildResolveIOSupportV5MicrotaskLedger(input) {
2427
- var e_7, _a;
2568
+ var e_9, _a;
2428
2569
  var existing = Array.isArray(input.existing) ? input.existing : [];
2429
2570
  var completedByObjective = new Map();
2430
2571
  try {
@@ -2435,12 +2576,12 @@ function buildResolveIOSupportV5MicrotaskLedger(input) {
2435
2576
  }
2436
2577
  }
2437
2578
  }
2438
- catch (e_7_1) { e_7 = { error: e_7_1 }; }
2579
+ catch (e_9_1) { e_9 = { error: e_9_1 }; }
2439
2580
  finally {
2440
2581
  try {
2441
2582
  if (existing_1_1 && !existing_1_1.done && (_a = existing_1.return)) _a.call(existing_1);
2442
2583
  }
2443
- finally { if (e_7) throw e_7.error; }
2584
+ finally { if (e_9) throw e_9.error; }
2444
2585
  }
2445
2586
  var now = isoNow(input.now);
2446
2587
  var requirements = cleanList(input.requirements, 30, 240);
@@ -2819,7 +2960,7 @@ function decideResolveIOSupportV5Continuation(bundle) {
2819
2960
  return __assign({ action: 'continue', reason: 'support_v5_continue', nextStep: (last === null || last === void 0 ? void 0 : last.stepType) || bundle.supportV5SupervisorState.activeStep, repeatedNoProgressCount: repeatedNoProgressCount, budgetExceeded: false }, recoveryFieldsFor(recoveryPlan));
2820
2961
  }
2821
2962
  function decideResolveIOSupportV5AutonomousNextAction(input) {
2822
- var _a, _b, _c, _d, _e;
2963
+ var _a, _b, _c, _d, _e, _f, _g, _h;
2823
2964
  var bundle = input.bundle;
2824
2965
  var activeMicrotask = selectResolveIOSupportV5ActiveMicrotask(bundle.supportV5MicrotaskLedger || [], bundle.supportV5ActiveMicrotaskId);
2825
2966
  var diagnosisValidation = validateResolveIOSupportDiagnosisGate(bundle.supportV5DiagnosisGate, {
@@ -2851,7 +2992,10 @@ function decideResolveIOSupportV5AutonomousNextAction(input) {
2851
2992
  previousProofFingerprint: input.previousProofFingerprint,
2852
2993
  previousArtifactFingerprint: input.previousArtifactFingerprint,
2853
2994
  unresolvedBlockers: input.unresolvedBlockers,
2854
- releaseStatus: input.releaseStatus
2995
+ releaseStatus: input.releaseStatus,
2996
+ hotfixEvidence: input.hotfixEvidence,
2997
+ releasePolicy: input.releasePolicy,
2998
+ releaseGatePassed: input.releaseGatePassed
2855
2999
  });
2856
3000
  var businessProofReadiness = evaluateResolveIOSupportBusinessProofReadiness({
2857
3001
  diagnosisGate: bundle.supportV5DiagnosisGate,
@@ -3376,6 +3520,24 @@ function decideResolveIOSupportV5AutonomousNextAction(input) {
3376
3520
  hotfixContinuation: hotfixContinuation
3377
3521
  });
3378
3522
  }
3523
+ if (customerReplyPolicy.action === 'hold_internal' && customerReplyPolicy.reason === 'support_reply_blocked_until_release_or_hotfix_gate_finishes') {
3524
+ return makeDecision('repair_release_hotfix_first', 'Hotfix Release', 'support_v5_reply_blocked_by_hotfix_evidence', {
3525
+ canRunAutonomously: true,
3526
+ canRunModel: false,
3527
+ canEditProductCode: false,
3528
+ canPrepareHotfixPatch: true,
3529
+ canHotfixBackend: false,
3530
+ liveHotfixBlockedUntilCommit: true,
3531
+ lane: 'release',
3532
+ stepType: 'release_gate',
3533
+ primaryCommand: ((_f = customerReplyPolicy.humanReviewPacket) === null || _f === void 0 ? void 0 : _f.primaryAction) || 'repair_release_hotfix_first',
3534
+ nextCommands: ((_g = customerReplyPolicy.humanReviewPacket) === null || _g === void 0 ? void 0 : _g.nextCommands) || ['record_hotfix_evidence', 'commit_and_push_hotfix_to_github', 'rerun_release_gate_once'],
3535
+ requiredEvidence: customerReplyPolicy.requiredEvidence,
3536
+ blockers: ((_h = customerReplyPolicy.humanReviewPacket) === null || _h === void 0 ? void 0 : _h.blockers) || ['Release or hotfix evidence is incomplete.'],
3537
+ forbiddenActions: ['Do not draft a customer resolution until hotfix commit proof and release evidence are complete.'],
3538
+ humanReviewPacket: customerReplyPolicy.humanReviewPacket
3539
+ });
3540
+ }
3379
3541
  if ((activeMicrotask === null || activeMicrotask === void 0 ? void 0 : activeMicrotask.lane) === 'qa' || /^(qa_row|qa_retest|business_proof|route_probe|issue_class_probe)$/.test(activeStepType)) {
3380
3542
  return makeDecision('run_business_proof_qa', 'Run Business Proof QA', 'support_v5_business_assertion_required', {
3381
3543
  canRunAutonomously: true,
@@ -3694,7 +3856,7 @@ function buildResolveIOSupportV5MicrotaskPrompt(input) {
3694
3856
  };
3695
3857
  }
3696
3858
  function summarizeResolveIOSupportV5MicrotaskUsage(bundle) {
3697
- var e_8, _a, e_9, _b;
3859
+ var e_10, _a, e_11, _b;
3698
3860
  var byMicrotask = new Map();
3699
3861
  var bySection = new Map();
3700
3862
  var totalPromptTokenEstimate = 0;
@@ -3709,17 +3871,17 @@ function summarizeResolveIOSupportV5MicrotaskUsage(bundle) {
3709
3871
  existing.calls += 1;
3710
3872
  byMicrotask.set(usage.microtaskId, existing);
3711
3873
  try {
3712
- for (var _e = (e_9 = void 0, __values(usage.promptSections || [])), _f = _e.next(); !_f.done; _f = _e.next()) {
3874
+ for (var _e = (e_11 = void 0, __values(usage.promptSections || [])), _f = _e.next(); !_f.done; _f = _e.next()) {
3713
3875
  var section = _f.value;
3714
3876
  bySection.set(section.name, (bySection.get(section.name) || 0) + section.tokenEstimate);
3715
3877
  }
3716
3878
  }
3717
- catch (e_9_1) { e_9 = { error: e_9_1 }; }
3879
+ catch (e_11_1) { e_11 = { error: e_11_1 }; }
3718
3880
  finally {
3719
3881
  try {
3720
3882
  if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
3721
3883
  }
3722
- finally { if (e_9) throw e_9.error; }
3884
+ finally { if (e_11) throw e_11.error; }
3723
3885
  }
3724
3886
  var hardCap = usage.lane === 'qa' ? promptBudget.qaMicrotaskHardCap : promptBudget.buildMicrotaskHardCap;
3725
3887
  if ((usage.promptTokenEstimate || 0) > hardCap) {
@@ -3727,12 +3889,12 @@ function summarizeResolveIOSupportV5MicrotaskUsage(bundle) {
3727
3889
  }
3728
3890
  }
3729
3891
  }
3730
- catch (e_8_1) { e_8 = { error: e_8_1 }; }
3892
+ catch (e_10_1) { e_10 = { error: e_10_1 }; }
3731
3893
  finally {
3732
3894
  try {
3733
3895
  if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
3734
3896
  }
3735
- finally { if (e_8) throw e_8.error; }
3897
+ finally { if (e_10) throw e_10.error; }
3736
3898
  }
3737
3899
  return {
3738
3900
  totalPromptTokenEstimate: totalPromptTokenEstimate,