@pome-sh/cli 0.1.1 → 0.2.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 +5 -6
- package/dist/build-info.json +3 -3
- package/dist/src/cli/eval.js +26 -8
- package/dist/src/cli/init-sdk.d.ts +0 -3
- package/dist/src/cli/init-sdk.js +117 -24
- package/dist/src/cli/main.js +23 -69
- package/dist/src/cli/register.d.ts +9 -0
- package/dist/src/cli/register.js +51 -5
- package/dist/src/cli/session.d.ts +7 -1
- package/dist/src/cli/session.js +87 -27
- package/dist/src/demo/runDemo.js +3 -2
- package/dist/src/hosted/client.d.ts +41 -5
- package/dist/src/hosted/client.js +333 -19
- package/dist/src/hosted/errors.d.ts +11 -1
- package/dist/src/hosted/errors.js +8 -1
- package/dist/src/hosted/evalResultView.d.ts +2 -0
- package/dist/src/hosted/evalResultView.js +22 -0
- package/dist/src/hosted/uploadAndFinalize.d.ts +18 -1
- package/dist/src/hosted/uploadAndFinalize.js +51 -3
- package/dist/src/recorder/inspect.js +20 -2
- package/dist/src/runner/mergeAdapterSignals.js +2 -2
- package/dist/src/runner/ports.js +3 -0
- package/dist/src/runner/runScenario.d.ts +79 -2
- package/dist/src/runner/runScenario.js +94 -36
- package/dist/src/runner/runScenarioHosted.d.ts +37 -0
- package/dist/src/runner/runScenarioHosted.js +257 -58
- package/dist/src/runner/runTrialGroup.d.ts +1 -3
- package/dist/src/runner/runTrialGroup.js +1 -3
- package/dist/src/scenario/parseScenario.d.ts +5 -0
- package/dist/src/scenario/parseScenario.js +135 -8
- package/dist/src/scenario/scenarioSchema.d.ts +200 -3
- package/dist/src/scenario/scenarioSchema.js +12 -1
- package/dist/src/twin/twinHarness.d.ts +10 -0
- package/dist/src/twin/twinHarness.js +6 -2
- package/dist/src/twin/twinStart.d.ts +19 -0
- package/dist/src/twin/twinStart.js +156 -0
- package/node_modules/@pome-sh/sdk/dist/fidelity-inventory.d.ts +121 -0
- package/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js +204 -0
- package/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js.map +1 -0
- package/node_modules/@pome-sh/sdk/dist/parity.d.ts +55 -0
- package/node_modules/@pome-sh/sdk/dist/parity.js +112 -0
- package/node_modules/@pome-sh/sdk/dist/parity.js.map +1 -0
- package/node_modules/@pome-sh/sdk/dist/server-helpers.d.ts +15 -0
- package/node_modules/@pome-sh/sdk/dist/server-helpers.js +96 -0
- package/node_modules/@pome-sh/sdk/dist/server-helpers.js.map +1 -1
- package/node_modules/@pome-sh/sdk/dist/server.d.ts +1 -1
- package/node_modules/@pome-sh/sdk/dist/server.js +9 -7
- package/node_modules/@pome-sh/sdk/dist/server.js.map +1 -1
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/errors.d.ts +39 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/errors.js +33 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/errors.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/evaluator-hooks.d.ts +13 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/evaluator-hooks.js +6 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/evaluator-hooks.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/finalize-shapes.d.ts +215 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js +83 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/github-access-control.d.ts +175 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/github-access-control.js +182 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/github-access-control.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/identity.d.ts +90 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/identity.js +72 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/identity.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/index.d.ts +27 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/index.js +34 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/index.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/event-schema.d.ts +286 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js +33 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.d.ts +65 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js +455 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.d.ts +39 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js +47 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/index.d.ts +25 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/index.js +27 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/index.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.d.ts +100 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js +185 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/map-span.d.ts +64 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/map-span.js +112 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/map-span.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/nano.d.ts +26 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/nano.js +61 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/nano.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/project.d.ts +42 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/project.js +96 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/project.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/semconv.d.ts +51 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/semconv.js +74 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/semconv.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/span-event.d.ts +134 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/span-event.js +152 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/otel/span-event.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/recorder-events.d.ts +418 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/recorder-events.js +234 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/recorder-events.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/redaction.d.ts +2 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/redaction.js +152 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/redaction.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/rest.d.ts +198 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/rest.js +225 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/rest.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/run.d.ts +201 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/run.js +166 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/run.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/seed-state.d.ts +446 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/seed-state.js +167 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/seed-state.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/sessions.d.ts +53 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/sessions.js +51 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/sessions.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/task-vocab.d.ts +66 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/task-vocab.js +84 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/task-vocab.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/task.d.ts +483 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/task.js +60 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/dist/task.js.map +1 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/package.json +54 -0
- package/node_modules/@pome-sh/sdk/node_modules/@pome-sh/shared-types/trace-contract.json +41 -0
- package/node_modules/@pome-sh/sdk/package.json +6 -2
- package/node_modules/@pome-sh/shared-types/dist/errors.d.ts +39 -0
- package/node_modules/@pome-sh/shared-types/dist/errors.js +33 -0
- package/node_modules/@pome-sh/shared-types/dist/errors.js.map +1 -0
- package/node_modules/@pome-sh/shared-types/dist/finalize-shapes.d.ts +252 -0
- package/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js +122 -0
- package/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js.map +1 -0
- package/node_modules/@pome-sh/shared-types/dist/identity.d.ts +90 -0
- package/node_modules/@pome-sh/shared-types/dist/identity.js +72 -0
- package/node_modules/@pome-sh/shared-types/dist/identity.js.map +1 -0
- package/node_modules/@pome-sh/shared-types/dist/index.d.ts +13 -1353
- package/node_modules/@pome-sh/shared-types/dist/index.js +14 -568
- package/node_modules/@pome-sh/shared-types/dist/index.js.map +1 -1
- package/node_modules/@pome-sh/shared-types/dist/otel/event-schema.d.ts +45 -0
- package/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js +8 -0
- package/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js.map +1 -1
- package/node_modules/@pome-sh/shared-types/dist/otel/semconv.js +7 -0
- package/node_modules/@pome-sh/shared-types/dist/otel/semconv.js.map +1 -1
- package/node_modules/@pome-sh/shared-types/dist/recorder-events.d.ts +62 -0
- package/node_modules/@pome-sh/shared-types/dist/recorder-events.js +36 -0
- package/node_modules/@pome-sh/shared-types/dist/recorder-events.js.map +1 -1
- package/node_modules/@pome-sh/shared-types/dist/rest.d.ts +245 -0
- package/node_modules/@pome-sh/shared-types/dist/rest.js +303 -0
- package/node_modules/@pome-sh/shared-types/dist/rest.js.map +1 -0
- package/node_modules/@pome-sh/shared-types/dist/run.d.ts +7 -0
- package/node_modules/@pome-sh/shared-types/dist/run.js +4 -0
- package/node_modules/@pome-sh/shared-types/dist/run.js.map +1 -1
- package/node_modules/@pome-sh/shared-types/dist/seed-envelope.d.ts +14 -0
- package/node_modules/@pome-sh/shared-types/dist/seed-envelope.js +46 -0
- package/node_modules/@pome-sh/shared-types/dist/seed-envelope.js.map +1 -0
- package/node_modules/@pome-sh/shared-types/dist/seed-state.d.ts +446 -0
- package/node_modules/@pome-sh/shared-types/dist/seed-state.js +167 -0
- package/node_modules/@pome-sh/shared-types/dist/seed-state.js.map +1 -0
- package/node_modules/@pome-sh/shared-types/dist/sessions.d.ts +53 -0
- package/node_modules/@pome-sh/shared-types/dist/sessions.js +51 -0
- package/node_modules/@pome-sh/shared-types/dist/sessions.js.map +1 -0
- package/node_modules/@pome-sh/shared-types/dist/task.d.ts +485 -0
- package/node_modules/@pome-sh/shared-types/dist/task.js +60 -0
- package/node_modules/@pome-sh/shared-types/dist/task.js.map +1 -0
- package/node_modules/@pome-sh/shared-types/package.json +2 -1
- package/node_modules/@pome-sh/shared-types/trace-contract.json +1 -1
- package/node_modules/@pome-sh/twin-github/FIDELITY.md +127 -67
- package/node_modules/@pome-sh/twin-github/README.md +3 -7
- package/node_modules/@pome-sh/twin-github/dist/examples/claude-github-agent.js +4 -20
- package/node_modules/@pome-sh/twin-github/dist/examples/claude-github-agent.js.map +1 -1
- package/node_modules/@pome-sh/twin-github/dist/src/access-control.d.ts +3 -3
- package/node_modules/@pome-sh/twin-github/dist/src/domain.d.ts +141 -3
- package/node_modules/@pome-sh/twin-github/dist/src/domain.js +0 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain.js.map +1 -1
- package/node_modules/@pome-sh/twin-github/dist/src/routes.js +2 -0
- package/node_modules/@pome-sh/twin-github/dist/src/routes.js.map +1 -1
- package/node_modules/@pome-sh/twin-github/dist/src/seed.d.ts +1 -1
- package/node_modules/@pome-sh/twin-github/dist/src/serializers.d.ts +2 -2
- package/node_modules/@pome-sh/twin-github/dist/src/server.js +7 -6
- package/node_modules/@pome-sh/twin-github/dist/src/server.js.map +1 -1
- package/node_modules/@pome-sh/twin-github/dist/src/tools.d.ts +168 -18
- package/node_modules/@pome-sh/twin-github/dist/src/tools.js +23 -0
- package/node_modules/@pome-sh/twin-github/dist/src/tools.js.map +1 -1
- package/node_modules/@pome-sh/twin-github/fidelity.inventory.json +773 -0
- package/node_modules/@pome-sh/twin-github/package.json +5 -4
- package/node_modules/@pome-sh/twin-slack/FIDELITY.md +121 -35
- package/node_modules/@pome-sh/twin-slack/README.md +2 -6
- package/node_modules/@pome-sh/twin-slack/dist/scripts/fidelity-parity.d.ts +1 -0
- package/node_modules/@pome-sh/twin-slack/dist/scripts/fidelity-parity.js +92 -0
- package/node_modules/@pome-sh/twin-slack/dist/scripts/fidelity-parity.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/dist/scripts/smoke.js +3 -3
- package/node_modules/@pome-sh/twin-slack/dist/scripts/smoke.js.map +1 -1
- package/node_modules/@pome-sh/twin-slack/dist/scripts/validate-mcp.js +1 -1
- package/node_modules/@pome-sh/twin-slack/dist/scripts/validate-mcp.js.map +1 -1
- package/node_modules/@pome-sh/twin-slack/dist/src/server.js +7 -6
- package/node_modules/@pome-sh/twin-slack/dist/src/server.js.map +1 -1
- package/node_modules/@pome-sh/twin-slack/dist/src/tools.d.ts +30 -4
- package/node_modules/@pome-sh/twin-slack/dist/src/tools.js +48 -1
- package/node_modules/@pome-sh/twin-slack/dist/src/tools.js.map +1 -1
- package/node_modules/@pome-sh/twin-slack/fidelity.inventory.json +377 -0
- package/node_modules/@pome-sh/twin-slack/package.json +5 -4
- package/node_modules/@pome-sh/twin-stripe/FIDELITY.md +151 -50
- package/node_modules/@pome-sh/twin-stripe/README.md +42 -45
- package/node_modules/@pome-sh/twin-stripe/dist/scripts/fidelity-parity.d.ts +1 -0
- package/node_modules/@pome-sh/twin-stripe/dist/scripts/fidelity-parity.js +186 -0
- package/node_modules/@pome-sh/twin-stripe/dist/scripts/fidelity-parity.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/dist/scripts/smoke.js +8 -4
- package/node_modules/@pome-sh/twin-stripe/dist/scripts/smoke.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/db.js +26 -2
- package/node_modules/@pome-sh/twin-stripe/dist/src/db.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/billing.d.ts +101 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/billing.js +195 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/billing.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/charges.d.ts +15 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/charges.js +17 -5
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/charges.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/customers.d.ts +47 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/customers.js +103 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/customers.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/events.d.ts +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/events.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/index.d.ts +6 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/index.js +3 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/index.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/payment-intents.d.ts +61 -2
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/payment-intents.js +214 -52
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/payment-intents.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/payment-methods.d.ts +45 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/payment-methods.js +159 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/payment-methods.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/refunds.d.ts +6 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/refunds.js +16 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/refunds.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/schema.d.ts +1 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/schema.js +144 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/schema.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/stripe-domain.d.ts +420 -43
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/stripe-domain.js +442 -13
- package/node_modules/@pome-sh/twin-stripe/dist/src/domain/stripe-domain.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/errors.d.ts +19 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/errors.js +15 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/errors.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/ids.d.ts +2 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/ids.js +2 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/ids.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/_helpers.d.ts +8 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/_helpers.js +105 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/_helpers.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/billing.d.ts +4 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/billing.js +117 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/billing.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/customers.d.ts +4 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/customers.js +47 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/customers.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/index.js +6 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/index.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/payment-intents.js +28 -102
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/payment-intents.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/payment-methods.d.ts +4 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/payment-methods.js +33 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/routes/payment-methods.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/seed.d.ts +10 -8
- package/node_modules/@pome-sh/twin-stripe/dist/src/seed.js +3 -2
- package/node_modules/@pome-sh/twin-stripe/dist/src/seed.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/serializers.d.ts +181 -21
- package/node_modules/@pome-sh/twin-stripe/dist/src/serializers.js +257 -34
- package/node_modules/@pome-sh/twin-stripe/dist/src/serializers.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/server.js +7 -6
- package/node_modules/@pome-sh/twin-stripe/dist/src/server.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/tools.d.ts +107 -5
- package/node_modules/@pome-sh/twin-stripe/dist/src/tools.js +139 -6
- package/node_modules/@pome-sh/twin-stripe/dist/src/tools.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/types.d.ts +73 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/upstream-types.d.ts +8 -0
- package/node_modules/@pome-sh/twin-stripe/dist/src/x402.js +6 -1
- package/node_modules/@pome-sh/twin-stripe/dist/src/x402.js.map +1 -1
- package/node_modules/@pome-sh/twin-stripe/fidelity.inventory.json +425 -0
- package/node_modules/@pome-sh/twin-stripe/package.json +5 -4
- package/package.json +8 -8
- package/skills/pome-setup/SKILL.md +1 -1
|
@@ -0,0 +1,425 @@
|
|
|
1
|
+
{
|
|
2
|
+
"twin": "stripe",
|
|
3
|
+
"package": "@pome-sh/twin-stripe",
|
|
4
|
+
"updated": "2026-07-12",
|
|
5
|
+
"notes": "Both tables lint 1:1 against FIDELITY.md; FIDELITY_MATRIX.md stays a legacy pinned matrix. The payment-collection chain (F-731: PI lifecycle incl. card decline/retry + settlement/ledger/event reads), the customer-management chain (F-732), and the refunds chain (F-733 reconciliation: ledger + events closed, docs synced) carry their ruled heat (hot, F-729); the warm billing set (products/prices/subscriptions/invoice reads, shape tier) landed with F-734, which also added the named cold rows (checkout sessions, payment links, setup intents, webhook endpoints). Disputes are unlisted cold per the F-729 ruled list (catch-all 501), not warm — see the F-733 [DECISION].",
|
|
6
|
+
"tools": [
|
|
7
|
+
{
|
|
8
|
+
"name": "create_payment_intent",
|
|
9
|
+
"heat": "hot",
|
|
10
|
+
"fidelity": "semantic",
|
|
11
|
+
"justification": "TC:collect-payment (ruled F-729): both rails — x402 crypto deposit and card (F-731), incl. one-shot create+confirm."
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"name": "retrieve_payment_intent",
|
|
15
|
+
"heat": "hot",
|
|
16
|
+
"fidelity": "semantic",
|
|
17
|
+
"justification": "TC:collect-payment (ruled F-729): the post-attempt read agents poll for status and last_payment_error."
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"name": "list_payment_intents",
|
|
21
|
+
"heat": "hot",
|
|
22
|
+
"fidelity": "semantic",
|
|
23
|
+
"justification": "TC:collect-payment (ruled F-729); cursor pagination on (created, id)."
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"name": "confirm_payment_intent",
|
|
27
|
+
"heat": "hot",
|
|
28
|
+
"fidelity": "semantic",
|
|
29
|
+
"justification": "TC:collect-payment (ruled F-729): card confirms attempt the charge synchronously with magic-PM declines (F-731); crypto confirm stays the documented idempotent no-op."
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"name": "update_payment_intent",
|
|
33
|
+
"heat": "hot",
|
|
34
|
+
"fidelity": "semantic",
|
|
35
|
+
"justification": "TC:collect-payment(card) (ruled F-729, ruling point 1): the retry-with-new-PM step after a decline (F-731)."
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"name": "cancel_payment_intent",
|
|
39
|
+
"heat": "hot",
|
|
40
|
+
"fidelity": "semantic",
|
|
41
|
+
"justification": "TC:collect-payment (ruled F-729): abandon step; CAS-guarded, refused once succeeded."
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"name": "simulate_crypto_deposit",
|
|
45
|
+
"heat": "hot",
|
|
46
|
+
"fidelity": "semantic",
|
|
47
|
+
"justification": "TC:collect-payment (ruled F-729); SB: the sealed twin's x402 settlement entry point."
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"name": "retrieve_charge",
|
|
51
|
+
"heat": "hot",
|
|
52
|
+
"fidelity": "semantic",
|
|
53
|
+
"justification": "TC:settlement-verify (ruled F-729): agents read the minted (or failed, F-731) charge to verify the attempt."
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"name": "list_charges",
|
|
57
|
+
"heat": "hot",
|
|
58
|
+
"fidelity": "semantic",
|
|
59
|
+
"justification": "TC:settlement-verify (ruled F-729); payment_intent / customer / created filters."
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"name": "retrieve_balance",
|
|
63
|
+
"heat": "hot",
|
|
64
|
+
"fidelity": "semantic",
|
|
65
|
+
"justification": "TC:ledger-check (ruled F-729): available/pending reflect settled PIs."
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"name": "list_balance_transactions",
|
|
69
|
+
"heat": "hot",
|
|
70
|
+
"fidelity": "semantic",
|
|
71
|
+
"justification": "TC:ledger-check (ruled F-729): the ledger entries minted by settles and refunds."
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"name": "retrieve_event",
|
|
75
|
+
"heat": "hot",
|
|
76
|
+
"fidelity": "semantic",
|
|
77
|
+
"justification": "TC:poll-confirm (ruled F-729): no webhook delivery in v1, agents poll events."
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"name": "list_events",
|
|
81
|
+
"heat": "hot",
|
|
82
|
+
"fidelity": "semantic",
|
|
83
|
+
"justification": "TC:poll-confirm (ruled F-729): the polling read; type + created filters."
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"name": "create_refund",
|
|
87
|
+
"heat": "hot",
|
|
88
|
+
"fidelity": "semantic",
|
|
89
|
+
"justification": "TC:refund (ruled F-729); MCP:create_refund — the only resource keeping a dedicated tool on Stripe's official MCP server. F-733: mints the negative refund-type ledger entry and emits charge.refunded + refund.created in one transaction."
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"name": "retrieve_refund",
|
|
93
|
+
"heat": "hot",
|
|
94
|
+
"fidelity": "semantic",
|
|
95
|
+
"justification": "TC:refund (ruled F-729): the post-refund verify read."
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"name": "list_refunds",
|
|
99
|
+
"heat": "hot",
|
|
100
|
+
"fidelity": "semantic",
|
|
101
|
+
"justification": "TC:refund (ruled F-729); charge + payment_intent filters."
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
"name": "create_customer",
|
|
105
|
+
"heat": "hot",
|
|
106
|
+
"fidelity": "semantic",
|
|
107
|
+
"justification": "TC:customer-mgmt (ruled F-729): customer management is the precondition of nearly every collection chain. Vendor MCP has meta-tools only; task chain wins per rubric."
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"name": "retrieve_customer",
|
|
111
|
+
"heat": "hot",
|
|
112
|
+
"fidelity": "semantic",
|
|
113
|
+
"justification": "TC:customer-mgmt (ruled F-729)."
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"name": "update_customer",
|
|
117
|
+
"heat": "hot",
|
|
118
|
+
"fidelity": "semantic",
|
|
119
|
+
"justification": "TC:customer-mgmt (ruled F-729); Stripe per-key metadata merge modeled semantically."
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"name": "delete_customer",
|
|
123
|
+
"heat": "hot",
|
|
124
|
+
"fidelity": "semantic",
|
|
125
|
+
"justification": "TC:customer-mgmt (ruled F-729); soft delete serves the {deleted: true} stub and detaches PMs like real Stripe."
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
"name": "list_customers",
|
|
129
|
+
"heat": "hot",
|
|
130
|
+
"fidelity": "semantic",
|
|
131
|
+
"justification": "TC:customer-mgmt (ruled F-729); cursor pagination + email filter."
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"name": "list_customer_payment_methods",
|
|
135
|
+
"heat": "hot",
|
|
136
|
+
"fidelity": "semantic",
|
|
137
|
+
"justification": "TC:card-on-file (ruled F-729): the customer-scoped PM list is the hot read; the top-level PM list stays cold."
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
"name": "create_payment_method",
|
|
141
|
+
"heat": "hot",
|
|
142
|
+
"fidelity": "semantic",
|
|
143
|
+
"justification": "TC:card-on-file (ruled F-729): card PMs from test card numbers; PAN never stored. Magic decline PMs drive the F-731 card retry chain."
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
"name": "retrieve_payment_method",
|
|
147
|
+
"heat": "hot",
|
|
148
|
+
"fidelity": "semantic",
|
|
149
|
+
"justification": "TC:card-on-file (ruled F-729)."
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
"name": "attach_payment_method",
|
|
153
|
+
"heat": "hot",
|
|
154
|
+
"fidelity": "semantic",
|
|
155
|
+
"justification": "TC:card-on-file (ruled F-729): one customer per PM; a detached PM can never be reattached (Stripe lifecycle rule)."
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
"name": "detach_payment_method",
|
|
159
|
+
"heat": "hot",
|
|
160
|
+
"fidelity": "semantic",
|
|
161
|
+
"justification": "TC:card-on-file (ruled F-729)."
|
|
162
|
+
}
|
|
163
|
+
],
|
|
164
|
+
"rest": [
|
|
165
|
+
{
|
|
166
|
+
"name": "POST /s/:sid/v1/payment_intents",
|
|
167
|
+
"heat": "hot",
|
|
168
|
+
"fidelity": "semantic",
|
|
169
|
+
"justification": "TC:collect-payment (ruled F-729): both rails — x402 crypto deposit and card (F-731), incl. one-shot create+confirm."
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
"name": "GET /s/:sid/v1/payment_intents/:id",
|
|
173
|
+
"heat": "hot",
|
|
174
|
+
"fidelity": "semantic",
|
|
175
|
+
"justification": "TC:collect-payment (ruled F-729): the post-attempt read agents poll for status and last_payment_error."
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
"name": "GET /s/:sid/v1/payment_intents",
|
|
179
|
+
"heat": "hot",
|
|
180
|
+
"fidelity": "semantic",
|
|
181
|
+
"justification": "TC:collect-payment (ruled F-729); cursor pagination on (created, id)."
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
"name": "POST /s/:sid/v1/payment_intents/:id/confirm",
|
|
185
|
+
"heat": "hot",
|
|
186
|
+
"fidelity": "semantic",
|
|
187
|
+
"justification": "TC:collect-payment (ruled F-729): card confirms attempt the charge synchronously with magic-PM declines (F-731); crypto confirm stays the documented idempotent no-op."
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
"name": "POST /s/:sid/v1/payment_intents/:id",
|
|
191
|
+
"heat": "hot",
|
|
192
|
+
"fidelity": "semantic",
|
|
193
|
+
"justification": "TC:collect-payment(card) (ruled F-729, ruling point 1): update — the retry-with-new-PM step after a decline (F-731)."
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
"name": "POST /s/:sid/v1/payment_intents/:id/cancel",
|
|
197
|
+
"heat": "hot",
|
|
198
|
+
"fidelity": "semantic",
|
|
199
|
+
"justification": "TC:collect-payment (ruled F-729): abandon step; CAS-guarded, refused once succeeded."
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
"name": "POST /s/:sid/v1/test_helpers/payment_intents/:id/simulate_crypto_deposit",
|
|
203
|
+
"heat": "hot",
|
|
204
|
+
"fidelity": "semantic",
|
|
205
|
+
"justification": "TC:collect-payment (ruled F-729); SB: the sealed twin's x402 settlement entry point."
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
"name": "GET /s/:sid/v1/charges/:id",
|
|
209
|
+
"heat": "hot",
|
|
210
|
+
"fidelity": "semantic",
|
|
211
|
+
"justification": "TC:settlement-verify (ruled F-729): agents read the minted (or failed, F-731) charge to verify the attempt."
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
"name": "GET /s/:sid/v1/charges",
|
|
215
|
+
"heat": "hot",
|
|
216
|
+
"fidelity": "semantic",
|
|
217
|
+
"justification": "TC:settlement-verify (ruled F-729); payment_intent / customer / created filters."
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
"name": "GET /s/:sid/v1/balance",
|
|
221
|
+
"heat": "hot",
|
|
222
|
+
"fidelity": "semantic",
|
|
223
|
+
"justification": "TC:ledger-check (ruled F-729): available/pending reflect settled PIs."
|
|
224
|
+
},
|
|
225
|
+
{
|
|
226
|
+
"name": "GET /s/:sid/v1/balance_transactions",
|
|
227
|
+
"heat": "hot",
|
|
228
|
+
"fidelity": "semantic",
|
|
229
|
+
"justification": "TC:ledger-check (ruled F-729): the ledger entries minted by settles and refunds."
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
"name": "GET /s/:sid/v1/events/:id",
|
|
233
|
+
"heat": "hot",
|
|
234
|
+
"fidelity": "semantic",
|
|
235
|
+
"justification": "TC:poll-confirm (ruled F-729): no webhook delivery in v1, agents poll events."
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
"name": "GET /s/:sid/v1/events",
|
|
239
|
+
"heat": "hot",
|
|
240
|
+
"fidelity": "semantic",
|
|
241
|
+
"justification": "TC:poll-confirm (ruled F-729): the polling read; type + created filters."
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
"name": "POST /s/:sid/v1/refunds",
|
|
245
|
+
"heat": "hot",
|
|
246
|
+
"fidelity": "semantic",
|
|
247
|
+
"justification": "TC:refund (ruled F-729); MCP:create_refund corroborates. F-733: full/partial refunds, over-refund + failed-charge refusals, negative refund-type ledger entry, charge.refunded + refund.created events — all in one transaction. Refund partial ops (POST /v1/refunds/:id, /cancel) stay unlisted per F-729 ruling point 4."
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
"name": "GET /s/:sid/v1/refunds/:id",
|
|
251
|
+
"heat": "hot",
|
|
252
|
+
"fidelity": "semantic",
|
|
253
|
+
"justification": "TC:refund (ruled F-729): the post-refund verify read."
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
"name": "GET /s/:sid/v1/refunds",
|
|
257
|
+
"heat": "hot",
|
|
258
|
+
"fidelity": "semantic",
|
|
259
|
+
"justification": "TC:refund (ruled F-729); charge + payment_intent filters. Omits the legacy count field (FIDELITY.md divergence #9)."
|
|
260
|
+
},
|
|
261
|
+
{
|
|
262
|
+
"name": "POST /s/:sid/v1/customers",
|
|
263
|
+
"heat": "hot",
|
|
264
|
+
"fidelity": "semantic",
|
|
265
|
+
"justification": "TC:customer-mgmt (ruled F-729): customer management is the precondition of nearly every collection chain."
|
|
266
|
+
},
|
|
267
|
+
{
|
|
268
|
+
"name": "GET /s/:sid/v1/customers/:id",
|
|
269
|
+
"heat": "hot",
|
|
270
|
+
"fidelity": "semantic",
|
|
271
|
+
"justification": "TC:customer-mgmt (ruled F-729); deleted customers serve the {deleted: true} stub like real Stripe."
|
|
272
|
+
},
|
|
273
|
+
{
|
|
274
|
+
"name": "GET /s/:sid/v1/customers",
|
|
275
|
+
"heat": "hot",
|
|
276
|
+
"fidelity": "semantic",
|
|
277
|
+
"justification": "TC:customer-mgmt (ruled F-729); cursor pagination + email filter, deleted rows excluded."
|
|
278
|
+
},
|
|
279
|
+
{
|
|
280
|
+
"name": "POST /s/:sid/v1/customers/:id",
|
|
281
|
+
"heat": "hot",
|
|
282
|
+
"fidelity": "semantic",
|
|
283
|
+
"justification": "TC:customer-mgmt (ruled F-729); Stripe per-key metadata merge (empty value unsets)."
|
|
284
|
+
},
|
|
285
|
+
{
|
|
286
|
+
"name": "DELETE /s/:sid/v1/customers/:id",
|
|
287
|
+
"heat": "hot",
|
|
288
|
+
"fidelity": "semantic",
|
|
289
|
+
"justification": "TC:customer-mgmt (ruled F-729); soft delete detaches the customer's PMs in the same transaction."
|
|
290
|
+
},
|
|
291
|
+
{
|
|
292
|
+
"name": "GET /s/:sid/v1/customers/:id/payment_methods",
|
|
293
|
+
"heat": "hot",
|
|
294
|
+
"fidelity": "semantic",
|
|
295
|
+
"justification": "TC:card-on-file (ruled F-729): the customer-scoped PM list is the hot read; the top-level GET /v1/payment_methods stays cold (loud 501)."
|
|
296
|
+
},
|
|
297
|
+
{
|
|
298
|
+
"name": "POST /s/:sid/v1/payment_methods",
|
|
299
|
+
"heat": "hot",
|
|
300
|
+
"fidelity": "semantic",
|
|
301
|
+
"justification": "TC:card-on-file (ruled F-729): card PMs from test card numbers (Luhn + expiry card_errors); PAN never stored. Magic decline PMs drive the F-731 card retry chain."
|
|
302
|
+
},
|
|
303
|
+
{
|
|
304
|
+
"name": "GET /s/:sid/v1/payment_methods/:id",
|
|
305
|
+
"heat": "hot",
|
|
306
|
+
"fidelity": "semantic",
|
|
307
|
+
"justification": "TC:card-on-file (ruled F-729)."
|
|
308
|
+
},
|
|
309
|
+
{
|
|
310
|
+
"name": "POST /s/:sid/v1/payment_methods/:id/attach",
|
|
311
|
+
"heat": "hot",
|
|
312
|
+
"fidelity": "semantic",
|
|
313
|
+
"justification": "TC:card-on-file (ruled F-729): one customer per PM; a detached PM can never be reattached."
|
|
314
|
+
},
|
|
315
|
+
{
|
|
316
|
+
"name": "POST /s/:sid/v1/payment_methods/:id/detach",
|
|
317
|
+
"heat": "hot",
|
|
318
|
+
"fidelity": "semantic",
|
|
319
|
+
"justification": "TC:card-on-file (ruled F-729)."
|
|
320
|
+
},
|
|
321
|
+
{
|
|
322
|
+
"name": "POST /s/:sid/v1/products",
|
|
323
|
+
"heat": "warm",
|
|
324
|
+
"fidelity": "shape",
|
|
325
|
+
"justification": "TC:subscription-billing (ruled F-729): chain too long for semantic in the M5 window; shape keeps agents off 501s. Vendor MCP: meta-tools only. F-734."
|
|
326
|
+
},
|
|
327
|
+
{
|
|
328
|
+
"name": "GET /s/:sid/v1/products/:id",
|
|
329
|
+
"heat": "warm",
|
|
330
|
+
"fidelity": "shape",
|
|
331
|
+
"justification": "TC:subscription-billing (ruled F-729). F-734."
|
|
332
|
+
},
|
|
333
|
+
{
|
|
334
|
+
"name": "GET /s/:sid/v1/products",
|
|
335
|
+
"heat": "warm",
|
|
336
|
+
"fidelity": "shape",
|
|
337
|
+
"justification": "TC:subscription-billing (ruled F-729); cursor pagination + active filter. F-734."
|
|
338
|
+
},
|
|
339
|
+
{
|
|
340
|
+
"name": "POST /s/:sid/v1/prices",
|
|
341
|
+
"heat": "warm",
|
|
342
|
+
"fidelity": "shape",
|
|
343
|
+
"justification": "TC:subscription-billing (ruled F-729): referential check on product; recurring vs one_time from recurring.interval. F-734."
|
|
344
|
+
},
|
|
345
|
+
{
|
|
346
|
+
"name": "GET /s/:sid/v1/prices/:id",
|
|
347
|
+
"heat": "warm",
|
|
348
|
+
"fidelity": "shape",
|
|
349
|
+
"justification": "TC:subscription-billing (ruled F-729). F-734."
|
|
350
|
+
},
|
|
351
|
+
{
|
|
352
|
+
"name": "GET /s/:sid/v1/prices",
|
|
353
|
+
"heat": "warm",
|
|
354
|
+
"fidelity": "shape",
|
|
355
|
+
"justification": "TC:subscription-billing (ruled F-729); cursor pagination + product/active filters. F-734."
|
|
356
|
+
},
|
|
357
|
+
{
|
|
358
|
+
"name": "POST /s/:sid/v1/subscriptions",
|
|
359
|
+
"heat": "warm",
|
|
360
|
+
"fidelity": "shape",
|
|
361
|
+
"justification": "TC:subscription-billing (ruled F-729): live customer + existing item prices referentially checked; created active with no invoice minted and no event emitted (shape tier). F-734."
|
|
362
|
+
},
|
|
363
|
+
{
|
|
364
|
+
"name": "GET /s/:sid/v1/subscriptions/:id",
|
|
365
|
+
"heat": "warm",
|
|
366
|
+
"fidelity": "shape",
|
|
367
|
+
"justification": "TC:subscription-billing (ruled F-729); items carry the expanded Price object like real Stripe. F-734."
|
|
368
|
+
},
|
|
369
|
+
{
|
|
370
|
+
"name": "GET /s/:sid/v1/subscriptions",
|
|
371
|
+
"heat": "warm",
|
|
372
|
+
"fidelity": "shape",
|
|
373
|
+
"justification": "TC:subscription-billing (ruled F-729); excludes canceled by default, status/customer filters. F-734."
|
|
374
|
+
},
|
|
375
|
+
{
|
|
376
|
+
"name": "POST /s/:sid/v1/subscriptions/:id",
|
|
377
|
+
"heat": "warm",
|
|
378
|
+
"fidelity": "shape",
|
|
379
|
+
"justification": "TC:subscription-billing (ruled F-729): per-key metadata merge + cancel_at_period_end flip; canceled subscriptions accept metadata-only updates like real Stripe. F-734."
|
|
380
|
+
},
|
|
381
|
+
{
|
|
382
|
+
"name": "DELETE /s/:sid/v1/subscriptions/:id",
|
|
383
|
+
"heat": "warm",
|
|
384
|
+
"fidelity": "shape",
|
|
385
|
+
"justification": "TC:subscription-billing (ruled F-729): immediate cancel, no proration or final invoice (shape tier). F-734."
|
|
386
|
+
},
|
|
387
|
+
{
|
|
388
|
+
"name": "GET /s/:sid/v1/invoices/:id",
|
|
389
|
+
"heat": "warm",
|
|
390
|
+
"fidelity": "shape",
|
|
391
|
+
"justification": "TC:subscription-billing (ruled F-729, ruling point 2: reads only). Always 404 resource_missing — nothing in the twin mints an invoice; invoice writes stay unlisted-cold. F-734."
|
|
392
|
+
},
|
|
393
|
+
{
|
|
394
|
+
"name": "GET /s/:sid/v1/invoices",
|
|
395
|
+
"heat": "warm",
|
|
396
|
+
"fidelity": "shape",
|
|
397
|
+
"justification": "TC:subscription-billing (ruled F-729, ruling point 2: reads only). Always the empty Stripe list envelope (documented divergence). F-734."
|
|
398
|
+
},
|
|
399
|
+
{
|
|
400
|
+
"name": "ALL /s/:sid/v1/checkout/sessions*",
|
|
401
|
+
"heat": "cold",
|
|
402
|
+
"fidelity": "unsupported",
|
|
403
|
+
"justification": "PS (ruled F-729): human-redirect flow outside the machine-payments scope. Named cold — agents plausibly probe it; loud 501 pinned by unsupported.test.ts and the fidelity:parity probe. F-734."
|
|
404
|
+
},
|
|
405
|
+
{
|
|
406
|
+
"name": "ALL /s/:sid/v1/payment_links*",
|
|
407
|
+
"heat": "cold",
|
|
408
|
+
"fidelity": "unsupported",
|
|
409
|
+
"justification": "PS (ruled F-729): human-redirect flow. Named cold; loud 501 pinned by unsupported.test.ts. F-734."
|
|
410
|
+
},
|
|
411
|
+
{
|
|
412
|
+
"name": "ALL /s/:sid/v1/setup_intents*",
|
|
413
|
+
"heat": "cold",
|
|
414
|
+
"fidelity": "unsupported",
|
|
415
|
+
"justification": "PS (ruled F-729, ruling point 3): card-on-file is modeled via direct PM attach (F-732); agents plausibly probe SetupIntents. Named cold; loud 501 pinned by unsupported.test.ts. F-734."
|
|
416
|
+
},
|
|
417
|
+
{
|
|
418
|
+
"name": "ALL /s/:sid/v1/webhook_endpoints*",
|
|
419
|
+
"heat": "cold",
|
|
420
|
+
"fidelity": "unsupported",
|
|
421
|
+
"justification": "PS (ruled F-729, ruling point 3): no webhook delivery loop in v1 (divergence #5), agents poll /v1/events. Named cold; loud 501 pinned by unsupported.test.ts. F-734."
|
|
422
|
+
}
|
|
423
|
+
],
|
|
424
|
+
"doc_drift": []
|
|
425
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pome-sh/twin-stripe",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.3",
|
|
4
4
|
"description": "Deterministic test double for Stripe x402 machine payments — stateful clone agents can drive without burning sandbox quota or real chain gas.",
|
|
5
5
|
"private": false,
|
|
6
6
|
"type": "module",
|
|
@@ -26,7 +26,8 @@
|
|
|
26
26
|
"files": [
|
|
27
27
|
"dist",
|
|
28
28
|
"FIDELITY.md",
|
|
29
|
-
"README.md"
|
|
29
|
+
"README.md",
|
|
30
|
+
"fidelity.inventory.json"
|
|
30
31
|
],
|
|
31
32
|
"publishConfig": {
|
|
32
33
|
"access": "public"
|
|
@@ -52,8 +53,8 @@
|
|
|
52
53
|
"license": "Apache-2.0",
|
|
53
54
|
"dependencies": {
|
|
54
55
|
"@hono/node-server": "^2.0.8",
|
|
55
|
-
"@pome-sh/sdk": "0.
|
|
56
|
-
"@pome-sh/shared-types": "0.
|
|
56
|
+
"@pome-sh/sdk": "0.4.0",
|
|
57
|
+
"@pome-sh/shared-types": "0.9.0",
|
|
57
58
|
"hono": "^4.12.27",
|
|
58
59
|
"zod": "^4.1.13"
|
|
59
60
|
},
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pome-sh/cli",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Digital-twin testing for AI agents — run scenarios against resettable local or hosted twins
|
|
3
|
+
"version": "0.2.0",
|
|
4
|
+
"description": "Digital-twin testing for AI agents — run scenarios against resettable local or hosted twins and record tool-call traces for evaluation on pome.sh.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai",
|
|
7
7
|
"agents",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"access": "public"
|
|
44
44
|
},
|
|
45
45
|
"scripts": {
|
|
46
|
-
"build": "tsc -p tsconfig.build.json && node scripts/copy-prompts.mjs && node -e \"fs.chmodSync('dist/src/cli/main.js', 0o755)\"",
|
|
46
|
+
"build": "rm -rf dist && tsc -p tsconfig.build.json && node scripts/copy-prompts.mjs && node -e \"fs.chmodSync('dist/src/cli/main.js', 0o755)\"",
|
|
47
47
|
"dev": "tsx src/cli/main.ts",
|
|
48
48
|
"pome": "node dist/src/cli/main.js",
|
|
49
49
|
"prepare": "npm run build",
|
|
@@ -66,11 +66,11 @@
|
|
|
66
66
|
"@anthropic-ai/sdk": "^0.110.0",
|
|
67
67
|
"@hono/node-server": "^2.0.6",
|
|
68
68
|
"@openrouter/ai-sdk-provider": "^3.0.0",
|
|
69
|
-
"@pome-sh/sdk": "0.
|
|
70
|
-
"@pome-sh/shared-types": "0.
|
|
71
|
-
"@pome-sh/twin-github": "0.
|
|
72
|
-
"@pome-sh/twin-slack": "0.
|
|
73
|
-
"@pome-sh/twin-stripe": "0.2.
|
|
69
|
+
"@pome-sh/sdk": "0.4.0",
|
|
70
|
+
"@pome-sh/shared-types": "0.9.0",
|
|
71
|
+
"@pome-sh/twin-github": "0.2.0",
|
|
72
|
+
"@pome-sh/twin-slack": "0.2.0",
|
|
73
|
+
"@pome-sh/twin-stripe": "0.2.3",
|
|
74
74
|
"ai": "^7.0.18",
|
|
75
75
|
"commander": "^15.0.0",
|
|
76
76
|
"hono": "^4.10.7",
|
|
@@ -131,7 +131,7 @@ next steps:
|
|
|
131
131
|
|
|
132
132
|
| Symptom | Fix |
|
|
133
133
|
| --- | --- |
|
|
134
|
-
| `npm install @pome-sh/adapter-claude-sdk`
|
|
134
|
+
| `npm install @pome-sh/adapter-claude-sdk` fails | Confirm registry access (`npm view @pome-sh/adapter-claude-sdk version`). Inside a pome-twins checkout you can also pin `"@pome-sh/adapter-claude-sdk": "file:<checkout>/packages/adapter-claude-sdk"` while iterating on unpublished workspace changes. |
|
|
135
135
|
| doctor: "reads from a hardcoded https://api.github.com" | A production-host literal survives in agent source — even a `?? "https://api.github.com"` fallback triggers it. Move the fallback out of source; read `POME_GITHUB_REST_URL`. |
|
|
136
136
|
| doctor: "twin not reachable" | Twin dependencies missing — run the repo's install (`npm install` / `npm install`) and re-run `pome doctor`. |
|
|
137
137
|
| doctor: "egress floor disabled" | Remove `*` from `POME_EGRESS_ALLOW`. Never widen egress to pass a check. |
|