agentskeptic 0.2.1 → 1.0.1

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.
Files changed (386) hide show
  1. package/README.md +39 -39
  2. package/config/marketing.json +187 -0
  3. package/dist/actionableFailure.d.ts.map +1 -1
  4. package/dist/actionableFailure.js +95 -0
  5. package/dist/actionableFailure.js.map +1 -1
  6. package/dist/actionableFailure.remediationExhaustive.test.js +4 -4
  7. package/dist/actionableFailure.remediationExhaustive.test.js.map +1 -1
  8. package/dist/agentRunBundle.d.ts +2 -0
  9. package/dist/agentRunBundle.d.ts.map +1 -1
  10. package/dist/agentRunBundle.js +4 -0
  11. package/dist/agentRunBundle.js.map +1 -1
  12. package/dist/assurance/assurancePathArgs.d.ts.map +1 -1
  13. package/dist/assurance/assurancePathArgs.js +1 -0
  14. package/dist/assurance/assurancePathArgs.js.map +1 -1
  15. package/dist/assurance/buildAssuranceOutput.d.ts +29 -0
  16. package/dist/assurance/buildAssuranceOutput.d.ts.map +1 -0
  17. package/dist/assurance/buildAssuranceOutput.js +53 -0
  18. package/dist/assurance/buildAssuranceOutput.js.map +1 -0
  19. package/dist/assurance/checkStale.d.ts +7 -0
  20. package/dist/assurance/checkStale.d.ts.map +1 -1
  21. package/dist/assurance/checkStale.js +14 -3
  22. package/dist/assurance/checkStale.js.map +1 -1
  23. package/dist/assurance/runAssurance.d.ts.map +1 -1
  24. package/dist/assurance/runAssurance.js +26 -3
  25. package/dist/assurance/runAssurance.js.map +1 -1
  26. package/dist/bootstrap/executeBootstrapPack.d.ts.map +1 -1
  27. package/dist/bootstrap/executeBootstrapPack.js +3 -2
  28. package/dist/bootstrap/executeBootstrapPack.js.map +1 -1
  29. package/dist/certificateDigest.d.ts +4 -0
  30. package/dist/certificateDigest.d.ts.map +1 -0
  31. package/dist/certificateDigest.js +7 -0
  32. package/dist/certificateDigest.js.map +1 -0
  33. package/dist/certificateDigest.test.d.ts +2 -0
  34. package/dist/certificateDigest.test.d.ts.map +1 -0
  35. package/dist/certificateDigest.test.js +14 -0
  36. package/dist/certificateDigest.test.js.map +1 -0
  37. package/dist/ciLockWorkflow.js +1 -1
  38. package/dist/cli/lockOrchestration.d.ts.map +1 -1
  39. package/dist/cli/lockOrchestration.js +81 -50
  40. package/dist/cli/lockOrchestration.js.map +1 -1
  41. package/dist/cli/lockOrchestration.test.js +7 -1
  42. package/dist/cli/lockOrchestration.test.js.map +1 -1
  43. package/dist/cli/runFunnelAnonSet.js +1 -1
  44. package/dist/cli.js +147 -136
  45. package/dist/cli.js.map +1 -1
  46. package/dist/cliArgv.d.ts +4 -1
  47. package/dist/cliArgv.d.ts.map +1 -1
  48. package/dist/cliArgv.js +9 -4
  49. package/dist/cliArgv.js.map +1 -1
  50. package/dist/cliArgv.test.d.ts +2 -0
  51. package/dist/cliArgv.test.d.ts.map +1 -0
  52. package/dist/cliArgv.test.js +34 -0
  53. package/dist/cliArgv.test.js.map +1 -0
  54. package/dist/cliOperationalCodes.d.ts +8 -0
  55. package/dist/cliOperationalCodes.d.ts.map +1 -1
  56. package/dist/cliOperationalCodes.js +8 -0
  57. package/dist/cliOperationalCodes.js.map +1 -1
  58. package/dist/commercial/activationCorrelation.d.ts +3 -0
  59. package/dist/commercial/activationCorrelation.d.ts.map +1 -0
  60. package/dist/commercial/activationCorrelation.js +6 -0
  61. package/dist/commercial/activationCorrelation.js.map +1 -0
  62. package/dist/commercial/getCurrentUsage.d.ts +16 -0
  63. package/dist/commercial/getCurrentUsage.d.ts.map +1 -0
  64. package/dist/commercial/getCurrentUsage.js +33 -0
  65. package/dist/commercial/getCurrentUsage.js.map +1 -0
  66. package/dist/commercial/licensePreflight.d.ts +1 -0
  67. package/dist/commercial/licensePreflight.d.ts.map +1 -1
  68. package/dist/commercial/licensePreflight.js +27 -8
  69. package/dist/commercial/licensePreflight.js.map +1 -1
  70. package/dist/commercial/postVerifyOutcomeBeacon.d.ts +5 -3
  71. package/dist/commercial/postVerifyOutcomeBeacon.d.ts.map +1 -1
  72. package/dist/commercial/postVerifyOutcomeBeacon.js +17 -10
  73. package/dist/commercial/postVerifyOutcomeBeacon.js.map +1 -1
  74. package/dist/commercial/verifyOutcomeBeaconBody.d.ts +12 -0
  75. package/dist/commercial/verifyOutcomeBeaconBody.d.ts.map +1 -0
  76. package/dist/commercial/verifyOutcomeBeaconBody.js +26 -0
  77. package/dist/commercial/verifyOutcomeBeaconBody.js.map +1 -0
  78. package/dist/commercial/verifyWorkloadClassify.d.ts +2 -7
  79. package/dist/commercial/verifyWorkloadClassify.d.ts.map +1 -1
  80. package/dist/commercial/verifyWorkloadClassify.js +1 -1
  81. package/dist/commercial/verifyWorkloadClassify.js.map +1 -1
  82. package/dist/commercial/verifyWorkloadClassify.test.js +7 -0
  83. package/dist/commercial/verifyWorkloadClassify.test.js.map +1 -1
  84. package/dist/compare.acceptance.test.js +25 -0
  85. package/dist/compare.acceptance.test.js.map +1 -1
  86. package/dist/compareRunManifest.d.ts +32 -0
  87. package/dist/compareRunManifest.d.ts.map +1 -0
  88. package/dist/compareRunManifest.js +60 -0
  89. package/dist/compareRunManifest.js.map +1 -0
  90. package/dist/crossing/crossingDecisionReadyFooter.d.ts +1 -1
  91. package/dist/crossing/crossingDecisionReadyFooter.js +1 -1
  92. package/dist/crossing/runCrossingSubcommand.js +8 -8
  93. package/dist/debug-ui/app.css +42 -0
  94. package/dist/debug-ui/app.js +206 -15
  95. package/dist/debug-ui/index.html +11 -4
  96. package/dist/debug-ui/urlState.d.ts +15 -0
  97. package/dist/debug-ui/urlState.js +92 -0
  98. package/dist/debugCorpus.test.js +33 -7
  99. package/dist/debugCorpus.test.js.map +1 -1
  100. package/dist/debugPanels.d.ts +0 -3
  101. package/dist/debugPanels.d.ts.map +1 -1
  102. package/dist/debugPanels.js +0 -23
  103. package/dist/debugPanels.js.map +1 -1
  104. package/dist/debugPanels.test.js +16 -15
  105. package/dist/debugPanels.test.js.map +1 -1
  106. package/dist/debugServer.d.ts.map +1 -1
  107. package/dist/debugServer.js +19 -16
  108. package/dist/debugServer.js.map +1 -1
  109. package/dist/debugServer.test.js +18 -9
  110. package/dist/debugServer.test.js.map +1 -1
  111. package/dist/debugUiUrlState.test.d.ts +2 -0
  112. package/dist/debugUiUrlState.test.d.ts.map +1 -0
  113. package/dist/debugUiUrlState.test.js +49 -0
  114. package/dist/debugUiUrlState.test.js.map +1 -0
  115. package/dist/decisionBlocker.contract.test.d.ts +2 -0
  116. package/dist/decisionBlocker.contract.test.d.ts.map +1 -0
  117. package/dist/decisionBlocker.contract.test.js +51 -0
  118. package/dist/decisionBlocker.contract.test.js.map +1 -0
  119. package/dist/decisionBlocker.d.ts +10 -0
  120. package/dist/decisionBlocker.d.ts.map +1 -0
  121. package/dist/decisionBlocker.js +66 -0
  122. package/dist/decisionBlocker.js.map +1 -0
  123. package/dist/decisionGate.assertSafe.test.d.ts +2 -0
  124. package/dist/decisionGate.assertSafe.test.d.ts.map +1 -0
  125. package/dist/decisionGate.assertSafe.test.js +52 -0
  126. package/dist/decisionGate.assertSafe.test.js.map +1 -0
  127. package/dist/decisionGate.d.ts +23 -0
  128. package/dist/decisionGate.d.ts.map +1 -0
  129. package/dist/decisionGate.js +85 -0
  130. package/dist/decisionGate.js.map +1 -0
  131. package/dist/decisionGate.persistBundle.test.d.ts +2 -0
  132. package/dist/decisionGate.persistBundle.test.d.ts.map +1 -0
  133. package/dist/{withWorkflowVerification.persistBundle.test.js → decisionGate.persistBundle.test.js} +31 -19
  134. package/dist/decisionGate.persistBundle.test.js.map +1 -0
  135. package/dist/decisionUnsafeError.d.ts +8 -0
  136. package/dist/decisionUnsafeError.d.ts.map +1 -0
  137. package/dist/decisionUnsafeError.js +12 -0
  138. package/dist/decisionUnsafeError.js.map +1 -0
  139. package/dist/discovery-payload-v1.json +167 -59
  140. package/dist/enforceCli.d.ts.map +1 -1
  141. package/dist/enforceCli.js +15 -40
  142. package/dist/enforceCli.js.map +1 -1
  143. package/dist/enforceStateful.d.ts +2 -0
  144. package/dist/enforceStateful.d.ts.map +1 -0
  145. package/dist/enforceStateful.js +106 -0
  146. package/dist/enforceStateful.js.map +1 -0
  147. package/dist/enforcementProjection.d.ts +17 -0
  148. package/dist/enforcementProjection.d.ts.map +1 -0
  149. package/dist/enforcementProjection.js +20 -0
  150. package/dist/enforcementProjection.js.map +1 -0
  151. package/dist/executionPathFindings.d.ts +1 -1
  152. package/dist/executionPathFindings.d.ts.map +1 -1
  153. package/dist/executionPathFindings.js +2 -2
  154. package/dist/executionPathFindings.js.map +1 -1
  155. package/dist/executionTrace.js +2 -2
  156. package/dist/executionTrace.js.map +1 -1
  157. package/dist/executionTrace.test.js +35 -0
  158. package/dist/executionTrace.test.js.map +1 -1
  159. package/dist/executionTraceDiff.d.ts +36 -0
  160. package/dist/executionTraceDiff.d.ts.map +1 -0
  161. package/dist/executionTraceDiff.js +86 -0
  162. package/dist/executionTraceDiff.js.map +1 -0
  163. package/dist/executionTraceDiff.test.d.ts +2 -0
  164. package/dist/executionTraceDiff.test.d.ts.map +1 -0
  165. package/dist/executionTraceDiff.test.js +44 -0
  166. package/dist/executionTraceDiff.test.js.map +1 -0
  167. package/dist/failureCatalog.d.ts +1 -0
  168. package/dist/failureCatalog.d.ts.map +1 -1
  169. package/dist/failureCatalog.js +1 -0
  170. package/dist/failureCatalog.js.map +1 -1
  171. package/dist/failureOriginCatalog.d.ts.map +1 -1
  172. package/dist/failureOriginCatalog.js +20 -0
  173. package/dist/failureOriginCatalog.js.map +1 -1
  174. package/dist/firstFiveMinutesChecklist.d.ts +11 -0
  175. package/dist/firstFiveMinutesChecklist.d.ts.map +1 -0
  176. package/dist/firstFiveMinutesChecklist.js +18 -0
  177. package/dist/firstFiveMinutesChecklist.js.map +1 -0
  178. package/dist/funnel/workflowLineageClassify.d.ts +1 -1
  179. package/dist/funnel/workflowLineageClassify.js +1 -1
  180. package/dist/index.d.ts +22 -7
  181. package/dist/index.d.ts.map +1 -1
  182. package/dist/index.js +15 -6
  183. package/dist/index.js.map +1 -1
  184. package/dist/langGraphCheckpointTrustGate.d.ts +38 -0
  185. package/dist/langGraphCheckpointTrustGate.d.ts.map +1 -0
  186. package/dist/langGraphCheckpointTrustGate.js +124 -0
  187. package/dist/langGraphCheckpointTrustGate.js.map +1 -0
  188. package/dist/langGraphCheckpointTrustIneligibleCertificate.d.ts +8 -0
  189. package/dist/langGraphCheckpointTrustIneligibleCertificate.d.ts.map +1 -0
  190. package/dist/langGraphCheckpointTrustIneligibleCertificate.js +17 -0
  191. package/dist/langGraphCheckpointTrustIneligibleCertificate.js.map +1 -0
  192. package/dist/langGraphCheckpointTrustUnsafeError.d.ts +8 -0
  193. package/dist/langGraphCheckpointTrustUnsafeError.d.ts.map +1 -0
  194. package/dist/langGraphCheckpointTrustUnsafeError.js +12 -0
  195. package/dist/langGraphCheckpointTrustUnsafeError.js.map +1 -0
  196. package/dist/loadEvents.d.ts +5 -0
  197. package/dist/loadEvents.d.ts.map +1 -1
  198. package/dist/loadEvents.js +32 -0
  199. package/dist/loadEvents.js.map +1 -1
  200. package/dist/operationalDisposition.d.ts +64 -0
  201. package/dist/operationalDisposition.d.ts.map +1 -1
  202. package/dist/operationalDisposition.js +64 -0
  203. package/dist/operationalDisposition.js.map +1 -1
  204. package/dist/outcomeCertificate.d.ts +60 -0
  205. package/dist/outcomeCertificate.d.ts.map +1 -0
  206. package/dist/outcomeCertificate.js +254 -0
  207. package/dist/outcomeCertificate.js.map +1 -0
  208. package/dist/outcomeCertificate.test.d.ts +2 -0
  209. package/dist/outcomeCertificate.test.d.ts.map +1 -0
  210. package/dist/outcomeCertificate.test.js +74 -0
  211. package/dist/outcomeCertificate.test.js.map +1 -0
  212. package/dist/pipeline.d.ts +19 -17
  213. package/dist/pipeline.d.ts.map +1 -1
  214. package/dist/pipeline.js +61 -167
  215. package/dist/pipeline.js.map +1 -1
  216. package/dist/planTransition.test.js +4 -4
  217. package/dist/publicDistribution.generated.d.ts +2 -2
  218. package/dist/publicDistribution.generated.d.ts.map +1 -1
  219. package/dist/publicDistribution.generated.js +7 -8
  220. package/dist/publicDistribution.generated.js.map +1 -1
  221. package/dist/quickVerify/quickVerifyScope.d.ts +1 -1
  222. package/dist/quickVerify/quickVerifyScope.js +1 -1
  223. package/dist/quickVerify/runQuickVerify.js +1 -1
  224. package/dist/quickVerify/runQuickVerify.js.map +1 -1
  225. package/dist/quickVerify/verifyExecution.d.ts +1 -1
  226. package/dist/quickVerify/verifyExecution.d.ts.map +1 -1
  227. package/dist/quickVerify/verifyExecution.js +3 -2
  228. package/dist/quickVerify/verifyExecution.js.map +1 -1
  229. package/dist/reconciler.d.ts +6 -2
  230. package/dist/reconciler.d.ts.map +1 -1
  231. package/dist/reconciler.js +17 -11
  232. package/dist/reconciler.js.map +1 -1
  233. package/dist/registryDraft/createRegistryDraftAjv.d.ts +1 -1
  234. package/dist/registryDraft/createRegistryDraftAjv.js +1 -1
  235. package/dist/regressionArtifact.d.ts +63 -0
  236. package/dist/regressionArtifact.d.ts.map +1 -0
  237. package/dist/regressionArtifact.js +290 -0
  238. package/dist/regressionArtifact.js.map +1 -0
  239. package/dist/relationalInvariant.d.ts +13 -3
  240. package/dist/relationalInvariant.d.ts.map +1 -1
  241. package/dist/relationalInvariant.existsSql.test.js +1 -1
  242. package/dist/relationalInvariant.existsSql.test.js.map +1 -1
  243. package/dist/relationalInvariant.js +59 -39
  244. package/dist/relationalInvariant.js.map +1 -1
  245. package/dist/relationalInvariant.test.js +2 -2
  246. package/dist/relationalInvariant.test.js.map +1 -1
  247. package/dist/resolveExpectation.d.ts +18 -2
  248. package/dist/resolveExpectation.d.ts.map +1 -1
  249. package/dist/resolveExpectation.js +332 -1
  250. package/dist/resolveExpectation.js.map +1 -1
  251. package/dist/resolveExpectation.test.js +25 -0
  252. package/dist/resolveExpectation.test.js.map +1 -1
  253. package/dist/runComparison.d.ts +0 -1
  254. package/dist/runComparison.d.ts.map +1 -1
  255. package/dist/runComparison.js +18 -86
  256. package/dist/runComparison.js.map +1 -1
  257. package/dist/runComparison.test.js +101 -57
  258. package/dist/runComparison.test.js.map +1 -1
  259. package/dist/schema-validation.test.js +29 -0
  260. package/dist/schema-validation.test.js.map +1 -1
  261. package/dist/schemaLoad.d.ts +1 -1
  262. package/dist/schemaLoad.d.ts.map +1 -1
  263. package/dist/schemaLoad.js +15 -0
  264. package/dist/schemaLoad.js.map +1 -1
  265. package/dist/shareReport/postPublicVerificationReport.d.ts +6 -0
  266. package/dist/shareReport/postPublicVerificationReport.d.ts.map +1 -1
  267. package/dist/shareReport/postPublicVerificationReport.js +3 -1
  268. package/dist/shareReport/postPublicVerificationReport.js.map +1 -1
  269. package/dist/sortedJsonStringify.d.ts +2 -0
  270. package/dist/sortedJsonStringify.d.ts.map +1 -0
  271. package/dist/sortedJsonStringify.js +23 -0
  272. package/dist/sortedJsonStringify.js.map +1 -0
  273. package/dist/sqlDialect.d.ts +8 -0
  274. package/dist/sqlDialect.d.ts.map +1 -0
  275. package/dist/sqlDialect.js +37 -0
  276. package/dist/sqlDialect.js.map +1 -0
  277. package/dist/standardVerifyWorkflowCli.d.ts +20 -5
  278. package/dist/standardVerifyWorkflowCli.d.ts.map +1 -1
  279. package/dist/standardVerifyWorkflowCli.js +56 -24
  280. package/dist/standardVerifyWorkflowCli.js.map +1 -1
  281. package/dist/stateWitness.d.ts +4 -0
  282. package/dist/stateWitness.d.ts.map +1 -0
  283. package/dist/stateWitness.js +383 -0
  284. package/dist/stateWitness.js.map +1 -0
  285. package/dist/stateWitness.test.d.ts +2 -0
  286. package/dist/stateWitness.test.d.ts.map +1 -0
  287. package/dist/stateWitness.test.js +120 -0
  288. package/dist/stateWitness.test.js.map +1 -0
  289. package/dist/telemetry/maybeEmitOssClaimTicketUrl.d.ts +2 -0
  290. package/dist/telemetry/maybeEmitOssClaimTicketUrl.d.ts.map +1 -1
  291. package/dist/telemetry/maybeEmitOssClaimTicketUrl.js +13 -2
  292. package/dist/telemetry/maybeEmitOssClaimTicketUrl.js.map +1 -1
  293. package/dist/telemetry/ossClaimOrigin.d.ts +1 -1
  294. package/dist/telemetry/ossClaimOrigin.js +1 -1
  295. package/dist/telemetry/postOssClaimContinuation.d.ts +1 -1
  296. package/dist/telemetry/postOssClaimContinuation.d.ts.map +1 -1
  297. package/dist/telemetry/postOssClaimContinuation.js +10 -6
  298. package/dist/telemetry/postOssClaimContinuation.js.map +1 -1
  299. package/dist/telemetry/postOssClaimTicket.d.ts +8 -0
  300. package/dist/telemetry/postOssClaimTicket.d.ts.map +1 -1
  301. package/dist/telemetry/postOssClaimTicket.js +31 -5
  302. package/dist/telemetry/postOssClaimTicket.js.map +1 -1
  303. package/dist/telemetry/verificationHypothesisContract.d.ts +1 -1
  304. package/dist/telemetry/verificationHypothesisContract.js +1 -1
  305. package/dist/trustDecision.d.ts +8 -0
  306. package/dist/trustDecision.d.ts.map +1 -0
  307. package/dist/trustDecision.js +13 -0
  308. package/dist/trustDecision.js.map +1 -0
  309. package/dist/types.d.ts +139 -7
  310. package/dist/types.d.ts.map +1 -1
  311. package/dist/types.js.map +1 -1
  312. package/dist/verificationConnections.d.ts +10 -0
  313. package/dist/verificationConnections.d.ts.map +1 -0
  314. package/dist/verificationConnections.js +190 -0
  315. package/dist/verificationConnections.js.map +1 -0
  316. package/dist/verificationDatabaseUrl.d.ts +11 -0
  317. package/dist/verificationDatabaseUrl.d.ts.map +1 -0
  318. package/dist/verificationDatabaseUrl.js +41 -0
  319. package/dist/verificationDatabaseUrl.js.map +1 -0
  320. package/dist/verificationDatabaseUrl.test.d.ts +2 -0
  321. package/dist/verificationDatabaseUrl.test.d.ts.map +1 -0
  322. package/dist/verificationDatabaseUrl.test.js +66 -0
  323. package/dist/verificationDatabaseUrl.test.js.map +1 -0
  324. package/dist/verificationDiagnostics.d.ts.map +1 -1
  325. package/dist/verificationDiagnostics.js +33 -9
  326. package/dist/verificationDiagnostics.js.map +1 -1
  327. package/dist/verificationDiagnostics.test.js +15 -0
  328. package/dist/verificationDiagnostics.test.js.map +1 -1
  329. package/dist/verificationPolicy.d.ts +2 -1
  330. package/dist/verificationPolicy.d.ts.map +1 -1
  331. package/dist/verificationPolicy.js +97 -0
  332. package/dist/verificationPolicy.js.map +1 -1
  333. package/dist/verificationPolicy.test.js +7 -0
  334. package/dist/verificationPolicy.test.js.map +1 -1
  335. package/dist/verificationRunContext.d.ts.map +1 -1
  336. package/dist/verificationRunContext.js +3 -0
  337. package/dist/verificationRunContext.js.map +1 -1
  338. package/dist/verificationUserPhrases.d.ts.map +1 -1
  339. package/dist/verificationUserPhrases.js +21 -0
  340. package/dist/verificationUserPhrases.js.map +1 -1
  341. package/dist/verify/batchVerifyTelemetrySubcommand.d.ts.map +1 -1
  342. package/dist/verify/batchVerifyTelemetrySubcommand.js +131 -33
  343. package/dist/verify/batchVerifyTelemetrySubcommand.js.map +1 -1
  344. package/dist/verifyAgentskeptic.d.ts +4 -8
  345. package/dist/verifyAgentskeptic.d.ts.map +1 -1
  346. package/dist/verifyAgentskeptic.js +16 -21
  347. package/dist/verifyAgentskeptic.js.map +1 -1
  348. package/dist/verifyAgentskeptic.test.js +10 -12
  349. package/dist/verifyAgentskeptic.test.js.map +1 -1
  350. package/dist/verifyRunStateFromBufferedRunEvents.d.ts +18 -0
  351. package/dist/verifyRunStateFromBufferedRunEvents.d.ts.map +1 -0
  352. package/dist/verifyRunStateFromBufferedRunEvents.js +65 -0
  353. package/dist/verifyRunStateFromBufferedRunEvents.js.map +1 -0
  354. package/dist/vitestMonorepoRoot.d.ts +10 -0
  355. package/dist/vitestMonorepoRoot.d.ts.map +1 -0
  356. package/dist/vitestMonorepoRoot.js +97 -0
  357. package/dist/vitestMonorepoRoot.js.map +1 -0
  358. package/dist/wireReasonCodes.d.ts +21 -0
  359. package/dist/wireReasonCodes.d.ts.map +1 -1
  360. package/dist/wireReasonCodes.js +21 -0
  361. package/dist/wireReasonCodes.js.map +1 -1
  362. package/package.json +63 -40
  363. package/schemas/assurance-output-v1.schema.json +81 -0
  364. package/schemas/compare-run-manifest-v1.schema.json +65 -0
  365. package/schemas/conformance-normalized-result.schema.json +73 -0
  366. package/schemas/connector-capabilities.schema.json +38 -0
  367. package/schemas/event.schema.json +35 -0
  368. package/schemas/execution-trace-view.schema.json +1 -1
  369. package/schemas/openapi-commercial-v1.in.yaml +616 -17
  370. package/schemas/openapi-commercial-v1.yaml +616 -17
  371. package/schemas/outcome-certificate-v1.schema.json +89 -0
  372. package/schemas/public-verification-report-v2.schema.json +15 -0
  373. package/schemas/quick-verify-report.schema.json +1 -1
  374. package/schemas/regression-artifact-v1.schema.json +212 -0
  375. package/schemas/tools-registry.schema.json +103 -0
  376. package/schemas/workflow-engine-result.schema.json +71 -2
  377. package/schemas/workflow-truth-report.schema.json +12 -0
  378. package/scripts/discovery-acquisition.lib.cjs +60 -97
  379. package/scripts/discovery-payload.lib.cjs +41 -7
  380. package/scripts/emit-primary-marketing.cjs +326 -0
  381. package/scripts/origin.cjs +52 -0
  382. package/scripts/public-product-anchors.cjs +3 -0
  383. package/scripts/validate-marketing.cjs +156 -0
  384. package/dist/withWorkflowVerification.persistBundle.test.d.ts +0 -2
  385. package/dist/withWorkflowVerification.persistBundle.test.d.ts.map +0 -1
  386. package/dist/withWorkflowVerification.persistBundle.test.js.map +0 -1
@@ -2,10 +2,14 @@ import { randomUUID } from "node:crypto";
2
2
  import { readFileSync } from "node:fs";
3
3
  import path from "node:path";
4
4
  import { parseBatchVerifyCliArgs } from "../cliArgv.js";
5
- import { cliErrorEnvelope, formatOperationalMessage, } from "../failureCatalog.js";
5
+ import { CLI_OPERATIONAL_CODES, cliErrorEnvelope, formatOperationalMessage, } from "../failureCatalog.js";
6
+ import { classifyLangGraphCheckpointTrustEligibility, } from "../langGraphCheckpointTrustGate.js";
7
+ import { validatedLangGraphIneligibleCertificate } from "../langGraphCheckpointTrustIneligibleCertificate.js";
8
+ import { eventsFileHasSchemaV3ToolObservedForWorkflow, loadEventsForWorkflow } from "../loadEvents.js";
6
9
  import { verifyWorkflow } from "../pipeline.js";
7
10
  import { TruthLayerError } from "../truthLayerError.js";
8
11
  import { writeRunBundleCli } from "../writeRunBundleCli.js";
12
+ import { newActivationHttpCorrelationId } from "../commercial/activationCorrelation.js";
9
13
  import { runLicensePreflightIfNeeded } from "../commercial/licensePreflight.js";
10
14
  import { postVerifyOutcomeBeacon } from "../commercial/postVerifyOutcomeBeacon.js";
11
15
  import { classifyBatchVerifyWorkload } from "../commercial/verifyWorkloadClassify.js";
@@ -14,7 +18,18 @@ import { formatDistributionFooter } from "../distributionFooter.js";
14
18
  import { maybeEmitOssClaimTicketUrlToStderr } from "../telemetry/maybeEmitOssClaimTicketUrl.js";
15
19
  import { classifyWorkflowLineage } from "../funnel/workflowLineageClassify.js";
16
20
  import { postProductActivationEvent } from "../telemetry/postProductActivationEvent.js";
17
- import { CLI_EXITED_AFTER_ERROR, emitVerifyWorkflowCliJsonAndExitByStatus, runStandardVerifyWorkflowCliToTerminalResult, } from "../standardVerifyWorkflowCli.js";
21
+ import { buildOutcomeCertificateLangGraphCheckpointTrustFromWorkflowResult, } from "../outcomeCertificate.js";
22
+ import { loadSchemaValidator } from "../schemaLoad.js";
23
+ import { postPublicVerificationReport } from "../shareReport/postPublicVerificationReport.js";
24
+ import { verifyRunStateFromBufferedRunEvents } from "../verifyRunStateFromBufferedRunEvents.js";
25
+ import { CLI_EXITED_AFTER_ERROR, emitOutcomeCertificateCliAndExitByStateRelation, runStandardVerifyWorkflowCliToTerminalResult, } from "../standardVerifyWorkflowCli.js";
26
+ function terminalStatusFromCertificate(c) {
27
+ if (c.stateRelation === "matches_expectations")
28
+ return "complete";
29
+ if (c.stateRelation === "does_not_match")
30
+ return "inconsistent";
31
+ return "incomplete";
32
+ }
18
33
  function writeCliError(code, message) {
19
34
  console.error(cliErrorEnvelope(code, formatOperationalMessage(message)));
20
35
  }
@@ -30,12 +45,21 @@ export async function runBatchVerifyWithTelemetrySubcommand(batchArgs, opts) {
30
45
  }
31
46
  throw e;
32
47
  }
48
+ if (!parsedBatch.langgraphCheckpointTrust &&
49
+ eventsFileHasSchemaV3ToolObservedForWorkflow(parsedBatch.eventsPath, parsedBatch.workflowId)) {
50
+ writeCliError(CLI_OPERATIONAL_CODES.LANGGRAPH_CHECKPOINT_TRUST_GENERIC_MODE_CONFLICT, formatOperationalMessage("Events contain schemaVersion 3 tool_observed for this workflow. Use --langgraph-checkpoint-trust for LangGraph checkpoint trust mode, or emit schemaVersion 1/2 only for generic verify."));
51
+ process.exit(3);
52
+ }
33
53
  const batchActivationRunId = process.env.AGENTSKEPTIC_RUN_ID?.trim() ||
34
54
  process.env.WORKFLOW_VERIFIER_RUN_ID?.trim() ||
35
55
  randomUUID();
56
+ const batchHttpCorrelationId = newActivationHttpCorrelationId();
36
57
  let batchPreflight;
37
58
  try {
38
- batchPreflight = await runLicensePreflightIfNeeded("verify", { runId: batchActivationRunId });
59
+ batchPreflight = await runLicensePreflightIfNeeded("verify", {
60
+ runId: batchActivationRunId,
61
+ xRequestId: batchHttpCorrelationId,
62
+ });
39
63
  }
40
64
  catch (e) {
41
65
  if (e instanceof TruthLayerError) {
@@ -44,7 +68,6 @@ export async function runBatchVerifyWithTelemetrySubcommand(batchArgs, opts) {
44
68
  }
45
69
  throw e;
46
70
  }
47
- const suppressTruthToStderr = parsedBatch.noTruthReport || parsedBatch.shareReportOrigin !== undefined;
48
71
  const batchBuildProfile = LICENSE_PREFLIGHT_ENABLED ? "commercial" : "oss";
49
72
  const batchWorkloadClass = classifyBatchVerifyWorkload({
50
73
  eventsPath: parsedBatch.eventsPath,
@@ -81,29 +104,32 @@ export async function runBatchVerifyWithTelemetrySubcommand(batchArgs, opts) {
81
104
  process.exit(code);
82
105
  },
83
106
  };
84
- try {
85
- const result = await runStandardVerifyWorkflowCliToTerminalResult({
86
- shareReportOrigin: parsedBatch.shareReportOrigin,
87
- runVerify: () => verifyWorkflow({
88
- workflowId: parsedBatch.workflowId,
89
- eventsPath: parsedBatch.eventsPath,
90
- registryPath: parsedBatch.registryPath,
91
- database: parsedBatch.database,
92
- verificationPolicy: parsedBatch.verificationPolicy,
93
- ...(suppressTruthToStderr ?
94
- { truthReport: () => { } }
95
- : {
96
- truthReport: (report) => {
97
- process.stderr.write(`${report}\n`);
98
- process.stderr.write(formatDistributionFooter());
99
- },
100
- }),
101
- }),
102
- maybeWriteBundle: parsedBatch.writeRunBundleDir === undefined
103
- ? undefined
104
- : (wfResult) => writeRunBundleCli(parsedBatch.writeRunBundleDir, readFileSync(path.resolve(parsedBatch.eventsPath)), wfResult, parsedBatch.signPrivateKeyPath),
105
- io: batchIo,
106
- });
107
+ const projectRoot = path.resolve(process.cwd());
108
+ async function finishCertificateTelemetryAndExit(certificate, workflowResultForStderrHook, humanAndShareMode) {
109
+ if (humanAndShareMode === "ineligibleCertificateOnly") {
110
+ const shareOrigin = parsedBatch.shareReportOrigin;
111
+ if (shareOrigin !== undefined) {
112
+ const shareRes = await postPublicVerificationReport(shareOrigin, {
113
+ schemaVersion: 2,
114
+ certificate,
115
+ });
116
+ if (!shareRes.ok) {
117
+ writeCliError(CLI_OPERATIONAL_CODES.SHARE_REPORT_FAILED, formatOperationalMessage(`share_report_origin=${shareOrigin} http_status=${String(shareRes.status)} detail=${shareRes.bodySnippet}`));
118
+ batchIo.exit(3);
119
+ throw new Error(CLI_EXITED_AFTER_ERROR);
120
+ }
121
+ if (!parsedBatch.noHumanReport) {
122
+ batchIo.stderrLine(`${certificate.humanReport}\n${formatDistributionFooter()}`);
123
+ }
124
+ }
125
+ else if (!parsedBatch.noHumanReport) {
126
+ process.stderr.write(`${certificate.humanReport}\n${formatDistributionFooter()}\n`);
127
+ }
128
+ }
129
+ else if (!parsedBatch.noHumanReport && parsedBatch.shareReportOrigin === undefined) {
130
+ process.stderr.write(`${certificate.humanReport}\n${formatDistributionFooter()}\n`);
131
+ }
132
+ const terminalStatus = terminalStatusFromCertificate(certificate);
107
133
  await postProductActivationEvent({
108
134
  phase: "verify_outcome",
109
135
  run_id: batchActivationRunId,
@@ -112,25 +138,97 @@ export async function runBatchVerifyWithTelemetrySubcommand(batchArgs, opts) {
112
138
  workflow_lineage: batchLineage,
113
139
  subcommand: opts.telemetrySubcommand,
114
140
  build_profile: batchBuildProfile,
115
- terminal_status: result.status,
141
+ terminal_status: terminalStatus,
116
142
  });
117
- if (!parsedBatch.noTruthReport) {
143
+ if (!parsedBatch.noHumanReport) {
118
144
  await maybeEmitOssClaimTicketUrlToStderr({
119
145
  run_id: batchActivationRunId,
120
- terminal_status: result.status,
146
+ terminal_status: terminalStatus,
121
147
  workload_class: batchWorkloadClass,
122
148
  subcommand: opts.telemetrySubcommand,
123
149
  build_profile: batchBuildProfile,
150
+ xRequestId: batchHttpCorrelationId,
124
151
  });
125
152
  }
126
153
  await postVerifyOutcomeBeacon({
127
154
  runId: batchPreflight.runId,
128
- terminal_status: result.status,
155
+ certificate,
156
+ terminal_status: terminalStatus,
129
157
  workload_class: batchWorkloadClass,
130
158
  subcommand: opts.telemetrySubcommand,
159
+ xRequestId: batchHttpCorrelationId,
160
+ });
161
+ if (workflowResultForStderrHook !== undefined) {
162
+ opts.stderrAppendBeforeStdout?.(workflowResultForStderrHook);
163
+ }
164
+ emitOutcomeCertificateCliAndExitByStateRelation(certificate, batchIo);
165
+ }
166
+ let langGraphEligibleLoad;
167
+ if (parsedBatch.langgraphCheckpointTrust) {
168
+ const load = loadEventsForWorkflow(parsedBatch.eventsPath, parsedBatch.workflowId);
169
+ const eligibility = classifyLangGraphCheckpointTrustEligibility({
170
+ runLevelReasons: load.runLevelReasons,
171
+ toolObservedEvents: load.events,
172
+ });
173
+ if (!eligibility.eligible) {
174
+ try {
175
+ const certificate = validatedLangGraphIneligibleCertificate(parsedBatch.workflowId, eligibility.certificateReasons);
176
+ await finishCertificateTelemetryAndExit(certificate, undefined, "ineligibleCertificateOnly");
177
+ }
178
+ catch (e) {
179
+ if (e instanceof Error && e.message === CLI_EXITED_AFTER_ERROR)
180
+ return;
181
+ throw e;
182
+ }
183
+ return;
184
+ }
185
+ langGraphEligibleLoad = load;
186
+ }
187
+ try {
188
+ const { certificate, workflowResult } = await runStandardVerifyWorkflowCliToTerminalResult({
189
+ shareReportOrigin: parsedBatch.shareReportOrigin,
190
+ runVerify: parsedBatch.langgraphCheckpointTrust
191
+ ? undefined
192
+ : () => verifyWorkflow({
193
+ workflowId: parsedBatch.workflowId,
194
+ eventsPath: parsedBatch.eventsPath,
195
+ registryPath: parsedBatch.registryPath,
196
+ database: parsedBatch.database,
197
+ verificationPolicy: parsedBatch.verificationPolicy,
198
+ truthReport: () => { },
199
+ }),
200
+ runVerifyWithCertificate: parsedBatch.langgraphCheckpointTrust
201
+ ? async () => {
202
+ const load = langGraphEligibleLoad;
203
+ const workflowResult = await verifyRunStateFromBufferedRunEvents({
204
+ workflowId: parsedBatch.workflowId,
205
+ registryPath: parsedBatch.registryPath,
206
+ database: parsedBatch.database,
207
+ projectRoot,
208
+ bufferedRunEvents: load.runEvents,
209
+ runLevelReasons: load.runLevelReasons,
210
+ verificationPolicy: parsedBatch.verificationPolicy,
211
+ logStep: () => { },
212
+ truthReport: () => { },
213
+ });
214
+ const validateWf = loadSchemaValidator("workflow-result");
215
+ if (!validateWf(workflowResult)) {
216
+ throw new TruthLayerError(CLI_OPERATIONAL_CODES.WORKFLOW_RESULT_SCHEMA_INVALID, JSON.stringify(validateWf.errors ?? []));
217
+ }
218
+ const certificate = buildOutcomeCertificateLangGraphCheckpointTrustFromWorkflowResult(workflowResult);
219
+ const validateCert = loadSchemaValidator("outcome-certificate-v1");
220
+ if (!validateCert(certificate)) {
221
+ throw new TruthLayerError(CLI_OPERATIONAL_CODES.WORKFLOW_RESULT_SCHEMA_INVALID, JSON.stringify(validateCert.errors ?? []));
222
+ }
223
+ return { workflowResult, certificate };
224
+ }
225
+ : undefined,
226
+ maybeWriteBundle: parsedBatch.writeRunBundleDir === undefined
227
+ ? undefined
228
+ : (wfResult) => writeRunBundleCli(parsedBatch.writeRunBundleDir, readFileSync(path.resolve(parsedBatch.eventsPath)), wfResult, parsedBatch.signPrivateKeyPath),
229
+ io: batchIo,
131
230
  });
132
- opts.stderrAppendBeforeStdout?.(result);
133
- emitVerifyWorkflowCliJsonAndExitByStatus(result, batchIo);
231
+ await finishCertificateTelemetryAndExit(certificate, workflowResult, "afterStandardRunner");
134
232
  }
135
233
  catch (e) {
136
234
  if (e instanceof Error && e.message === CLI_EXITED_AFTER_ERROR)
@@ -1 +1 @@
1
- {"version":3,"file":"batchVerifyTelemetrySubcommand.js","sourceRoot":"","sources":["../../src/verify/batchVerifyTelemetrySubcommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"batchVerifyTelemetrySubcommand.js","sourceRoot":"","sources":["../../src/verify/batchVerifyTelemetrySubcommand.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,11 @@
1
- import type { WorkflowResult } from "./types.js";
1
+ import type { OutcomeCertificateV1 } from "./outcomeCertificate.js";
2
2
  /**
3
- * Default adoption path: reads `agentskeptic/events.ndjson` and `agentskeptic/tools.json`
4
- * under `projectRoot`, verifies `workflowId` against `databaseUrl` (SQLite path or postgres URL).
5
- * For arbitrary paths use `verifyWorkflow` instead.
3
+ * Thin file-replay alias: reads `agentskeptic/events.ndjson` into a DecisionGate buffer and returns the same Outcome Certificate as batch verify.
4
+ * Prefer `createDecisionGate` for runtime integration.
6
5
  */
7
6
  export declare function verifyAgentskeptic(options: {
8
7
  workflowId: string;
9
8
  databaseUrl: string;
10
9
  projectRoot?: string;
11
- }): Promise<{
12
- ok: boolean;
13
- result: WorkflowResult;
14
- }>;
10
+ }): Promise<OutcomeCertificateV1>;
15
11
  //# sourceMappingURL=verifyAgentskeptic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"verifyAgentskeptic.d.ts","sourceRoot":"","sources":["../src/verifyAgentskeptic.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAajD;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE;IAChD,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,CAAC,CA0BnD"}
1
+ {"version":3,"file":"verifyAgentskeptic.d.ts","sourceRoot":"","sources":["../src/verifyAgentskeptic.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAIpE;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE;IAChD,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA2BhC"}
@@ -1,39 +1,34 @@
1
1
  import { existsSync } from "node:fs";
2
2
  import path from "node:path";
3
- import { verifyWorkflow } from "./pipeline.js";
3
+ import { createDecisionGate } from "./decisionGate.js";
4
+ import { loadEventsForWorkflow } from "./loadEvents.js";
4
5
  import { TruthLayerError } from "./truthLayerError.js";
5
- const POSTGRES_URL_RE = /^postgres(ql)?:\/\//i;
6
6
  const PROJECT_LAYOUT_MISSING = "PROJECT_VERIFICATION_LAYOUT_MISSING";
7
- function verificationDatabaseFromUrl(databaseUrl, projectRoot) {
8
- if (POSTGRES_URL_RE.test(databaseUrl)) {
9
- return { kind: "postgres", connectionString: databaseUrl };
10
- }
11
- return { kind: "sqlite", path: path.resolve(projectRoot, databaseUrl) };
12
- }
13
7
  /**
14
- * Default adoption path: reads `agentskeptic/events.ndjson` and `agentskeptic/tools.json`
15
- * under `projectRoot`, verifies `workflowId` against `databaseUrl` (SQLite path or postgres URL).
16
- * For arbitrary paths use `verifyWorkflow` instead.
8
+ * Thin file-replay alias: reads `agentskeptic/events.ndjson` into a DecisionGate buffer and returns the same Outcome Certificate as batch verify.
9
+ * Prefer `createDecisionGate` for runtime integration.
17
10
  */
18
11
  export async function verifyAgentskeptic(options) {
19
12
  const projectRoot = options.projectRoot ?? process.cwd();
20
13
  const resolvedRoot = path.resolve(projectRoot);
21
14
  const agentskepticDir = path.join(resolvedRoot, "agentskeptic");
22
15
  const eventsPath = path.join(agentskepticDir, "events.ndjson");
23
- const registryPath = path.join(agentskepticDir, "tools.json");
24
- if (!existsSync(eventsPath) || !existsSync(registryPath)) {
25
- throw new TruthLayerError(PROJECT_LAYOUT_MISSING, `${eventsPath}, ${registryPath}`);
16
+ const registryPathRel = path.join("agentskeptic", "tools.json");
17
+ if (!existsSync(eventsPath) || !existsSync(path.join(resolvedRoot, registryPathRel))) {
18
+ throw new TruthLayerError(PROJECT_LAYOUT_MISSING, `${eventsPath}, ${path.join(resolvedRoot, registryPathRel)}`);
26
19
  }
27
- const database = verificationDatabaseFromUrl(options.databaseUrl, resolvedRoot);
28
- const result = await verifyWorkflow({
20
+ const load = loadEventsForWorkflow(eventsPath, options.workflowId);
21
+ const gate = createDecisionGate({
29
22
  workflowId: options.workflowId,
30
- eventsPath,
31
- registryPath,
32
- database,
23
+ registryPath: registryPathRel,
24
+ databaseUrl: options.databaseUrl,
25
+ projectRoot: resolvedRoot,
33
26
  logStep: () => { },
34
27
  truthReport: () => { },
35
28
  });
36
- const ok = result.status === "complete";
37
- return { ok, result };
29
+ for (const ev of load.runEvents) {
30
+ gate.appendRunEvent(ev);
31
+ }
32
+ return gate.evaluateCertificate();
38
33
  }
39
34
  //# sourceMappingURL=verifyAgentskeptic.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verifyAgentskeptic.js","sourceRoot":"","sources":["../src/verifyAgentskeptic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAIvD,MAAM,eAAe,GAAG,sBAAsB,CAAC;AAE/C,MAAM,sBAAsB,GAAG,qCAA8C,CAAC;AAE9E,SAAS,2BAA2B,CAAC,WAAmB,EAAE,WAAmB;IAC3E,IAAI,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QACtC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC;IAC7D,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,CAAC;AAC1E,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,OAIxC;IACC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACzD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC/C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;IAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IAE9D,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,eAAe,CACvB,sBAAsB,EACtB,GAAG,UAAU,KAAK,YAAY,EAAE,CACjC,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,2BAA2B,CAAC,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAChF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;QAClC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,UAAU;QACV,YAAY;QACZ,QAAQ;QACR,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;QACjB,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC;KACtB,CAAC,CAAC;IAEH,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC;IACxC,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"verifyAgentskeptic.js","sourceRoot":"","sources":["../src/verifyAgentskeptic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD,MAAM,sBAAsB,GAAG,qCAA8C,CAAC;AAE9E;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,OAIxC;IACC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACzD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC/C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;IAC/D,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IAEhE,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC;QACrF,MAAM,IAAI,eAAe,CACvB,sBAAsB,EACtB,GAAG,UAAU,KAAK,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,EAAE,CAC7D,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,qBAAqB,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IACnE,MAAM,IAAI,GAAG,kBAAkB,CAAC;QAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,YAAY,EAAE,eAAe;QAC7B,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,WAAW,EAAE,YAAY;QACzB,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;QACjB,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC;KACtB,CAAC,CAAC;IACH,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAC;AACpC,CAAC"}
@@ -22,37 +22,35 @@ function seedTempProject() {
22
22
  return dir;
23
23
  }
24
24
  describe("verifyAgentskeptic", () => {
25
- it("wf_complete: ok true and status complete", async () => {
25
+ it("wf_complete: contract certificate matches expectations and permits high-stakes reliance", async () => {
26
26
  const projectRoot = seedTempProject();
27
27
  try {
28
28
  const dbPath = join(projectRoot, "demo.db");
29
- const { ok, result } = await verifyAgentskeptic({
29
+ const certificate = await verifyAgentskeptic({
30
30
  workflowId: "wf_complete",
31
31
  databaseUrl: dbPath,
32
32
  projectRoot,
33
33
  });
34
- expect(result.status).toBe("complete");
35
- expect(ok).toBe(true);
36
- expect(ok === (result.status === "complete")).toBe(true);
34
+ expect(certificate.stateRelation).toBe("matches_expectations");
35
+ expect(certificate.highStakesReliance).toBe("permitted");
36
+ expect(certificate.runKind).toBe("contract_sql");
37
37
  }
38
38
  finally {
39
39
  rmSync(projectRoot, { recursive: true, force: true });
40
40
  }
41
41
  });
42
- it("wf_missing: ok false and status inconsistent", async () => {
42
+ it("wf_missing: mismatch and prohibited reliance; explanation cites ROW_ABSENT", async () => {
43
43
  const projectRoot = seedTempProject();
44
44
  try {
45
45
  const dbPath = join(projectRoot, "demo.db");
46
- const { ok, result } = await verifyAgentskeptic({
46
+ const certificate = await verifyAgentskeptic({
47
47
  workflowId: "wf_missing",
48
48
  databaseUrl: dbPath,
49
49
  projectRoot,
50
50
  });
51
- expect(result.status).toBe("inconsistent");
52
- expect(ok).toBe(false);
53
- expect(ok === (result.status === "complete")).toBe(true);
54
- expect(result.steps[0]?.status).toBe("missing");
55
- expect(result.steps[0]?.reasons[0]?.code).toBe("ROW_ABSENT");
51
+ expect(certificate.stateRelation).toBe("does_not_match");
52
+ expect(certificate.highStakesReliance).toBe("prohibited");
53
+ expect(certificate.explanation.details.some((d) => d.code === "ROW_ABSENT")).toBe(true);
56
54
  }
57
55
  finally {
58
56
  rmSync(projectRoot, { recursive: true, force: true });
@@ -1 +1 @@
1
- {"version":3,"file":"verifyAgentskeptic.test.js","sourceRoot":"","sources":["../src/verifyAgentskeptic.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verifyAgentskeptic.test.js","sourceRoot":"","sources":["../src/verifyAgentskeptic.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACjG,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAEvC,SAAS,eAAe;IACtB,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAC7D,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAClD,SAAS,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,eAAe,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC;IAClG,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC;IAC5F,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;IAC1E,MAAM,EAAE,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;IACpC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,EAAE,CAAC,KAAK,EAAE,CAAC;IACX,OAAO,GAAG,CAAC;AACb,CAAC;AAED,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,yFAAyF,EAAE,KAAK,IAAI,EAAE;QACvG,MAAM,WAAW,GAAG,eAAe,EAAE,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAC5C,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC;gBAC3C,UAAU,EAAE,aAAa;gBACzB,WAAW,EAAE,MAAM;gBACnB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAC/D,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACzD,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACnD,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;QAC1F,MAAM,WAAW,GAAG,eAAe,EAAE,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;YAC5C,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC;gBAC3C,UAAU,EAAE,YAAY;gBACxB,WAAW,EAAE,MAAM;gBACnB,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACzD,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC1D,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1F,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;QAC9D,MAAM,WAAW,GAAG,eAAe,EAAE,CAAC;QACtC,IAAI,CAAC;YACH,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC,CAAC;YAC5D,MAAM,MAAM,CACV,kBAAkB,CAAC;gBACjB,UAAU,EAAE,aAAa;gBACzB,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC;gBACzC,WAAW;aACZ,CAAC,CACH,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;YAEnC,IAAI,CAAC;gBACH,MAAM,kBAAkB,CAAC;oBACvB,UAAU,EAAE,aAAa;oBACzB,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC;oBACzC,WAAW;iBACZ,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;gBAC1C,MAAM,GAAG,GAAG,MAAM,CAAE,CAAW,CAAC,OAAO,CAAC,CAAC;gBACzC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;YACzF,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { Reason, RunEvent, VerificationDatabase, VerificationPolicy, WorkflowResult } from "./types.js";
2
+ export type VerifyRunStateFromBufferedRunEventsInput = {
3
+ workflowId: string;
4
+ registryPath: string;
5
+ database: VerificationDatabase;
6
+ projectRoot: string;
7
+ bufferedRunEvents: RunEvent[];
8
+ runLevelReasons: Reason[];
9
+ verificationPolicy: VerificationPolicy;
10
+ logStep?: (line: object) => void;
11
+ truthReport?: (report: string) => void;
12
+ };
13
+ /**
14
+ * Single shared path: buffered run events + registry + DB → `WorkflowResult`.
15
+ * Used by `createDecisionGate` and `createLangGraphCheckpointTrustGate.runCheckpointTrust` (eligible path only).
16
+ */
17
+ export declare function verifyRunStateFromBufferedRunEvents(input: VerifyRunStateFromBufferedRunEventsInput): Promise<WorkflowResult>;
18
+ //# sourceMappingURL=verifyRunStateFromBufferedRunEvents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifyRunStateFromBufferedRunEvents.d.ts","sourceRoot":"","sources":["../src/verifyRunStateFromBufferedRunEvents.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,MAAM,EACN,QAAQ,EAER,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,wCAAwC,GAAG;IACrD,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,QAAQ,EAAE,CAAC;IAC9B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACxC,CAAC;AAEF;;;GAGG;AACH,wBAAsB,mCAAmC,CACvD,KAAK,EAAE,wCAAwC,GAC9C,OAAO,CAAC,cAAc,CAAC,CA0DzB"}
@@ -0,0 +1,65 @@
1
+ import path from "node:path";
2
+ import { isToolObservedRunEvent } from "./executionTrace.js";
3
+ import { loadToolsRegistry, verifyRunStateFromEvents } from "./pipeline.js";
4
+ import { prepareWorkflowEvents } from "./prepareWorkflowEvents.js";
5
+ /**
6
+ * Single shared path: buffered run events + registry + DB → `WorkflowResult`.
7
+ * Used by `createDecisionGate` and `createLangGraphCheckpointTrustGate.runCheckpointTrust` (eligible path only).
8
+ */
9
+ export async function verifyRunStateFromBufferedRunEvents(input) {
10
+ const projectRoot = path.resolve(input.projectRoot);
11
+ const registryPath = path.resolve(projectRoot, input.registryPath);
12
+ const logStep = input.logStep ?? (() => { });
13
+ const truthReport = input.truthReport ?? (() => { });
14
+ if (!input.bufferedRunEvents.length && !input.runLevelReasons.length) {
15
+ throw new Error("verifyRunStateFromBufferedRunEvents: empty buffer and no run-level reasons");
16
+ }
17
+ if (!input.bufferedRunEvents.length) {
18
+ const registry = loadToolsRegistry(registryPath);
19
+ return verifyRunStateFromEvents({
20
+ workflowId: input.workflowId,
21
+ events: [],
22
+ runEvents: [],
23
+ runLevelReasons: [...input.runLevelReasons],
24
+ eventSequenceIntegrity: { kind: "normal" },
25
+ eventFileAggregateCounts: {
26
+ eventFileNonEmptyLines: 0,
27
+ schemaValidEvents: 0,
28
+ toolObservedForRequestedWorkflowId: 0,
29
+ toolObservedForOtherWorkflowIds: 0,
30
+ },
31
+ registry,
32
+ database: input.database,
33
+ verificationPolicy: input.verificationPolicy,
34
+ logStep,
35
+ truthReport,
36
+ });
37
+ }
38
+ const toolCandidates = [];
39
+ for (const ev of input.bufferedRunEvents) {
40
+ if (isToolObservedRunEvent(ev)) {
41
+ toolCandidates.push(ev);
42
+ }
43
+ }
44
+ const { eventsSorted, eventSequenceIntegrity } = prepareWorkflowEvents(toolCandidates);
45
+ const registry = loadToolsRegistry(registryPath);
46
+ return verifyRunStateFromEvents({
47
+ workflowId: input.workflowId,
48
+ events: eventsSorted,
49
+ runEvents: input.bufferedRunEvents,
50
+ runLevelReasons: [...input.runLevelReasons],
51
+ eventSequenceIntegrity,
52
+ eventFileAggregateCounts: {
53
+ eventFileNonEmptyLines: 0,
54
+ schemaValidEvents: 0,
55
+ toolObservedForRequestedWorkflowId: toolCandidates.length,
56
+ toolObservedForOtherWorkflowIds: 0,
57
+ },
58
+ registry,
59
+ database: input.database,
60
+ verificationPolicy: input.verificationPolicy,
61
+ logStep,
62
+ truthReport,
63
+ });
64
+ }
65
+ //# sourceMappingURL=verifyRunStateFromBufferedRunEvents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifyRunStateFromBufferedRunEvents.js","sourceRoot":"","sources":["../src/verifyRunStateFromBufferedRunEvents.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAsBnE;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,mCAAmC,CACvD,KAA+C;IAE/C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IACnE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC5C,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAEpD,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;IAChG,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;QACjD,OAAO,wBAAwB,CAAC;YAC9B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,MAAM,EAAE,EAAE;YACV,SAAS,EAAE,EAAE;YACb,eAAe,EAAE,CAAC,GAAG,KAAK,CAAC,eAAe,CAAC;YAC3C,sBAAsB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC1C,wBAAwB,EAAE;gBACxB,sBAAsB,EAAE,CAAC;gBACzB,iBAAiB,EAAE,CAAC;gBACpB,kCAAkC,EAAE,CAAC;gBACrC,+BAA+B,EAAE,CAAC;aACnC;YACD,QAAQ;YACR,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,OAAO;YACP,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;IAED,MAAM,cAAc,GAAwB,EAAE,CAAC;IAC/C,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;QACzC,IAAI,sBAAsB,CAAC,EAAE,CAAC,EAAE,CAAC;YAC/B,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IACD,MAAM,EAAE,YAAY,EAAE,sBAAsB,EAAE,GAAG,qBAAqB,CAAC,cAAc,CAAC,CAAC;IACvF,MAAM,QAAQ,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;IACjD,OAAO,wBAAwB,CAAC;QAC9B,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,MAAM,EAAE,YAAY;QACpB,SAAS,EAAE,KAAK,CAAC,iBAAiB;QAClC,eAAe,EAAE,CAAC,GAAG,KAAK,CAAC,eAAe,CAAC;QAC3C,sBAAsB;QACtB,wBAAwB,EAAE;YACxB,sBAAsB,EAAE,CAAC;YACzB,iBAAiB,EAAE,CAAC;YACpB,kCAAkC,EAAE,cAAc,CAAC,MAAM;YACzD,+BAA+B,EAAE,CAAC;SACnC;QACD,QAAQ;QACR,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;QAC5C,OAAO;QACP,WAAW;KACZ,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Resolves the agentskeptic monorepo root in Vitest.
3
+ *
4
+ * `process.cwd()` alone can be wrong (e.g. `website/` with a `package.json`). A strict `..` from
5
+ * `import.meta.url` is wrong when the test URL is a transformed path. We walk from the test
6
+ * file upward (and also try `process.cwd()`) for a `package.json#name === "agentskeptic"` root
7
+ * that still contains the full `examples/debug-corpus` library.
8
+ */
9
+ export declare function monorepoRootForVitest(importMetaUrl: string): string;
10
+ //# sourceMappingURL=vitestMonorepoRoot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vitestMonorepoRoot.d.ts","sourceRoot":"","sources":["../src/vitestMonorepoRoot.ts"],"names":[],"mappings":"AAkDA;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAyCnE"}