agentskeptic 0.1.9 → 0.2.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.
- package/README.md +67 -0
- package/dist/agentRunBundle.js +1 -2
- package/dist/agentRunBundle.js.map +1 -1
- package/dist/agentRunRecord.d.ts +5 -0
- package/dist/agentRunRecord.d.ts.map +1 -1
- package/dist/agentRunRecord.js +5 -0
- package/dist/agentRunRecord.js.map +1 -1
- package/dist/bootstrap/bootstrapCliArgs.d.ts +8 -0
- package/dist/bootstrap/bootstrapCliArgs.d.ts.map +1 -0
- package/dist/bootstrap/bootstrapCliArgs.js +47 -0
- package/dist/bootstrap/bootstrapCliArgs.js.map +1 -0
- package/dist/bootstrap/executeBootstrapPack.d.ts +32 -0
- package/dist/bootstrap/executeBootstrapPack.d.ts.map +1 -0
- package/dist/bootstrap/executeBootstrapPack.js +208 -0
- package/dist/bootstrap/executeBootstrapPack.js.map +1 -0
- package/dist/bootstrap/runBootstrapSubcommand.d.ts +3 -7
- package/dist/bootstrap/runBootstrapSubcommand.d.ts.map +1 -1
- package/dist/bootstrap/runBootstrapSubcommand.js +22 -202
- package/dist/bootstrap/runBootstrapSubcommand.js.map +1 -1
- package/dist/cli/lockOrchestration.d.ts.map +1 -1
- package/dist/cli/lockOrchestration.js +36 -0
- package/dist/cli/lockOrchestration.js.map +1 -1
- package/dist/cli/runFunnelAnonSet.d.ts +18 -0
- package/dist/cli/runFunnelAnonSet.d.ts.map +1 -0
- package/dist/cli/runFunnelAnonSet.js +113 -0
- package/dist/cli/runFunnelAnonSet.js.map +1 -0
- package/dist/cli.js +55 -111
- package/dist/cli.js.map +1 -1
- package/dist/cliOperationalCodes.d.ts +1 -0
- package/dist/cliOperationalCodes.d.ts.map +1 -1
- package/dist/cliOperationalCodes.js +1 -0
- package/dist/cliOperationalCodes.js.map +1 -1
- package/dist/commercial/postVerifyOutcomeBeacon.d.ts +1 -1
- package/dist/commercial/postVerifyOutcomeBeacon.d.ts.map +1 -1
- package/dist/crossing/crossingDecisionReadyFooter.d.ts +3 -0
- package/dist/crossing/crossingDecisionReadyFooter.d.ts.map +1 -0
- package/dist/crossing/crossingDecisionReadyFooter.js +3 -0
- package/dist/crossing/crossingDecisionReadyFooter.js.map +1 -0
- package/dist/crossing/runCrossingSubcommand.d.ts +2 -0
- package/dist/crossing/runCrossingSubcommand.d.ts.map +1 -0
- package/dist/crossing/runCrossingSubcommand.js +177 -0
- package/dist/crossing/runCrossingSubcommand.js.map +1 -0
- package/dist/debugCorpus.d.ts +2 -5
- package/dist/debugCorpus.d.ts.map +1 -1
- package/dist/debugCorpus.js +2 -5
- package/dist/debugCorpus.js.map +1 -1
- package/dist/funnel/workflowLineageClassify.d.ts +18 -0
- package/dist/funnel/workflowLineageClassify.d.ts.map +1 -0
- package/dist/funnel/workflowLineageClassify.js +29 -0
- package/dist/funnel/workflowLineageClassify.js.map +1 -0
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/operationalDisposition.d.ts +8 -0
- package/dist/operationalDisposition.d.ts.map +1 -1
- package/dist/operationalDisposition.js +8 -0
- package/dist/operationalDisposition.js.map +1 -1
- package/dist/publicDistribution.generated.d.ts +1 -1
- package/dist/publicDistribution.generated.d.ts.map +1 -1
- package/dist/publicDistribution.generated.js +2 -1
- package/dist/publicDistribution.generated.js.map +1 -1
- package/dist/telemetry/cliInstallId.d.ts +12 -0
- package/dist/telemetry/cliInstallId.d.ts.map +1 -1
- package/dist/telemetry/cliInstallId.js +46 -8
- package/dist/telemetry/cliInstallId.js.map +1 -1
- package/dist/telemetry/maybeEmitOssClaimTicketUrl.d.ts +1 -1
- package/dist/telemetry/maybeEmitOssClaimTicketUrl.d.ts.map +1 -1
- package/dist/telemetry/maybeEmitOssClaimTicketUrl.js +24 -6
- package/dist/telemetry/maybeEmitOssClaimTicketUrl.js.map +1 -1
- package/dist/telemetry/openHandoffUrlInOsBrowser.d.ts +9 -0
- package/dist/telemetry/openHandoffUrlInOsBrowser.d.ts.map +1 -0
- package/dist/telemetry/openHandoffUrlInOsBrowser.js +24 -0
- package/dist/telemetry/openHandoffUrlInOsBrowser.js.map +1 -0
- package/dist/telemetry/postOssClaimContinuation.d.ts +5 -0
- package/dist/telemetry/postOssClaimContinuation.d.ts.map +1 -0
- package/dist/telemetry/postOssClaimContinuation.js +30 -0
- package/dist/telemetry/postOssClaimContinuation.js.map +1 -0
- package/dist/telemetry/postOssClaimTicket.d.ts +13 -3
- package/dist/telemetry/postOssClaimTicket.d.ts.map +1 -1
- package/dist/telemetry/postOssClaimTicket.js +36 -7
- package/dist/telemetry/postOssClaimTicket.js.map +1 -1
- package/dist/telemetry/postProductActivationEvent.d.ts +5 -2
- package/dist/telemetry/postProductActivationEvent.d.ts.map +1 -1
- package/dist/telemetry/postProductActivationEvent.js +9 -4
- package/dist/telemetry/postProductActivationEvent.js.map +1 -1
- package/dist/telemetry/postProductActivationEvent.test.js +7 -1
- package/dist/telemetry/postProductActivationEvent.test.js.map +1 -1
- package/dist/verify/batchVerifyTelemetrySubcommand.d.ts +8 -0
- package/dist/verify/batchVerifyTelemetrySubcommand.d.ts.map +1 -0
- package/dist/verify/batchVerifyTelemetrySubcommand.js +141 -0
- package/dist/verify/batchVerifyTelemetrySubcommand.js.map +1 -0
- package/dist/verifyAgentskeptic.d.ts +15 -0
- package/dist/verifyAgentskeptic.d.ts.map +1 -0
- package/dist/verifyAgentskeptic.js +39 -0
- package/dist/verifyAgentskeptic.js.map +1 -0
- package/dist/verifyAgentskeptic.test.d.ts +2 -0
- package/dist/verifyAgentskeptic.test.d.ts.map +1 -0
- package/dist/verifyAgentskeptic.test.js +88 -0
- package/dist/verifyAgentskeptic.test.js.map +1 -0
- package/dist/verifyRunBundleSignature.d.ts.map +1 -1
- package/dist/verifyRunBundleSignature.js +1 -2
- package/dist/verifyRunBundleSignature.js.map +1 -1
- package/package.json +11 -8
- package/scripts/discovery-payload.lib.cjs +27 -1
package/README.md
CHANGED
|
@@ -55,6 +55,66 @@ steps:
|
|
|
55
55
|
[Product brief](https://agentskeptic.com/database-truth-vs-traces)
|
|
56
56
|
<!-- discovery-acquisition-fold:end -->
|
|
57
57
|
|
|
58
|
+
<!-- adoption-canonical:start -->
|
|
59
|
+
## Default path: verify from your app
|
|
60
|
+
|
|
61
|
+
### Lifecycle
|
|
62
|
+
|
|
63
|
+
1. After each persisted tool observation, append **one JSON line + newline** to **`agentskeptic/events.ndjson`** (wire shape: [`docs/agentskeptic.md`](docs/agentskeptic.md#event-line-schema)).
|
|
64
|
+
2. Keep **`agentskeptic/tools.json`** in version control; update when `toolId` → SQL mapping changes.
|
|
65
|
+
3. Call **`verifyAgentskeptic`** after the run (or CI replay) before treating outcomes as safe.
|
|
66
|
+
|
|
67
|
+
### Install
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
npm install agentskeptic
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### Code
|
|
74
|
+
|
|
75
|
+
```ts
|
|
76
|
+
import { appendFileSync, writeFileSync, mkdirSync } from "node:fs";
|
|
77
|
+
import { join } from "node:path";
|
|
78
|
+
import { verifyAgentskeptic } from "agentskeptic";
|
|
79
|
+
|
|
80
|
+
const projectRoot = process.cwd();
|
|
81
|
+
const d = join(projectRoot, "agentskeptic");
|
|
82
|
+
mkdirSync(d, { recursive: true });
|
|
83
|
+
writeFileSync(
|
|
84
|
+
join(d, "tools.json"),
|
|
85
|
+
JSON.stringify([
|
|
86
|
+
{
|
|
87
|
+
toolId: "crm.upsert_contact",
|
|
88
|
+
effectDescriptionTemplate: "Upsert contact {/recordId} with fields {/fields}",
|
|
89
|
+
verification: {
|
|
90
|
+
kind: "sql_row",
|
|
91
|
+
table: { const: "contacts" },
|
|
92
|
+
identityEq: [{ column: { const: "id" }, value: { pointer: "/recordId" } }],
|
|
93
|
+
requiredFields: { pointer: "/fields" },
|
|
94
|
+
},
|
|
95
|
+
},
|
|
96
|
+
]) + "\n",
|
|
97
|
+
);
|
|
98
|
+
appendFileSync(
|
|
99
|
+
join(d, "events.ndjson"),
|
|
100
|
+
JSON.stringify({
|
|
101
|
+
schemaVersion: 1,
|
|
102
|
+
workflowId: "wf_demo",
|
|
103
|
+
seq: 0,
|
|
104
|
+
type: "tool_observed",
|
|
105
|
+
toolId: "crm.upsert_contact",
|
|
106
|
+
params: { recordId: "c_ok", fields: { name: "Alice", status: "active" } },
|
|
107
|
+
}) + "\n",
|
|
108
|
+
);
|
|
109
|
+
|
|
110
|
+
const { ok, result } = await verifyAgentskeptic({
|
|
111
|
+
workflowId: "wf_demo",
|
|
112
|
+
databaseUrl: join(projectRoot, "app.db"),
|
|
113
|
+
});
|
|
114
|
+
if (!ok) throw new Error(`Verification failed: ${result.status}`);
|
|
115
|
+
```
|
|
116
|
+
<!-- adoption-canonical:end -->
|
|
117
|
+
|
|
58
118
|
## Buy vs build: why not only SQL checks
|
|
59
119
|
|
|
60
120
|
**The scar (one pattern, over and over):** the trace says the tool succeeded—here **`crm.upsert_contact`** / **`contacts`**—but the row is missing or wrong. The repo demo names it **`wf_missing`** / **`ROW_ABSENT`**; **the same failure shape** applies whenever your registry maps tool activity to SQL state (ledgers, orders, tickets—not only CRM). That is not a logging problem—it is a **money and risk** problem the moment you ship, bill, close, or treat the run as audit evidence.
|
|
@@ -84,6 +144,10 @@ State verification engine: read-only SQL checks that database state matches expe
|
|
|
84
144
|
|
|
85
145
|
<!-- public-product-anchors:end -->
|
|
86
146
|
|
|
147
|
+
## Advanced
|
|
148
|
+
|
|
149
|
+
**Canonical runnable (same API as README `### Code`):** after `npm run build`, run `node examples/verify-agentskeptic-canonical.mjs`.
|
|
150
|
+
|
|
87
151
|
## Try it (about one minute)
|
|
88
152
|
|
|
89
153
|
This is the fastest way to see **`ROW_ABSENT`** versus **verified** on the same screen—the concrete failure mode the section above is about (bundled CRM-style demo, not your production incident yet).
|
|
@@ -92,6 +156,8 @@ This is the fastest way to see **`ROW_ABSENT`** versus **verified** on the same
|
|
|
92
156
|
|
|
93
157
|
**Fast first run on your own DB (bundled quickstart example):** after `npm install` and `npm run build`, run **`npm run partner-quickstart`** from the repo root (SQLite temp DB). Commands reference: **[`docs/partner-quickstart-commands.md`](docs/partner-quickstart-commands.md)**; narrative: **[`docs/first-run-integration.md`](docs/first-run-integration.md)** and **`/integrate`** on the site.
|
|
94
158
|
|
|
159
|
+
**Integrator-owned output:** The demo above is pedagogy. Default path: **`agentskeptic crossing`** — see **`docs/crossing-normative.md`**. For verification on **your** NDJSON, registry, and authoritative SQLite or Postgres, follow **[Grounded integrator-owned output](docs/first-run-integration.md#grounded-integrator-owned-output-primary-path)** in **`docs/first-run-integration.md`** after **`npm run build`**. Standalone **`agentskeptic verify-integrator-owned`** remains for explicit pack-led parity and CI (same flags as contract batch verify; rejects shipped example fixture triples with exit **2** and stderr **`INTEGRATOR_OWNED_GATE`**—see **`docs/agentskeptic.md`** Integrator-owned gate).
|
|
160
|
+
|
|
95
161
|
```bash
|
|
96
162
|
npm install
|
|
97
163
|
npm start
|
|
@@ -250,6 +316,7 @@ Everything beyond core contract verification lives in **[`docs/agentskeptic.md`]
|
|
|
250
316
|
|
|
251
317
|
| Doc | Purpose |
|
|
252
318
|
|-----|---------|
|
|
319
|
+
| [`docs/epistemic-contract.md`](docs/epistemic-contract.md) | **Normative epistemic contract** (grounded output vs funnel; ranking limits; telemetry proxies)—single authored source; other docs link or generate from here |
|
|
253
320
|
| [README — Buy vs build](#buy-vs-build-why-not-only-sql-checks) | Canonical **buy vs build** narrative (failure mode, scripts limits, Quick → Contract) |
|
|
254
321
|
| [`docs/agentskeptic.md`](docs/agentskeptic.md) | Authoritative CLI and behavior reference (SSOT) |
|
|
255
322
|
| [`docs/quick-verify-normative.md`](docs/quick-verify-normative.md) | Quick Verify normative contract |
|
package/dist/agentRunBundle.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { existsSync, mkdirSync, readFileSync, renameSync, unlinkSync, writeFileSync, } from "node:fs";
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import { fileURLToPath } from "node:url";
|
|
4
|
-
import { buildAgentRunRecordForBundle } from "./agentRunRecord.js";
|
|
5
|
-
import { AGENT_RUN_FILENAME, EVENTS_FILENAME, WORKFLOW_RESULT_FILENAME, WORKFLOW_RESULT_SIG_FILENAME, } from "./debugCorpus.js";
|
|
4
|
+
import { AGENT_RUN_FILENAME, EVENTS_FILENAME, WORKFLOW_RESULT_FILENAME, WORKFLOW_RESULT_SIG_FILENAME, buildAgentRunRecordForBundle, } from "./agentRunRecord.js";
|
|
6
5
|
import { buildWorkflowResultSigSidecarBytes } from "./workflowResultSignature.js";
|
|
7
6
|
function readPackageIdentity() {
|
|
8
7
|
const pkgPath = path.join(path.dirname(fileURLToPath(import.meta.url)), "..", "package.json");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentRunBundle.js","sourceRoot":"","sources":["../src/agentRunBundle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,SAAS,EACT,YAAY,EACZ,UAAU,EACV,UAAU,EACV,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,
|
|
1
|
+
{"version":3,"file":"agentRunBundle.js","sourceRoot":"","sources":["../src/agentRunBundle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,SAAS,EACT,YAAY,EACZ,UAAU,EACV,UAAU,EACV,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,wBAAwB,EACxB,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,kCAAkC,EAAE,MAAM,8BAA8B,CAAC;AAgBlF,SAAS,mBAAmB;IAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IAC9F,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAwC,CAAC;IACnE,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC;IAC7F,MAAM,OAAO,GAAG,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;IAClG,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AAC3B,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAAC,GAAW,EAAE,SAAiB,EAAE,IAAY;IACvE,MAAM,OAAO,GAAG,GAAG,SAAS,IAAI,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;IAChE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC5C,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC7B,IAAI,CAAC;QACH,IAAI,CAAC;YACH,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACjC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1B,UAAU,CAAC,SAAS,CAAC,CAAC;gBACtB,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YACjC,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,CAAC;YACV,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC;gBACH,UAAU,CAAC,OAAO,CAAC,CAAC;YACtB,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY;YACd,CAAC;QACH,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAgB,EAAE,OAAiB;IAC/D,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;QAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACpC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YAClB,IAAI,CAAC;gBACH,UAAU,CAAC,CAAC,CAAC,CAAC;YAChB,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY;YACd,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAmC;IACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IACzC,MAAM,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC;IACxF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,mBAAmB,EAAE,CAAC;IAC3D,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAElE,MAAM,WAAW,GAAG,OAAO,CAAC,wBAAwB,CAAC;IACrD,IAAI,4BAAgD,CAAC;IACrD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC;QACnE,4BAA4B,GAAG,kCAAkC,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;IACrG,CAAC;IAED,MAAM,MAAM,GAAG,4BAA4B,CAAC;QAC1C,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC9B,UAAU,EAAE,OAAO,CAAC,cAAc,CAAC,UAAU;QAC7C,QAAQ;QACR,UAAU;QACV,mBAAmB;QACnB,WAAW;QACX,GAAG,CAAC,4BAA4B,KAAK,SAAS;YAC5C,CAAC,CAAC,EAAE,4BAA4B,EAAE;YAClC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAElF,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzC,MAAM,MAAM,GAAG,4BAA4B,KAAK,SAAS,CAAC;IAC1D,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,IAAI,CAAC;QACH,mBAAmB,CAAC,QAAQ,EAAE,eAAe,EAAE,WAAW,CAAC,CAAC;QAC5D,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC9B,mBAAmB,CAAC,QAAQ,EAAE,wBAAwB,EAAE,mBAAmB,CAAC,CAAC;QAC7E,OAAO,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACvC,IAAI,MAAM,IAAI,4BAA4B,EAAE,CAAC;YAC3C,mBAAmB,CAAC,QAAQ,EAAE,4BAA4B,EAAE,4BAA4B,CAAC,CAAC;YAC1F,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QAC7C,CAAC;QACD,mBAAmB,CAAC,QAAQ,EAAE,kBAAkB,EAAE,aAAa,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACnC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,MAAM,EAAE,CAAC;YACX,oBAAoB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC1C,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC"}
|
package/dist/agentRunRecord.d.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
export declare const WORKFLOW_RESULT_RELATIVE = "workflow-result.json";
|
|
2
2
|
export declare const EVENTS_RELATIVE = "events.ndjson";
|
|
3
3
|
export declare const WORKFLOW_RESULT_SIGNATURE_RELATIVE = "workflow-result.sig.json";
|
|
4
|
+
/** On-disk corpus / run-bundle filenames (same strings as manifest `relativePath` fields). */
|
|
5
|
+
export declare const AGENT_RUN_FILENAME = "agent-run.json";
|
|
6
|
+
export declare const EVENTS_FILENAME = "events.ndjson";
|
|
7
|
+
export declare const WORKFLOW_RESULT_FILENAME = "workflow-result.json";
|
|
8
|
+
export declare const WORKFLOW_RESULT_SIG_FILENAME = "workflow-result.sig.json";
|
|
4
9
|
export type ArtifactSpec = {
|
|
5
10
|
relativePath: string;
|
|
6
11
|
sha256: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentRunRecord.d.ts","sourceRoot":"","sources":["../src/agentRunRecord.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,wBAAwB,yBAAyB,CAAC;AAC/D,eAAO,MAAM,eAAe,kBAAkB,CAAC;AAC/C,eAAO,MAAM,kCAAkC,6BAA6B,CAAC;AAE7E,MAAM,MAAM,YAAY,GAAG;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,oEAAoE;AACpE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,EAAE,CAAC,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE;QACT,cAAc,EAAE;YAAE,YAAY,EAAE,OAAO,wBAAwB,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAE,CAAC;QACtG,MAAM,EAAE;YAAE,YAAY,EAAE,OAAO,eAAe,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAE,CAAC;KACtF,CAAC;CACH,CAAC;AAEF,kEAAkE;AAClE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,EAAE,CAAC,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE;QACT,cAAc,EAAE;YAAE,YAAY,EAAE,OAAO,wBAAwB,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAE,CAAC;QACtG,MAAM,EAAE;YAAE,YAAY,EAAE,OAAO,eAAe,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAE,CAAC;QACrF,uBAAuB,EAAE;YACvB,YAAY,EAAE,OAAO,kCAAkC,CAAC;YACxD,MAAM,EAAE,MAAM,CAAC;YACf,UAAU,EAAE,MAAM,CAAC;SACpB,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;AAEjE,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,8DAA8D;IAC9D,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,wBAAwB,GAAG,cAAc,CA6C5F"}
|
|
1
|
+
{"version":3,"file":"agentRunRecord.d.ts","sourceRoot":"","sources":["../src/agentRunRecord.ts"],"names":[],"mappings":"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"}
|
package/dist/agentRunRecord.js
CHANGED
|
@@ -2,6 +2,11 @@ import { createHash } from "node:crypto";
|
|
|
2
2
|
export const WORKFLOW_RESULT_RELATIVE = "workflow-result.json";
|
|
3
3
|
export const EVENTS_RELATIVE = "events.ndjson";
|
|
4
4
|
export const WORKFLOW_RESULT_SIGNATURE_RELATIVE = "workflow-result.sig.json";
|
|
5
|
+
/** On-disk corpus / run-bundle filenames (same strings as manifest `relativePath` fields). */
|
|
6
|
+
export const AGENT_RUN_FILENAME = "agent-run.json";
|
|
7
|
+
export const EVENTS_FILENAME = EVENTS_RELATIVE;
|
|
8
|
+
export const WORKFLOW_RESULT_FILENAME = WORKFLOW_RESULT_RELATIVE;
|
|
9
|
+
export const WORKFLOW_RESULT_SIG_FILENAME = WORKFLOW_RESULT_SIGNATURE_RELATIVE;
|
|
5
10
|
export function sha256Hex(bytes) {
|
|
6
11
|
return createHash("sha256").update(bytes).digest("hex");
|
|
7
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentRunRecord.js","sourceRoot":"","sources":["../src/agentRunRecord.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,CAAC,MAAM,wBAAwB,GAAG,sBAAsB,CAAC;AAC/D,MAAM,CAAC,MAAM,eAAe,GAAG,eAAe,CAAC;AAC/C,MAAM,CAAC,MAAM,kCAAkC,GAAG,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"agentRunRecord.js","sourceRoot":"","sources":["../src/agentRunRecord.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,CAAC,MAAM,wBAAwB,GAAG,sBAAsB,CAAC;AAC/D,MAAM,CAAC,MAAM,eAAe,GAAG,eAAe,CAAC;AAC/C,MAAM,CAAC,MAAM,kCAAkC,GAAG,0BAA0B,CAAC;AAE7E,8FAA8F;AAC9F,MAAM,CAAC,MAAM,kBAAkB,GAAG,gBAAgB,CAAC;AACnD,MAAM,CAAC,MAAM,eAAe,GAAG,eAAe,CAAC;AAC/C,MAAM,CAAC,MAAM,wBAAwB,GAAG,wBAAwB,CAAC;AACjE,MAAM,CAAC,MAAM,4BAA4B,GAAG,kCAAkC,CAAC;AA6C/E,MAAM,UAAU,SAAS,CAAC,KAAa;IACrC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1D,CAAC;AAeD,MAAM,UAAU,4BAA4B,CAAC,KAA+B;IAC1E,MAAM,IAAI,GAAG;QACX,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,GAAG,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,GAAG,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACvG,CAAC;IAEF,MAAM,cAAc,GAAoD;QACtE,YAAY,EAAE,wBAAwB;QACtC,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,mBAAmB,CAAC;QAC5C,UAAU,EAAE,KAAK,CAAC,mBAAmB,CAAC,MAAM;KAC7C,CAAC;IACF,MAAM,MAAM,GAA4C;QACtD,YAAY,EAAE,eAAe;QAC7B,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC;QACpC,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,MAAM;KACrC,CAAC;IAEF,MAAM,QAAQ,GAAG,KAAK,CAAC,4BAA4B,CAAC;IACpD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAqB;YAC5B,GAAG,IAAI;YACP,aAAa,EAAE,CAAC;YAChB,SAAS,EAAE;gBACT,cAAc;gBACd,MAAM;gBACN,uBAAuB,EAAE;oBACvB,YAAY,EAAE,kCAAkC;oBAChD,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC;oBAC3B,UAAU,EAAE,QAAQ,CAAC,MAAM;iBACuC;aACrE;SACF,CAAC;QACF,OAAO,GAAG,CAAC;IACb,CAAC;IAED,MAAM,GAAG,GAAqB;QAC5B,GAAG,IAAI;QACP,aAAa,EAAE,CAAC;QAChB,SAAS,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE;KACtC,CAAC;IACF,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export type ParsedBootstrapCli = {
|
|
2
|
+
inputPath: string;
|
|
3
|
+
outPath: string;
|
|
4
|
+
dbPath: string | undefined;
|
|
5
|
+
postgresUrl: string | undefined;
|
|
6
|
+
};
|
|
7
|
+
export declare function parseBootstrapCliArgs(args: string[]): ParsedBootstrapCli;
|
|
8
|
+
//# sourceMappingURL=bootstrapCliArgs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bootstrapCliArgs.d.ts","sourceRoot":"","sources":["../../src/bootstrap/bootstrapCliArgs.ts"],"names":[],"mappings":"AAiCA,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;CACjC,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAiBxE"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { CLI_OPERATIONAL_CODES } from "../cliOperationalCodes.js";
|
|
2
|
+
import { TruthLayerError } from "../truthLayerError.js";
|
|
3
|
+
import { argValue } from "../cliArgv.js";
|
|
4
|
+
const ALLOWED_BOOTSTRAP_FLAGS = new Set([
|
|
5
|
+
"--input",
|
|
6
|
+
"--out",
|
|
7
|
+
"--db",
|
|
8
|
+
"--postgres-url",
|
|
9
|
+
"--help",
|
|
10
|
+
"-h",
|
|
11
|
+
]);
|
|
12
|
+
function assertBootstrapArgsWellFormed(args) {
|
|
13
|
+
for (let i = 0; i < args.length; i++) {
|
|
14
|
+
const a = args[i];
|
|
15
|
+
if (a === "-h" || a === "--help")
|
|
16
|
+
continue;
|
|
17
|
+
if (!a.startsWith("--")) {
|
|
18
|
+
throw new TruthLayerError(CLI_OPERATIONAL_CODES.BOOTSTRAP_USAGE, `Unexpected argument: ${a}`);
|
|
19
|
+
}
|
|
20
|
+
if (!ALLOWED_BOOTSTRAP_FLAGS.has(a)) {
|
|
21
|
+
throw new TruthLayerError(CLI_OPERATIONAL_CODES.BOOTSTRAP_USAGE, `Unknown option: ${a}`);
|
|
22
|
+
}
|
|
23
|
+
if (a === "--input" || a === "--out" || a === "--db" || a === "--postgres-url") {
|
|
24
|
+
const v = args[i + 1];
|
|
25
|
+
if (v === undefined || v.startsWith("--")) {
|
|
26
|
+
throw new TruthLayerError(CLI_OPERATIONAL_CODES.BOOTSTRAP_USAGE, `Missing value after ${a}.`);
|
|
27
|
+
}
|
|
28
|
+
i++;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export function parseBootstrapCliArgs(args) {
|
|
33
|
+
assertBootstrapArgsWellFormed(args);
|
|
34
|
+
const inputPath = argValue(args, "--input");
|
|
35
|
+
const outPath = argValue(args, "--out");
|
|
36
|
+
const dbPath = argValue(args, "--db");
|
|
37
|
+
const postgresUrl = argValue(args, "--postgres-url");
|
|
38
|
+
if (!inputPath || !outPath) {
|
|
39
|
+
throw new TruthLayerError(CLI_OPERATIONAL_CODES.BOOTSTRAP_USAGE, "Missing --input or --out.");
|
|
40
|
+
}
|
|
41
|
+
const dbCount = (dbPath ? 1 : 0) + (postgresUrl ? 1 : 0);
|
|
42
|
+
if (dbCount !== 1) {
|
|
43
|
+
throw new TruthLayerError(CLI_OPERATIONAL_CODES.BOOTSTRAP_USAGE, "Provide exactly one of --db or --postgres-url.");
|
|
44
|
+
}
|
|
45
|
+
return { inputPath, outPath, dbPath, postgresUrl };
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=bootstrapCliArgs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bootstrapCliArgs.js","sourceRoot":"","sources":["../../src/bootstrap/bootstrapCliArgs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC;IACtC,SAAS;IACT,OAAO;IACP,MAAM;IACN,gBAAgB;IAChB,QAAQ;IACR,IAAI;CACL,CAAC,CAAC;AAEH,SAAS,6BAA6B,CAAC,IAAc;IACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACnB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,QAAQ;YAAE,SAAS;QAC3C,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,eAAe,CAAC,qBAAqB,CAAC,eAAe,EAAE,wBAAwB,CAAC,EAAE,CAAC,CAAC;QAChG,CAAC;QACD,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,eAAe,CAAC,qBAAqB,CAAC,eAAe,EAAE,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAC3F,CAAC;QACD,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,gBAAgB,EAAE,CAAC;YAC/E,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1C,MAAM,IAAI,eAAe,CAAC,qBAAqB,CAAC,eAAe,EAAE,uBAAuB,CAAC,GAAG,CAAC,CAAC;YAChG,CAAC;YACD,CAAC,EAAE,CAAC;QACN,CAAC;IACH,CAAC;AACH,CAAC;AASD,MAAM,UAAU,qBAAqB,CAAC,IAAc;IAClD,6BAA6B,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtC,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IACrD,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO,EAAE,CAAC;QAC3B,MAAM,IAAI,eAAe,CAAC,qBAAqB,CAAC,eAAe,EAAE,2BAA2B,CAAC,CAAC;IAChG,CAAC;IACD,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;QAClB,MAAM,IAAI,eAAe,CACvB,qBAAqB,CAAC,eAAe,EACrC,gDAAgD,CACjD,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;AACrD,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { WorkflowResult } from "../types.js";
|
|
2
|
+
import type { ParsedBootstrapCli } from "./bootstrapCliArgs.js";
|
|
3
|
+
export declare function cleanupOutDirFromPath(outResolved: string): void;
|
|
4
|
+
export type ExecuteBootstrapPackSuccess = {
|
|
5
|
+
kind: "pack_ready";
|
|
6
|
+
workflowId: string;
|
|
7
|
+
eventsPath: string;
|
|
8
|
+
registryPath: string;
|
|
9
|
+
outResolved: string;
|
|
10
|
+
exportedToolCount: number;
|
|
11
|
+
};
|
|
12
|
+
export type ExecuteBootstrapPackFailure = {
|
|
13
|
+
kind: "bootstrap_cli_error";
|
|
14
|
+
exitCode: 2 | 3;
|
|
15
|
+
code: string;
|
|
16
|
+
message: string;
|
|
17
|
+
} | {
|
|
18
|
+
kind: "verify_terminal";
|
|
19
|
+
exitCode: 1 | 2;
|
|
20
|
+
result: WorkflowResult;
|
|
21
|
+
truthBuffered: string;
|
|
22
|
+
outResolved: string;
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Core bootstrap pack build + in-process contract verify.
|
|
26
|
+
* On success (`pack_ready`), leaves `outResolved` on disk.
|
|
27
|
+
* On `verify_terminal`, leaves `outResolved` on disk until the caller exits (caller must cleanup via exit hook).
|
|
28
|
+
* On `operational`, cleans up `outResolved` when it was created.
|
|
29
|
+
*/
|
|
30
|
+
export declare function executeBootstrapPack(parsed: ParsedBootstrapCli): Promise<ExecuteBootstrapPackSuccess | ExecuteBootstrapPackFailure>;
|
|
31
|
+
export declare function writeBootstrapOperationalFailure(code: string, message: string): void;
|
|
32
|
+
//# sourceMappingURL=executeBootstrapPack.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"executeBootstrapPack.d.ts","sourceRoot":"","sources":["../../src/bootstrap/executeBootstrapPack.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AASlD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAM/D;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,YAAY,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,2BAA2B,GACnC;IAAE,IAAI,EAAE,qBAAqB,CAAC;IAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC/E;IACE,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;IAChB,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEN;;;;;GAKG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,2BAA2B,GAAG,2BAA2B,CAAC,CAyLpE;AAED,wBAAgB,gCAAgC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAEpF"}
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
import { existsSync, mkdirSync, readFileSync, rmSync } from "node:fs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { runLicensePreflightIfNeeded } from "../commercial/licensePreflight.js";
|
|
4
|
+
import { CLI_OPERATIONAL_CODES } from "../cliOperationalCodes.js";
|
|
5
|
+
import { cliErrorEnvelope, formatOperationalMessage, } from "../failureCatalog.js";
|
|
6
|
+
import { verifyWorkflow } from "../pipeline.js";
|
|
7
|
+
import { loadSchemaValidator } from "../schemaLoad.js";
|
|
8
|
+
import { TruthLayerError } from "../truthLayerError.js";
|
|
9
|
+
import { atomicWriteUtf8File } from "../quickVerify/atomicWrite.js";
|
|
10
|
+
import { buildQuickContractEventsNdjson } from "../quickVerify/buildQuickContractEventsNdjson.js";
|
|
11
|
+
import { stableStringify } from "../quickVerify/canonicalJson.js";
|
|
12
|
+
import { runQuickVerifyToValidatedReport } from "../quickVerify/runQuickVerify.js";
|
|
13
|
+
import { buildBootstrapReadmeMarkdown } from "./bootstrapReadmeTemplate.js";
|
|
14
|
+
import { parseBootstrapPackInputJson } from "./parseBootstrapPackInput.js";
|
|
15
|
+
import { synthesizeQuickInputUtf8FromOpenAiV1 } from "./synthesizeQuickInputFromOpenAiV1.js";
|
|
16
|
+
export function cleanupOutDirFromPath(outResolved) {
|
|
17
|
+
try {
|
|
18
|
+
rmSync(outResolved, { recursive: true, force: true });
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
/* best-effort */
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Core bootstrap pack build + in-process contract verify.
|
|
26
|
+
* On success (`pack_ready`), leaves `outResolved` on disk.
|
|
27
|
+
* On `verify_terminal`, leaves `outResolved` on disk until the caller exits (caller must cleanup via exit hook).
|
|
28
|
+
* On `operational`, cleans up `outResolved` when it was created.
|
|
29
|
+
*/
|
|
30
|
+
export async function executeBootstrapPack(parsed) {
|
|
31
|
+
const outResolved = path.resolve(parsed.outPath);
|
|
32
|
+
if (existsSync(outResolved)) {
|
|
33
|
+
return {
|
|
34
|
+
kind: "bootstrap_cli_error",
|
|
35
|
+
exitCode: 3,
|
|
36
|
+
code: CLI_OPERATIONAL_CODES.BOOTSTRAP_OUT_EXISTS,
|
|
37
|
+
message: `--out already exists: ${outResolved}`,
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
let rawInput;
|
|
41
|
+
try {
|
|
42
|
+
rawInput = readFileSync(path.resolve(parsed.inputPath), "utf8");
|
|
43
|
+
}
|
|
44
|
+
catch (e) {
|
|
45
|
+
const msg = e instanceof Error ? e.message : String(e);
|
|
46
|
+
return {
|
|
47
|
+
kind: "bootstrap_cli_error",
|
|
48
|
+
exitCode: 3,
|
|
49
|
+
code: CLI_OPERATIONAL_CODES.BOOTSTRAP_USAGE,
|
|
50
|
+
message: `Cannot read --input: ${msg}`,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
let packInput;
|
|
54
|
+
try {
|
|
55
|
+
packInput = parseBootstrapPackInputJson(rawInput);
|
|
56
|
+
}
|
|
57
|
+
catch (e) {
|
|
58
|
+
if (e instanceof TruthLayerError) {
|
|
59
|
+
return { kind: "bootstrap_cli_error", exitCode: 3, code: e.code, message: e.message };
|
|
60
|
+
}
|
|
61
|
+
throw e;
|
|
62
|
+
}
|
|
63
|
+
try {
|
|
64
|
+
await runLicensePreflightIfNeeded("verify");
|
|
65
|
+
}
|
|
66
|
+
catch (e) {
|
|
67
|
+
if (e instanceof TruthLayerError) {
|
|
68
|
+
return { kind: "bootstrap_cli_error", exitCode: 3, code: e.code, message: e.message };
|
|
69
|
+
}
|
|
70
|
+
const msg = e instanceof Error ? e.message : String(e);
|
|
71
|
+
return {
|
|
72
|
+
kind: "bootstrap_cli_error",
|
|
73
|
+
exitCode: 3,
|
|
74
|
+
code: CLI_OPERATIONAL_CODES.INTERNAL_ERROR,
|
|
75
|
+
message: formatOperationalMessage(msg),
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
mkdirSync(outResolved, { recursive: false });
|
|
79
|
+
const database = parsed.postgresUrl
|
|
80
|
+
? { kind: "postgres", connectionString: parsed.postgresUrl }
|
|
81
|
+
: { kind: "sqlite", path: path.resolve(parsed.dbPath) };
|
|
82
|
+
const inputUtf8 = synthesizeQuickInputUtf8FromOpenAiV1(packInput);
|
|
83
|
+
let report;
|
|
84
|
+
let registryUtf8;
|
|
85
|
+
let contractExports;
|
|
86
|
+
try {
|
|
87
|
+
const out = await runQuickVerifyToValidatedReport({
|
|
88
|
+
inputUtf8,
|
|
89
|
+
postgresUrl: parsed.postgresUrl ?? undefined,
|
|
90
|
+
sqlitePath: parsed.dbPath !== undefined ? path.resolve(parsed.dbPath) : undefined,
|
|
91
|
+
});
|
|
92
|
+
report = out.report;
|
|
93
|
+
registryUtf8 = out.registryUtf8;
|
|
94
|
+
contractExports = out.contractExports;
|
|
95
|
+
}
|
|
96
|
+
catch (e) {
|
|
97
|
+
cleanupOutDirFromPath(outResolved);
|
|
98
|
+
if (e instanceof TruthLayerError) {
|
|
99
|
+
return { kind: "bootstrap_cli_error", exitCode: 3, code: e.code, message: e.message };
|
|
100
|
+
}
|
|
101
|
+
const msg = e instanceof Error ? e.message : String(e);
|
|
102
|
+
return {
|
|
103
|
+
kind: "bootstrap_cli_error",
|
|
104
|
+
exitCode: 3,
|
|
105
|
+
code: CLI_OPERATIONAL_CODES.INTERNAL_ERROR,
|
|
106
|
+
message: formatOperationalMessage(msg),
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
if (report.verdict !== "pass") {
|
|
110
|
+
cleanupOutDirFromPath(outResolved);
|
|
111
|
+
return {
|
|
112
|
+
kind: "bootstrap_cli_error",
|
|
113
|
+
exitCode: 2,
|
|
114
|
+
code: CLI_OPERATIONAL_CODES.BOOTSTRAP_QUICK_NOT_PASS,
|
|
115
|
+
message: `Quick Verify verdict was "${report.verdict}" (expected pass).`,
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
if (contractExports.length === 0) {
|
|
119
|
+
cleanupOutDirFromPath(outResolved);
|
|
120
|
+
return {
|
|
121
|
+
kind: "bootstrap_cli_error",
|
|
122
|
+
exitCode: 2,
|
|
123
|
+
code: CLI_OPERATIONAL_CODES.BOOTSTRAP_NO_EXPORTABLE_TOOLS,
|
|
124
|
+
message: "Quick Verify produced zero exportable tools for contract replay.",
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
const eventsPath = path.join(outResolved, "events.ndjson");
|
|
128
|
+
const toolsPath = path.join(outResolved, "tools.json");
|
|
129
|
+
const quickReportPath = path.join(outResolved, "quick-report.json");
|
|
130
|
+
const readmePath = path.join(outResolved, "README.bootstrap.md");
|
|
131
|
+
try {
|
|
132
|
+
atomicWriteUtf8File(toolsPath, registryUtf8);
|
|
133
|
+
atomicWriteUtf8File(eventsPath, buildQuickContractEventsNdjson({
|
|
134
|
+
workflowId: packInput.workflowId,
|
|
135
|
+
exports: contractExports,
|
|
136
|
+
}));
|
|
137
|
+
atomicWriteUtf8File(quickReportPath, `${stableStringify(report)}\n`);
|
|
138
|
+
atomicWriteUtf8File(readmePath, buildBootstrapReadmeMarkdown(packInput.workflowId));
|
|
139
|
+
}
|
|
140
|
+
catch (e) {
|
|
141
|
+
cleanupOutDirFromPath(outResolved);
|
|
142
|
+
const msg = e instanceof Error ? e.message : String(e);
|
|
143
|
+
return {
|
|
144
|
+
kind: "bootstrap_cli_error",
|
|
145
|
+
exitCode: 3,
|
|
146
|
+
code: CLI_OPERATIONAL_CODES.INTERNAL_ERROR,
|
|
147
|
+
message: formatOperationalMessage(`pack write: ${msg}`),
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
let truthBuffered = "";
|
|
151
|
+
let result;
|
|
152
|
+
try {
|
|
153
|
+
result = await verifyWorkflow({
|
|
154
|
+
workflowId: packInput.workflowId,
|
|
155
|
+
eventsPath,
|
|
156
|
+
registryPath: toolsPath,
|
|
157
|
+
database,
|
|
158
|
+
truthReport: (r) => {
|
|
159
|
+
truthBuffered = r;
|
|
160
|
+
},
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
catch (e) {
|
|
164
|
+
cleanupOutDirFromPath(outResolved);
|
|
165
|
+
if (e instanceof TruthLayerError) {
|
|
166
|
+
return { kind: "bootstrap_cli_error", exitCode: 3, code: e.code, message: e.message };
|
|
167
|
+
}
|
|
168
|
+
const msg = e instanceof Error ? e.message : String(e);
|
|
169
|
+
return {
|
|
170
|
+
kind: "bootstrap_cli_error",
|
|
171
|
+
exitCode: 3,
|
|
172
|
+
code: CLI_OPERATIONAL_CODES.INTERNAL_ERROR,
|
|
173
|
+
message: formatOperationalMessage(msg),
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
const validateResult = loadSchemaValidator("workflow-result");
|
|
177
|
+
if (!validateResult(result)) {
|
|
178
|
+
cleanupOutDirFromPath(outResolved);
|
|
179
|
+
return {
|
|
180
|
+
kind: "bootstrap_cli_error",
|
|
181
|
+
exitCode: 3,
|
|
182
|
+
code: CLI_OPERATIONAL_CODES.WORKFLOW_RESULT_SCHEMA_INVALID,
|
|
183
|
+
message: JSON.stringify(validateResult.errors ?? []),
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
if (result.status === "complete") {
|
|
187
|
+
return {
|
|
188
|
+
kind: "pack_ready",
|
|
189
|
+
workflowId: packInput.workflowId,
|
|
190
|
+
eventsPath,
|
|
191
|
+
registryPath: toolsPath,
|
|
192
|
+
outResolved,
|
|
193
|
+
exportedToolCount: contractExports.length,
|
|
194
|
+
};
|
|
195
|
+
}
|
|
196
|
+
const exitCode = result.status === "inconsistent" ? 1 : 2;
|
|
197
|
+
return {
|
|
198
|
+
kind: "verify_terminal",
|
|
199
|
+
exitCode,
|
|
200
|
+
result,
|
|
201
|
+
truthBuffered,
|
|
202
|
+
outResolved,
|
|
203
|
+
};
|
|
204
|
+
}
|
|
205
|
+
export function writeBootstrapOperationalFailure(code, message) {
|
|
206
|
+
console.error(cliErrorEnvelope(code, formatOperationalMessage(message)));
|
|
207
|
+
}
|
|
208
|
+
//# sourceMappingURL=executeBootstrapPack.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"executeBootstrapPack.js","sourceRoot":"","sources":["../../src/bootstrap/executeBootstrapPack.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
dbPath: string | undefined;
|
|
5
|
-
postgresUrl: string | undefined;
|
|
6
|
-
};
|
|
7
|
-
export declare function parseBootstrapCliArgs(args: string[]): ParsedBootstrapCli;
|
|
1
|
+
import { type ParsedBootstrapCli } from "./bootstrapCliArgs.js";
|
|
2
|
+
export type { ParsedBootstrapCli };
|
|
3
|
+
export { parseBootstrapCliArgs } from "./bootstrapCliArgs.js";
|
|
8
4
|
export declare function runBootstrapSubcommand(args: string[]): Promise<void>;
|
|
9
5
|
//# sourceMappingURL=runBootstrapSubcommand.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runBootstrapSubcommand.d.ts","sourceRoot":"","sources":["../../src/bootstrap/runBootstrapSubcommand.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runBootstrapSubcommand.d.ts","sourceRoot":"","sources":["../../src/bootstrap/runBootstrapSubcommand.ts"],"names":[],"mappings":"AAUA,OAAO,EAAyB,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAoBvF,YAAY,EAAE,kBAAkB,EAAE,CAAC;AACnC,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA6D1E"}
|