@ixo/decision-oracle 0.0.0-stage → 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 +794 -2
- package/dist/act.d.ts +87 -0
- package/dist/act.d.ts.map +1 -0
- package/dist/act.js +20 -0
- package/dist/act.js.map +1 -0
- package/dist/app.d.ts +22 -0
- package/dist/app.d.ts.map +1 -0
- package/dist/app.js +128 -0
- package/dist/app.js.map +1 -0
- package/dist/c2pa.wasm +0 -0
- package/dist/cli/commands/api.d.ts +50 -0
- package/dist/cli/commands/api.d.ts.map +1 -0
- package/dist/cli/commands/api.js +737 -0
- package/dist/cli/commands/api.js.map +1 -0
- package/dist/cli/commands/create-collection.d.ts +40 -0
- package/dist/cli/commands/create-collection.d.ts.map +1 -0
- package/dist/cli/commands/create-collection.js +318 -0
- package/dist/cli/commands/create-collection.js.map +1 -0
- package/dist/cli/commands/create-deed.d.ts +31 -0
- package/dist/cli/commands/create-deed.d.ts.map +1 -0
- package/dist/cli/commands/create-deed.js +208 -0
- package/dist/cli/commands/create-deed.js.map +1 -0
- package/dist/cli/commands/delegation.d.ts +26 -0
- package/dist/cli/commands/delegation.d.ts.map +1 -0
- package/dist/cli/commands/delegation.js +162 -0
- package/dist/cli/commands/delegation.js.map +1 -0
- package/dist/cli/commands/derive.d.ts +22 -0
- package/dist/cli/commands/derive.d.ts.map +1 -0
- package/dist/cli/commands/derive.js +53 -0
- package/dist/cli/commands/derive.js.map +1 -0
- package/dist/cli/commands/engine.d.ts +25 -0
- package/dist/cli/commands/engine.d.ts.map +1 -0
- package/dist/cli/commands/engine.js +107 -0
- package/dist/cli/commands/engine.js.map +1 -0
- package/dist/cli/commands/erase.d.ts +17 -0
- package/dist/cli/commands/erase.d.ts.map +1 -0
- package/dist/cli/commands/erase.js +117 -0
- package/dist/cli/commands/erase.js.map +1 -0
- package/dist/cli/commands/facts-run.d.ts +30 -0
- package/dist/cli/commands/facts-run.d.ts.map +1 -0
- package/dist/cli/commands/facts-run.js +409 -0
- package/dist/cli/commands/facts-run.js.map +1 -0
- package/dist/cli/commands/facts-scaffold.d.ts +22 -0
- package/dist/cli/commands/facts-scaffold.d.ts.map +1 -0
- package/dist/cli/commands/facts-scaffold.js +208 -0
- package/dist/cli/commands/facts-scaffold.js.map +1 -0
- package/dist/cli/commands/init.d.ts +18 -0
- package/dist/cli/commands/init.d.ts.map +1 -0
- package/dist/cli/commands/init.js +34 -0
- package/dist/cli/commands/init.js.map +1 -0
- package/dist/cli/commands/login.d.ts +9 -0
- package/dist/cli/commands/login.d.ts.map +1 -0
- package/dist/cli/commands/login.js +16 -0
- package/dist/cli/commands/login.js.map +1 -0
- package/dist/cli/commands/logout.d.ts +10 -0
- package/dist/cli/commands/logout.d.ts.map +1 -0
- package/dist/cli/commands/logout.js +28 -0
- package/dist/cli/commands/logout.js.map +1 -0
- package/dist/cli/commands/manifest.d.ts +12 -0
- package/dist/cli/commands/manifest.d.ts.map +1 -0
- package/dist/cli/commands/manifest.js +48 -0
- package/dist/cli/commands/manifest.js.map +1 -0
- package/dist/cli/commands/oracle-init.d.ts +48 -0
- package/dist/cli/commands/oracle-init.d.ts.map +1 -0
- package/dist/cli/commands/oracle-init.js +1122 -0
- package/dist/cli/commands/oracle-init.js.map +1 -0
- package/dist/cli/commands/org.d.ts +28 -0
- package/dist/cli/commands/org.d.ts.map +1 -0
- package/dist/cli/commands/org.js +309 -0
- package/dist/cli/commands/org.js.map +1 -0
- package/dist/cli/commands/protocol-review.d.ts +20 -0
- package/dist/cli/commands/protocol-review.d.ts.map +1 -0
- package/dist/cli/commands/protocol-review.js +162 -0
- package/dist/cli/commands/protocol-review.js.map +1 -0
- package/dist/cli/commands/publish-protocol.d.ts +43 -0
- package/dist/cli/commands/publish-protocol.d.ts.map +1 -0
- package/dist/cli/commands/publish-protocol.js +345 -0
- package/dist/cli/commands/publish-protocol.js.map +1 -0
- package/dist/cli/commands/register.d.ts +16 -0
- package/dist/cli/commands/register.d.ts.map +1 -0
- package/dist/cli/commands/register.js +54 -0
- package/dist/cli/commands/register.js.map +1 -0
- package/dist/cli/commands/relink.d.ts +11 -0
- package/dist/cli/commands/relink.d.ts.map +1 -0
- package/dist/cli/commands/relink.js +36 -0
- package/dist/cli/commands/relink.js.map +1 -0
- package/dist/cli/commands/rubric-fetch-form.d.ts +16 -0
- package/dist/cli/commands/rubric-fetch-form.d.ts.map +1 -0
- package/dist/cli/commands/rubric-fetch-form.js +83 -0
- package/dist/cli/commands/rubric-fetch-form.js.map +1 -0
- package/dist/cli/commands/rubric-validate.d.ts +72 -0
- package/dist/cli/commands/rubric-validate.d.ts.map +1 -0
- package/dist/cli/commands/rubric-validate.js +163 -0
- package/dist/cli/commands/rubric-validate.js.map +1 -0
- package/dist/cli/commands/scan.d.ts +13 -0
- package/dist/cli/commands/scan.d.ts.map +1 -0
- package/dist/cli/commands/scan.js +39 -0
- package/dist/cli/commands/scan.js.map +1 -0
- package/dist/cli/commands/skills.d.ts +11 -0
- package/dist/cli/commands/skills.d.ts.map +1 -0
- package/dist/cli/commands/skills.js +19 -0
- package/dist/cli/commands/skills.js.map +1 -0
- package/dist/cli/commands/submit-claim.d.ts +25 -0
- package/dist/cli/commands/submit-claim.d.ts.map +1 -0
- package/dist/cli/commands/submit-claim.js +155 -0
- package/dist/cli/commands/submit-claim.js.map +1 -0
- package/dist/cli/index.d.ts +15 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +206 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/lib/agent-card-schema.d.ts +8 -0
- package/dist/cli/lib/agent-card-schema.d.ts.map +1 -0
- package/dist/cli/lib/agent-card-schema.js +169 -0
- package/dist/cli/lib/agent-card-schema.js.map +1 -0
- package/dist/cli/lib/ai-rest.d.ts +12 -0
- package/dist/cli/lib/ai-rest.d.ts.map +1 -0
- package/dist/cli/lib/ai-rest.js +36 -0
- package/dist/cli/lib/ai-rest.js.map +1 -0
- package/dist/cli/lib/args.d.ts +33 -0
- package/dist/cli/lib/args.d.ts.map +1 -0
- package/dist/cli/lib/args.js +24 -0
- package/dist/cli/lib/args.js.map +1 -0
- package/dist/cli/lib/authhub.d.ts +7 -0
- package/dist/cli/lib/authhub.d.ts.map +1 -0
- package/dist/cli/lib/authhub.js +210 -0
- package/dist/cli/lib/authhub.js.map +1 -0
- package/dist/cli/lib/chain.d.ts +264 -0
- package/dist/cli/lib/chain.d.ts.map +1 -0
- package/dist/cli/lib/chain.js +584 -0
- package/dist/cli/lib/chain.js.map +1 -0
- package/dist/cli/lib/devvars.d.ts +59 -0
- package/dist/cli/lib/devvars.d.ts.map +1 -0
- package/dist/cli/lib/devvars.js +206 -0
- package/dist/cli/lib/devvars.js.map +1 -0
- package/dist/cli/lib/engine.d.ts +54 -0
- package/dist/cli/lib/engine.d.ts.map +1 -0
- package/dist/cli/lib/engine.js +112 -0
- package/dist/cli/lib/engine.js.map +1 -0
- package/dist/cli/lib/identity-cards.d.ts +188 -0
- package/dist/cli/lib/identity-cards.d.ts.map +1 -0
- package/dist/cli/lib/identity-cards.js +261 -0
- package/dist/cli/lib/identity-cards.js.map +1 -0
- package/dist/cli/lib/matrix-account.d.ts +79 -0
- package/dist/cli/lib/matrix-account.d.ts.map +1 -0
- package/dist/cli/lib/matrix-account.js +228 -0
- package/dist/cli/lib/matrix-account.js.map +1 -0
- package/dist/cli/lib/oracle-account.d.ts +108 -0
- package/dist/cli/lib/oracle-account.d.ts.map +1 -0
- package/dist/cli/lib/oracle-account.js +207 -0
- package/dist/cli/lib/oracle-account.js.map +1 -0
- package/dist/cli/lib/project.d.ts +22 -0
- package/dist/cli/lib/project.d.ts.map +1 -0
- package/dist/cli/lib/project.js +62 -0
- package/dist/cli/lib/project.js.map +1 -0
- package/dist/cli/lib/session.d.ts +109 -0
- package/dist/cli/lib/session.d.ts.map +1 -0
- package/dist/cli/lib/session.js +354 -0
- package/dist/cli/lib/session.js.map +1 -0
- package/dist/cli/lib/workorder.d.ts +57 -0
- package/dist/cli/lib/workorder.d.ts.map +1 -0
- package/dist/cli/lib/workorder.js +101 -0
- package/dist/cli/lib/workorder.js.map +1 -0
- package/dist/config.d.ts +221 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +431 -0
- package/dist/config.js.map +1 -0
- package/dist/context.d.ts +88 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +9 -0
- package/dist/context.js.map +1 -0
- package/dist/contracts/api.d.ts +3367 -0
- package/dist/contracts/api.d.ts.map +1 -0
- package/dist/contracts/api.js +1303 -0
- package/dist/contracts/api.js.map +1 -0
- package/dist/contracts/capabilities.d.ts +126 -0
- package/dist/contracts/capabilities.d.ts.map +1 -0
- package/dist/contracts/capabilities.js +164 -0
- package/dist/contracts/capabilities.js.map +1 -0
- package/dist/contracts/claim-source.d.ts +98 -0
- package/dist/contracts/claim-source.d.ts.map +1 -0
- package/dist/contracts/claim-source.js +17 -0
- package/dist/contracts/claim-source.js.map +1 -0
- package/dist/contracts/errors.d.ts +150 -0
- package/dist/contracts/errors.d.ts.map +1 -0
- package/dist/contracts/errors.js +121 -0
- package/dist/contracts/errors.js.map +1 -0
- package/dist/contracts/index.d.ts +15 -0
- package/dist/contracts/index.d.ts.map +1 -0
- package/dist/contracts/index.js +11 -0
- package/dist/contracts/index.js.map +1 -0
- package/dist/contracts/payment-gate.d.ts +129 -0
- package/dist/contracts/payment-gate.d.ts.map +1 -0
- package/dist/contracts/payment-gate.js +24 -0
- package/dist/contracts/payment-gate.js.map +1 -0
- package/dist/contracts/start-api-claim.d.ts +90 -0
- package/dist/contracts/start-api-claim.d.ts.map +1 -0
- package/dist/contracts/start-api-claim.js +22 -0
- package/dist/contracts/start-api-claim.js.map +1 -0
- package/dist/contracts/webhooks.d.ts +1487 -0
- package/dist/contracts/webhooks.d.ts.map +1 -0
- package/dist/contracts/webhooks.js +71 -0
- package/dist/contracts/webhooks.js.map +1 -0
- package/dist/contracts/work-order.d.ts +29 -0
- package/dist/contracts/work-order.d.ts.map +1 -0
- package/dist/contracts/work-order.js +12 -0
- package/dist/contracts/work-order.js.map +1 -0
- package/dist/cron/ai-cost.d.ts +29 -0
- package/dist/cron/ai-cost.d.ts.map +1 -0
- package/dist/cron/ai-cost.js +80 -0
- package/dist/cron/ai-cost.js.map +1 -0
- package/dist/cron/api-lane.d.ts +39 -0
- package/dist/cron/api-lane.d.ts.map +1 -0
- package/dist/cron/api-lane.js +203 -0
- package/dist/cron/api-lane.js.map +1 -0
- package/dist/cron/backlog.d.ts +50 -0
- package/dist/cron/backlog.d.ts.map +1 -0
- package/dist/cron/backlog.js +115 -0
- package/dist/cron/backlog.js.map +1 -0
- package/dist/cron/billing.d.ts +11 -0
- package/dist/cron/billing.d.ts.map +1 -0
- package/dist/cron/billing.js +69 -0
- package/dist/cron/billing.js.map +1 -0
- package/dist/cron/collection.d.ts +50 -0
- package/dist/cron/collection.d.ts.map +1 -0
- package/dist/cron/collection.js +118 -0
- package/dist/cron/collection.js.map +1 -0
- package/dist/cron/funding.d.ts +16 -0
- package/dist/cron/funding.d.ts.map +1 -0
- package/dist/cron/funding.js +262 -0
- package/dist/cron/funding.js.map +1 -0
- package/dist/cron/payer-billing.d.ts +38 -0
- package/dist/cron/payer-billing.d.ts.map +1 -0
- package/dist/cron/payer-billing.js +119 -0
- package/dist/cron/payer-billing.js.map +1 -0
- package/dist/cron/scan.d.ts +43 -0
- package/dist/cron/scan.d.ts.map +1 -0
- package/dist/cron/scan.js +250 -0
- package/dist/cron/scan.js.map +1 -0
- package/dist/db/client.d.ts +14 -0
- package/dist/db/client.d.ts.map +1 -0
- package/dist/db/client.js +14 -0
- package/dist/db/client.js.map +1 -0
- package/dist/db/index.d.ts +7 -0
- package/dist/db/index.d.ts.map +1 -0
- package/dist/db/index.js +7 -0
- package/dist/db/index.js.map +1 -0
- package/dist/db/schema.d.ts +6738 -0
- package/dist/db/schema.d.ts.map +1 -0
- package/dist/db/schema.js +1433 -0
- package/dist/db/schema.js.map +1 -0
- package/dist/define-oracle.d.ts +32 -0
- package/dist/define-oracle.d.ts.map +1 -0
- package/dist/define-oracle.js +80 -0
- package/dist/define-oracle.js.map +1 -0
- package/dist/dev-oracle.d.ts +9 -0
- package/dist/dev-oracle.d.ts.map +1 -0
- package/dist/dev-oracle.js +19 -0
- package/dist/dev-oracle.js.map +1 -0
- package/dist/dev-worker.d.ts +10 -0
- package/dist/dev-worker.d.ts.map +1 -0
- package/dist/dev-worker.js +12 -0
- package/dist/dev-worker.js.map +1 -0
- package/dist/env.d.ts +146 -0
- package/dist/env.d.ts.map +1 -0
- package/dist/env.js +10 -0
- package/dist/env.js.map +1 -0
- package/dist/facts/exif.d.ts +43 -0
- package/dist/facts/exif.d.ts.map +1 -0
- package/dist/facts/exif.js +224 -0
- package/dist/facts/exif.js.map +1 -0
- package/dist/facts/fact.d.ts +62 -0
- package/dist/facts/fact.d.ts.map +1 -0
- package/dist/facts/fact.js +105 -0
- package/dist/facts/fact.js.map +1 -0
- package/dist/facts/geo.d.ts +55 -0
- package/dist/facts/geo.d.ts.map +1 -0
- package/dist/facts/geo.js +267 -0
- package/dist/facts/geo.js.map +1 -0
- package/dist/facts/index.d.ts +31 -0
- package/dist/facts/index.d.ts.map +1 -0
- package/dist/facts/index.js +27 -0
- package/dist/facts/index.js.map +1 -0
- package/dist/facts/linked-doc.d.ts +60 -0
- package/dist/facts/linked-doc.d.ts.map +1 -0
- package/dist/facts/linked-doc.js +101 -0
- package/dist/facts/linked-doc.js.map +1 -0
- package/dist/facts/types.d.ts +278 -0
- package/dist/facts/types.d.ts.map +1 -0
- package/dist/facts/types.js +19 -0
- package/dist/facts/types.js.map +1 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/api-lane/accept.d.ts +29 -0
- package/dist/lib/api-lane/accept.d.ts.map +1 -0
- package/dist/lib/api-lane/accept.js +218 -0
- package/dist/lib/api-lane/accept.js.map +1 -0
- package/dist/lib/api-lane/claim-list.d.ts +44 -0
- package/dist/lib/api-lane/claim-list.d.ts.map +1 -0
- package/dist/lib/api-lane/claim-list.js +92 -0
- package/dist/lib/api-lane/claim-list.js.map +1 -0
- package/dist/lib/api-lane/company.d.ts +56 -0
- package/dist/lib/api-lane/company.d.ts.map +1 -0
- package/dist/lib/api-lane/company.js +103 -0
- package/dist/lib/api-lane/company.js.map +1 -0
- package/dist/lib/api-lane/events.d.ts +21 -0
- package/dist/lib/api-lane/events.d.ts.map +1 -0
- package/dist/lib/api-lane/events.js +111 -0
- package/dist/lib/api-lane/events.js.map +1 -0
- package/dist/lib/api-lane/ids.d.ts +39 -0
- package/dist/lib/api-lane/ids.d.ts.map +1 -0
- package/dist/lib/api-lane/ids.js +78 -0
- package/dist/lib/api-lane/ids.js.map +1 -0
- package/dist/lib/api-lane/index.d.ts +16 -0
- package/dist/lib/api-lane/index.d.ts.map +1 -0
- package/dist/lib/api-lane/index.js +16 -0
- package/dist/lib/api-lane/index.js.map +1 -0
- package/dist/lib/api-lane/linked.d.ts +264 -0
- package/dist/lib/api-lane/linked.d.ts.map +1 -0
- package/dist/lib/api-lane/linked.js +272 -0
- package/dist/lib/api-lane/linked.js.map +1 -0
- package/dist/lib/api-lane/media-type.d.ts +15 -0
- package/dist/lib/api-lane/media-type.d.ts.map +1 -0
- package/dist/lib/api-lane/media-type.js +73 -0
- package/dist/lib/api-lane/media-type.js.map +1 -0
- package/dist/lib/api-lane/member-emails.d.ts +83 -0
- package/dist/lib/api-lane/member-emails.d.ts.map +1 -0
- package/dist/lib/api-lane/member-emails.js +213 -0
- package/dist/lib/api-lane/member-emails.js.map +1 -0
- package/dist/lib/api-lane/members.d.ts +42 -0
- package/dist/lib/api-lane/members.d.ts.map +1 -0
- package/dist/lib/api-lane/members.js +75 -0
- package/dist/lib/api-lane/members.js.map +1 -0
- package/dist/lib/api-lane/notify.d.ts +47 -0
- package/dist/lib/api-lane/notify.d.ts.map +1 -0
- package/dist/lib/api-lane/notify.js +240 -0
- package/dist/lib/api-lane/notify.js.map +1 -0
- package/dist/lib/api-lane/pause.d.ts +41 -0
- package/dist/lib/api-lane/pause.d.ts.map +1 -0
- package/dist/lib/api-lane/pause.js +155 -0
- package/dist/lib/api-lane/pause.js.map +1 -0
- package/dist/lib/api-lane/record.d.ts +76 -0
- package/dist/lib/api-lane/record.d.ts.map +1 -0
- package/dist/lib/api-lane/record.js +337 -0
- package/dist/lib/api-lane/record.js.map +1 -0
- package/dist/lib/api-lane/retention.d.ts +43 -0
- package/dist/lib/api-lane/retention.d.ts.map +1 -0
- package/dist/lib/api-lane/retention.js +176 -0
- package/dist/lib/api-lane/retention.js.map +1 -0
- package/dist/lib/api-lane/review.d.ts +76 -0
- package/dist/lib/api-lane/review.d.ts.map +1 -0
- package/dist/lib/api-lane/review.js +355 -0
- package/dist/lib/api-lane/review.js.map +1 -0
- package/dist/lib/api-lane/reviewers.d.ts +109 -0
- package/dist/lib/api-lane/reviewers.d.ts.map +1 -0
- package/dist/lib/api-lane/reviewers.js +755 -0
- package/dist/lib/api-lane/reviewers.js.map +1 -0
- package/dist/lib/api-lane/source-delete.d.ts +16 -0
- package/dist/lib/api-lane/source-delete.d.ts.map +1 -0
- package/dist/lib/api-lane/source-delete.js +50 -0
- package/dist/lib/api-lane/source-delete.js.map +1 -0
- package/dist/lib/api-lane/source.d.ts +19 -0
- package/dist/lib/api-lane/source.d.ts.map +1 -0
- package/dist/lib/api-lane/source.js +226 -0
- package/dist/lib/api-lane/source.js.map +1 -0
- package/dist/lib/api-lane/submitter.d.ts +22 -0
- package/dist/lib/api-lane/submitter.d.ts.map +1 -0
- package/dist/lib/api-lane/submitter.js +34 -0
- package/dist/lib/api-lane/submitter.js.map +1 -0
- package/dist/lib/api-lane/timeline.d.ts +20 -0
- package/dist/lib/api-lane/timeline.d.ts.map +1 -0
- package/dist/lib/api-lane/timeline.js +23 -0
- package/dist/lib/api-lane/timeline.js.map +1 -0
- package/dist/lib/api-lane/webhook-crypto.d.ts +44 -0
- package/dist/lib/api-lane/webhook-crypto.d.ts.map +1 -0
- package/dist/lib/api-lane/webhook-crypto.js +103 -0
- package/dist/lib/api-lane/webhook-crypto.js.map +1 -0
- package/dist/lib/api-lane/webhooks.d.ts +117 -0
- package/dist/lib/api-lane/webhooks.d.ts.map +1 -0
- package/dist/lib/api-lane/webhooks.js +503 -0
- package/dist/lib/api-lane/webhooks.js.map +1 -0
- package/dist/lib/archive.d.ts +64 -0
- package/dist/lib/archive.d.ts.map +1 -0
- package/dist/lib/archive.js +305 -0
- package/dist/lib/archive.js.map +1 -0
- package/dist/lib/bech32.d.ts +8 -0
- package/dist/lib/bech32.d.ts.map +1 -0
- package/dist/lib/bech32.js +39 -0
- package/dist/lib/bech32.js.map +1 -0
- package/dist/lib/claim-erase.d.ts +22 -0
- package/dist/lib/claim-erase.d.ts.map +1 -0
- package/dist/lib/claim-erase.js +44 -0
- package/dist/lib/claim-erase.js.map +1 -0
- package/dist/lib/cursor.d.ts +11 -0
- package/dist/lib/cursor.d.ts.map +1 -0
- package/dist/lib/cursor.js +20 -0
- package/dist/lib/cursor.js.map +1 -0
- package/dist/lib/email/send.d.ts +43 -0
- package/dist/lib/email/send.d.ts.map +1 -0
- package/dist/lib/email/send.js +71 -0
- package/dist/lib/email/send.js.map +1 -0
- package/dist/lib/email/template.d.ts +217 -0
- package/dist/lib/email/template.d.ts.map +1 -0
- package/dist/lib/email/template.js +713 -0
- package/dist/lib/email/template.js.map +1 -0
- package/dist/lib/engine/adr36.d.ts +56 -0
- package/dist/lib/engine/adr36.d.ts.map +1 -0
- package/dist/lib/engine/adr36.js +76 -0
- package/dist/lib/engine/adr36.js.map +1 -0
- package/dist/lib/engine/client.d.ts +162 -0
- package/dist/lib/engine/client.d.ts.map +1 -0
- package/dist/lib/engine/client.js +473 -0
- package/dist/lib/engine/client.js.map +1 -0
- package/dist/lib/engine/types.d.ts +1356 -0
- package/dist/lib/engine/types.d.ts.map +1 -0
- package/dist/lib/engine/types.js +562 -0
- package/dist/lib/engine/types.js.map +1 -0
- package/dist/lib/errors.d.ts +73 -0
- package/dist/lib/errors.d.ts.map +1 -0
- package/dist/lib/errors.js +96 -0
- package/dist/lib/errors.js.map +1 -0
- package/dist/lib/facts/builder.d.ts +88 -0
- package/dist/lib/facts/builder.d.ts.map +1 -0
- package/dist/lib/facts/builder.js +239 -0
- package/dist/lib/facts/builder.js.map +1 -0
- package/dist/lib/facts/ctx.d.ts +34 -0
- package/dist/lib/facts/ctx.d.ts.map +1 -0
- package/dist/lib/facts/ctx.js +51 -0
- package/dist/lib/facts/ctx.js.map +1 -0
- package/dist/lib/facts/expected.d.ts +23 -0
- package/dist/lib/facts/expected.d.ts.map +1 -0
- package/dist/lib/facts/expected.js +16 -0
- package/dist/lib/facts/expected.js.map +1 -0
- package/dist/lib/facts/fact-cache.d.ts +469 -0
- package/dist/lib/facts/fact-cache.d.ts.map +1 -0
- package/dist/lib/facts/fact-cache.js +52 -0
- package/dist/lib/facts/fact-cache.js.map +1 -0
- package/dist/lib/facts/factset.d.ts +608 -0
- package/dist/lib/facts/factset.d.ts.map +1 -0
- package/dist/lib/facts/factset.js +226 -0
- package/dist/lib/facts/factset.js.map +1 -0
- package/dist/lib/facts/producer.d.ts +190 -0
- package/dist/lib/facts/producer.d.ts.map +1 -0
- package/dist/lib/facts/producer.js +15 -0
- package/dist/lib/facts/producer.js.map +1 -0
- package/dist/lib/facts/runner.d.ts +111 -0
- package/dist/lib/facts/runner.d.ts.map +1 -0
- package/dist/lib/facts/runner.js +438 -0
- package/dist/lib/facts/runner.js.map +1 -0
- package/dist/lib/facts/stock/ai-check.d.ts +100 -0
- package/dist/lib/facts/stock/ai-check.d.ts.map +1 -0
- package/dist/lib/facts/stock/ai-check.js +526 -0
- package/dist/lib/facts/stock/ai-check.js.map +1 -0
- package/dist/lib/facts/stock/ai-inputs.d.ts +104 -0
- package/dist/lib/facts/stock/ai-inputs.d.ts.map +1 -0
- package/dist/lib/facts/stock/ai-inputs.js +332 -0
- package/dist/lib/facts/stock/ai-inputs.js.map +1 -0
- package/dist/lib/facts/stock/ai-provider.d.ts +105 -0
- package/dist/lib/facts/stock/ai-provider.d.ts.map +1 -0
- package/dist/lib/facts/stock/ai-provider.js +250 -0
- package/dist/lib/facts/stock/ai-provider.js.map +1 -0
- package/dist/lib/facts/stock/ai-unique.d.ts +85 -0
- package/dist/lib/facts/stock/ai-unique.d.ts.map +1 -0
- package/dist/lib/facts/stock/ai-unique.js +208 -0
- package/dist/lib/facts/stock/ai-unique.js.map +1 -0
- package/dist/lib/facts/stock/archive.d.ts +63 -0
- package/dist/lib/facts/stock/archive.d.ts.map +1 -0
- package/dist/lib/facts/stock/archive.js +349 -0
- package/dist/lib/facts/stock/archive.js.map +1 -0
- package/dist/lib/facts/stock/c2pa-trust-list.d.ts +16 -0
- package/dist/lib/facts/stock/c2pa-trust-list.d.ts.map +1 -0
- package/dist/lib/facts/stock/c2pa-trust-list.js +637 -0
- package/dist/lib/facts/stock/c2pa-trust-list.js.map +1 -0
- package/dist/lib/facts/stock/c2pa.d.ts +56 -0
- package/dist/lib/facts/stock/c2pa.d.ts.map +1 -0
- package/dist/lib/facts/stock/c2pa.js +234 -0
- package/dist/lib/facts/stock/c2pa.js.map +1 -0
- package/dist/lib/facts/stock/call.d.ts +91 -0
- package/dist/lib/facts/stock/call.d.ts.map +1 -0
- package/dist/lib/facts/stock/call.js +281 -0
- package/dist/lib/facts/stock/call.js.map +1 -0
- package/dist/lib/facts/stock/capability.d.ts +39 -0
- package/dist/lib/facts/stock/capability.d.ts.map +1 -0
- package/dist/lib/facts/stock/capability.js +59 -0
- package/dist/lib/facts/stock/capability.js.map +1 -0
- package/dist/lib/facts/stock/ext-source.d.ts +51 -0
- package/dist/lib/facts/stock/ext-source.d.ts.map +1 -0
- package/dist/lib/facts/stock/ext-source.js +201 -0
- package/dist/lib/facts/stock/ext-source.js.map +1 -0
- package/dist/lib/facts/stock/frequency-fact.d.ts +59 -0
- package/dist/lib/facts/stock/frequency-fact.d.ts.map +1 -0
- package/dist/lib/facts/stock/frequency-fact.js +86 -0
- package/dist/lib/facts/stock/frequency-fact.js.map +1 -0
- package/dist/lib/facts/stock/frequency.d.ts +32 -0
- package/dist/lib/facts/stock/frequency.d.ts.map +1 -0
- package/dist/lib/facts/stock/frequency.js +48 -0
- package/dist/lib/facts/stock/frequency.js.map +1 -0
- package/dist/lib/facts/stock/index.d.ts +27 -0
- package/dist/lib/facts/stock/index.d.ts.map +1 -0
- package/dist/lib/facts/stock/index.js +28 -0
- package/dist/lib/facts/stock/index.js.map +1 -0
- package/dist/lib/facts/stock/normalize.d.ts +45 -0
- package/dist/lib/facts/stock/normalize.d.ts.map +1 -0
- package/dist/lib/facts/stock/normalize.js +135 -0
- package/dist/lib/facts/stock/normalize.js.map +1 -0
- package/dist/lib/facts/stock/phash.d.ts +55 -0
- package/dist/lib/facts/stock/phash.d.ts.map +1 -0
- package/dist/lib/facts/stock/phash.js +256 -0
- package/dist/lib/facts/stock/phash.js.map +1 -0
- package/dist/lib/facts/stock/rule-defaults.d.ts +72 -0
- package/dist/lib/facts/stock/rule-defaults.d.ts.map +1 -0
- package/dist/lib/facts/stock/rule-defaults.js +55 -0
- package/dist/lib/facts/stock/rule-defaults.js.map +1 -0
- package/dist/lib/facts/stock/send.d.ts +52 -0
- package/dist/lib/facts/stock/send.d.ts.map +1 -0
- package/dist/lib/facts/stock/send.js +148 -0
- package/dist/lib/facts/stock/send.js.map +1 -0
- package/dist/lib/facts/stock/unique-score.d.ts +138 -0
- package/dist/lib/facts/stock/unique-score.d.ts.map +1 -0
- package/dist/lib/facts/stock/unique-score.js +257 -0
- package/dist/lib/facts/stock/unique-score.js.map +1 -0
- package/dist/lib/facts/stock/unique-store.d.ts +420 -0
- package/dist/lib/facts/stock/unique-store.d.ts.map +1 -0
- package/dist/lib/facts/stock/unique-store.js +328 -0
- package/dist/lib/facts/stock/unique-store.js.map +1 -0
- package/dist/lib/facts/stock/unique.d.ts +35 -0
- package/dist/lib/facts/stock/unique.d.ts.map +1 -0
- package/dist/lib/facts/stock/unique.js +327 -0
- package/dist/lib/facts/stock/unique.js.map +1 -0
- package/dist/lib/facts/tools.d.ts +57 -0
- package/dist/lib/facts/tools.d.ts.map +1 -0
- package/dist/lib/facts/tools.js +325 -0
- package/dist/lib/facts/tools.js.map +1 -0
- package/dist/lib/facts/validate.d.ts +33 -0
- package/dist/lib/facts/validate.d.ts.map +1 -0
- package/dist/lib/facts/validate.js +137 -0
- package/dist/lib/facts/validate.js.map +1 -0
- package/dist/lib/hash.d.ts +44 -0
- package/dist/lib/hash.d.ts.map +1 -0
- package/dist/lib/hash.js +80 -0
- package/dist/lib/hash.js.map +1 -0
- package/dist/lib/http/client.d.ts +113 -0
- package/dist/lib/http/client.d.ts.map +1 -0
- package/dist/lib/http/client.js +330 -0
- package/dist/lib/http/client.js.map +1 -0
- package/dist/lib/ids.d.ts +17 -0
- package/dist/lib/ids.d.ts.map +1 -0
- package/dist/lib/ids.js +26 -0
- package/dist/lib/ids.js.map +1 -0
- package/dist/lib/ixo/attachments.d.ts +116 -0
- package/dist/lib/ixo/attachments.d.ts.map +1 -0
- package/dist/lib/ixo/attachments.js +290 -0
- package/dist/lib/ixo/attachments.js.map +1 -0
- package/dist/lib/ixo/authz.d.ts +40 -0
- package/dist/lib/ixo/authz.d.ts.map +1 -0
- package/dist/lib/ixo/authz.js +113 -0
- package/dist/lib/ixo/authz.js.map +1 -0
- package/dist/lib/ixo/blocksync/index.d.ts +90 -0
- package/dist/lib/ixo/blocksync/index.d.ts.map +1 -0
- package/dist/lib/ixo/blocksync/index.js +251 -0
- package/dist/lib/ixo/blocksync/index.js.map +1 -0
- package/dist/lib/ixo/blocksync/queries.d.ts +15 -0
- package/dist/lib/ixo/blocksync/queries.d.ts.map +1 -0
- package/dist/lib/ixo/blocksync/queries.js +144 -0
- package/dist/lib/ixo/blocksync/queries.js.map +1 -0
- package/dist/lib/ixo/blocksync/types.d.ts +184 -0
- package/dist/lib/ixo/blocksync/types.d.ts.map +1 -0
- package/dist/lib/ixo/blocksync/types.js +108 -0
- package/dist/lib/ixo/blocksync/types.js.map +1 -0
- package/dist/lib/ixo/cellnode.d.ts +35 -0
- package/dist/lib/ixo/cellnode.d.ts.map +1 -0
- package/dist/lib/ixo/cellnode.js +43 -0
- package/dist/lib/ixo/cellnode.js.map +1 -0
- package/dist/lib/ixo/chain-write.d.ts +130 -0
- package/dist/lib/ixo/chain-write.d.ts.map +1 -0
- package/dist/lib/ixo/chain-write.js +460 -0
- package/dist/lib/ixo/chain-write.js.map +1 -0
- package/dist/lib/ixo/chain.d.ts +1046 -0
- package/dist/lib/ixo/chain.d.ts.map +1 -0
- package/dist/lib/ixo/chain.js +279 -0
- package/dist/lib/ixo/chain.js.map +1 -0
- package/dist/lib/ixo/claim-bot.d.ts +49 -0
- package/dist/lib/ixo/claim-bot.d.ts.map +1 -0
- package/dist/lib/ixo/claim-bot.js +141 -0
- package/dist/lib/ixo/claim-bot.js.map +1 -0
- package/dist/lib/ixo/delegation-verify.d.ts +44 -0
- package/dist/lib/ixo/delegation-verify.d.ts.map +1 -0
- package/dist/lib/ixo/delegation-verify.js +101 -0
- package/dist/lib/ixo/delegation-verify.js.map +1 -0
- package/dist/lib/ixo/did.d.ts +13 -0
- package/dist/lib/ixo/did.d.ts.map +1 -0
- package/dist/lib/ixo/did.js +85 -0
- package/dist/lib/ixo/did.js.map +1 -0
- package/dist/lib/ixo/grant-chain.d.ts +55 -0
- package/dist/lib/ixo/grant-chain.d.ts.map +1 -0
- package/dist/lib/ixo/grant-chain.js +185 -0
- package/dist/lib/ixo/grant-chain.js.map +1 -0
- package/dist/lib/ixo/identity.d.ts +32 -0
- package/dist/lib/ixo/identity.d.ts.map +1 -0
- package/dist/lib/ixo/identity.js +104 -0
- package/dist/lib/ixo/identity.js.map +1 -0
- package/dist/lib/ixo/index.d.ts +118 -0
- package/dist/lib/ixo/index.d.ts.map +1 -0
- package/dist/lib/ixo/index.js +395 -0
- package/dist/lib/ixo/index.js.map +1 -0
- package/dist/lib/ixo/payment.d.ts +104 -0
- package/dist/lib/ixo/payment.d.ts.map +1 -0
- package/dist/lib/ixo/payment.js +136 -0
- package/dist/lib/ixo/payment.js.map +1 -0
- package/dist/lib/ixo/ucan-store.d.ts +30 -0
- package/dist/lib/ixo/ucan-store.d.ts.map +1 -0
- package/dist/lib/ixo/ucan-store.js +134 -0
- package/dist/lib/ixo/ucan-store.js.map +1 -0
- package/dist/lib/ixo/ucan.d.ts +96 -0
- package/dist/lib/ixo/ucan.d.ts.map +1 -0
- package/dist/lib/ixo/ucan.js +216 -0
- package/dist/lib/ixo/ucan.js.map +1 -0
- package/dist/lib/ixo/verified-read.d.ts +43 -0
- package/dist/lib/ixo/verified-read.d.ts.map +1 -0
- package/dist/lib/ixo/verified-read.js +73 -0
- package/dist/lib/ixo/verified-read.js.map +1 -0
- package/dist/lib/ixo/vfs.d.ts +27 -0
- package/dist/lib/ixo/vfs.d.ts.map +1 -0
- package/dist/lib/ixo/vfs.js +42 -0
- package/dist/lib/ixo/vfs.js.map +1 -0
- package/dist/lib/ixo/web-did.d.ts +7 -0
- package/dist/lib/ixo/web-did.d.ts.map +1 -0
- package/dist/lib/ixo/web-did.js +9 -0
- package/dist/lib/ixo/web-did.js.map +1 -0
- package/dist/lib/logger.d.ts +34 -0
- package/dist/lib/logger.d.ts.map +1 -0
- package/dist/lib/logger.js +126 -0
- package/dist/lib/logger.js.map +1 -0
- package/dist/lib/matrix/api.d.ts +57 -0
- package/dist/lib/matrix/api.d.ts.map +1 -0
- package/dist/lib/matrix/api.js +58 -0
- package/dist/lib/matrix/api.js.map +1 -0
- package/dist/lib/matrix/client.d.ts +41 -0
- package/dist/lib/matrix/client.d.ts.map +1 -0
- package/dist/lib/matrix/client.js +104 -0
- package/dist/lib/matrix/client.js.map +1 -0
- package/dist/lib/matrix/deliver.d.ts +224 -0
- package/dist/lib/matrix/deliver.d.ts.map +1 -0
- package/dist/lib/matrix/deliver.js +788 -0
- package/dist/lib/matrix/deliver.js.map +1 -0
- package/dist/lib/matrix/events.d.ts +114 -0
- package/dist/lib/matrix/events.d.ts.map +1 -0
- package/dist/lib/matrix/events.js +143 -0
- package/dist/lib/matrix/events.js.map +1 -0
- package/dist/lib/matrix/mxid.d.ts +24 -0
- package/dist/lib/matrix/mxid.d.ts.map +1 -0
- package/dist/lib/matrix/mxid.js +47 -0
- package/dist/lib/matrix/mxid.js.map +1 -0
- package/dist/lib/metrics.d.ts +105 -0
- package/dist/lib/metrics.d.ts.map +1 -0
- package/dist/lib/metrics.js +204 -0
- package/dist/lib/metrics.js.map +1 -0
- package/dist/lib/oauth/approvals.d.ts +160 -0
- package/dist/lib/oauth/approvals.d.ts.map +1 -0
- package/dist/lib/oauth/approvals.js +273 -0
- package/dist/lib/oauth/approvals.js.map +1 -0
- package/dist/lib/oauth/standing.d.ts +152 -0
- package/dist/lib/oauth/standing.d.ts.map +1 -0
- package/dist/lib/oauth/standing.js +299 -0
- package/dist/lib/oauth/standing.js.map +1 -0
- package/dist/lib/oauth/token.d.ts +60 -0
- package/dist/lib/oauth/token.d.ts.map +1 -0
- package/dist/lib/oauth/token.js +129 -0
- package/dist/lib/oauth/token.js.map +1 -0
- package/dist/lib/payments/extend.d.ts +42 -0
- package/dist/lib/payments/extend.d.ts.map +1 -0
- package/dist/lib/payments/extend.js +98 -0
- package/dist/lib/payments/extend.js.map +1 -0
- package/dist/lib/payments/facilitator.d.ts +220 -0
- package/dist/lib/payments/facilitator.d.ts.map +1 -0
- package/dist/lib/payments/facilitator.js +451 -0
- package/dist/lib/payments/facilitator.js.map +1 -0
- package/dist/lib/payments/gate.d.ts +207 -0
- package/dist/lib/payments/gate.d.ts.map +1 -0
- package/dist/lib/payments/gate.js +481 -0
- package/dist/lib/payments/gate.js.map +1 -0
- package/dist/lib/payments/header-seal.d.ts +33 -0
- package/dist/lib/payments/header-seal.d.ts.map +1 -0
- package/dist/lib/payments/header-seal.js +76 -0
- package/dist/lib/payments/header-seal.js.map +1 -0
- package/dist/lib/payments/index.d.ts +12 -0
- package/dist/lib/payments/index.d.ts.map +1 -0
- package/dist/lib/payments/index.js +11 -0
- package/dist/lib/payments/index.js.map +1 -0
- package/dist/lib/payments/price.d.ts +25 -0
- package/dist/lib/payments/price.d.ts.map +1 -0
- package/dist/lib/payments/price.js +43 -0
- package/dist/lib/payments/price.js.map +1 -0
- package/dist/lib/payments/reconcile.d.ts +77 -0
- package/dist/lib/payments/reconcile.d.ts.map +1 -0
- package/dist/lib/payments/reconcile.js +317 -0
- package/dist/lib/payments/reconcile.js.map +1 -0
- package/dist/lib/payments/refund.d.ts +34 -0
- package/dist/lib/payments/refund.d.ts.map +1 -0
- package/dist/lib/payments/refund.js +123 -0
- package/dist/lib/payments/refund.js.map +1 -0
- package/dist/lib/payments/review-billing.d.ts +222 -0
- package/dist/lib/payments/review-billing.d.ts.map +1 -0
- package/dist/lib/payments/review-billing.js +609 -0
- package/dist/lib/payments/review-billing.js.map +1 -0
- package/dist/lib/payments/settle.d.ts +44 -0
- package/dist/lib/payments/settle.d.ts.map +1 -0
- package/dist/lib/payments/settle.js +306 -0
- package/dist/lib/payments/settle.js.map +1 -0
- package/dist/lib/payments/terms.d.ts +27 -0
- package/dist/lib/payments/terms.d.ts.map +1 -0
- package/dist/lib/payments/terms.js +21 -0
- package/dist/lib/payments/terms.js.map +1 -0
- package/dist/lib/payouts.d.ts +20 -0
- package/dist/lib/payouts.d.ts.map +1 -0
- package/dist/lib/payouts.js +30 -0
- package/dist/lib/payouts.js.map +1 -0
- package/dist/lib/readiness.d.ts +42 -0
- package/dist/lib/readiness.d.ts.map +1 -0
- package/dist/lib/readiness.js +130 -0
- package/dist/lib/readiness.js.map +1 -0
- package/dist/lib/redact.d.ts +23 -0
- package/dist/lib/redact.d.ts.map +1 -0
- package/dist/lib/redact.js +67 -0
- package/dist/lib/redact.js.map +1 -0
- package/dist/lib/register.d.ts +85 -0
- package/dist/lib/register.d.ts.map +1 -0
- package/dist/lib/register.js +390 -0
- package/dist/lib/register.js.map +1 -0
- package/dist/lib/review/attestation.d.ts +92 -0
- package/dist/lib/review/attestation.d.ts.map +1 -0
- package/dist/lib/review/attestation.js +264 -0
- package/dist/lib/review/attestation.js.map +1 -0
- package/dist/lib/review/reviewer-grant.d.ts +146 -0
- package/dist/lib/review/reviewer-grant.d.ts.map +1 -0
- package/dist/lib/review/reviewer-grant.js +359 -0
- package/dist/lib/review/reviewer-grant.js.map +1 -0
- package/dist/lib/review/tasks.d.ts +18 -0
- package/dist/lib/review/tasks.d.ts.map +1 -0
- package/dist/lib/review/tasks.js +36 -0
- package/dist/lib/review/tasks.js.map +1 -0
- package/dist/lib/sentry.d.ts +89 -0
- package/dist/lib/sentry.d.ts.map +1 -0
- package/dist/lib/sentry.js +284 -0
- package/dist/lib/sentry.js.map +1 -0
- package/dist/lib/spans.d.ts +14 -0
- package/dist/lib/spans.d.ts.map +1 -0
- package/dist/lib/spans.js +28 -0
- package/dist/lib/spans.js.map +1 -0
- package/dist/lib/tracing.d.ts +31 -0
- package/dist/lib/tracing.d.ts.map +1 -0
- package/dist/lib/tracing.js +66 -0
- package/dist/lib/tracing.js.map +1 -0
- package/dist/lib/ttl-cache.d.ts +26 -0
- package/dist/lib/ttl-cache.d.ts.map +1 -0
- package/dist/lib/ttl-cache.js +61 -0
- package/dist/lib/ttl-cache.js.map +1 -0
- package/dist/lib/validator.d.ts +19 -0
- package/dist/lib/validator.d.ts.map +1 -0
- package/dist/lib/validator.js +32 -0
- package/dist/lib/validator.js.map +1 -0
- package/dist/lib/work-order/form.d.ts +40 -0
- package/dist/lib/work-order/form.d.ts.map +1 -0
- package/dist/lib/work-order/form.js +316 -0
- package/dist/lib/work-order/form.js.map +1 -0
- package/dist/lib/work-order/index.d.ts +20 -0
- package/dist/lib/work-order/index.d.ts.map +1 -0
- package/dist/lib/work-order/index.js +66 -0
- package/dist/lib/work-order/index.js.map +1 -0
- package/dist/middleware/api/audit.d.ts +9 -0
- package/dist/middleware/api/audit.d.ts.map +1 -0
- package/dist/middleware/api/audit.js +38 -0
- package/dist/middleware/api/audit.js.map +1 -0
- package/dist/middleware/api/auth.d.ts +29 -0
- package/dist/middleware/api/auth.d.ts.map +1 -0
- package/dist/middleware/api/auth.js +105 -0
- package/dist/middleware/api/auth.js.map +1 -0
- package/dist/middleware/api/console.d.ts +92 -0
- package/dist/middleware/api/console.d.ts.map +1 -0
- package/dist/middleware/api/console.js +446 -0
- package/dist/middleware/api/console.js.map +1 -0
- package/dist/middleware/api/errors.d.ts +48 -0
- package/dist/middleware/api/errors.d.ts.map +1 -0
- package/dist/middleware/api/errors.js +133 -0
- package/dist/middleware/api/errors.js.map +1 -0
- package/dist/middleware/api/idempotency.d.ts +23 -0
- package/dist/middleware/api/idempotency.d.ts.map +1 -0
- package/dist/middleware/api/idempotency.js +158 -0
- package/dist/middleware/api/idempotency.js.map +1 -0
- package/dist/middleware/api/keys.d.ts +14 -0
- package/dist/middleware/api/keys.d.ts.map +1 -0
- package/dist/middleware/api/keys.js +66 -0
- package/dist/middleware/api/keys.js.map +1 -0
- package/dist/middleware/api/membership.d.ts +32 -0
- package/dist/middleware/api/membership.d.ts.map +1 -0
- package/dist/middleware/api/membership.js +48 -0
- package/dist/middleware/api/membership.js.map +1 -0
- package/dist/middleware/api/oauth.d.ts +28 -0
- package/dist/middleware/api/oauth.d.ts.map +1 -0
- package/dist/middleware/api/oauth.js +109 -0
- package/dist/middleware/api/oauth.js.map +1 -0
- package/dist/middleware/api/rate-limit.d.ts +23 -0
- package/dist/middleware/api/rate-limit.d.ts.map +1 -0
- package/dist/middleware/api/rate-limit.js +70 -0
- package/dist/middleware/api/rate-limit.js.map +1 -0
- package/dist/middleware/api/types.d.ts +92 -0
- package/dist/middleware/api/types.d.ts.map +1 -0
- package/dist/middleware/api/types.js +7 -0
- package/dist/middleware/api/types.js.map +1 -0
- package/dist/middleware/api/wait.d.ts +21 -0
- package/dist/middleware/api/wait.d.ts.map +1 -0
- package/dist/middleware/api/wait.js +85 -0
- package/dist/middleware/api/wait.js.map +1 -0
- package/dist/middleware/capability.d.ts +32 -0
- package/dist/middleware/capability.d.ts.map +1 -0
- package/dist/middleware/capability.js +113 -0
- package/dist/middleware/capability.js.map +1 -0
- package/dist/middleware/database.d.ts +14 -0
- package/dist/middleware/database.d.ts.map +1 -0
- package/dist/middleware/database.js +18 -0
- package/dist/middleware/database.js.map +1 -0
- package/dist/middleware/error-handler.d.ts +13 -0
- package/dist/middleware/error-handler.d.ts.map +1 -0
- package/dist/middleware/error-handler.js +127 -0
- package/dist/middleware/error-handler.js.map +1 -0
- package/dist/middleware/observability.d.ts +32 -0
- package/dist/middleware/observability.d.ts.map +1 -0
- package/dist/middleware/observability.js +134 -0
- package/dist/middleware/observability.js.map +1 -0
- package/dist/middleware/rate-limit.d.ts +16 -0
- package/dist/middleware/rate-limit.d.ts.map +1 -0
- package/dist/middleware/rate-limit.js +56 -0
- package/dist/middleware/rate-limit.js.map +1 -0
- package/dist/middleware/ucan-auth.d.ts +39 -0
- package/dist/middleware/ucan-auth.d.ts.map +1 -0
- package/dist/middleware/ucan-auth.js +278 -0
- package/dist/middleware/ucan-auth.js.map +1 -0
- package/dist/networks.d.ts +34 -0
- package/dist/networks.d.ts.map +1 -0
- package/dist/networks.js +49 -0
- package/dist/networks.js.map +1 -0
- package/dist/oracle.d.ts +193 -0
- package/dist/oracle.d.ts.map +1 -0
- package/dist/oracle.js +245 -0
- package/dist/oracle.js.map +1 -0
- package/dist/routes/health.d.ts +16 -0
- package/dist/routes/health.d.ts.map +1 -0
- package/dist/routes/health.js +29 -0
- package/dist/routes/health.js.map +1 -0
- package/dist/routes/v1/admin.d.ts +18 -0
- package/dist/routes/v1/admin.d.ts.map +1 -0
- package/dist/routes/v1/admin.js +101 -0
- package/dist/routes/v1/admin.js.map +1 -0
- package/dist/routes/v1/api/admin-claims.d.ts +14 -0
- package/dist/routes/v1/api/admin-claims.d.ts.map +1 -0
- package/dist/routes/v1/api/admin-claims.js +82 -0
- package/dist/routes/v1/api/admin-claims.js.map +1 -0
- package/dist/routes/v1/api/admin-facilitator.d.ts +20 -0
- package/dist/routes/v1/api/admin-facilitator.d.ts.map +1 -0
- package/dist/routes/v1/api/admin-facilitator.js +64 -0
- package/dist/routes/v1/api/admin-facilitator.js.map +1 -0
- package/dist/routes/v1/api/admin.d.ts +9 -0
- package/dist/routes/v1/api/admin.d.ts.map +1 -0
- package/dist/routes/v1/api/admin.js +110 -0
- package/dist/routes/v1/api/admin.js.map +1 -0
- package/dist/routes/v1/api/audit.d.ts +8 -0
- package/dist/routes/v1/api/audit.d.ts.map +1 -0
- package/dist/routes/v1/api/audit.js +56 -0
- package/dist/routes/v1/api/audit.js.map +1 -0
- package/dist/routes/v1/api/batch.d.ts +17 -0
- package/dist/routes/v1/api/batch.d.ts.map +1 -0
- package/dist/routes/v1/api/batch.js +192 -0
- package/dist/routes/v1/api/batch.js.map +1 -0
- package/dist/routes/v1/api/claims-read.d.ts +43 -0
- package/dist/routes/v1/api/claims-read.d.ts.map +1 -0
- package/dist/routes/v1/api/claims-read.js +123 -0
- package/dist/routes/v1/api/claims-read.js.map +1 -0
- package/dist/routes/v1/api/claims.d.ts +131 -0
- package/dist/routes/v1/api/claims.d.ts.map +1 -0
- package/dist/routes/v1/api/claims.js +407 -0
- package/dist/routes/v1/api/claims.js.map +1 -0
- package/dist/routes/v1/api/collections-link.d.ts +14 -0
- package/dist/routes/v1/api/collections-link.d.ts.map +1 -0
- package/dist/routes/v1/api/collections-link.js +97 -0
- package/dist/routes/v1/api/collections-link.js.map +1 -0
- package/dist/routes/v1/api/export.d.ts +48 -0
- package/dist/routes/v1/api/export.d.ts.map +1 -0
- package/dist/routes/v1/api/export.js +251 -0
- package/dist/routes/v1/api/export.js.map +1 -0
- package/dist/routes/v1/api/index.d.ts +16 -0
- package/dist/routes/v1/api/index.d.ts.map +1 -0
- package/dist/routes/v1/api/index.js +68 -0
- package/dist/routes/v1/api/index.js.map +1 -0
- package/dist/routes/v1/api/keys.d.ts +9 -0
- package/dist/routes/v1/api/keys.d.ts.map +1 -0
- package/dist/routes/v1/api/keys.js +95 -0
- package/dist/routes/v1/api/keys.js.map +1 -0
- package/dist/routes/v1/api/me.d.ts +21 -0
- package/dist/routes/v1/api/me.d.ts.map +1 -0
- package/dist/routes/v1/api/me.js +122 -0
- package/dist/routes/v1/api/me.js.map +1 -0
- package/dist/routes/v1/api/members.d.ts +17 -0
- package/dist/routes/v1/api/members.d.ts.map +1 -0
- package/dist/routes/v1/api/members.js +406 -0
- package/dist/routes/v1/api/members.js.map +1 -0
- package/dist/routes/v1/api/meta.d.ts +12 -0
- package/dist/routes/v1/api/meta.d.ts.map +1 -0
- package/dist/routes/v1/api/meta.js +59 -0
- package/dist/routes/v1/api/meta.js.map +1 -0
- package/dist/routes/v1/api/openapi.gen.d.ts +2 -0
- package/dist/routes/v1/api/openapi.gen.d.ts.map +1 -0
- package/dist/routes/v1/api/openapi.gen.js +7 -0
- package/dist/routes/v1/api/openapi.gen.js.map +1 -0
- package/dist/routes/v1/api/protocols.d.ts +22 -0
- package/dist/routes/v1/api/protocols.d.ts.map +1 -0
- package/dist/routes/v1/api/protocols.js +153 -0
- package/dist/routes/v1/api/protocols.js.map +1 -0
- package/dist/routes/v1/api/review-billing.d.ts +18 -0
- package/dist/routes/v1/api/review-billing.d.ts.map +1 -0
- package/dist/routes/v1/api/review-billing.js +196 -0
- package/dist/routes/v1/api/review-billing.js.map +1 -0
- package/dist/routes/v1/api/review.d.ts +30 -0
- package/dist/routes/v1/api/review.d.ts.map +1 -0
- package/dist/routes/v1/api/review.js +302 -0
- package/dist/routes/v1/api/review.js.map +1 -0
- package/dist/routes/v1/api/sources.d.ts +10 -0
- package/dist/routes/v1/api/sources.d.ts.map +1 -0
- package/dist/routes/v1/api/sources.js +293 -0
- package/dist/routes/v1/api/sources.js.map +1 -0
- package/dist/routes/v1/api/uploads.d.ts +37 -0
- package/dist/routes/v1/api/uploads.d.ts.map +1 -0
- package/dist/routes/v1/api/uploads.js +414 -0
- package/dist/routes/v1/api/uploads.js.map +1 -0
- package/dist/routes/v1/api/views.d.ts +18 -0
- package/dist/routes/v1/api/views.d.ts.map +1 -0
- package/dist/routes/v1/api/views.js +95 -0
- package/dist/routes/v1/api/views.js.map +1 -0
- package/dist/routes/v1/api/webhooks.d.ts +14 -0
- package/dist/routes/v1/api/webhooks.d.ts.map +1 -0
- package/dist/routes/v1/api/webhooks.js +282 -0
- package/dist/routes/v1/api/webhooks.js.map +1 -0
- package/dist/routes/v1/api/work-orders.d.ts +45 -0
- package/dist/routes/v1/api/work-orders.d.ts.map +1 -0
- package/dist/routes/v1/api/work-orders.js +171 -0
- package/dist/routes/v1/api/work-orders.js.map +1 -0
- package/dist/routes/v1/claims.d.ts +21 -0
- package/dist/routes/v1/claims.d.ts.map +1 -0
- package/dist/routes/v1/claims.js +153 -0
- package/dist/routes/v1/claims.js.map +1 -0
- package/dist/routes/v1/collections.d.ts +45 -0
- package/dist/routes/v1/collections.d.ts.map +1 -0
- package/dist/routes/v1/collections.js +201 -0
- package/dist/routes/v1/collections.js.map +1 -0
- package/dist/routes/v1/index.d.ts +13 -0
- package/dist/routes/v1/index.d.ts.map +1 -0
- package/dist/routes/v1/index.js +41 -0
- package/dist/routes/v1/index.js.map +1 -0
- package/dist/routes/v1/info.d.ts +14 -0
- package/dist/routes/v1/info.d.ts.map +1 -0
- package/dist/routes/v1/info.js +75 -0
- package/dist/routes/v1/info.js.map +1 -0
- package/dist/routes/v1/mcp/index.d.ts +33 -0
- package/dist/routes/v1/mcp/index.d.ts.map +1 -0
- package/dist/routes/v1/mcp/index.js +252 -0
- package/dist/routes/v1/mcp/index.js.map +1 -0
- package/dist/routes/v1/mcp/oauth.d.ts +27 -0
- package/dist/routes/v1/mcp/oauth.d.ts.map +1 -0
- package/dist/routes/v1/mcp/oauth.js +500 -0
- package/dist/routes/v1/mcp/oauth.js.map +1 -0
- package/dist/routes/v1/mcp/tools.d.ts +71 -0
- package/dist/routes/v1/mcp/tools.d.ts.map +1 -0
- package/dist/routes/v1/mcp/tools.js +432 -0
- package/dist/routes/v1/mcp/tools.js.map +1 -0
- package/dist/routes/v1/mcp/ui.d.ts +45 -0
- package/dist/routes/v1/mcp/ui.d.ts.map +1 -0
- package/dist/routes/v1/mcp/ui.js +454 -0
- package/dist/routes/v1/mcp/ui.js.map +1 -0
- package/dist/routes/v1/oauth.d.ts +29 -0
- package/dist/routes/v1/oauth.d.ts.map +1 -0
- package/dist/routes/v1/oauth.js +256 -0
- package/dist/routes/v1/oauth.js.map +1 -0
- package/dist/routes/v1/reviewers.d.ts +22 -0
- package/dist/routes/v1/reviewers.d.ts.map +1 -0
- package/dist/routes/v1/reviewers.js +165 -0
- package/dist/routes/v1/reviewers.js.map +1 -0
- package/dist/routes/v1/reviews.d.ts +38 -0
- package/dist/routes/v1/reviews.d.ts.map +1 -0
- package/dist/routes/v1/reviews.js +234 -0
- package/dist/routes/v1/reviews.js.map +1 -0
- package/dist/routes/v1/shared.d.ts +586 -0
- package/dist/routes/v1/shared.d.ts.map +1 -0
- package/dist/routes/v1/shared.js +229 -0
- package/dist/routes/v1/shared.js.map +1 -0
- package/dist/routes/well-known.d.ts +15 -0
- package/dist/routes/well-known.d.ts.map +1 -0
- package/dist/routes/well-known.js +35 -0
- package/dist/routes/well-known.js.map +1 -0
- package/dist/runtime.d.ts +100 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +144 -0
- package/dist/runtime.js.map +1 -0
- package/dist/testing/fake-tools.d.ts +104 -0
- package/dist/testing/fake-tools.d.ts.map +1 -0
- package/dist/testing/fake-tools.js +213 -0
- package/dist/testing/fake-tools.js.map +1 -0
- package/dist/testing/index.d.ts +54 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +104 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/samples.d.ts +70 -0
- package/dist/testing/samples.d.ts.map +1 -0
- package/dist/testing/samples.js +92 -0
- package/dist/testing/samples.js.map +1 -0
- package/dist/workflows/claim-ingest.d.ts +250 -0
- package/dist/workflows/claim-ingest.d.ts.map +1 -0
- package/dist/workflows/claim-ingest.js +1020 -0
- package/dist/workflows/claim-ingest.js.map +1 -0
- package/dist/workflows/claim-source.d.ts +25 -0
- package/dist/workflows/claim-source.d.ts.map +1 -0
- package/dist/workflows/claim-source.js +107 -0
- package/dist/workflows/claim-source.js.map +1 -0
- package/dist/workflows/review-complete.d.ts +82 -0
- package/dist/workflows/review-complete.d.ts.map +1 -0
- package/dist/workflows/review-complete.js +455 -0
- package/dist/workflows/review-complete.js.map +1 -0
- package/dist/workflows/steps.d.ts +125 -0
- package/dist/workflows/steps.d.ts.map +1 -0
- package/dist/workflows/steps.js +325 -0
- package/dist/workflows/steps.js.map +1 -0
- package/docs/api.md +2595 -0
- package/docs/guide.md +1525 -0
- package/migrations/0000_init.sql +108 -0
- package/migrations/0001_review_attestation.sql +1 -0
- package/migrations/0002_decisions_facts.sql +1 -0
- package/migrations/0003_api_lane.sql +171 -0
- package/migrations/0004_api_v1_1.sql +19 -0
- package/migrations/0005_member_notify.sql +3 -0
- package/migrations/0006_source_collections.sql +16 -0
- package/migrations/0007_api_settlement.sql +27 -0
- package/migrations/0008_review_extend.sql +1 -0
- package/migrations/0009_card_refunds.sql +4 -0
- package/migrations/0010_even_scorpion.sql +16 -0
- package/migrations/0011_mcp_oauth.sql +27 -0
- package/migrations/0012_mcp_standing.sql +21 -0
- package/migrations/0013_unknown_krista_starr.sql +2 -0
- package/migrations/0014_last_carnage.sql +14 -0
- package/migrations/0015_company_authority.sql +26 -0
- package/migrations/0016_owner_only_links.sql +6 -0
- package/migrations/0017_organisations.sql +35 -0
- package/migrations/0018_remove_app_signed.sql +4 -0
- package/migrations/0019_submitted_via.sql +2 -0
- package/migrations/0020_drop_decision_to_pay.sql +4 -0
- package/migrations/0021_manual_erase.sql +25 -0
- package/migrations/0022_errored_facts.sql +1 -0
- package/migrations/0023_review_billing.sql +20 -0
- package/migrations/0024_pending_task_details.sql +1 -0
- package/migrations/meta/0000_snapshot.json +707 -0
- package/migrations/meta/0001_snapshot.json +714 -0
- package/migrations/meta/0002_snapshot.json +721 -0
- package/migrations/meta/0003_snapshot.json +1845 -0
- package/migrations/meta/0004_snapshot.json +1969 -0
- package/migrations/meta/0005_snapshot.json +1991 -0
- package/migrations/meta/0006_snapshot.json +2097 -0
- package/migrations/meta/0007_snapshot.json +2128 -0
- package/migrations/meta/0008_snapshot.json +2133 -0
- package/migrations/meta/0009_snapshot.json +2161 -0
- package/migrations/meta/0010_snapshot.json +2265 -0
- package/migrations/meta/0011_snapshot.json +2448 -0
- package/migrations/meta/0012_snapshot.json +2577 -0
- package/migrations/meta/0013_snapshot.json +2594 -0
- package/migrations/meta/0014_snapshot.json +2602 -0
- package/migrations/meta/0015_snapshot.json +2778 -0
- package/migrations/meta/0016_snapshot.json +2778 -0
- package/migrations/meta/0017_snapshot.json +2792 -0
- package/migrations/meta/0018_snapshot.json +2778 -0
- package/migrations/meta/0019_snapshot.json +2792 -0
- package/migrations/meta/0020_snapshot.json +2785 -0
- package/migrations/meta/0021_snapshot.json +2762 -0
- package/migrations/meta/0022_snapshot.json +2769 -0
- package/migrations/meta/0023_snapshot.json +2900 -0
- package/migrations/meta/0024_snapshot.json +2907 -0
- package/migrations/meta/_journal.json +181 -0
- package/openapi/decision-api.yaml +12204 -0
- package/package.json +121 -4
- package/skills/README.md +19 -0
- package/skills/add-openhands-support/SKILL.md +113 -0
- package/skills/create-collection/SKILL.md +199 -0
- package/skills/create-collection/reference/claims-stack.md +106 -0
- package/skills/create-collection/reference/collection.md +111 -0
- package/skills/create-oracle/SKILL.md +400 -0
- package/skills/create-rubric/SKILL.md +130 -0
- package/skills/create-rubric/reference/format-cheatsheet.md +186 -0
- package/skills/create-rubric/templates/claim-form.example.json +60 -0
- package/skills/decision-api-client/SKILL.md +236 -0
- package/skills/decision-api-oracle/SKILL.md +336 -0
- package/skills/publish-protocol/SKILL.md +151 -0
- package/skills/publish-protocol/reference/publishing.md +116 -0
- package/skills/reference/engine-contract.md +222 -0
- package/skills/write-facts/SKILL.md +221 -0
- package/skills/write-facts/reference/examples/http-vendor.ts +88 -0
- package/skills/write-facts/reference/examples/price-matches-agreement.ts +67 -0
- package/skills/write-facts/reference/facts-api.md +232 -0
- package/templates/project/.dev.vars.example +93 -0
- package/templates/project/.editorconfig +9 -0
- package/templates/project/CLAUDE.md +45 -0
- package/templates/project/README.md +199 -0
- package/templates/project/biome.json +37 -0
- package/templates/project/gitignore +29 -0
- package/templates/project/package.json +32 -0
- package/templates/project/src/facts/index.ts +19 -0
- package/templates/project/src/index.ts +25 -0
- package/templates/project/test/api-lane.test.ts +57 -0
- package/templates/project/test/facts.test.ts +14 -0
- package/templates/project/tsconfig.json +25 -0
- package/templates/project/vitest.config.ts +13 -0
- package/templates/project/wrangler.jsonc +446 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "{{name}}",
|
|
3
|
+
"private": true,
|
|
4
|
+
"type": "module",
|
|
5
|
+
"scripts": {
|
|
6
|
+
"dev": "wrangler dev --test-scheduled",
|
|
7
|
+
"deploy": "wrangler deploy",
|
|
8
|
+
"deploy:testnet": "wrangler deploy --env testnet",
|
|
9
|
+
"deploy:production": "wrangler deploy --env production",
|
|
10
|
+
"build": "wrangler deploy --dry-run --outdir dist",
|
|
11
|
+
"cf-typegen": "wrangler types --env-interface Env --include-runtime=false",
|
|
12
|
+
"db:migrate": "wrangler d1 migrations apply {{name}} --local",
|
|
13
|
+
"db:migrate:remote": "wrangler d1 migrations apply {{name}} --remote",
|
|
14
|
+
"test": "vitest run",
|
|
15
|
+
"typecheck": "tsc --noEmit",
|
|
16
|
+
"lint": "biome check .",
|
|
17
|
+
"check": "bun run typecheck && bun run lint && bun run test"
|
|
18
|
+
},
|
|
19
|
+
"dependencies": {
|
|
20
|
+
"@ixo/decision-oracle": "{{packageVersion}}"
|
|
21
|
+
},
|
|
22
|
+
"devDependencies": {
|
|
23
|
+
"@biomejs/biome": "^2.5.3",
|
|
24
|
+
"@cloudflare/workers-types": "^5.20260910.1",
|
|
25
|
+
"typescript": "^7.0.2",
|
|
26
|
+
"vitest": "^4.1.10",
|
|
27
|
+
"wrangler": "^4.146.0"
|
|
28
|
+
},
|
|
29
|
+
"engines": {
|
|
30
|
+
"bun": ">=1.3.0"
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { defineFacts } from "@ixo/decision-oracle/facts";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* How this oracle produces the facts a rubric asks for. List only the names you answer yourself;
|
|
5
|
+
* every other declared source runs the stock lane (a UCAN-signed POST to the declared endpoint)
|
|
6
|
+
* and every other AI check runs OpenRouter with the rubric's own instructions.
|
|
7
|
+
*
|
|
8
|
+
* bunx decision-oracle protocol review <protocol did> — what the rubric declares, and which names need a handler
|
|
9
|
+
* bunx decision-oracle facts scaffold <protocol did> — stubs + tests for those names
|
|
10
|
+
*/
|
|
11
|
+
export const facts = defineFacts({
|
|
12
|
+
ext: {
|
|
13
|
+
// deliveryConfirmed: async ({ send }, tools) => {
|
|
14
|
+
// const res = await tools.http.json(`https://courier.example/deliveries/${send.reference}`);
|
|
15
|
+
// return res.ok && res.body?.status === "delivered";
|
|
16
|
+
// },
|
|
17
|
+
},
|
|
18
|
+
ai: {},
|
|
19
|
+
});
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { defineOracle } from "@ixo/decision-oracle";
|
|
2
|
+
import { facts } from "./facts";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Your oracle. Deployment values (hosts, DIDs, keys) live in wrangler.jsonc vars and .dev.vars —
|
|
6
|
+
* this file is what the oracle IS: its listing, its price, its policies, and how it produces facts.
|
|
7
|
+
*/
|
|
8
|
+
const oracle = defineOracle({
|
|
9
|
+
name: "{{name}}",
|
|
10
|
+
description: "Evaluates claims against the collection's rubric via the IXO decision engine.",
|
|
11
|
+
// The protocol entity DIDs this oracle serves (GET /v1/info; enforced at register). [] ⇒ any.
|
|
12
|
+
supportedProtocols: [],
|
|
13
|
+
// The minimum on-chain evaluation payment a collection must carry (integer base units).
|
|
14
|
+
pricing: { evaluation: { denom: "uixo", minAmount: "1000000" } },
|
|
15
|
+
policies: {
|
|
16
|
+
autoSign: true,
|
|
17
|
+
allowAiChecks: true,
|
|
18
|
+
allowImageChecks: true,
|
|
19
|
+
allowStandingApprovals: false,
|
|
20
|
+
},
|
|
21
|
+
facts,
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
export default oracle;
|
|
25
|
+
export const { ClaimIngest, ReviewComplete, SequenceManagerDO } = oracle;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { afterAll, beforeAll, describe, expect, it } from "vitest";
|
|
2
|
+
import { createTestHarness } from "wrangler";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Boots THIS project's worker — wrangler.jsonc, src/index.ts, the installed package — the way
|
|
6
|
+
* `bun run dev` does, and proves the Decision API lane switch: on, it serves its contract; off
|
|
7
|
+
* (the shipped default), it exposes nothing. None of these routes reaches D1.
|
|
8
|
+
*/
|
|
9
|
+
const lane = (on: boolean) => ({
|
|
10
|
+
workers: [
|
|
11
|
+
{
|
|
12
|
+
configPath: "./wrangler.jsonc",
|
|
13
|
+
vars: { API_LANE: String(on), ORACLE_HOSTNAME: "oracle.test" },
|
|
14
|
+
// The config refuses to start the lane without either.
|
|
15
|
+
secrets: {
|
|
16
|
+
WEBHOOK_ENCRYPTION_KEY: "test-only-webhook-encryption-key",
|
|
17
|
+
UNIQUE_HMAC_KEY: "test-only-unique-hmac-key",
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
],
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
const server = createTestHarness(lane(true));
|
|
24
|
+
|
|
25
|
+
beforeAll(async () => {
|
|
26
|
+
await server.listen();
|
|
27
|
+
}, 60_000);
|
|
28
|
+
|
|
29
|
+
afterAll(async () => {
|
|
30
|
+
await server.close();
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
describe("the Decision API lane", () => {
|
|
34
|
+
it("serves its contract when API_LANE is on", async () => {
|
|
35
|
+
const openapi = await server.fetch("/v1/api/openapi.json");
|
|
36
|
+
expect(openapi.status).toBe(200);
|
|
37
|
+
const doc = (await openapi.json()) as { openapi: string; servers: { url: string }[] };
|
|
38
|
+
expect(doc.openapi).toMatch(/^3\.1/);
|
|
39
|
+
expect(doc.servers[0]?.url).toBe("https://oracle.test");
|
|
40
|
+
|
|
41
|
+
const llms = await server.fetch("/llms.txt");
|
|
42
|
+
expect(llms.status).toBe(200);
|
|
43
|
+
expect(await llms.text()).toContain("https://oracle.test/v1/api/openapi.json");
|
|
44
|
+
|
|
45
|
+
const keys = await server.fetch("/v1/api/keys");
|
|
46
|
+
expect(keys.status).toBe(401);
|
|
47
|
+
expect(await keys.json()).toMatchObject({
|
|
48
|
+
error: { code: "UNAUTHORIZED", requestId: expect.any(String), docsUrl: expect.any(String) },
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
it("exposes nothing when API_LANE is off", async () => {
|
|
53
|
+
await server.update(lane(false));
|
|
54
|
+
expect((await server.fetch("/v1/api/openapi.json")).status).toBe(404);
|
|
55
|
+
expect((await server.fetch("/llms.txt")).status).toBe(404);
|
|
56
|
+
}, 60_000);
|
|
57
|
+
});
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { fakeTools, runFacts, sampleClaim, sampleManifest } from "@ixo/decision-oracle/testing";
|
|
2
|
+
import { describe, expect, it } from "vitest";
|
|
3
|
+
import { facts } from "../src/facts";
|
|
4
|
+
|
|
5
|
+
describe("facts", () => {
|
|
6
|
+
it("produces exactly what the manifest declares", async () => {
|
|
7
|
+
const out = await runFacts(facts, {
|
|
8
|
+
claim: sampleClaim({ reference: "ABC" }),
|
|
9
|
+
manifest: sampleManifest({}),
|
|
10
|
+
tools: fakeTools(),
|
|
11
|
+
});
|
|
12
|
+
expect(out.issues).toEqual([]);
|
|
13
|
+
});
|
|
14
|
+
});
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "ESNext",
|
|
4
|
+
"module": "ESNext",
|
|
5
|
+
"moduleResolution": "Bundler",
|
|
6
|
+
"lib": ["ESNext"],
|
|
7
|
+
"types": ["@cloudflare/workers-types"],
|
|
8
|
+
|
|
9
|
+
"strict": true,
|
|
10
|
+
"noUncheckedIndexedAccess": true,
|
|
11
|
+
"noImplicitOverride": true,
|
|
12
|
+
"noFallthroughCasesInSwitch": true,
|
|
13
|
+
"forceConsistentCasingInFileNames": true,
|
|
14
|
+
|
|
15
|
+
"verbatimModuleSyntax": true,
|
|
16
|
+
"isolatedModules": true,
|
|
17
|
+
"esModuleInterop": true,
|
|
18
|
+
"resolveJsonModule": true,
|
|
19
|
+
"skipLibCheck": true,
|
|
20
|
+
|
|
21
|
+
"noEmit": true
|
|
22
|
+
},
|
|
23
|
+
"include": ["src", "test", "worker-configuration.d.ts"],
|
|
24
|
+
"exclude": ["node_modules", "dist", ".wrangler"]
|
|
25
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { defineConfig } from "vitest/config";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Handler tests are plain node: `runFacts` runs the same runner production does, with fake tools
|
|
5
|
+
* instead of the network — no Worker, no D1, no workers pool to boot. The one worker-level test
|
|
6
|
+
* (test/api-lane.test.ts) boots the real worker from node too, through wrangler's test harness.
|
|
7
|
+
*/
|
|
8
|
+
export default defineConfig({
|
|
9
|
+
test: {
|
|
10
|
+
environment: "node",
|
|
11
|
+
include: ["test/**/*.test.ts"],
|
|
12
|
+
},
|
|
13
|
+
});
|
|
@@ -0,0 +1,446 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "node_modules/wrangler/config-schema.json",
|
|
3
|
+
"name": "{{name}}",
|
|
4
|
+
"main": "src/index.ts",
|
|
5
|
+
"compatibility_date": "2026-07-07",
|
|
6
|
+
"compatibility_flags": ["nodejs_compat"],
|
|
7
|
+
|
|
8
|
+
// The Custom Domain IS the did:web identity — it must equal ORACLE_HOSTNAME below.
|
|
9
|
+
// "routes": [{ "pattern": "<your ORACLE_HOSTNAME>", "custom_domain": true }],
|
|
10
|
+
|
|
11
|
+
// D1 is the oracle's database: the ledger tables the package owns. `migrations_dir` points INTO
|
|
12
|
+
// the installed package — the schema ships with it, you never generate a migration. Create the
|
|
13
|
+
// database once and paste the id here; the placeholder is fine for local dev and tests.
|
|
14
|
+
// wrangler d1 create {{name}} && bun run db:migrate
|
|
15
|
+
"d1_databases": [
|
|
16
|
+
{
|
|
17
|
+
"binding": "DB",
|
|
18
|
+
"database_name": "{{name}}",
|
|
19
|
+
"database_id": "<create with: wrangler d1 create {{name}}>",
|
|
20
|
+
"migrations_dir": "node_modules/@ixo/decision-oracle/migrations"
|
|
21
|
+
}
|
|
22
|
+
],
|
|
23
|
+
|
|
24
|
+
// Without this the deployed bundle is minified and every stack trace points at one anonymous
|
|
25
|
+
// line. Generated and uploaded on `wrangler deploy` only — no cold-start or CPU cost.
|
|
26
|
+
"upload_source_maps": true,
|
|
27
|
+
|
|
28
|
+
// Workers Logs: the structured log stream (Observability → Logs) this oracle's counters and
|
|
29
|
+
// timings ride on. Alerts are configured there.
|
|
30
|
+
"observability": {
|
|
31
|
+
"enabled": true,
|
|
32
|
+
"head_sampling_rate": 1,
|
|
33
|
+
// Workers Traces are optional (docs/guide.md "Traces"): each span is billed as one log event
|
|
34
|
+
// from 2026-10-01. Uncommenting this traces every env that has no `observability` block of its
|
|
35
|
+
// own — uncomment testnet's and production's blocks below too (lower rates) before you do.
|
|
36
|
+
// "traces": { "enabled": true, "head_sampling_rate": 1 },
|
|
37
|
+
"logs": { "enabled": true }
|
|
38
|
+
},
|
|
39
|
+
|
|
40
|
+
// KV: caches only (UCAN principals, peer did:web documents, the engine-registered marker, chain
|
|
41
|
+
// grants, the C2PA trust list). Nothing here is a source of truth — it can be emptied any time.
|
|
42
|
+
// wrangler kv namespace create CACHE_KV
|
|
43
|
+
"kv_namespaces": [
|
|
44
|
+
{
|
|
45
|
+
"binding": "CACHE_KV",
|
|
46
|
+
"id": "<create with: wrangler kv namespace create CACHE_KV>"
|
|
47
|
+
}
|
|
48
|
+
],
|
|
49
|
+
|
|
50
|
+
// A coarse per-IP guard on the whole API — edge-enforced, best-effort. limit/period live HERE,
|
|
51
|
+
// not in code; `period` must be 10 or 60. A no-op in local dev and tests.
|
|
52
|
+
"ratelimits": [
|
|
53
|
+
{
|
|
54
|
+
"name": "API_RATE_LIMITER",
|
|
55
|
+
"namespace_id": "1001",
|
|
56
|
+
"simple": { "limit": 100, "period": 60 }
|
|
57
|
+
},
|
|
58
|
+
// The Decision API lane's per-key / per-source limit — its own namespace, read only when
|
|
59
|
+
// API_LANE is on. Placeholder numbers until you have load-tested your own traffic.
|
|
60
|
+
{
|
|
61
|
+
"name": "API_KEY_RATE_LIMITER",
|
|
62
|
+
"namespace_id": "1002",
|
|
63
|
+
"simple": { "limit": 600, "period": 60 }
|
|
64
|
+
}
|
|
65
|
+
],
|
|
66
|
+
|
|
67
|
+
// R2 for the Decision API lane's uploads — optional: absent means the upload route answers 501
|
|
68
|
+
// and URL attachments still work. Only worth it with API_LANE on.
|
|
69
|
+
// wrangler r2 bucket create {{name}}-uploads
|
|
70
|
+
// "r2_buckets": [{ "binding": "API_UPLOADS", "bucket_name": "{{name}}-uploads" }],
|
|
71
|
+
//
|
|
72
|
+
// R2 for the answer archive — optional: bound means every evaluated ask, answer and photo is kept
|
|
73
|
+
// under <askId>-<title>/ (docs/guide.md, "The answer archive"). It holds exact locations and photos: keep the bucket PRIVATE. Both buckets share
|
|
74
|
+
// the one "r2_buckets" array.
|
|
75
|
+
// wrangler r2 bucket create {{name}}-answers
|
|
76
|
+
// "r2_buckets": [{ "binding": "ANSWERS_ARCHIVE", "bucket_name": "{{name}}-answers" }],
|
|
77
|
+
|
|
78
|
+
// Workers Analytics Engine for p50/p95/p99 and rates — optional: absent means every metric stays
|
|
79
|
+
// a `msg = "metric"` log line only. The dataset is created on first write; one per environment,
|
|
80
|
+
// and a distinct dataset per oracle if you run several on one account. Cloudflare's docs publish
|
|
81
|
+
// no character rule for dataset names, but the name is the table in the SQL API (`FROM <name>`),
|
|
82
|
+
// where a `-` would need quoting in every query — keep to letters, digits and `_`.
|
|
83
|
+
// "analytics_engine_datasets": [{ "binding": "METRICS", "dataset": "eval_oracle_metrics_devnet" }],
|
|
84
|
+
|
|
85
|
+
// Email: pause / resume / review-request notices to a collection's contact address. The sending
|
|
86
|
+
// domain is onboarded once, out of band (`wrangler email sending enable <domain>`); until then
|
|
87
|
+
// the lane logs and skips — a bounced notice never fails a workflow step.
|
|
88
|
+
//
|
|
89
|
+
// NO `remote: true` here, deliberately: this block is what local dev and the test runner read,
|
|
90
|
+
// and a remote binding opens a real proxy session (Cloudflare credentials, one unambiguous
|
|
91
|
+
// account). Local dev simulates instead — a dev run must never email a real customer.
|
|
92
|
+
"send_email": [{ "name": "EMAIL" }],
|
|
93
|
+
|
|
94
|
+
// Durable, checkpointed claim ingestion and review folds. Both classes come from the package and
|
|
95
|
+
// are re-exported by src/index.ts; the runtime instantiates them BY EXPORT, so the names here and
|
|
96
|
+
// the exports there must stay in step. Workflow NAMES are account-global — they carry the project
|
|
97
|
+
// name (and, below, the env) so two oracles in one Cloudflare account never collide.
|
|
98
|
+
"workflows": [
|
|
99
|
+
{
|
|
100
|
+
"name": "{{name}}-claim-ingest",
|
|
101
|
+
"binding": "CLAIM_WORKFLOW",
|
|
102
|
+
"class_name": "ClaimIngest"
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"name": "{{name}}-review-complete",
|
|
106
|
+
"binding": "REVIEW_WORKFLOW",
|
|
107
|
+
"class_name": "ReviewComplete"
|
|
108
|
+
}
|
|
109
|
+
],
|
|
110
|
+
|
|
111
|
+
// The sequence keeper for the `MsgEvaluateClaim` chain write: one instance per signer address,
|
|
112
|
+
// allocating account sequence numbers atomically so concurrent workflow steps signing from the
|
|
113
|
+
// ONE oracle account never race.
|
|
114
|
+
"durable_objects": {
|
|
115
|
+
"bindings": [{ "name": "SEQUENCE_MANAGER", "class_name": "SequenceManagerDO" }]
|
|
116
|
+
},
|
|
117
|
+
"migrations": [
|
|
118
|
+
{
|
|
119
|
+
"tag": "v1",
|
|
120
|
+
"new_sqlite_classes": ["SequenceManagerDO"]
|
|
121
|
+
}
|
|
122
|
+
],
|
|
123
|
+
|
|
124
|
+
// Three triggers, one tier each (the package's cron/scan.ts CRON_TIERS) — keep all three, or that
|
|
125
|
+
// tier's jobs never run: every minute the claim scan, resumes and webhooks; every five minutes
|
|
126
|
+
// the AI-cost backfill and the payment reconcile; hourly housekeeping, reminders and re-checks.
|
|
127
|
+
// Locally crons don't fire on a schedule — run `bun run dev` (it passes --test-scheduled), then
|
|
128
|
+
// `curl "http://localhost:8787/__scheduled?cron=*+*+*+*+*"` (or `*/5+*+*+*+*`, `0+*+*+*+*`).
|
|
129
|
+
"triggers": {
|
|
130
|
+
"crons": ["* * * * *", "*/5 * * * *", "0 * * * *"]
|
|
131
|
+
},
|
|
132
|
+
|
|
133
|
+
// Non-secret runtime config. Secrets go in .dev.vars locally (see .dev.vars.example) and via
|
|
134
|
+
// `wrangler secret put <NAME>` once deployed — never here.
|
|
135
|
+
"vars": {
|
|
136
|
+
"ENVIRONMENT": "development",
|
|
137
|
+
"LOG_LEVEL": "debug",
|
|
138
|
+
"SERVICE_NAME": "{{name}}",
|
|
139
|
+
"SERVICE_VERSION": "0.1.0",
|
|
140
|
+
"CORS_ORIGINS": "*",
|
|
141
|
+
// Watched collections visited per cron tick — raise it for a large fleet.
|
|
142
|
+
"CRON_COLLECTIONS_PER_TICK": "25",
|
|
143
|
+
// Read by the sequence keeper: the minimum gap between two sequence allocations from the
|
|
144
|
+
// oracle account. 1s spaces broadcasts so each tx reaches the mempool before the next signs.
|
|
145
|
+
"IXO_CLIENT_SEQUENCE_MIN_DELAY_MS": "1000",
|
|
146
|
+
|
|
147
|
+
// The network this oracle serves. Every per-network URL (engine, blocksync, matrix, UCAN
|
|
148
|
+
// store, VFS, IPFS gateway, RPC, portal) defaults from it — set one of those vars only to
|
|
149
|
+
// override.
|
|
150
|
+
"IXO_NETWORK": "devnet",
|
|
151
|
+
// The coin (and minimum, integer base units) a collection's on-chain evaluation payment must
|
|
152
|
+
// pay this oracle in — register refuses any other denom (402). It replaces `pricing.evaluation`
|
|
153
|
+
// from `defineOracle`. devnet/testnet: a stand-in coin is fine (`uixo`). mainnet: REQUIRED,
|
|
154
|
+
// and real USDC (see the production env) — the oracle refuses to start without it.
|
|
155
|
+
"EVALUATION_DENOM": "uixo",
|
|
156
|
+
"EVALUATION_MIN_AMOUNT": "1000000",
|
|
157
|
+
|
|
158
|
+
// THIS oracle's did:web host — the audience every inbound UCAN invocation must name, and the
|
|
159
|
+
// issuer of every invocation this oracle mints. It must equal the Custom Domain in `routes`
|
|
160
|
+
// for the env you deploy: callers resolve you by fetching https://<host>/.well-known/did.json.
|
|
161
|
+
"ORACLE_HOSTNAME": "<REPLACE: the host your did:web is served from>",
|
|
162
|
+
|
|
163
|
+
// This oracle's PUBLIC chain identifiers, printed together by `bunx decision-oracle derive`.
|
|
164
|
+
// Config, not credentials: the keys that prove them are secrets (.dev.vars). ORACLE_ADDRESS
|
|
165
|
+
// must be the ORACLE_SECP_MNEMONIC wallet's address — asserted at first use, fails loud.
|
|
166
|
+
"ORACLE_DID": "did:ixo:<REPLACE_WITH_YOUR_ORACLE_ADDRESS>",
|
|
167
|
+
"ORACLE_ADDRESS": "<REPLACE_WITH_YOUR_ORACLE_ADDRESS>",
|
|
168
|
+
"ORACLE_MATRIX_USER_ID": "@did-ixo-<REPLACE_WITH_YOUR_ORACLE_ADDRESS>:devmx.ixo.earth",
|
|
169
|
+
|
|
170
|
+
// The on-chain oracle ENTITY (did:ixo:entity:…, from `bunx decision-oracle oracle init`) — a
|
|
171
|
+
// different DID from ORACLE_DID. The portal resolves this oracle's API from its `#eval`
|
|
172
|
+
// service, so the Matrix review card names it. "" ⇒ unset: the card falls back to ORACLE_DID
|
|
173
|
+
// and a review can only be answered from the portal's claim page, not from chat.
|
|
174
|
+
"ORACLE_ENTITY_DID": "",
|
|
175
|
+
|
|
176
|
+
// The pinned model for AI checks (any provider), and the C2PA
|
|
177
|
+
// image-provenance gate — a cryptographically verified AI-generated manifest fails an AI check
|
|
178
|
+
// outright (fail-safe: it can only ever ADD a rejection).
|
|
179
|
+
"AI_CHECK_MODEL": "openai/gpt-6-luna",
|
|
180
|
+
// AI provider (README "Configuration"): the AI Gateway by default — the `ai` binding plus the
|
|
181
|
+
// gateway's name; OpenRouter instead with AI_PROVIDER=openrouter + the OPENROUTER_API_KEY secret.
|
|
182
|
+
// Local dev has no `ai` binding (it is remote-only: `wrangler dev` would need a login, and the
|
|
183
|
+
// test harness can't run one) — an AI fact here throws "AI binding not configured". To run AI
|
|
184
|
+
// checks locally, add `"ai": { "binding": "AI" }` at this level, or use AI_PROVIDER=openrouter.
|
|
185
|
+
"AI_PROVIDER": "cloudflare",
|
|
186
|
+
// "AI_AUDIO_VIDEO": "false", // audio/video inputs — OpenRouter only
|
|
187
|
+
// "AI_GATEWAY_ID": "<your gateway>",
|
|
188
|
+
"C2PA_IMAGE_CHECK": "true",
|
|
189
|
+
|
|
190
|
+
// Sign `MsgEvaluateClaim` on a terminal verdict automatically. "false" ⇒ decisions are
|
|
191
|
+
// recorded and receipted, but a human submits them from the portal.
|
|
192
|
+
"AUTO_SIGN": "true",
|
|
193
|
+
|
|
194
|
+
// The Decision API lane: paid, off-chain claims over HTTP at /v1/api. Dormant until API_LANE is
|
|
195
|
+
// "true"; with API_PAYMENTS "false" new submits answer 503 payments-disabled, so nothing is
|
|
196
|
+
// ever accepted unpaid. Turning it on also needs the WEBHOOK_ENCRYPTION_KEY secret (see
|
|
197
|
+
// .dev.vars.example) — without it the worker refuses to start. The rest stay commented until
|
|
198
|
+
// you turn the lane on — an empty string fails config validation. Flip it per env below.
|
|
199
|
+
"API_LANE": "false",
|
|
200
|
+
"API_PAYMENTS": "false"
|
|
201
|
+
// "API_PRICE_USD_CENTS": "120",
|
|
202
|
+
// "X402_FACILITATOR_URL": "https://<facilitator host>",
|
|
203
|
+
// "X402_NETWORK": "cosmos:devnet-1",
|
|
204
|
+
// Where your earnings land (your own accounts; each offer's payTo). Unset ⇒ that way to pay is not offered.
|
|
205
|
+
// "EARNINGS_ADDRESS": "ixo1<your account>",
|
|
206
|
+
// "EARNINGS_BASE_WALLET": "0x<your Base wallet>",
|
|
207
|
+
// "BILLING_ENGINE_URL": "https://<billing-engine host>",
|
|
208
|
+
// "CONSOLE_URL": "https://<console host>",
|
|
209
|
+
// The OAuth server of /v1/mcp (MCP over OAuth); defaults per IXO_NETWORK — set for a local AuthHub.
|
|
210
|
+
// "AUTH_HUB_URL": "https://<authhub host>",
|
|
211
|
+
// "ORACLE_ADMIN_DIDS": "did:ixo:<admin>,did:ixo:<admin>",
|
|
212
|
+
// Read-only access to GET /v1/admin/status for a monitoring service (any DID method, e.g. your
|
|
213
|
+
// decision engine's status board by its did:web). Never an oracle admin: it reaches nothing else.
|
|
214
|
+
// "STATUS_READER_DIDS": "did:web:<monitor host>",
|
|
215
|
+
|
|
216
|
+
// The From address/name on pause, resume and review notices. Unset ⇒ the email lane logs once
|
|
217
|
+
// and skips. Commented, not blank: an empty string fails config validation.
|
|
218
|
+
// "EMAIL_FROM_ADDRESS": "oracle@your-domain",
|
|
219
|
+
// "EMAIL_FROM_NAME": "Your Oracle",
|
|
220
|
+
|
|
221
|
+
// Sentry tuning — only matters with the SENTRY_DSN secret set. Unset ⇒ 0.1 of requests traced
|
|
222
|
+
// and the environment tag is ENVIRONMENT. (OPS_ALERT_WEBHOOK_URL, for Slack alerts, is a
|
|
223
|
+
// secret: .dev.vars.example.)
|
|
224
|
+
// "SENTRY_TRACES_SAMPLE_RATE": "1",
|
|
225
|
+
// "SENTRY_ENVIRONMENT": "devnet"
|
|
226
|
+
},
|
|
227
|
+
|
|
228
|
+
"env": {
|
|
229
|
+
"testnet": {
|
|
230
|
+
// Without this the worker deploys as "<top-level name>-testnet" anyway — naming it here
|
|
231
|
+
// keeps the deployed name explicit and independent of the top-level one.
|
|
232
|
+
"name": "{{name}}-testnet",
|
|
233
|
+
// The Custom Domain IS the identity: it must equal ORACLE_HOSTNAME below. Declared here so
|
|
234
|
+
// the deploy attaches it (and its DNS record) instead of it being a dashboard step.
|
|
235
|
+
"routes": [{ "pattern": "<REPLACE: your testnet host>", "custom_domain": true }],
|
|
236
|
+
"vars": {
|
|
237
|
+
"ENVIRONMENT": "staging",
|
|
238
|
+
"LOG_LEVEL": "info",
|
|
239
|
+
"SERVICE_NAME": "{{name}}",
|
|
240
|
+
"SERVICE_VERSION": "0.1.0",
|
|
241
|
+
"CORS_ORIGINS": "*",
|
|
242
|
+
"CRON_COLLECTIONS_PER_TICK": "25",
|
|
243
|
+
"IXO_CLIENT_SEQUENCE_MIN_DELAY_MS": "1000",
|
|
244
|
+
"IXO_NETWORK": "testnet",
|
|
245
|
+
// Stand-in coin on testnet (owner ruling: any coin is fine off mainnet).
|
|
246
|
+
"EVALUATION_DENOM": "uixo",
|
|
247
|
+
"EVALUATION_MIN_AMOUNT": "1000000",
|
|
248
|
+
"ORACLE_HOSTNAME": "<REPLACE: your testnet host>",
|
|
249
|
+
"ORACLE_DID": "did:ixo:<REPLACE_WITH_YOUR_ORACLE_ADDRESS>",
|
|
250
|
+
"ORACLE_ADDRESS": "<REPLACE_WITH_YOUR_ORACLE_ADDRESS>",
|
|
251
|
+
"ORACLE_MATRIX_USER_ID": "@did-ixo-<REPLACE_WITH_YOUR_ORACLE_ADDRESS>:testmx.ixo.earth",
|
|
252
|
+
"ORACLE_ENTITY_DID": "",
|
|
253
|
+
"AI_CHECK_MODEL": "openai/gpt-6-luna",
|
|
254
|
+
// AI provider (README "Configuration"): the AI Gateway by default — the `ai` binding plus the
|
|
255
|
+
// gateway's name; OpenRouter instead with AI_PROVIDER=openrouter + the OPENROUTER_API_KEY secret.
|
|
256
|
+
"AI_PROVIDER": "cloudflare",
|
|
257
|
+
// "AI_AUDIO_VIDEO": "false", // audio/video inputs — OpenRouter only
|
|
258
|
+
// "AI_GATEWAY_ID": "<your gateway>",
|
|
259
|
+
"C2PA_IMAGE_CHECK": "true",
|
|
260
|
+
"AUTO_SIGN": "true",
|
|
261
|
+
"API_LANE": "false",
|
|
262
|
+
"API_PAYMENTS": "false"
|
|
263
|
+
// "API_PRICE_USD_CENTS": "120",
|
|
264
|
+
// "X402_FACILITATOR_URL": "https://<facilitator host>",
|
|
265
|
+
// "X402_NETWORK": "cosmos:pandora-8",
|
|
266
|
+
// Where your earnings land (your own accounts; each offer's payTo). Unset ⇒ that way to pay is not offered.
|
|
267
|
+
// "EARNINGS_ADDRESS": "ixo1<your account>",
|
|
268
|
+
// "EARNINGS_BASE_WALLET": "0x<your Base wallet>",
|
|
269
|
+
// "BILLING_ENGINE_URL": "https://<billing-engine host>",
|
|
270
|
+
// "CONSOLE_URL": "https://<console host>",
|
|
271
|
+
// The OAuth server of /v1/mcp (MCP over OAuth); defaults per IXO_NETWORK — set for a local AuthHub.
|
|
272
|
+
// "AUTH_HUB_URL": "https://<authhub host>",
|
|
273
|
+
// "ORACLE_ADMIN_DIDS": "did:ixo:<admin>",
|
|
274
|
+
// "STATUS_READER_DIDS": "did:web:<monitor host>",
|
|
275
|
+
|
|
276
|
+
// "EMAIL_FROM_ADDRESS": "oracle@your-domain",
|
|
277
|
+
// "EMAIL_FROM_NAME": "Your Oracle",
|
|
278
|
+
|
|
279
|
+
// "SENTRY_TRACES_SAMPLE_RATE": "0.2",
|
|
280
|
+
// "SENTRY_ENVIRONMENT": "testnet"
|
|
281
|
+
},
|
|
282
|
+
|
|
283
|
+
// Optional Workers Traces for this env (billed per span from 2026-10-01): `observability` is
|
|
284
|
+
// inherited whole, so uncommenting this replaces the top-level block — traces 20%.
|
|
285
|
+
// "observability": {
|
|
286
|
+
// "enabled": true,
|
|
287
|
+
// "head_sampling_rate": 1,
|
|
288
|
+
// "traces": { "enabled": true, "head_sampling_rate": 0.2 },
|
|
289
|
+
// "logs": { "enabled": true }
|
|
290
|
+
// },
|
|
291
|
+
|
|
292
|
+
// Every binding and the `vars` block are redeclared per env — those inherit nothing from the
|
|
293
|
+
// top level (unlike `main`, `compatibility_date`, `triggers`, `migrations`, `observability`).
|
|
294
|
+
// wrangler d1 create {{name}}-testnet
|
|
295
|
+
"ai": { "binding": "AI" },
|
|
296
|
+
"d1_databases": [
|
|
297
|
+
{
|
|
298
|
+
"binding": "DB",
|
|
299
|
+
"database_name": "{{name}}-testnet",
|
|
300
|
+
"database_id": "<TESTNET_D1_ID>",
|
|
301
|
+
"migrations_dir": "node_modules/@ixo/decision-oracle/migrations"
|
|
302
|
+
}
|
|
303
|
+
],
|
|
304
|
+
"kv_namespaces": [{ "binding": "CACHE_KV", "id": "<TESTNET_CACHE_KV_ID>" }],
|
|
305
|
+
"ratelimits": [
|
|
306
|
+
{
|
|
307
|
+
"name": "API_RATE_LIMITER",
|
|
308
|
+
"namespace_id": "1001",
|
|
309
|
+
"simple": { "limit": 100, "period": 60 }
|
|
310
|
+
},
|
|
311
|
+
{
|
|
312
|
+
"name": "API_KEY_RATE_LIMITER",
|
|
313
|
+
"namespace_id": "1002",
|
|
314
|
+
"simple": { "limit": 600, "period": 60 }
|
|
315
|
+
}
|
|
316
|
+
],
|
|
317
|
+
// wrangler r2 bucket create {{name}}-uploads-testnet
|
|
318
|
+
// "r2_buckets": [{ "binding": "API_UPLOADS", "bucket_name": "{{name}}-uploads-testnet" }],
|
|
319
|
+
// wrangler r2 bucket create {{name}}-answers-testnet
|
|
320
|
+
// "r2_buckets": [{ "binding": "ANSWERS_ARCHIVE", "bucket_name": "{{name}}-answers-testnet" }],
|
|
321
|
+
// "analytics_engine_datasets": [{ "binding": "METRICS", "dataset": "eval_oracle_metrics_testnet" }],
|
|
322
|
+
"send_email": [{ "name": "EMAIL", "remote": true }],
|
|
323
|
+
"workflows": [
|
|
324
|
+
{
|
|
325
|
+
"name": "{{name}}-claim-ingest-testnet",
|
|
326
|
+
"binding": "CLAIM_WORKFLOW",
|
|
327
|
+
"class_name": "ClaimIngest"
|
|
328
|
+
},
|
|
329
|
+
{
|
|
330
|
+
"name": "{{name}}-review-complete-testnet",
|
|
331
|
+
"binding": "REVIEW_WORKFLOW",
|
|
332
|
+
"class_name": "ReviewComplete"
|
|
333
|
+
}
|
|
334
|
+
],
|
|
335
|
+
"durable_objects": {
|
|
336
|
+
"bindings": [{ "name": "SEQUENCE_MANAGER", "class_name": "SequenceManagerDO" }]
|
|
337
|
+
}
|
|
338
|
+
},
|
|
339
|
+
|
|
340
|
+
"production": {
|
|
341
|
+
"name": "{{name}}-production",
|
|
342
|
+
"routes": [{ "pattern": "<REPLACE: your production host>", "custom_domain": true }],
|
|
343
|
+
"vars": {
|
|
344
|
+
"ENVIRONMENT": "production",
|
|
345
|
+
"LOG_LEVEL": "info",
|
|
346
|
+
"SERVICE_NAME": "{{name}}",
|
|
347
|
+
"SERVICE_VERSION": "0.1.0",
|
|
348
|
+
"CORS_ORIGINS": "*",
|
|
349
|
+
"CRON_COLLECTIONS_PER_TICK": "25",
|
|
350
|
+
"IXO_CLIENT_SEQUENCE_MIN_DELAY_MS": "1000",
|
|
351
|
+
"IXO_NETWORK": "mainnet",
|
|
352
|
+
// Real USDC on mainnet — Noble USDC over IBC (transfer/channel-26/uusdc, 6 decimals), never a
|
|
353
|
+
// stand-in. REQUIRED here: config validation fails at isolate start without it. 1000000 = 1 USDC.
|
|
354
|
+
"EVALUATION_DENOM": "ibc/6BBE9BD4246F8E04948D5A4EEE7164B2630263B9EBB5E7DC5F0A46C62A2FF97B",
|
|
355
|
+
"EVALUATION_MIN_AMOUNT": "1000000",
|
|
356
|
+
"ORACLE_HOSTNAME": "<REPLACE: your production host>",
|
|
357
|
+
"ORACLE_DID": "did:ixo:<REPLACE_WITH_YOUR_ORACLE_ADDRESS>",
|
|
358
|
+
"ORACLE_ADDRESS": "<REPLACE_WITH_YOUR_ORACLE_ADDRESS>",
|
|
359
|
+
"ORACLE_MATRIX_USER_ID": "@did-ixo-<REPLACE_WITH_YOUR_ORACLE_ADDRESS>:mx.ixo.earth",
|
|
360
|
+
"ORACLE_ENTITY_DID": "",
|
|
361
|
+
"AI_CHECK_MODEL": "openai/gpt-6-luna",
|
|
362
|
+
// AI provider (README "Configuration"): the AI Gateway by default — the `ai` binding plus the
|
|
363
|
+
// gateway's name; OpenRouter instead with AI_PROVIDER=openrouter + the OPENROUTER_API_KEY secret.
|
|
364
|
+
"AI_PROVIDER": "cloudflare",
|
|
365
|
+
// "AI_AUDIO_VIDEO": "false", // audio/video inputs — OpenRouter only
|
|
366
|
+
// "AI_GATEWAY_ID": "<your gateway>",
|
|
367
|
+
"C2PA_IMAGE_CHECK": "true",
|
|
368
|
+
"AUTO_SIGN": "true",
|
|
369
|
+
"API_LANE": "false",
|
|
370
|
+
"API_PAYMENTS": "false"
|
|
371
|
+
// "API_PRICE_USD_CENTS": "120",
|
|
372
|
+
// "X402_FACILITATOR_URL": "https://<facilitator host>",
|
|
373
|
+
// "X402_NETWORK": "cosmos:ixo-5",
|
|
374
|
+
// Where your earnings land (your own accounts; each offer's payTo). Unset ⇒ that way to pay is not offered.
|
|
375
|
+
// "EARNINGS_ADDRESS": "ixo1<your account>",
|
|
376
|
+
// "EARNINGS_BASE_WALLET": "0x<your Base wallet>",
|
|
377
|
+
// "BILLING_ENGINE_URL": "https://<billing-engine host>",
|
|
378
|
+
// "CONSOLE_URL": "https://<console host>",
|
|
379
|
+
// The OAuth server of /v1/mcp (MCP over OAuth); defaults per IXO_NETWORK — set for a local AuthHub.
|
|
380
|
+
// "AUTH_HUB_URL": "https://<authhub host>",
|
|
381
|
+
// "ORACLE_ADMIN_DIDS": "did:ixo:<admin>",
|
|
382
|
+
// "STATUS_READER_DIDS": "did:web:<monitor host>",
|
|
383
|
+
|
|
384
|
+
// "EMAIL_FROM_ADDRESS": "oracle@your-domain",
|
|
385
|
+
// "EMAIL_FROM_NAME": "Your Oracle",
|
|
386
|
+
|
|
387
|
+
// "SENTRY_TRACES_SAMPLE_RATE": "0.1",
|
|
388
|
+
// "SENTRY_ENVIRONMENT": "mainnet"
|
|
389
|
+
},
|
|
390
|
+
|
|
391
|
+
// Optional Workers Traces for this env (billed per span from 2026-10-01): `observability` is
|
|
392
|
+
// inherited whole, so uncommenting this replaces the top-level block — traces 5%.
|
|
393
|
+
// "observability": {
|
|
394
|
+
// "enabled": true,
|
|
395
|
+
// "head_sampling_rate": 1,
|
|
396
|
+
// "traces": { "enabled": true, "head_sampling_rate": 0.05 },
|
|
397
|
+
// "logs": { "enabled": true }
|
|
398
|
+
// },
|
|
399
|
+
|
|
400
|
+
// wrangler d1 create {{name}}-production
|
|
401
|
+
"ai": { "binding": "AI" },
|
|
402
|
+
"d1_databases": [
|
|
403
|
+
{
|
|
404
|
+
"binding": "DB",
|
|
405
|
+
"database_name": "{{name}}-production",
|
|
406
|
+
"database_id": "<PRODUCTION_D1_ID>",
|
|
407
|
+
"migrations_dir": "node_modules/@ixo/decision-oracle/migrations"
|
|
408
|
+
}
|
|
409
|
+
],
|
|
410
|
+
"kv_namespaces": [{ "binding": "CACHE_KV", "id": "<PRODUCTION_CACHE_KV_ID>" }],
|
|
411
|
+
"ratelimits": [
|
|
412
|
+
{
|
|
413
|
+
"name": "API_RATE_LIMITER",
|
|
414
|
+
"namespace_id": "1001",
|
|
415
|
+
"simple": { "limit": 100, "period": 60 }
|
|
416
|
+
},
|
|
417
|
+
{
|
|
418
|
+
"name": "API_KEY_RATE_LIMITER",
|
|
419
|
+
"namespace_id": "1002",
|
|
420
|
+
"simple": { "limit": 600, "period": 60 }
|
|
421
|
+
}
|
|
422
|
+
],
|
|
423
|
+
// wrangler r2 bucket create {{name}}-uploads-production
|
|
424
|
+
// "r2_buckets": [{ "binding": "API_UPLOADS", "bucket_name": "{{name}}-uploads-production" }],
|
|
425
|
+
// wrangler r2 bucket create {{name}}-answers-production
|
|
426
|
+
// "r2_buckets": [{ "binding": "ANSWERS_ARCHIVE", "bucket_name": "{{name}}-answers-production" }],
|
|
427
|
+
// "analytics_engine_datasets": [{ "binding": "METRICS", "dataset": "eval_oracle_metrics_mainnet" }],
|
|
428
|
+
"send_email": [{ "name": "EMAIL", "remote": true }],
|
|
429
|
+
"workflows": [
|
|
430
|
+
{
|
|
431
|
+
"name": "{{name}}-claim-ingest-production",
|
|
432
|
+
"binding": "CLAIM_WORKFLOW",
|
|
433
|
+
"class_name": "ClaimIngest"
|
|
434
|
+
},
|
|
435
|
+
{
|
|
436
|
+
"name": "{{name}}-review-complete-production",
|
|
437
|
+
"binding": "REVIEW_WORKFLOW",
|
|
438
|
+
"class_name": "ReviewComplete"
|
|
439
|
+
}
|
|
440
|
+
],
|
|
441
|
+
"durable_objects": {
|
|
442
|
+
"bindings": [{ "name": "SEQUENCE_MANAGER", "class_name": "SequenceManagerDO" }]
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
}
|