@resolveio/server-lib 22.3.173 → 22.3.174

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.173",
3
+ "version": "22.3.174",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "package": "./build_package.sh",
@@ -1513,6 +1513,40 @@ function supportNextActionContractObject(ticket, job, evidence) {
1513
1513
  || ticket.support_v5_autonomous_decision);
1514
1514
  return evidenceObject(autonomousDecision.nextActionContract, autonomousDecision.next_action_contract, job.supportV5NextActionContract, job.support_v5_next_action_contract, job.nextActionContract, job.next_action_contract, evidence.supportV5NextActionContract, evidence.support_v5_next_action_contract, evidence.nextActionContract, evidence.next_action_contract, ticket.supportV5NextActionContract, ticket.support_v5_next_action_contract, ticket.nextActionContract, ticket.next_action_contract, ticketManager.nextActionContract, ticketManager.next_action_contract);
1515
1515
  }
1516
+ function supportNextActionContractRequired(ticket, job, evidence) {
1517
+ var ticketAutomation = plainObject(ticket.automation);
1518
+ var ticketManager = plainObject(ticketAutomation.manager || ticket.manager);
1519
+ var workflowMarkers = [
1520
+ job.supportWorkflowMode,
1521
+ job.workflowMode,
1522
+ job.workflow_mode,
1523
+ job.supportWorkflowVersion,
1524
+ job.support_workflow_version,
1525
+ ticket.supportWorkflowMode,
1526
+ ticket.workflowMode,
1527
+ ticket.workflow_mode
1528
+ ].map(function (value) { return cleanText(value, 80).toLowerCase(); });
1529
+ return workflowMarkers.some(function (value) { return value === 'support_v5' || value === 'v5'; })
1530
+ || !!job.supportV5SupervisorState
1531
+ || !!job.supportV5MicrotaskLedger
1532
+ || !!job.supportV5StepHistory
1533
+ || !!job.supportV5DiagnosisGate
1534
+ || !!job.supportV5DiagnosisEvidencePack
1535
+ || !!job.support_v5_supervisor_state
1536
+ || !!job.support_v5_microtask_ledger
1537
+ || !!job.support_v5_step_history
1538
+ || !!job.support_v5_diagnosis_gate
1539
+ || !!job.support_v5_diagnosis_evidence_pack
1540
+ || !!job.supportRootCauseEntryContract
1541
+ || !!job.support_root_cause_entry_contract
1542
+ || !!evidence.supportV5AutonomousDecision
1543
+ || !!evidence.support_v5_autonomous_decision
1544
+ || !!evidence.rootCauseReadiness
1545
+ || !!evidence.root_cause_readiness
1546
+ || !!ticketManager.root_cause_entry_contract
1547
+ || !!ticketManager.rootCauseEntryContract
1548
+ || !!ticketManager.last_watchdog_decision;
1549
+ }
1516
1550
  function supportNextActionContractMetadata(contract) {
1517
1551
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
1518
1552
  var decisionBasis = plainObject(contract.decisionBasis || contract.decision_basis);
@@ -1558,9 +1592,31 @@ function supportNextActionContractMetadata(contract) {
1558
1592
  };
1559
1593
  return source;
1560
1594
  }
1561
- function supportNextActionContractGate(contract, now) {
1595
+ function supportNextActionContractGate(contract, now, required) {
1596
+ if (required === void 0) { required = false; }
1562
1597
  if (!contract || !Object.keys(contract).length) {
1563
- return undefined;
1598
+ if (!required) {
1599
+ return undefined;
1600
+ }
1601
+ var blocker = 'Support V5 run is missing a validated next-action contract, so the manager cannot prove one safe primary action without external Codex monitoring.';
1602
+ return {
1603
+ key: 'support_next_action_contract',
1604
+ label: 'Support next-action contract',
1605
+ status: 'blocked',
1606
+ reason: blocker,
1607
+ evidenceRefs: [],
1608
+ recordedAt: isoNow(now),
1609
+ metadata: {
1610
+ required: true,
1611
+ missingContract: true,
1612
+ safeToAutoRun: false,
1613
+ canRunWithoutCodexMonitor: false,
1614
+ codexFallbackRequired: true,
1615
+ codexFallbackReason: 'missing_support_next_action_contract',
1616
+ blockers: [blocker],
1617
+ missingSafetyFlags: ['safeToAutoRun', 'canRunWithoutCodexMonitor', 'codexFallbackRequired']
1618
+ }
1619
+ };
1564
1620
  }
1565
1621
  var metadata = supportNextActionContractMetadata(contract);
1566
1622
  var blockers = cleanStringList(metadata.blockers, 40, 500);
@@ -2370,7 +2426,8 @@ function buildSupportAIRunFromEvidence(input) {
2370
2426
  });
2371
2427
  }
2372
2428
  var nextActionContract = supportNextActionContractObject(ticket, job, evidence);
2373
- var nextActionContractGate = supportNextActionContractGate(nextActionContract, input.now);
2429
+ var nextActionContractRequired = supportNextActionContractRequired(ticket, job, evidence);
2430
+ var nextActionContractGate = supportNextActionContractGate(nextActionContract, input.now, nextActionContractRequired);
2374
2431
  if (nextActionContractGate) {
2375
2432
  gates.push(nextActionContractGate);
2376
2433
  pushEvent(events, {