@pome-sh/cli 0.9.0 → 0.11.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/dist/build-info.json +3 -3
- package/dist/src/cli/agent-resolver.d.ts +3 -0
- package/dist/src/cli/agent-resolver.js +10 -0
- package/dist/src/cli/checks-add.d.ts +32 -0
- package/dist/src/cli/checks-add.js +236 -0
- package/dist/src/cli/checks.d.ts +21 -0
- package/dist/src/cli/checks.js +150 -0
- package/dist/src/cli/main.js +28 -0
- package/dist/src/runner/runTask.d.ts +10 -10
- package/dist/src/task/insertCriterion.d.ts +15 -0
- package/dist/src/task/insertCriterion.js +62 -0
- package/dist/src/task/parseTask.d.ts +5 -0
- package/dist/src/task/parseTask.js +11 -0
- package/dist/src/task/taskSchema.d.ts +4 -4
- package/node_modules/@pome-sh/sdk/dist/checks.d.ts +58 -0
- package/node_modules/@pome-sh/sdk/dist/checks.js +203 -0
- package/node_modules/@pome-sh/sdk/dist/checks.js.map +1 -0
- package/node_modules/@pome-sh/sdk/package.json +7 -3
- package/node_modules/@pome-sh/twin-github/dist/src/access-control.d.ts +3 -3
- package/node_modules/@pome-sh/twin-github/dist/src/check-issues.d.ts +30 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-issues.js +203 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-issues.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-kind.d.ts +3 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-kind.js +10 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-kind.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-params.d.ts +12 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-params.js +99 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-params.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-pulls.d.ts +11 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-pulls.js +102 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-pulls.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-repos.d.ts +13 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-repos.js +132 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-repos.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-state.d.ts +56 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-state.js +80 -0
- package/node_modules/@pome-sh/twin-github/dist/src/check-state.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/checks.d.ts +43 -0
- package/node_modules/@pome-sh/twin-github/dist/src/checks.js +65 -0
- package/node_modules/@pome-sh/twin-github/dist/src/checks.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/checks.d.ts +153 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/checks.js +66 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/checks.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/git.d.ts +567 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/git.js +198 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/git.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/{domain.d.ts → domain/github-domain.d.ts} +340 -71
- package/node_modules/@pome-sh/twin-github/dist/src/domain/github-domain.js +794 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/github-domain.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/helpers.d.ts +5 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/helpers.js +15 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/helpers.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/index.d.ts +2 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/index.js +5 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/index.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/issues.d.ts +545 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/issues.js +272 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/issues.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/pulls.d.ts +816 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/pulls.js +256 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/pulls.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/releases.d.ts +160 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/releases.js +63 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/releases.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/repos.d.ts +219 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/repos.js +131 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/repos.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/search.d.ts +252 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/search.js +83 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/search.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/types.d.ts +15 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/types.js +2 -0
- package/node_modules/@pome-sh/twin-github/dist/src/domain/types.js.map +1 -0
- package/node_modules/@pome-sh/twin-github/dist/src/index.d.ts +2 -1
- package/node_modules/@pome-sh/twin-github/dist/src/index.js +1 -1
- package/node_modules/@pome-sh/twin-github/dist/src/index.js.map +1 -1
- package/node_modules/@pome-sh/twin-github/dist/src/routes.d.ts +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 +3 -3
- package/node_modules/@pome-sh/twin-github/dist/src/tools.d.ts +188 -188
- package/node_modules/@pome-sh/twin-github/dist/src/twin.d.ts +1 -1
- package/node_modules/@pome-sh/twin-github/dist/src/twin.js +1 -1
- package/node_modules/@pome-sh/twin-github/dist/src/twin.js.map +1 -1
- package/node_modules/@pome-sh/twin-github/package.json +4 -4
- package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/package.json +2 -2
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/admin-gate.d.ts +35 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/admin-gate.js +103 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/admin-gate.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/auth.d.ts +100 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/auth.js +262 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/auth.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/build-info.d.ts +7 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/build-info.js +14 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/build-info.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/db.d.ts +44 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/db.js +113 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/db.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/errors.d.ts +24 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/errors.js +61 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/errors.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/failure-injection.d.ts +43 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/failure-injection.js +160 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/failure-injection.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/fidelity-inventory.d.ts +121 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js +204 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/fidelity.d.ts +8 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/fidelity.js +39 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/fidelity.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/index.d.ts +372 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/index.js +139 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/index.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.d.ts +10 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js +221 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/parity.d.ts +61 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/parity.js +123 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/parity.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/recorder.d.ts +120 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/recorder.js +368 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/recorder.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/redaction.d.ts +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/redaction.js +3 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/redaction.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/server-helpers.d.ts +54 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/server-helpers.js +181 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/server-helpers.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/server.d.ts +46 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/server.js +394 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/server.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/tool-context.d.ts +8 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/tool-context.js +22 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/dist/tool-context.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/sdk/package.json +54 -0
- package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/index.d.ts +1 -0
- package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/index.js +1 -0
- package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/index.js.map +1 -1
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/shared-types/dist/manifest.d.ts +31 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/shared-types/dist/manifest.js +76 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/shared-types/dist/manifest.js.map +1 -0
- package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/rest.d.ts +9 -0
- package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/rest.js +27 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/shared-types/dist/rest.js.map +1 -0
- package/node_modules/@pome-sh/twin-linear/node_modules/@pome-sh/shared-types/manifest-schema.json +68 -0
- package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/package.json +2 -1
- package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/trace-contract.json +1 -1
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/admin-gate.d.ts +35 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/admin-gate.js +103 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/admin-gate.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/auth.d.ts +100 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/auth.js +262 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/auth.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/build-info.d.ts +7 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/build-info.js +14 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/build-info.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/db.d.ts +44 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/db.js +113 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/db.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/errors.d.ts +24 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/errors.js +61 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/errors.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/failure-injection.d.ts +43 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/failure-injection.js +160 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/failure-injection.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity-inventory.d.ts +121 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js +204 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity.d.ts +8 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity.js +39 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/fidelity.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/index.d.ts +372 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/index.js +139 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/index.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.d.ts +10 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js +221 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/parity.d.ts +61 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/parity.js +123 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/parity.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/recorder.d.ts +120 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/recorder.js +368 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/recorder.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/redaction.d.ts +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/redaction.js +3 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/redaction.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server-helpers.d.ts +54 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server-helpers.js +181 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server-helpers.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server.d.ts +46 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server.js +394 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/server.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/tool-context.d.ts +8 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/tool-context.js +22 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/dist/tool-context.js.map +1 -0
- package/node_modules/@pome-sh/twin-slack/node_modules/@pome-sh/sdk/package.json +54 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/admin-gate.d.ts +35 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/admin-gate.js +103 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/admin-gate.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/auth.d.ts +100 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/auth.js +262 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/auth.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/build-info.d.ts +7 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/build-info.js +14 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/build-info.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/db.d.ts +44 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/db.js +113 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/db.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/errors.d.ts +24 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/errors.js +61 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/errors.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/failure-injection.d.ts +43 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/failure-injection.js +160 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/failure-injection.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity-inventory.d.ts +121 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js +204 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity.d.ts +8 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity.js +39 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/fidelity.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/index.d.ts +372 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/index.js +139 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/index.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.d.ts +10 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js +221 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/parity.d.ts +61 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/parity.js +123 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/parity.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/recorder.d.ts +120 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/recorder.js +368 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/recorder.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/redaction.d.ts +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/redaction.js +3 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/redaction.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server-helpers.d.ts +54 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server-helpers.js +181 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server-helpers.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server.d.ts +46 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server.js +394 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/server.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/tool-context.d.ts +8 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/tool-context.js +22 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/dist/tool-context.js.map +1 -0
- package/node_modules/@pome-sh/twin-stripe/node_modules/@pome-sh/sdk/package.json +54 -0
- package/package.json +3 -3
- package/tasks/00-default-seed.md +2 -2
- package/tasks/01-bug-happy-path.md +3 -3
- package/tasks/03-already-triaged.md +3 -3
- package/tasks/04-judge-context.md +1 -1
- package/tasks/06-mislabeled-needs-fix.md +4 -4
- package/tasks/08-prompt-injection-issue-body.md +1 -1
- package/tasks/17-in-scope-injection.md +4 -4
- package/tasks/26-github-linear-handoff.md +1 -1
- package/tasks/27-gmail-github-support-escalation.md +3 -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 +0 -1
- package/node_modules/@pome-sh/twin-github/node_modules/@pome-sh/shared-types/dist/rest.js.map +0 -1
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/admin-gate.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/admin-gate.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/admin-gate.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/auth.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/auth.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/auth.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/build-info.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/build-info.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/build-info.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/db.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/db.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/db.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/errors.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/errors.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/errors.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/failure-injection.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/failure-injection.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/failure-injection.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/fidelity-inventory.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/fidelity-inventory.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/fidelity.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/fidelity.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/fidelity.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/index.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/index.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/index.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/mcp-jsonrpc.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/parity.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/parity.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/parity.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/recorder.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/recorder.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/recorder.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/redaction.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/redaction.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/redaction.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/server-helpers.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/server-helpers.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/server-helpers.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/server.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/server.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/server.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/tool-context.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/tool-context.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-gmail}/node_modules/@pome-sh/sdk/dist/tool-context.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/errors.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/errors.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/errors.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/finalize-shapes.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/github-access-control.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/github-access-control.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/github-access-control.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/identity.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/identity.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/identity.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/index.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/index.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/index.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/manifest.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/manifest.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/manifest.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/event-schema.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/index.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/index.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/index.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/map-span.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/map-span.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/map-span.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/nano.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/nano.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/nano.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/project.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/project.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/project.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/semconv.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/semconv.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/semconv.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/span-event.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/span-event.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/otel/span-event.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/recorder-events.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/recorder-events.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/recorder-events.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/redaction.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/redaction.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/redaction.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/rest.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/rest.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/rest.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/run.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/run.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/run.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/seed-envelope.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/seed-envelope.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/seed-envelope.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/seed-state.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/seed-state.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/seed-state.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/sessions.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/sessions.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/sessions.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/task-vocab.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/task-vocab.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/task-vocab.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/task.d.ts +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/task.js +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/dist/task.js.map +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/manifest-schema.json +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/package.json +0 -0
- /package/node_modules/@pome-sh/{sdk → twin-gmail}/node_modules/@pome-sh/shared-types/trace-contract.json +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/errors.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/errors.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/errors.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/finalize-shapes.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/finalize-shapes.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/github-access-control.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/github-access-control.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/github-access-control.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/identity.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/identity.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/identity.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/event-schema.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/event-schema.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/fixtures/data.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/fixtures/index.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/index.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/index.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/index.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/legacy-shim.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/map-span.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/map-span.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/map-span.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/nano.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/nano.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/nano.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/project.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/project.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/project.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/semconv.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/semconv.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/semconv.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/span-event.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/span-event.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/otel/span-event.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/recorder-events.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/recorder-events.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/recorder-events.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/redaction.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/redaction.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/redaction.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/run.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/run.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/run.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/seed-envelope.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/seed-envelope.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/seed-envelope.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/seed-state.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/seed-state.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/seed-state.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/sessions.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/sessions.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/sessions.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/task-vocab.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/task-vocab.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/task-vocab.js.map +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/task.d.ts +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/task.js +0 -0
- /package/node_modules/@pome-sh/{twin-github → twin-linear}/node_modules/@pome-sh/shared-types/dist/task.js.map +0 -0
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
/**
|
|
3
|
+
* F-1074 — append one rendered criterion to a task file's `## Success Criteria`,
|
|
4
|
+
* touching nothing else.
|
|
5
|
+
*
|
|
6
|
+
* It does NOT parse and re-serialize the markdown. Re-serializing is how the
|
|
7
|
+
* readable artifact drifts, and the north-star check on this ticket is that it
|
|
8
|
+
* does not: authoring a criterion changes exactly one line.
|
|
9
|
+
*/
|
|
10
|
+
const HEADING_RE = /^##\s+Success Criteria\s*$/;
|
|
11
|
+
const NEXT_HEADING_RE = /^##\s+/;
|
|
12
|
+
// Mirrors CRITERION_LINE_RE in ./parseTask.ts. Used ONLY to find where the last
|
|
13
|
+
// existing criterion sits — never to validate one; that is the parser's job.
|
|
14
|
+
const CRITERION_RE = /^[-*]\s+\[(?:code|model)(?::[a-z][a-z0-9_-]*)?\]\s+.+$/;
|
|
15
|
+
export class MissingCriteriaSectionError extends Error {
|
|
16
|
+
constructor(path) {
|
|
17
|
+
super(`${path} has no \`## Success Criteria\` section. Add one and run this again — ` +
|
|
18
|
+
`pome will not invent a section in a file it did not write.`);
|
|
19
|
+
this.name = "MissingCriteriaSectionError";
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
// Found by driving the command: authoring a criterion a task already carries
|
|
23
|
+
// adds it twice, and the grader scores both — the denominator inflates and the
|
|
24
|
+
// task's percentage moves for a reason nobody wrote down. That is the exact
|
|
25
|
+
// class of silent denominator change this milestone exists to remove, so it is
|
|
26
|
+
// a refusal rather than a warning.
|
|
27
|
+
export class DuplicateCriterionError extends Error {
|
|
28
|
+
constructor(path, line) {
|
|
29
|
+
super(`${path} already has this criterion:\n ${line}\n` +
|
|
30
|
+
`Adding it again would score it twice and inflate the task's denominator.`);
|
|
31
|
+
this.name = "DuplicateCriterionError";
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export function insertCriterion(source, line, path = "this task file") {
|
|
35
|
+
const lines = source.split("\n");
|
|
36
|
+
const start = lines.findIndex((l) => HEADING_RE.test(l));
|
|
37
|
+
if (start === -1)
|
|
38
|
+
throw new MissingCriteriaSectionError(path);
|
|
39
|
+
let end = lines.length;
|
|
40
|
+
for (let i = start + 1; i < lines.length; i += 1) {
|
|
41
|
+
if (NEXT_HEADING_RE.test(lines[i])) {
|
|
42
|
+
end = i;
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
let insertAt = -1;
|
|
47
|
+
for (let i = start + 1; i < end; i += 1) {
|
|
48
|
+
const existing = lines[i].trim();
|
|
49
|
+
if (!CRITERION_RE.test(existing))
|
|
50
|
+
continue;
|
|
51
|
+
if (existing === line.trim())
|
|
52
|
+
throw new DuplicateCriterionError(path, line);
|
|
53
|
+
insertAt = i + 1;
|
|
54
|
+
}
|
|
55
|
+
if (insertAt === -1) {
|
|
56
|
+
// Empty section: land after the heading's blank line, so the result reads
|
|
57
|
+
// like every shipped task instead of butting against the heading.
|
|
58
|
+
insertAt = lines[start + 1]?.trim() === "" ? start + 2 : start + 1;
|
|
59
|
+
}
|
|
60
|
+
lines.splice(insertAt, 0, line);
|
|
61
|
+
return lines.join("\n");
|
|
62
|
+
}
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { type Task } from "./taskSchema.js";
|
|
2
2
|
export declare function parseTaskFile(path: string): Promise<Task>;
|
|
3
|
+
/** The task's declared twins, read WITHOUT requiring criteria (F-1074).
|
|
4
|
+
* `taskSchema` demands at least one criterion, and `pome checks add` needs the
|
|
5
|
+
* twin list BEFORE it has written one. Reuses this module's own section
|
|
6
|
+
* splitter and config schema, so it is not a second parser. */
|
|
7
|
+
export declare function readConfigTwins(markdown: string): string[];
|
|
3
8
|
export declare function parseTask(markdown: string, slug?: string, sidecarSeed?: unknown, taskPath?: string): Task;
|
|
4
9
|
/** The flat seed a single twin boots from. Single-twin scenarios return the
|
|
5
10
|
* flat `seedState` as-is; multi-twin scenarios return that twin's slice of the
|
|
@@ -14,6 +14,17 @@ export async function parseTaskFile(path) {
|
|
|
14
14
|
const sidecarSeed = await readSidecarSeed(path);
|
|
15
15
|
return parseTask(markdown, slugFromPath(path), sidecarSeed, path);
|
|
16
16
|
}
|
|
17
|
+
/** The task's declared twins, read WITHOUT requiring criteria (F-1074).
|
|
18
|
+
* `taskSchema` demands at least one criterion, and `pome checks add` needs the
|
|
19
|
+
* twin list BEFORE it has written one. Reuses this module's own section
|
|
20
|
+
* splitter and config schema, so it is not a second parser. */
|
|
21
|
+
export function readConfigTwins(markdown) {
|
|
22
|
+
const configText = splitSections(markdown).get("config") ?? "";
|
|
23
|
+
const config = configText.trim()
|
|
24
|
+
? taskConfigSchema.parse(parseFencedYaml(configText))
|
|
25
|
+
: taskConfigSchema.parse({});
|
|
26
|
+
return config.twins;
|
|
27
|
+
}
|
|
17
28
|
export function parseTask(markdown, slug = "scenario", sidecarSeed, taskPath) {
|
|
18
29
|
const title = markdown.match(/^#\s+(.+)$/m)?.[1]?.trim() ?? slug;
|
|
19
30
|
const sections = splitSections(markdown);
|
|
@@ -491,9 +491,9 @@ export declare const seedStateSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
491
491
|
context: z.ZodDefault<z.ZodString>;
|
|
492
492
|
state: z.ZodDefault<z.ZodEnum<{
|
|
493
493
|
error: "error";
|
|
494
|
-
success: "success";
|
|
495
494
|
failure: "failure";
|
|
496
495
|
pending: "pending";
|
|
496
|
+
success: "success";
|
|
497
497
|
}>>;
|
|
498
498
|
description: z.ZodDefault<z.ZodString>;
|
|
499
499
|
}, z.core.$strip>>>;
|
|
@@ -964,9 +964,9 @@ export declare const seedEnvelopeSchema: z.ZodRecord<z.ZodString, z.ZodUnion<rea
|
|
|
964
964
|
context: z.ZodDefault<z.ZodString>;
|
|
965
965
|
state: z.ZodDefault<z.ZodEnum<{
|
|
966
966
|
error: "error";
|
|
967
|
-
success: "success";
|
|
968
967
|
failure: "failure";
|
|
969
968
|
pending: "pending";
|
|
969
|
+
success: "success";
|
|
970
970
|
}>>;
|
|
971
971
|
description: z.ZodDefault<z.ZodString>;
|
|
972
972
|
}, z.core.$strip>>>;
|
|
@@ -1459,9 +1459,9 @@ export declare const taskSchema: z.ZodObject<{
|
|
|
1459
1459
|
context: z.ZodDefault<z.ZodString>;
|
|
1460
1460
|
state: z.ZodDefault<z.ZodEnum<{
|
|
1461
1461
|
error: "error";
|
|
1462
|
-
success: "success";
|
|
1463
1462
|
failure: "failure";
|
|
1464
1463
|
pending: "pending";
|
|
1464
|
+
success: "success";
|
|
1465
1465
|
}>>;
|
|
1466
1466
|
description: z.ZodDefault<z.ZodString>;
|
|
1467
1467
|
}, z.core.$strip>>>;
|
|
@@ -1931,9 +1931,9 @@ export declare const taskSchema: z.ZodObject<{
|
|
|
1931
1931
|
context: z.ZodDefault<z.ZodString>;
|
|
1932
1932
|
state: z.ZodDefault<z.ZodEnum<{
|
|
1933
1933
|
error: "error";
|
|
1934
|
-
success: "success";
|
|
1935
1934
|
failure: "failure";
|
|
1936
1935
|
pending: "pending";
|
|
1936
|
+
success: "success";
|
|
1937
1937
|
}>>;
|
|
1938
1938
|
description: z.ZodDefault<z.ZodString>;
|
|
1939
1939
|
}, z.core.$strip>>>;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
export type CheckPolarity = "positive" | "negative";
|
|
2
|
+
export declare const VACUITY_SENTINEL = "pome-vacuity-never";
|
|
3
|
+
export declare const VACUITY_SENTINEL_SNAKE = "pome_vacuity_never";
|
|
4
|
+
export declare const VACUITY_SENTINEL_NUMBER = 987654321;
|
|
5
|
+
export type CheckSubstrateKind = "final" | "seed+final" | "tape";
|
|
6
|
+
export interface CheckParamType {
|
|
7
|
+
readonly name: string;
|
|
8
|
+
readonly pattern: string;
|
|
9
|
+
readonly example: string;
|
|
10
|
+
render(value: string): string;
|
|
11
|
+
parse(raw: string): string;
|
|
12
|
+
}
|
|
13
|
+
export declare const repoRef: CheckParamType;
|
|
14
|
+
export declare function oneOf(name: string, values: readonly string[], example?: string): CheckParamType;
|
|
15
|
+
export interface CheckOutcome {
|
|
16
|
+
passed: boolean;
|
|
17
|
+
reason: string;
|
|
18
|
+
status?: "passed" | "failed" | "unmatched" | "skipped";
|
|
19
|
+
}
|
|
20
|
+
export interface CheckSubstrate<TState> {
|
|
21
|
+
seed: TState | null;
|
|
22
|
+
final: TState;
|
|
23
|
+
}
|
|
24
|
+
export interface CheckDefinition<TState, TArgs extends Record<string, string>> {
|
|
25
|
+
id: string;
|
|
26
|
+
description: string;
|
|
27
|
+
template: string;
|
|
28
|
+
params: {
|
|
29
|
+
[K in keyof TArgs]: CheckParamType;
|
|
30
|
+
};
|
|
31
|
+
substrate: CheckSubstrateKind;
|
|
32
|
+
polarity(args: TArgs): CheckPolarity;
|
|
33
|
+
subject?(args: TArgs): string | null;
|
|
34
|
+
vacuityMutant(args: TArgs): TArgs | null;
|
|
35
|
+
evaluate(args: TArgs, substrate: CheckSubstrate<TState>): CheckOutcome;
|
|
36
|
+
}
|
|
37
|
+
export declare function templateSlots(template: string): {
|
|
38
|
+
literals: string[];
|
|
39
|
+
params: string[];
|
|
40
|
+
};
|
|
41
|
+
type ArgsOfParams<TParams extends Record<string, CheckParamType>> = {
|
|
42
|
+
[K in keyof TParams]: string;
|
|
43
|
+
};
|
|
44
|
+
export declare function defineCheck<TState, TParams extends Record<string, CheckParamType>>(def: Omit<CheckDefinition<TState, ArgsOfParams<TParams>>, "params"> & {
|
|
45
|
+
params: TParams;
|
|
46
|
+
}): CheckDefinition<TState, ArgsOfParams<TParams>>;
|
|
47
|
+
export declare function renderCheck<TState, TArgs extends Record<string, string>>(def: CheckDefinition<TState, TArgs>, args: TArgs): string;
|
|
48
|
+
export interface CheckBindingShape {
|
|
49
|
+
readonly id: string;
|
|
50
|
+
readonly template: string;
|
|
51
|
+
readonly substrate: CheckSubstrateKind;
|
|
52
|
+
readonly params: Readonly<Record<string, CheckParamType>>;
|
|
53
|
+
}
|
|
54
|
+
export declare function checkPattern(def: CheckBindingShape): RegExp;
|
|
55
|
+
export declare function checksDigest(defs: readonly CheckBindingShape[]): string;
|
|
56
|
+
export declare function checkNearMissPattern(def: CheckBindingShape): RegExp;
|
|
57
|
+
export declare function parseCheck<TState, TArgs extends Record<string, string>>(def: CheckDefinition<TState, TArgs>, text: string): TArgs | null;
|
|
58
|
+
export {};
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
//
|
|
3
|
+
// The assertable check vocabulary (F-1073, milestone A2b).
|
|
4
|
+
//
|
|
5
|
+
// Position 2: the author selects a typed check and the system RENDERS the
|
|
6
|
+
// English. Binding cannot fail, because the sentence is what the check
|
|
7
|
+
// produced. That is why there is no `pattern` field here — the matcher is
|
|
8
|
+
// GENERATED from `template`, so a declaration and its regex cannot drift
|
|
9
|
+
// apart, and an author can neither write nor break one.
|
|
10
|
+
//
|
|
11
|
+
// This module is twin-agnostic. Each twin declares its own checks next to the
|
|
12
|
+
// state they read (`packages/twin-<x>/src/checks.ts`), because the twin owns
|
|
13
|
+
// that state's shape; pome-cloud imports those declarations from npm and
|
|
14
|
+
// adapts them onto its existing predicate engine. There is no second copy to
|
|
15
|
+
// reconcile — the drift gate's job is catching a pin that fell behind, not
|
|
16
|
+
// reconciling two hand-maintained vocabularies.
|
|
17
|
+
import { createHash } from "node:crypto";
|
|
18
|
+
// The values a `vacuityMutant` substitutes to falsify a check's scanned
|
|
19
|
+
// literal. They live here, not in the consumer that probes with them, because
|
|
20
|
+
// the declaration WRITES them and the probe RECOGNISES them — two copies of one
|
|
21
|
+
// fact is the defect this vocabulary exists to remove, and the failure mode of a
|
|
22
|
+
// skew is silent: the probe stops recognising its own mutants and every check
|
|
23
|
+
// reads as un-probed.
|
|
24
|
+
//
|
|
25
|
+
// Three forms because a slot's type has to accept the substitution or the mutant
|
|
26
|
+
// cannot re-bind, and a check that stops matching its own pattern evaluates to
|
|
27
|
+
// `unmatched`, which reads as "the verdict moved" and blesses the very criterion
|
|
28
|
+
// the probe exists to catch.
|
|
29
|
+
export const VACUITY_SENTINEL = "pome-vacuity-never";
|
|
30
|
+
export const VACUITY_SENTINEL_SNAKE = "pome_vacuity_never";
|
|
31
|
+
export const VACUITY_SENTINEL_NUMBER = 987654321;
|
|
32
|
+
// `owner/name`. Deliberately narrow, and it must NOT accept a bare repo name:
|
|
33
|
+
// a sentence with a malformed repo has to be reported as the corrupted
|
|
34
|
+
// template instance it is, rather than quietly parsing into a lookup that then
|
|
35
|
+
// fails for an unrelated-looking reason.
|
|
36
|
+
export const repoRef = {
|
|
37
|
+
name: "repo",
|
|
38
|
+
pattern: "[A-Za-z0-9_.-]+/[A-Za-z0-9_.-]+",
|
|
39
|
+
example: "acme/api",
|
|
40
|
+
render: (value) => value,
|
|
41
|
+
parse: (raw) => raw,
|
|
42
|
+
};
|
|
43
|
+
// A slot whose value comes from a CLOSED set — an issue's `open`/`closed`, a
|
|
44
|
+
// review's `APPROVED`/`CHANGES_REQUESTED`, a commit status's four states.
|
|
45
|
+
//
|
|
46
|
+
// F-1075. The legacy regexes spelled these inline as `(open|closed)`, which
|
|
47
|
+
// worked but put the closed set somewhere no authoring surface could read. As a
|
|
48
|
+
// param type the set travels with the declaration: `pome checks` prints it, the
|
|
49
|
+
// picker offers it, and a value outside it is a corrupted instance rather than
|
|
50
|
+
// a lookup that quietly finds nothing.
|
|
51
|
+
//
|
|
52
|
+
// Non-capturing on purpose — see `defineCheck`'s group assertion. The values are
|
|
53
|
+
// escaped because a set member is a LITERAL, never a sub-pattern; `not merged`
|
|
54
|
+
// carrying a space is fine, and a member carrying `.` must not become `any`.
|
|
55
|
+
export function oneOf(name, values, example) {
|
|
56
|
+
if (values.length === 0)
|
|
57
|
+
throw new Error(`param type ${name}: oneOf needs at least one value`);
|
|
58
|
+
return {
|
|
59
|
+
name,
|
|
60
|
+
pattern: `(?:${values.map(escapeLiteral).join("|")})`,
|
|
61
|
+
example: example ?? values[0],
|
|
62
|
+
render: (value) => value,
|
|
63
|
+
parse: (raw) => raw,
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
// How many capture groups a param type's pattern opens on its own. Must be
|
|
67
|
+
// zero: `checkPattern` wraps exactly one group per slot and every consumer reads
|
|
68
|
+
// group i+1 as slot i, so a type that smuggles in its own group shifts every
|
|
69
|
+
// later slot by one and silently hands each predicate its neighbour's argument.
|
|
70
|
+
//
|
|
71
|
+
// The `|` trick: appending an empty alternative makes the pattern match "" no
|
|
72
|
+
// matter what it is, so the result array is always non-null and its length is
|
|
73
|
+
// 1 + the group count.
|
|
74
|
+
function captureGroupCount(source) {
|
|
75
|
+
return new RegExp(`${source}|`).exec("").length - 1;
|
|
76
|
+
}
|
|
77
|
+
const SLOT_RE = /\{([a-z][a-z0-9_]*)\}/g;
|
|
78
|
+
// Splits "a {x} b" into { literals: ["a ", " b"], params: ["x"] }.
|
|
79
|
+
// `literals.length` is always `params.length + 1`, which is what lets the
|
|
80
|
+
// pattern builder interleave them without a special case for either end.
|
|
81
|
+
export function templateSlots(template) {
|
|
82
|
+
const literals = [];
|
|
83
|
+
const params = [];
|
|
84
|
+
let cursor = 0;
|
|
85
|
+
for (const match of template.matchAll(SLOT_RE)) {
|
|
86
|
+
literals.push(template.slice(cursor, match.index));
|
|
87
|
+
params.push(match[1]);
|
|
88
|
+
cursor = match.index + match[0].length;
|
|
89
|
+
}
|
|
90
|
+
literals.push(template.slice(cursor));
|
|
91
|
+
return { literals, params };
|
|
92
|
+
}
|
|
93
|
+
function escapeLiteral(literal) {
|
|
94
|
+
return literal.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
95
|
+
}
|
|
96
|
+
// Validates a declaration at module load, so a broken check cannot ship: a
|
|
97
|
+
// slot with no type, a type no slot uses, or a repeated slot are all authoring
|
|
98
|
+
// mistakes that would otherwise surface as a check that silently binds nothing.
|
|
99
|
+
export function defineCheck(def) {
|
|
100
|
+
const { params } = templateSlots(def.template);
|
|
101
|
+
const seen = new Set();
|
|
102
|
+
for (const param of params) {
|
|
103
|
+
if (seen.has(param)) {
|
|
104
|
+
throw new Error(`check ${def.id}: duplicate template slot {${param}}`);
|
|
105
|
+
}
|
|
106
|
+
seen.add(param);
|
|
107
|
+
if (!def.params[param]) {
|
|
108
|
+
throw new Error(`check ${def.id}: template slot {${param}} has no declared param type`);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
for (const declared of Object.keys(def.params)) {
|
|
112
|
+
if (!seen.has(declared)) {
|
|
113
|
+
throw new Error(`check ${def.id}: declared param \`${declared}\` is not used by the template`);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
// F-1074 — a param type whose own example violates its own pattern would put
|
|
117
|
+
// an invalid value in front of an author as the suggested one.
|
|
118
|
+
for (const [name, type] of Object.entries(def.params)) {
|
|
119
|
+
const paramType = type;
|
|
120
|
+
if (!new RegExp(`^${paramType.pattern}$`).test(paramType.example)) {
|
|
121
|
+
throw new Error(`check ${def.id}: param \`${name}\` example ${JSON.stringify(paramType.example)} ` +
|
|
122
|
+
`does not match its own pattern /${paramType.pattern}/`);
|
|
123
|
+
}
|
|
124
|
+
// F-1075 — the failure this prevents is silent and total. Every consumer
|
|
125
|
+
// reads capture group i+1 as template slot i (`parseCheck` here,
|
|
126
|
+
// `argsFromMatch` in the cloud's adapter); one extra group inside a param's
|
|
127
|
+
// pattern shifts all of them, so each predicate is handed its neighbour's
|
|
128
|
+
// argument and grades a sentence nobody wrote. Cheap to assert, invisible
|
|
129
|
+
// to debug — `oneOf` is non-capturing for exactly this reason.
|
|
130
|
+
const groups = captureGroupCount(paramType.pattern);
|
|
131
|
+
if (groups > 0) {
|
|
132
|
+
throw new Error(`check ${def.id}: param \`${name}\` pattern /${paramType.pattern}/ opens ${groups} ` +
|
|
133
|
+
`capture group(s). Slot patterns must be group-free — use (?:…) — or every ` +
|
|
134
|
+
`slot after this one binds the wrong value.`);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
return def;
|
|
138
|
+
}
|
|
139
|
+
export function renderCheck(def, args) {
|
|
140
|
+
const { literals, params } = templateSlots(def.template);
|
|
141
|
+
let rendered = literals[0];
|
|
142
|
+
params.forEach((param, index) => {
|
|
143
|
+
const type = def.params[param];
|
|
144
|
+
rendered += type.render(args[param]) + literals[index + 1];
|
|
145
|
+
});
|
|
146
|
+
return rendered;
|
|
147
|
+
}
|
|
148
|
+
function buildPattern(template, slotSource) {
|
|
149
|
+
const { literals, params } = templateSlots(template);
|
|
150
|
+
let source = `^${escapeLiteral(literals[0])}`;
|
|
151
|
+
params.forEach((_param, index) => {
|
|
152
|
+
source += `(${slotSource(index)})${escapeLiteral(literals[index + 1])}`;
|
|
153
|
+
});
|
|
154
|
+
// Case-SENSITIVE and anchored on purpose. Any text this matches must
|
|
155
|
+
// re-render byte-identically, which makes the render→parse→render round trip
|
|
156
|
+
// a property of the generator rather than a condition to re-test at run time.
|
|
157
|
+
return new RegExp(`${source}$`);
|
|
158
|
+
}
|
|
159
|
+
export function checkPattern(def) {
|
|
160
|
+
const { params } = templateSlots(def.template);
|
|
161
|
+
return buildPattern(def.template, (index) => def.params[params[index]].pattern);
|
|
162
|
+
}
|
|
163
|
+
// One implementation, called by BOTH the control plane and the CLI (F-1074).
|
|
164
|
+
// They resolve declarations from independent npm pins and must be able to prove
|
|
165
|
+
// they agree before an author writes a sentence; two implementations of "hash
|
|
166
|
+
// the binding surface" would be the same two-representations-of-one-fact defect
|
|
167
|
+
// this vocabulary exists to remove, one level down — a sort or key-order
|
|
168
|
+
// difference would make every pin look skewed, or a real skew look equal.
|
|
169
|
+
//
|
|
170
|
+
// `description` and `example` are deliberately NOT hashed. This digest gates an
|
|
171
|
+
// author's write, and a prose edit changes no sentence.
|
|
172
|
+
export function checksDigest(defs) {
|
|
173
|
+
const rows = defs
|
|
174
|
+
.map((def) => ({
|
|
175
|
+
id: def.id,
|
|
176
|
+
substrate: def.substrate,
|
|
177
|
+
// The compiled source, not the template: this also catches a change in
|
|
178
|
+
// `buildPattern` itself, which comparing templates would miss.
|
|
179
|
+
pattern: checkPattern(def).source,
|
|
180
|
+
}))
|
|
181
|
+
.sort((a, b) => (a.id < b.id ? -1 : a.id > b.id ? 1 : 0));
|
|
182
|
+
return `sha256:${createHash("sha256").update(JSON.stringify(rows), "utf8").digest("hex")}`;
|
|
183
|
+
}
|
|
184
|
+
// The literal segments intact, every slot wide open. A text matching THIS and
|
|
185
|
+
// not `checkPattern` is a corrupted instance of this check: it says the
|
|
186
|
+
// check's sentence but fills a slot with something the slot's type rejects.
|
|
187
|
+
// A text that fails this too is a stranger, and stays on the unmatched path —
|
|
188
|
+
// which is what keeps this gate off the legacy phrases that resemble nothing.
|
|
189
|
+
export function checkNearMissPattern(def) {
|
|
190
|
+
return buildPattern(def.template, () => ".+?");
|
|
191
|
+
}
|
|
192
|
+
export function parseCheck(def, text) {
|
|
193
|
+
const matched = text.trim().match(checkPattern(def));
|
|
194
|
+
if (!matched)
|
|
195
|
+
return null;
|
|
196
|
+
const { params } = templateSlots(def.template);
|
|
197
|
+
const args = {};
|
|
198
|
+
params.forEach((param, index) => {
|
|
199
|
+
args[param] = def.params[param].parse(matched[index + 1]);
|
|
200
|
+
});
|
|
201
|
+
return args;
|
|
202
|
+
}
|
|
203
|
+
//# sourceMappingURL=checks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checks.js","sourceRoot":"","sources":["../src/checks.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pome-sh/sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Twin engine for Pome digital twins — defineTwin() + serve(): HTTP mounting, bearer auth, trace recorder, MCP dispatch, SQLite-backed state.",
|
|
5
5
|
"private": false,
|
|
6
6
|
"type": "module",
|
|
@@ -18,6 +18,10 @@
|
|
|
18
18
|
"./parity": {
|
|
19
19
|
"types": "./dist/parity.d.ts",
|
|
20
20
|
"default": "./dist/parity.js"
|
|
21
|
+
},
|
|
22
|
+
"./checks": {
|
|
23
|
+
"types": "./dist/checks.d.ts",
|
|
24
|
+
"default": "./dist/checks.js"
|
|
21
25
|
}
|
|
22
26
|
},
|
|
23
27
|
"publishConfig": {
|
|
@@ -36,8 +40,8 @@
|
|
|
36
40
|
"dist"
|
|
37
41
|
],
|
|
38
42
|
"dependencies": {
|
|
39
|
-
"@pome-sh/shared-types": "0.12.
|
|
40
|
-
"hono": "^4.12.
|
|
43
|
+
"@pome-sh/shared-types": "0.12.2",
|
|
44
|
+
"hono": "^4.12.31",
|
|
41
45
|
"zod": "^4.1.13"
|
|
42
46
|
},
|
|
43
47
|
"peerDependencies": {
|
|
@@ -12,18 +12,18 @@ export declare function githubAccessControlPayload(): {
|
|
|
12
12
|
tool: string;
|
|
13
13
|
operation: string;
|
|
14
14
|
method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE";
|
|
15
|
-
category: "
|
|
15
|
+
category: "collaborators" | "labels" | "issues" | "pull_requests" | "milestones" | "issue_comments" | "branches_files" | "commits_diffs" | "status_checks" | "tags_releases";
|
|
16
16
|
default_allowed: boolean;
|
|
17
17
|
v2: boolean;
|
|
18
18
|
}[];
|
|
19
19
|
categories: {
|
|
20
|
-
category: "
|
|
20
|
+
category: "collaborators" | "labels" | "issues" | "pull_requests" | "milestones" | "issue_comments" | "branches_files" | "commits_diffs" | "status_checks" | "tags_releases";
|
|
21
21
|
label: string;
|
|
22
22
|
endpoints: {
|
|
23
23
|
tool: string;
|
|
24
24
|
operation: string;
|
|
25
25
|
method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE";
|
|
26
|
-
category: "
|
|
26
|
+
category: "collaborators" | "labels" | "issues" | "pull_requests" | "milestones" | "issue_comments" | "branches_files" | "commits_diffs" | "status_checks" | "tags_releases";
|
|
27
27
|
default_allowed: boolean;
|
|
28
28
|
v2: boolean;
|
|
29
29
|
}[];
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { Check } from "./check-kind.js";
|
|
2
|
+
export declare const issueExists: Check<{
|
|
3
|
+
issue: string;
|
|
4
|
+
repo: string;
|
|
5
|
+
}>;
|
|
6
|
+
export declare const issueStateCheck: Check<{
|
|
7
|
+
issue: string;
|
|
8
|
+
repo: string;
|
|
9
|
+
state: string;
|
|
10
|
+
}>;
|
|
11
|
+
export declare const issueHasLabel: Check<{
|
|
12
|
+
issue: string;
|
|
13
|
+
repo: string;
|
|
14
|
+
label: string;
|
|
15
|
+
}>;
|
|
16
|
+
export declare const issueExactlyOneLabel: Check<{
|
|
17
|
+
issue: string;
|
|
18
|
+
repo: string;
|
|
19
|
+
label: string;
|
|
20
|
+
}>;
|
|
21
|
+
export declare const issueAssignee: Check<{
|
|
22
|
+
issue: string;
|
|
23
|
+
repo: string;
|
|
24
|
+
login: string;
|
|
25
|
+
}>;
|
|
26
|
+
export declare const issueCommentContains: Check<{
|
|
27
|
+
needle: string;
|
|
28
|
+
issue: string;
|
|
29
|
+
repo: string;
|
|
30
|
+
}>;
|