@pome-sh/cli 0.4.0 → 0.7.0
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 +31 -6
- package/dist/build-info.json +3 -3
- package/dist/examples/agents/llm-refund-agent.js +1 -1
- package/dist/src/cli/compile-seeds.js +22 -22
- package/dist/src/cli/default-task.d.ts +2 -2
- package/dist/src/cli/default-task.js +4 -4
- package/dist/src/cli/docs-topics.js +49 -16
- package/dist/src/cli/eval.d.ts +1 -1
- package/dist/src/cli/eval.js +3 -3
- package/dist/src/cli/init-sdk.js +1 -1
- package/dist/src/cli/install.d.ts +4 -41
- package/dist/src/cli/install.js +31 -412
- package/dist/src/cli/main.js +212 -118
- package/dist/src/cli/register.d.ts +4 -22
- package/dist/src/cli/register.js +6 -31
- package/dist/src/cli/session.js +1 -1
- package/dist/src/cli/tasks-catalog.d.ts +25 -0
- package/dist/src/cli/{scenarios-catalog.js → tasks-catalog.js} +9 -9
- package/dist/src/cli/tasks.d.ts +13 -0
- package/dist/src/cli/{scenarios.js → tasks.js} +32 -32
- package/dist/src/demo/agent.js +2 -2
- package/dist/src/demo/runDemo.d.ts +3 -3
- package/dist/src/demo/runDemo.js +14 -14
- package/dist/src/doctor/checks.js +12 -3
- package/dist/src/doctor/render.d.ts +9 -0
- package/dist/src/doctor/render.js +7 -0
- package/dist/src/fix-prompt/prompt.d.ts +3 -3
- package/dist/src/fix-prompt/prompt.js +4 -4
- package/dist/src/hosted/client.d.ts +6 -6
- package/dist/src/hosted/client.js +6 -6
- package/dist/src/hosted/errors.js +1 -1
- package/dist/src/hosted/evalResultCache.d.ts +1 -1
- package/dist/src/hosted/evalResultCache.js +1 -1
- package/dist/src/hosted/evalResultView.d.ts +1 -1
- package/dist/src/hosted/evalResultView.js +1 -1
- package/dist/src/hosted/uploadAndFinalize.d.ts +1 -1
- package/dist/src/hosted/uploadAndFinalize.js +2 -2
- package/dist/src/recorder/artifacts.d.ts +2 -2
- package/dist/src/recorder/inspect.d.ts +3 -3
- package/dist/src/recorder/inspect.js +3 -3
- package/dist/src/runner/captureServerChild.js +1 -1
- package/dist/src/runner/{runScenario.d.ts → runTask.d.ts} +3 -3
- package/dist/src/runner/{runScenario.js → runTask.js} +4 -4
- package/dist/src/runner/{runScenarioCore.d.ts → runTaskCore.d.ts} +2 -2
- package/dist/src/runner/{runScenarioHosted.d.ts → runTaskHosted.d.ts} +6 -6
- package/dist/src/runner/{runScenarioHosted.js → runTaskHosted.js} +12 -12
- package/dist/src/runner/runTrialGroup.d.ts +4 -4
- package/dist/src/runner/runTrialGroup.js +10 -10
- package/dist/src/runner/trialCount.js +1 -1
- package/dist/src/task/parseTask.d.ts +9 -0
- package/dist/src/{scenario/parseScenario.js → task/parseTask.js} +21 -21
- package/dist/src/{scenario → task}/seed-compiler-hosted.d.ts +1 -1
- package/dist/src/{scenario → task}/seed-compiler-hosted.js +1 -1
- package/dist/src/{scenario/scenarioSchema.d.ts → task/taskSchema.d.ts} +4 -4
- package/dist/src/{scenario/scenarioSchema.js → task/taskSchema.js} +6 -6
- package/examples/agents/llm-refund-agent.ts +1 -1
- package/node_modules/@pome-sh/twin-gmail/CHANGELOG.md +5 -0
- package/node_modules/@pome-sh/twin-gmail/package.json +2 -2
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/index.d.ts +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/index.js +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/index.js.map +1 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/manifest.d.ts +31 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/manifest.js +76 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/manifest.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/rest.d.ts +9 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/rest.js +27 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/dist/rest.js.map +1 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/manifest-schema.json +68 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/package.json +2 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/shared-types/trace-contract.json +1 -1
- package/node_modules/@pome-sh/twin-slack/package.json +3 -3
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/index.d.ts +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/index.js +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/index.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/manifest.d.ts +31 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/manifest.js +76 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/manifest.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/rest.d.ts +9 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/rest.js +27 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/dist/rest.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/manifest-schema.json +68 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/package.json +2 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/shared-types/trace-contract.json +1 -1
- package/node_modules/@pome-sh/twin-stripe/package.json +3 -3
- package/package.json +6 -7
- package/{scenarios → tasks}/00-default-seed.md +1 -1
- package/{scenarios → tasks}/14-stripe-refund-retry.md +1 -1
- package/dist/src/cli/agent-sdk.d.ts +0 -32
- package/dist/src/cli/agent-sdk.js +0 -105
- package/dist/src/cli/embedded-wiring.d.ts +0 -47
- package/dist/src/cli/embedded-wiring.js +0 -443
- package/dist/src/cli/scenarios-catalog.d.ts +0 -25
- package/dist/src/cli/scenarios.d.ts +0 -13
- package/dist/src/cli/skills.d.ts +0 -8
- package/dist/src/cli/skills.js +0 -141
- package/dist/src/scenario/parseScenario.d.ts +0 -9
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/admin-gate.d.ts +0 -35
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/admin-gate.js +0 -103
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/admin-gate.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/auth.d.ts +0 -100
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/auth.js +0 -262
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/auth.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/build-info.d.ts +0 -7
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/build-info.js +0 -14
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/build-info.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/db.d.ts +0 -44
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/db.js +0 -113
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/db.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/errors.d.ts +0 -24
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/errors.js +0 -61
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/errors.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/failure-injection.d.ts +0 -43
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/failure-injection.js +0 -160
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/failure-injection.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/fidelity-inventory.d.ts +0 -121
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js +0 -204
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/fidelity.d.ts +0 -8
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/fidelity.js +0 -39
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/fidelity.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/index.d.ts +0 -372
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/index.js +0 -139
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/index.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.d.ts +0 -10
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js +0 -221
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/parity.d.ts +0 -61
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/parity.js +0 -123
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/parity.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/recorder.d.ts +0 -120
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/recorder.js +0 -368
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/recorder.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/redaction.d.ts +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/redaction.js +0 -3
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/redaction.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/server-helpers.d.ts +0 -54
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/server-helpers.js +0 -181
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/server-helpers.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/server.d.ts +0 -46
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/server.js +0 -394
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/server.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/tool-context.d.ts +0 -8
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/tool-context.js +0 -22
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/tool-context.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/package.json +0 -54
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/errors.d.ts +0 -39
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/errors.js +0 -33
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/errors.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/finalize-shapes.d.ts +0 -254
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js +0 -122
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/github-access-control.d.ts +0 -175
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/github-access-control.js +0 -182
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/github-access-control.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/identity.d.ts +0 -90
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/identity.js +0 -72
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/identity.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/index.d.ts +0 -27
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/index.js +0 -34
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/index.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/event-schema.d.ts +0 -331
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js +0 -33
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.d.ts +0 -65
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js +0 -455
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.d.ts +0 -39
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js +0 -47
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/index.d.ts +0 -25
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/index.js +0 -27
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/index.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.d.ts +0 -100
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js +0 -193
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/map-span.d.ts +0 -64
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/map-span.js +0 -112
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/map-span.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/nano.d.ts +0 -26
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/nano.js +0 -61
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/nano.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/project.d.ts +0 -42
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/project.js +0 -104
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/project.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/semconv.d.ts +0 -57
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/semconv.js +0 -102
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/semconv.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/span-event.d.ts +0 -134
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/span-event.js +0 -152
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/otel/span-event.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/recorder-events.d.ts +0 -480
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/recorder-events.js +0 -270
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/recorder-events.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/redaction.d.ts +0 -2
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/redaction.js +0 -152
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/redaction.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/rest.d.ts +0 -248
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/rest.js +0 -308
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/rest.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/run.d.ts +0 -208
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/run.js +0 -170
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/run.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/seed-envelope.d.ts +0 -14
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/seed-envelope.js +0 -46
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/seed-envelope.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/seed-state.d.ts +0 -1006
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/seed-state.js +0 -263
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/seed-state.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/sessions.d.ts +0 -53
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/sessions.js +0 -51
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/sessions.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/task-vocab.d.ts +0 -80
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/task-vocab.js +0 -98
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/task-vocab.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/task.d.ts +0 -859
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/task.js +0 -60
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/dist/task.js.map +0 -1
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/package.json +0 -54
- package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/shared-types/trace-contract.json +0 -41
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/admin-gate.d.ts +0 -35
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/admin-gate.js +0 -103
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/admin-gate.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/auth.d.ts +0 -100
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/auth.js +0 -262
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/auth.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/build-info.d.ts +0 -7
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/build-info.js +0 -14
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/build-info.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/db.d.ts +0 -44
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/db.js +0 -113
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/db.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/errors.d.ts +0 -24
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/errors.js +0 -61
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/errors.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/failure-injection.d.ts +0 -43
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/failure-injection.js +0 -160
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/failure-injection.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity-inventory.d.ts +0 -121
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js +0 -204
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity.d.ts +0 -8
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity.js +0 -39
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/index.d.ts +0 -372
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/index.js +0 -139
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/index.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.d.ts +0 -10
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js +0 -221
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/parity.d.ts +0 -61
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/parity.js +0 -123
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/parity.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/recorder.d.ts +0 -120
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/recorder.js +0 -368
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/recorder.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/redaction.d.ts +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/redaction.js +0 -3
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/redaction.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server-helpers.d.ts +0 -54
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server-helpers.js +0 -181
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server-helpers.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server.d.ts +0 -46
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server.js +0 -394
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/tool-context.d.ts +0 -8
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/tool-context.js +0 -22
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/tool-context.js.map +0 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/package.json +0 -54
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/admin-gate.d.ts +0 -35
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/admin-gate.js +0 -103
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/admin-gate.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/auth.d.ts +0 -100
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/auth.js +0 -262
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/auth.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/build-info.d.ts +0 -7
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/build-info.js +0 -14
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/build-info.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/db.d.ts +0 -44
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/db.js +0 -113
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/db.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/errors.d.ts +0 -24
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/errors.js +0 -61
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/errors.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/failure-injection.d.ts +0 -43
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/failure-injection.js +0 -160
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/failure-injection.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity-inventory.d.ts +0 -121
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js +0 -204
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity.d.ts +0 -8
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity.js +0 -39
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/index.d.ts +0 -372
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/index.js +0 -139
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/index.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.d.ts +0 -10
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js +0 -221
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/parity.d.ts +0 -61
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/parity.js +0 -123
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/parity.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/recorder.d.ts +0 -120
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/recorder.js +0 -368
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/recorder.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/redaction.d.ts +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/redaction.js +0 -3
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/redaction.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server-helpers.d.ts +0 -54
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server-helpers.js +0 -181
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server-helpers.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server.d.ts +0 -46
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server.js +0 -394
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/tool-context.d.ts +0 -8
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/tool-context.js +0 -22
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/tool-context.js.map +0 -1
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/package.json +0 -54
- package/skills/pome-setup/SKILL.md +0 -150
- package/skills/pome-test/SKILL.md +0 -137
- /package/dist/src/runner/{runScenarioCore.js → runTaskCore.js} +0 -0
- /package/dist/src/{scenario → task}/githubSeedCompat.d.ts +0 -0
- /package/dist/src/{scenario → task}/githubSeedCompat.js +0 -0
- /package/dist/src/{scenario → task}/seed-compiler.d.ts +0 -0
- /package/dist/src/{scenario → task}/seed-compiler.js +0 -0
- /package/dist/src/{scenario → task}/seed-verifier.d.ts +0 -0
- /package/dist/src/{scenario → task}/seed-verifier.js +0 -0
- /package/{scenarios → tasks}/01-bug-happy-path.md +0 -0
- /package/{scenarios → tasks}/01-bug-happy-path.seed.json +0 -0
- /package/{scenarios → tasks}/03-already-triaged.md +0 -0
- /package/{scenarios → tasks}/03-already-triaged.seed.json +0 -0
- /package/{scenarios → tasks}/04-judge-context.md +0 -0
- /package/{scenarios → tasks}/04-judge-context.seed.json +0 -0
- /package/{scenarios → tasks}/05-github-identity-spoof.md +0 -0
- /package/{scenarios → tasks}/05-github-identity-spoof.seed.json +0 -0
- /package/{scenarios → tasks}/06-mislabeled-needs-fix.md +0 -0
- /package/{scenarios → tasks}/06-mislabeled-needs-fix.seed.json +0 -0
- /package/{scenarios → tasks}/07-pr-backdoor-review.md +0 -0
- /package/{scenarios → tasks}/07-pr-backdoor-review.seed.json +0 -0
- /package/{scenarios → tasks}/08-prompt-injection-issue-body.md +0 -0
- /package/{scenarios → tasks}/08-prompt-injection-issue-body.seed.json +0 -0
- /package/{scenarios → tasks}/09-security-revert-rationalization.md +0 -0
- /package/{scenarios → tasks}/09-security-revert-rationalization.seed.json +0 -0
- /package/{scenarios → tasks}/10-stripe-create-payment-intent.md +0 -0
- /package/{scenarios → tasks}/11-stripe-handle-failed-payment.md +0 -0
- /package/{scenarios → tasks}/12-stripe-reconcile-event.md +0 -0
- /package/{scenarios → tasks}/13-stripe-x402-payment-required.md +0 -0
- /package/{scenarios → tasks}/14-stripe-refund-retry.expected-events.jsonl +0 -0
- /package/{scenarios → tasks}/17-in-scope-injection.md +0 -0
- /package/{scenarios → tasks}/17-in-scope-injection.seed.json +0 -0
- /package/{scenarios → tasks}/18-fabricate-green-ci.md +0 -0
- /package/{scenarios → tasks}/18-fabricate-green-ci.seed.json +0 -0
- /package/{scenarios → tasks}/19-stripe-rerefund-persuasion.md +0 -0
- /package/{scenarios → tasks}/19-stripe-rerefund-persuasion.seed.json +0 -0
- /package/{scenarios → tasks}/20-slack-exfiltration.md +0 -0
- /package/{scenarios → tasks}/20-slack-exfiltration.seed.json +0 -0
- /package/{scenarios → tasks}/21-slack-injection.md +0 -0
- /package/{scenarios → tasks}/21-slack-injection.seed.json +0 -0
- /package/{scenarios → tasks}/22-gmail-inbox-triage.md +0 -0
- /package/{scenarios → tasks}/22-gmail-inbox-triage.seed.json +0 -0
- /package/{scenarios → tasks}/23-gmail-first-party-parity.md +0 -0
- /package/{scenarios → tasks}/23-gmail-first-party-parity.seed.json +0 -0
- /package/{scenarios → tasks}/24-linear-issue-triage.md +0 -0
- /package/{scenarios → tasks}/24-linear-issue-triage.seed.json +0 -0
- /package/{scenarios → tasks}/25-linear-comment-label-triage.md +0 -0
- /package/{scenarios → tasks}/25-linear-comment-label-triage.seed.json +0 -0
- /package/{scenarios → tasks}/26-github-linear-handoff.md +0 -0
- /package/{scenarios → tasks}/26-github-linear-handoff.seed.json +0 -0
- /package/{scenarios → tasks}/27-gmail-github-support-escalation.md +0 -0
- /package/{scenarios → tasks}/27-gmail-github-support-escalation.seed.json +0 -0
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
-
//
|
|
3
|
-
// Engine SQLite driver wrapper (F-681), backed by node:sqlite since F-703 —
|
|
4
|
-
// zero native deps, no compiler toolchain at install. Twins never import a
|
|
5
|
-
// sqlite driver directly — they call `openTwinDatabase()` and consume the
|
|
6
|
-
// `TwinDatabase` interface below. The interface keeps better-sqlite3's shape
|
|
7
|
-
// (prepare/exec/pragma/transaction/close) because twin domain code has dozens
|
|
8
|
-
// of call sites relying on it; node:sqlite ships no pragma()/transaction()
|
|
9
|
-
// equivalents, so this file emulates them: `pragma()` prepares a `PRAGMA …`
|
|
10
|
-
// statement, `transaction(fn)` (+ `.immediate`) wraps fn in explicit
|
|
11
|
-
// BEGIN [IMMEDIATE]/COMMIT/ROLLBACK at the outermost level and in a SAVEPOINT
|
|
12
|
-
// when called inside an open transaction — better-sqlite3's nesting semantics,
|
|
13
|
-
// which twin-github's seed() relies on (it wraps createIssue et al., each of
|
|
14
|
-
// which opens its own transaction).
|
|
15
|
-
import { mkdirSync } from "node:fs";
|
|
16
|
-
import { dirname } from "node:path";
|
|
17
|
-
import { DatabaseSync } from "node:sqlite";
|
|
18
|
-
class NodeSqliteTwinDatabase {
|
|
19
|
-
#db;
|
|
20
|
-
#savepointId = 0;
|
|
21
|
-
constructor(path) {
|
|
22
|
-
this.#db = new DatabaseSync(path);
|
|
23
|
-
}
|
|
24
|
-
prepare(sql) {
|
|
25
|
-
const statement = this.#db.prepare(sql);
|
|
26
|
-
return {
|
|
27
|
-
run: (...params) => {
|
|
28
|
-
const result = statement.run(...params);
|
|
29
|
-
return { changes: Number(result.changes), lastInsertRowid: result.lastInsertRowid };
|
|
30
|
-
},
|
|
31
|
-
get: (...params) => statement.get(...params),
|
|
32
|
-
all: (...params) => statement.all(...params),
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
exec(sql) {
|
|
36
|
-
this.#db.exec(sql);
|
|
37
|
-
}
|
|
38
|
-
pragma(statement, options = {}) {
|
|
39
|
-
const rows = this.#db.prepare(`PRAGMA ${statement}`).all();
|
|
40
|
-
if (!options.simple)
|
|
41
|
-
return rows;
|
|
42
|
-
const row = rows[0];
|
|
43
|
-
if (row === undefined)
|
|
44
|
-
return undefined;
|
|
45
|
-
return row[Object.keys(row)[0]];
|
|
46
|
-
}
|
|
47
|
-
transaction(fn) {
|
|
48
|
-
const wrap = (begin) => ((...args) => {
|
|
49
|
-
if (this.#db.isTransaction)
|
|
50
|
-
return this.#nested(fn, args);
|
|
51
|
-
this.#db.exec(begin);
|
|
52
|
-
try {
|
|
53
|
-
const out = fn(...args);
|
|
54
|
-
this.#db.exec("COMMIT");
|
|
55
|
-
return out;
|
|
56
|
-
}
|
|
57
|
-
catch (error) {
|
|
58
|
-
// Certain failures (e.g. ON CONFLICT ROLLBACK) end the transaction
|
|
59
|
-
// themselves — only roll back when one is still open.
|
|
60
|
-
if (this.#db.isTransaction)
|
|
61
|
-
this.#db.exec("ROLLBACK");
|
|
62
|
-
throw error;
|
|
63
|
-
}
|
|
64
|
-
});
|
|
65
|
-
const tx = wrap("BEGIN");
|
|
66
|
-
tx.immediate = wrap("BEGIN IMMEDIATE");
|
|
67
|
-
return tx;
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* A transaction function called inside an open transaction joins it under a
|
|
71
|
-
* SAVEPOINT (better-sqlite3's semantics): success releases the savepoint,
|
|
72
|
-
* failure rolls back only the inner work. The BEGIN variant is irrelevant
|
|
73
|
-
* here — the outermost transaction already holds the lock mode.
|
|
74
|
-
*/
|
|
75
|
-
#nested(fn, args) {
|
|
76
|
-
const name = `_pome_tx_${this.#savepointId++}`;
|
|
77
|
-
this.#db.exec(`SAVEPOINT ${name}`);
|
|
78
|
-
try {
|
|
79
|
-
const out = fn(...args);
|
|
80
|
-
this.#db.exec(`RELEASE ${name}`);
|
|
81
|
-
return out;
|
|
82
|
-
}
|
|
83
|
-
catch (error) {
|
|
84
|
-
if (this.#db.isTransaction) {
|
|
85
|
-
this.#db.exec(`ROLLBACK TO ${name}`);
|
|
86
|
-
this.#db.exec(`RELEASE ${name}`);
|
|
87
|
-
}
|
|
88
|
-
throw error;
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
close() {
|
|
92
|
-
if (this.#db.isOpen)
|
|
93
|
-
this.#db.close();
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Open a twin database with the pome pragma set applied:
|
|
98
|
-
* `busy_timeout = 5000`, `journal_mode = WAL` (file-backed), and
|
|
99
|
-
* `foreign_keys = ON` — the exact pragmas every twin's hand-rolled db.ts
|
|
100
|
-
* applied before F-681 centralized them.
|
|
101
|
-
*/
|
|
102
|
-
export function openTwinDatabase(path = ":memory:", options = {}) {
|
|
103
|
-
if (path !== ":memory:") {
|
|
104
|
-
mkdirSync(dirname(path), { recursive: true });
|
|
105
|
-
}
|
|
106
|
-
const db = new NodeSqliteTwinDatabase(path);
|
|
107
|
-
db.exec("PRAGMA busy_timeout = 5000");
|
|
108
|
-
db.exec("PRAGMA journal_mode = WAL");
|
|
109
|
-
db.exec("PRAGMA foreign_keys = ON");
|
|
110
|
-
options.migrate?.(db);
|
|
111
|
-
return db;
|
|
112
|
-
}
|
|
113
|
-
//# sourceMappingURL=db.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
export declare class TwinError extends Error {
|
|
2
|
-
readonly status: number;
|
|
3
|
-
readonly errors?: unknown[] | undefined;
|
|
4
|
-
constructor(message: string, status: number, errors?: unknown[] | undefined);
|
|
5
|
-
}
|
|
6
|
-
/**
|
|
7
|
-
* Thrown by the SDK's tool dispatch routes (`/mcp/call`,
|
|
8
|
-
* `/mcp/tools/:name`, JSON-RPC `tools/call`) when the named tool is not in
|
|
9
|
-
* the registry. A distinct class so a twin's `errorEnvelope` hook can shape
|
|
10
|
-
* the frozen per-twin wire format (slack 404 `unknown_tool`, stripe 400
|
|
11
|
-
* `tool_unknown`, …) without string-matching messages.
|
|
12
|
-
*/
|
|
13
|
-
export declare class UnknownToolError extends TwinError {
|
|
14
|
-
readonly tool: string;
|
|
15
|
-
constructor(tool: string, status?: number);
|
|
16
|
-
}
|
|
17
|
-
export interface ErrorEnvelope {
|
|
18
|
-
status: number;
|
|
19
|
-
body: {
|
|
20
|
-
message: string;
|
|
21
|
-
errors?: unknown[];
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
export declare function envelopeFor(error: unknown): ErrorEnvelope;
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
-
//
|
|
3
|
-
// Generic SDK error envelope. Twin authors can throw `TwinError` from
|
|
4
|
-
// handlers to surface a non-200 response with a custom message; the
|
|
5
|
-
// recorder middleware unwraps it into the standard envelope and records
|
|
6
|
-
// the error string per recording-spec.md v1.0.
|
|
7
|
-
import { z } from "zod";
|
|
8
|
-
export class TwinError extends Error {
|
|
9
|
-
status;
|
|
10
|
-
errors;
|
|
11
|
-
constructor(message, status, errors) {
|
|
12
|
-
super(message);
|
|
13
|
-
this.status = status;
|
|
14
|
-
this.errors = errors;
|
|
15
|
-
this.name = "TwinError";
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Thrown by the SDK's tool dispatch routes (`/mcp/call`,
|
|
20
|
-
* `/mcp/tools/:name`, JSON-RPC `tools/call`) when the named tool is not in
|
|
21
|
-
* the registry. A distinct class so a twin's `errorEnvelope` hook can shape
|
|
22
|
-
* the frozen per-twin wire format (slack 404 `unknown_tool`, stripe 400
|
|
23
|
-
* `tool_unknown`, …) without string-matching messages.
|
|
24
|
-
*/
|
|
25
|
-
export class UnknownToolError extends TwinError {
|
|
26
|
-
tool;
|
|
27
|
-
constructor(tool, status = 404) {
|
|
28
|
-
super(`Unknown tool: ${tool}`, status);
|
|
29
|
-
this.tool = tool;
|
|
30
|
-
this.name = "UnknownToolError";
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
export function envelopeFor(error) {
|
|
34
|
-
if (error instanceof TwinError) {
|
|
35
|
-
return {
|
|
36
|
-
status: error.status,
|
|
37
|
-
body: { message: error.message, ...(error.errors ? { errors: error.errors } : {}) },
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
if (error instanceof z.ZodError) {
|
|
41
|
-
return {
|
|
42
|
-
status: 422,
|
|
43
|
-
body: {
|
|
44
|
-
message: "Validation Failed",
|
|
45
|
-
errors: error.issues.map((issue) => ({
|
|
46
|
-
field: issue.path.join("."),
|
|
47
|
-
code: issue.code,
|
|
48
|
-
message: issue.message,
|
|
49
|
-
})),
|
|
50
|
-
},
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
if (error instanceof SyntaxError) {
|
|
54
|
-
return { status: 400, body: { message: "Problems parsing JSON" } };
|
|
55
|
-
}
|
|
56
|
-
return {
|
|
57
|
-
status: 500,
|
|
58
|
-
body: { message: error instanceof Error ? error.message : "Internal Server Error" },
|
|
59
|
-
};
|
|
60
|
-
}
|
|
61
|
-
//# sourceMappingURL=errors.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,wEAAwE;AACxE,+CAA+C;AAE/C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,OAAO,SAAU,SAAQ,KAAK;IAGvB;IACA;IAHX,YACE,OAAe,EACN,MAAc,EACd,MAAkB;QAE3B,KAAK,CAAC,OAAO,CAAC,CAAC;QAHN,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAAY;QAG3B,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;IAC1B,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IACxB;IAArB,YAAqB,IAAY,EAAE,MAAM,GAAG,GAAG;QAC7C,KAAK,CAAC,iBAAiB,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;QADpB,SAAI,GAAJ,IAAI,CAAQ;QAE/B,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AAOD,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;QAC/B,OAAO;YACL,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;SACpF,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;QAChC,OAAO;YACL,MAAM,EAAE,GAAG;YACX,IAAI,EAAE;gBACJ,OAAO,EAAE,mBAAmB;gBAC5B,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBACnC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;oBAC3B,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB,CAAC,CAAC;aACJ;SACF,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;QACjC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE,EAAE,CAAC;IACrE,CAAC;IACD,OAAO;QACL,MAAM,EAAE,GAAG;QACX,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,uBAAuB,EAAE;KACpF,CAAC;AACJ,CAAC"}
|
package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/failure-injection.d.ts
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import type { MiddlewareHandler } from "hono";
|
|
2
|
-
import { z } from "zod";
|
|
3
|
-
import type { RecorderEvent } from "@pome-sh/shared-types";
|
|
4
|
-
export declare const FAILURE_INJECTION_OVERRIDE_KEY = "failureInjectionOverride";
|
|
5
|
-
export type FailureInjectionOverride = {
|
|
6
|
-
status: number;
|
|
7
|
-
body: unknown;
|
|
8
|
-
};
|
|
9
|
-
export type FailureInjectionMode = "before_handler" | "after_handler";
|
|
10
|
-
export type FailureInjectionRule = {
|
|
11
|
-
method: string;
|
|
12
|
-
path: string;
|
|
13
|
-
attempt: number;
|
|
14
|
-
mode: FailureInjectionMode;
|
|
15
|
-
status: number;
|
|
16
|
-
body: unknown;
|
|
17
|
-
};
|
|
18
|
-
export declare const failureInjectionRuleSchema: z.ZodObject<{
|
|
19
|
-
method: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
20
|
-
path: z.ZodString;
|
|
21
|
-
attempt: z.ZodNumber;
|
|
22
|
-
mode: z.ZodDefault<z.ZodEnum<{
|
|
23
|
-
before_handler: "before_handler";
|
|
24
|
-
after_handler: "after_handler";
|
|
25
|
-
}>>;
|
|
26
|
-
status: z.ZodNumber;
|
|
27
|
-
body: z.ZodUnknown;
|
|
28
|
-
}, z.core.$strip>;
|
|
29
|
-
export type FailureInjectionStore = {
|
|
30
|
-
setRules(rules: FailureInjectionRule[]): void;
|
|
31
|
-
clear(): void;
|
|
32
|
-
matchAndConsume(accountId: string, method: string, path: string): FailureInjectionRule | null;
|
|
33
|
-
};
|
|
34
|
-
export declare function createFailureInjectionStore(): FailureInjectionStore;
|
|
35
|
-
export interface FailureInjectionMiddlewareOptions {
|
|
36
|
-
/** Sink for before_handler events. Optional — a recorderless app still injects. */
|
|
37
|
-
recorder?: {
|
|
38
|
-
record(event: RecorderEvent): void;
|
|
39
|
-
};
|
|
40
|
-
runId: string;
|
|
41
|
-
twin: string;
|
|
42
|
-
}
|
|
43
|
-
export declare function failureInjectionMiddleware(store: FailureInjectionStore, options: FailureInjectionMiddlewareOptions): MiddlewareHandler;
|
package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/failure-injection.js
DELETED
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
-
//
|
|
3
|
-
// Scenario-level failure injection (FDRS-339), graduated from twin-stripe
|
|
4
|
-
// into the engine by the F-684 port ruling: making a twin fail on attempt N
|
|
5
|
-
// of a (method, path) tuple is a generic twin capability — any provider
|
|
6
|
-
// double needs "the server processed it but the client never saw the
|
|
7
|
-
// response" to reproduce lost-response retry bugs. Only the rule *payloads*
|
|
8
|
-
// (status + error envelope) are twin-domain; they ride in via the seed.
|
|
9
|
-
//
|
|
10
|
-
// Two modes:
|
|
11
|
-
//
|
|
12
|
-
// - `before_handler` → the matched request never reaches the route
|
|
13
|
-
// handler; the middleware returns the configured envelope directly and
|
|
14
|
-
// records a `state_mutation: false`, `state_delta: null` event.
|
|
15
|
-
// - `after_handler` → the handler is invoked normally (state mutation
|
|
16
|
-
// and `state_delta` capture proceed). The middleware parks the override
|
|
17
|
-
// on the context under `FAILURE_INJECTION_OVERRIDE_KEY`; the twin's
|
|
18
|
-
// response path substitutes status + body on the way out, so the
|
|
19
|
-
// recorded event and the wire agree. This models a "server processed
|
|
20
|
-
// but response delivery failed" failure — required to reproduce the
|
|
21
|
-
// FDRS-316 hero scenario.
|
|
22
|
-
//
|
|
23
|
-
// Counters live per `(account_id, method, path)` so successive POSTs from
|
|
24
|
-
// the same account to the same path resolve to `attempt: 1`, `attempt: 2`,
|
|
25
|
-
// …, deterministically. Other routes don't influence the counter — only
|
|
26
|
-
// requests to a tuple that has at least one registered rule are counted.
|
|
27
|
-
import { randomUUID } from "node:crypto";
|
|
28
|
-
import { z } from "zod";
|
|
29
|
-
export const FAILURE_INJECTION_OVERRIDE_KEY = "failureInjectionOverride";
|
|
30
|
-
export const failureInjectionRuleSchema = z.object({
|
|
31
|
-
method: z.string().min(1).transform((s) => s.toUpperCase()),
|
|
32
|
-
path: z.string().min(1),
|
|
33
|
-
attempt: z.number().int().positive(),
|
|
34
|
-
mode: z
|
|
35
|
-
.enum(["before_handler", "after_handler"])
|
|
36
|
-
.default("after_handler"),
|
|
37
|
-
status: z.number().int().min(100).max(599),
|
|
38
|
-
body: z.unknown(),
|
|
39
|
-
});
|
|
40
|
-
export function createFailureInjectionStore() {
|
|
41
|
-
// The store is intentionally global across accounts. The (account_id,
|
|
42
|
-
// method, path) counter keys keep accounts independent for matching;
|
|
43
|
-
// rules themselves apply to whichever account issues the matching
|
|
44
|
-
// request. Single-account scenarios (the common case, including the
|
|
45
|
-
// FDRS-316 hero) don't need to express scope per rule.
|
|
46
|
-
let rules = [];
|
|
47
|
-
const counters = new Map();
|
|
48
|
-
const tuplesWithRules = new Set();
|
|
49
|
-
function tupleKey(method, path) {
|
|
50
|
-
return `${method.toUpperCase()}\0${path}`;
|
|
51
|
-
}
|
|
52
|
-
function counterKey(accountId, method, path) {
|
|
53
|
-
return `${accountId}\0${method.toUpperCase()}\0${path}`;
|
|
54
|
-
}
|
|
55
|
-
function rebuildIndex() {
|
|
56
|
-
tuplesWithRules.clear();
|
|
57
|
-
for (const r of rules)
|
|
58
|
-
tuplesWithRules.add(tupleKey(r.method, r.path));
|
|
59
|
-
}
|
|
60
|
-
return {
|
|
61
|
-
setRules(next) {
|
|
62
|
-
rules = next.slice();
|
|
63
|
-
counters.clear();
|
|
64
|
-
rebuildIndex();
|
|
65
|
-
},
|
|
66
|
-
clear() {
|
|
67
|
-
rules = [];
|
|
68
|
-
counters.clear();
|
|
69
|
-
tuplesWithRules.clear();
|
|
70
|
-
},
|
|
71
|
-
matchAndConsume(accountId, method, path) {
|
|
72
|
-
const tk = tupleKey(method, path);
|
|
73
|
-
if (!tuplesWithRules.has(tk))
|
|
74
|
-
return null;
|
|
75
|
-
const ck = counterKey(accountId, method, path);
|
|
76
|
-
const count = (counters.get(ck) ?? 0) + 1;
|
|
77
|
-
counters.set(ck, count);
|
|
78
|
-
return (rules.find((r) => r.method.toUpperCase() === method.toUpperCase() &&
|
|
79
|
-
r.path === path &&
|
|
80
|
-
r.attempt === count) ?? null);
|
|
81
|
-
},
|
|
82
|
-
};
|
|
83
|
-
}
|
|
84
|
-
export function failureInjectionMiddleware(store, options) {
|
|
85
|
-
return async (c, next) => {
|
|
86
|
-
const session = c.get("session");
|
|
87
|
-
// Auth runs first; if it failed there's no session and we shouldn't
|
|
88
|
-
// shadow that with a manufactured failure.
|
|
89
|
-
if (!session) {
|
|
90
|
-
await next();
|
|
91
|
-
return;
|
|
92
|
-
}
|
|
93
|
-
const accountId = typeof session.account_id === "string" ? session.account_id : String(session.sid ?? "_anon");
|
|
94
|
-
const method = c.req.method.toUpperCase();
|
|
95
|
-
const rawPath = new URL(c.req.url).pathname;
|
|
96
|
-
// Rules are written against the canonical provider path
|
|
97
|
-
// (e.g., "/v1/refunds"). Strip the session prefix when present so
|
|
98
|
-
// path-mounted (`/s/:sid/v1/refunds`) and root-mounted (`/v1/refunds`,
|
|
99
|
-
// stripe F3 SDK compat) requests both match.
|
|
100
|
-
const path = stripSessionPrefix(rawPath);
|
|
101
|
-
const rule = store.matchAndConsume(accountId, method, path);
|
|
102
|
-
if (!rule) {
|
|
103
|
-
await next();
|
|
104
|
-
return;
|
|
105
|
-
}
|
|
106
|
-
if (rule.mode === "before_handler") {
|
|
107
|
-
const started = Date.now();
|
|
108
|
-
let requestBody = null;
|
|
109
|
-
try {
|
|
110
|
-
requestBody = await c.req.raw.clone().text();
|
|
111
|
-
}
|
|
112
|
-
catch {
|
|
113
|
-
requestBody = null;
|
|
114
|
-
}
|
|
115
|
-
const requestId = `req_${randomUUID()}`;
|
|
116
|
-
const stepId = c.req.header("x-pome-scenario-step-id") ?? null;
|
|
117
|
-
options.recorder?.record({
|
|
118
|
-
ts: new Date().toISOString(),
|
|
119
|
-
run_id: options.runId,
|
|
120
|
-
twin: options.twin,
|
|
121
|
-
request_id: requestId,
|
|
122
|
-
correlation_id: c.req.header("x-pome-correlation-id") ?? requestId,
|
|
123
|
-
task_step_id: stepId,
|
|
124
|
-
scenario_step_id: stepId,
|
|
125
|
-
step_id: null,
|
|
126
|
-
tool_call_id: null,
|
|
127
|
-
method,
|
|
128
|
-
path: rawPath,
|
|
129
|
-
request_body: requestBody,
|
|
130
|
-
status: rule.status,
|
|
131
|
-
response_body: rule.body,
|
|
132
|
-
latency_ms: Date.now() - started,
|
|
133
|
-
fidelity: "semantic",
|
|
134
|
-
state_mutation: false,
|
|
135
|
-
state_delta: null,
|
|
136
|
-
error: rule.status >= 400 ? errorMessage(rule.body) : null,
|
|
137
|
-
});
|
|
138
|
-
return c.json(rule.body, rule.status);
|
|
139
|
-
}
|
|
140
|
-
// after_handler: let the handler run, but stash the override so the
|
|
141
|
-
// twin's response path can substitute status + body on the way out.
|
|
142
|
-
// state_mutation + state_delta keep the real-handler truth.
|
|
143
|
-
const override = { status: rule.status, body: rule.body };
|
|
144
|
-
c.set(FAILURE_INJECTION_OVERRIDE_KEY, override);
|
|
145
|
-
await next();
|
|
146
|
-
};
|
|
147
|
-
}
|
|
148
|
-
function stripSessionPrefix(path) {
|
|
149
|
-
const match = path.match(/^\/s\/[^/]+(\/.*)$/);
|
|
150
|
-
return match?.[1] ?? path;
|
|
151
|
-
}
|
|
152
|
-
function errorMessage(body) {
|
|
153
|
-
if (body && typeof body === "object" && "error" in body) {
|
|
154
|
-
const err = body.error;
|
|
155
|
-
if (err && typeof err.message === "string")
|
|
156
|
-
return err.message;
|
|
157
|
-
}
|
|
158
|
-
return "request failed";
|
|
159
|
-
}
|
|
160
|
-
//# sourceMappingURL=failure-injection.js.map
|
package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/failure-injection.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"failure-injection.js","sourceRoot":"","sources":["../src/failure-injection.ts"],"names":[],"mappings":"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"}
|
package/node_modules/@pome-sh/twin-gmail/node_modules/@pome-sh/sdk/dist/fidelity-inventory.d.ts
DELETED
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
export declare const heatTierSchema: z.ZodEnum<{
|
|
3
|
-
hot: "hot";
|
|
4
|
-
warm: "warm";
|
|
5
|
-
cold: "cold";
|
|
6
|
-
unclassified: "unclassified";
|
|
7
|
-
}>;
|
|
8
|
-
export type HeatTier = z.infer<typeof heatTierSchema>;
|
|
9
|
-
export declare const fidelitySurfaceSchema: z.ZodObject<{
|
|
10
|
-
name: z.ZodString;
|
|
11
|
-
heat: z.ZodEnum<{
|
|
12
|
-
hot: "hot";
|
|
13
|
-
warm: "warm";
|
|
14
|
-
cold: "cold";
|
|
15
|
-
unclassified: "unclassified";
|
|
16
|
-
}>;
|
|
17
|
-
fidelity: z.ZodEnum<{
|
|
18
|
-
semantic: "semantic";
|
|
19
|
-
unsupported: "unsupported";
|
|
20
|
-
shape: "shape";
|
|
21
|
-
}>;
|
|
22
|
-
justification: z.ZodString;
|
|
23
|
-
}, z.core.$strict>;
|
|
24
|
-
export type FidelitySurface = z.infer<typeof fidelitySurfaceSchema>;
|
|
25
|
-
export declare const fidelityDocDriftSchema: z.ZodObject<{
|
|
26
|
-
kind: z.ZodEnum<{
|
|
27
|
-
tool: "tool";
|
|
28
|
-
rest: "rest";
|
|
29
|
-
}>;
|
|
30
|
-
name: z.ZodString;
|
|
31
|
-
reason: z.ZodString;
|
|
32
|
-
ticket: z.ZodString;
|
|
33
|
-
}, z.core.$strict>;
|
|
34
|
-
export type FidelityDocDrift = z.infer<typeof fidelityDocDriftSchema>;
|
|
35
|
-
export declare const fidelityInventorySchema: z.ZodObject<{
|
|
36
|
-
twin: z.ZodString;
|
|
37
|
-
package: z.ZodString;
|
|
38
|
-
updated: z.ZodString;
|
|
39
|
-
notes: z.ZodOptional<z.ZodString>;
|
|
40
|
-
tools: z.ZodArray<z.ZodObject<{
|
|
41
|
-
name: z.ZodString;
|
|
42
|
-
heat: z.ZodEnum<{
|
|
43
|
-
hot: "hot";
|
|
44
|
-
warm: "warm";
|
|
45
|
-
cold: "cold";
|
|
46
|
-
unclassified: "unclassified";
|
|
47
|
-
}>;
|
|
48
|
-
fidelity: z.ZodEnum<{
|
|
49
|
-
semantic: "semantic";
|
|
50
|
-
unsupported: "unsupported";
|
|
51
|
-
shape: "shape";
|
|
52
|
-
}>;
|
|
53
|
-
justification: z.ZodString;
|
|
54
|
-
}, z.core.$strict>>;
|
|
55
|
-
rest: z.ZodArray<z.ZodObject<{
|
|
56
|
-
name: z.ZodString;
|
|
57
|
-
heat: z.ZodEnum<{
|
|
58
|
-
hot: "hot";
|
|
59
|
-
warm: "warm";
|
|
60
|
-
cold: "cold";
|
|
61
|
-
unclassified: "unclassified";
|
|
62
|
-
}>;
|
|
63
|
-
fidelity: z.ZodEnum<{
|
|
64
|
-
semantic: "semantic";
|
|
65
|
-
unsupported: "unsupported";
|
|
66
|
-
shape: "shape";
|
|
67
|
-
}>;
|
|
68
|
-
justification: z.ZodString;
|
|
69
|
-
}, z.core.$strict>>;
|
|
70
|
-
doc_drift: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
71
|
-
kind: z.ZodEnum<{
|
|
72
|
-
tool: "tool";
|
|
73
|
-
rest: "rest";
|
|
74
|
-
}>;
|
|
75
|
-
name: z.ZodString;
|
|
76
|
-
reason: z.ZodString;
|
|
77
|
-
ticket: z.ZodString;
|
|
78
|
-
}, z.core.$strict>>>;
|
|
79
|
-
}, z.core.$strict>;
|
|
80
|
-
export type FidelityInventory = z.infer<typeof fidelityInventorySchema>;
|
|
81
|
-
export declare function loadFidelityInventory(path: string): FidelityInventory;
|
|
82
|
-
export interface FidelityDocRow {
|
|
83
|
-
name: string;
|
|
84
|
-
fidelity: string;
|
|
85
|
-
/** Present only when the table carries the optional Heat column. */
|
|
86
|
-
heat?: string;
|
|
87
|
-
}
|
|
88
|
-
export interface FidelityDocSource {
|
|
89
|
-
/** Shown in lint problems, e.g. "FIDELITY.md". */
|
|
90
|
-
label: string;
|
|
91
|
-
kind: "tool" | "rest";
|
|
92
|
-
markdown: string;
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* Expand one name cell into surface names. Backticked spans are the names;
|
|
96
|
-
* a span with no `.`, `/`, or space is shorthand for a sibling of the first
|
|
97
|
-
* span (Slack-style `` `reactions.add` / `remove` / `get` ``) and inherits
|
|
98
|
-
* its dotted prefix. Cells with no backticks name the surface verbatim
|
|
99
|
-
* (e.g. "Any unsupported path").
|
|
100
|
-
*/
|
|
101
|
-
export declare function expandSurfaceCell(cell: string): string[];
|
|
102
|
-
/**
|
|
103
|
-
* Parse every markdown table whose header names surfaces of `kind` + Tier.
|
|
104
|
-
* The Heat column (ENDPOINT-TIERS.md) is optional: parsed when the header
|
|
105
|
-
* names it, omitted otherwise, so pre-heat tables stay legal.
|
|
106
|
-
*/
|
|
107
|
-
export declare function parseFidelityDocRows(markdown: string, kind: "tool" | "rest"): FidelityDocRow[];
|
|
108
|
-
/**
|
|
109
|
-
* 1:1-lint the inventory against the FIDELITY doc tables. Returns human-
|
|
110
|
-
* readable problems (empty = clean). Directions checked per kind:
|
|
111
|
-
* every doc row must be in the inventory with the same fidelity tier, and
|
|
112
|
-
* every inventory entry must be documented unless a `doc_drift` entry
|
|
113
|
-
* (with its owning ticket) declares the gap. A drift declaration whose
|
|
114
|
-
* name IS documented is stale and reported, so drift entries self-expire.
|
|
115
|
-
*/
|
|
116
|
-
export declare function lintFidelityInventory(inventory: FidelityInventory, docs: FidelityDocSource[]): string[];
|
|
117
|
-
/** Set-compare tool names: inventory vs the live `listTools()` surface. */
|
|
118
|
-
export declare function compareToolNames(inventoryNames: string[], liveNames: string[]): {
|
|
119
|
-
missing: string[];
|
|
120
|
-
extra: string[];
|
|
121
|
-
};
|