@ixo/decision-oracle 0.2.27 → 0.2.29
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 +1 -1
- package/dist/db/schema.d.ts +17 -0
- package/dist/db/schema.d.ts.map +1 -1
- package/dist/db/schema.js +10 -0
- package/dist/db/schema.js.map +1 -1
- package/dist/lib/api-lane/accept.d.ts.map +1 -1
- package/dist/lib/api-lane/accept.js +27 -10
- package/dist/lib/api-lane/accept.js.map +1 -1
- package/dist/lib/api-lane/notify.d.ts +9 -0
- package/dist/lib/api-lane/notify.d.ts.map +1 -1
- package/dist/lib/api-lane/notify.js +10 -3
- package/dist/lib/api-lane/notify.js.map +1 -1
- package/dist/lib/api-lane/record.d.ts.map +1 -1
- package/dist/lib/api-lane/record.js +6 -3
- package/dist/lib/api-lane/record.js.map +1 -1
- package/dist/lib/engine/client.d.ts +14 -2
- package/dist/lib/engine/client.d.ts.map +1 -1
- package/dist/lib/engine/client.js +90 -11
- package/dist/lib/engine/client.js.map +1 -1
- package/dist/lib/work-order/index.d.ts +4 -2
- package/dist/lib/work-order/index.d.ts.map +1 -1
- package/dist/lib/work-order/index.js +19 -4
- package/dist/lib/work-order/index.js.map +1 -1
- package/dist/middleware/api/keys.d.ts.map +1 -1
- package/dist/middleware/api/keys.js +10 -2
- package/dist/middleware/api/keys.js.map +1 -1
- package/dist/middleware/api/rate-limit.js +3 -4
- package/dist/middleware/api/rate-limit.js.map +1 -1
- package/dist/middleware/api/wait.d.ts +17 -2
- package/dist/middleware/api/wait.d.ts.map +1 -1
- package/dist/middleware/api/wait.js +80 -19
- package/dist/middleware/api/wait.js.map +1 -1
- package/dist/networks.d.ts +3 -0
- package/dist/networks.d.ts.map +1 -1
- package/dist/networks.js +3 -0
- package/dist/networks.js.map +1 -1
- package/dist/routes/v1/api/claims.d.ts +15 -3
- package/dist/routes/v1/api/claims.d.ts.map +1 -1
- package/dist/routes/v1/api/claims.js +85 -14
- package/dist/routes/v1/api/claims.js.map +1 -1
- package/dist/routes/v1/api/protocols.d.ts +1 -1
- package/dist/routes/v1/api/protocols.d.ts.map +1 -1
- package/dist/routes/v1/api/protocols.js +13 -20
- package/dist/routes/v1/api/protocols.js.map +1 -1
- package/dist/routes/v1/info.js +1 -1
- package/dist/routes/v1/info.js.map +1 -1
- package/dist/workflows/claim-ingest.d.ts +19 -125
- package/dist/workflows/claim-ingest.d.ts.map +1 -1
- package/dist/workflows/claim-ingest.js +49 -765
- package/dist/workflows/claim-ingest.js.map +1 -1
- package/dist/workflows/evaluate.d.ts +193 -0
- package/dist/workflows/evaluate.d.ts.map +1 -0
- package/dist/workflows/evaluate.js +980 -0
- package/dist/workflows/evaluate.js.map +1 -0
- package/docs/api.md +26 -6
- package/docs/guide.md +19 -1
- package/migrations/0029_inline_lease.sql +1 -0
- package/migrations/meta/0029_snapshot.json +3021 -0
- package/migrations/meta/_journal.json +7 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../../src/workflows/evaluate.ts"],"names":[],"mappings":"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"}
|
package/docs/api.md
CHANGED
|
@@ -1305,7 +1305,11 @@ anywhere downstream. That boundary is the replay guarantee a review fold depends
|
|
|
1305
1305
|
## 8. The work order — `Manifest`
|
|
1306
1306
|
|
|
1307
1307
|
What the engine's binder resolved the protocol's rubric to want, read from
|
|
1308
|
-
`GET /v1/rubrics/manifest?protocol=<did>` (public
|
|
1308
|
+
`GET /v1/rubrics/manifest?protocol=<did>` (public; cached in the isolate and in KV, reused for 5
|
|
1309
|
+
minutes after it was last known current — fetched, or re-checked by the Decision API's work-order
|
|
1310
|
+
read against the protocol's live `#rub` and `#vct` proofs, which keeps it up to an hour after the
|
|
1311
|
+
engine produced it; an isolate re-reads KV every 30 s, so a `RUBRIC_PIN_MISMATCH` invalidation
|
|
1312
|
+
reaches every isolate within that; an `unusable` answer is never cached). **This oracle never
|
|
1309
1313
|
parses a rubric** — the manifest is the only work order, and `bunx decision-oracle protocol review <did>`
|
|
1310
1314
|
prints it in plain words.
|
|
1311
1315
|
|
|
@@ -1597,7 +1601,7 @@ it("bands a vendor score against the rule's own thresholds", async () => {
|
|
|
1597
1601
|
| Binding | Type | What it backs |
|
|
1598
1602
|
| --- | --- | --- |
|
|
1599
1603
|
| `DB` | `D1Database` | Every ledger: watched collections, claim ingests, decisions, reviews, the duplicate registries, the fact cache, Matrix delivery markers. Migrations **ship with the package** — point `migrations_dir` at `node_modules/@ixo/decision-oracle/migrations` and never run drizzle-kit |
|
|
1600
|
-
| `CACHE_KV` | `KVNamespace` | Caches only: UCAN principals, peer `did:web` documents, the engine-registered marker, the rubric manifest (5 min), chain grants, claim-bot tokens, the C2PA trust list. Nothing here is a source of truth |
|
|
1604
|
+
| `CACHE_KV` | `KVNamespace` | Caches only: UCAN principals, peer `did:web` documents, the engine-registered marker, the rubric manifest (5 min since last known current, ≤ 1 h), chain grants, claim-bot tokens, the C2PA trust list. Nothing here is a source of truth |
|
|
1601
1605
|
| `API_RATE_LIMITER` | `RateLimit` | The coarse per-IP guard on the whole API. `limit`/`period` live in `wrangler.jsonc`, not in code |
|
|
1602
1606
|
| `EMAIL` | `SendEmail` (optional) | Cloudflare Email Sending for pause/resume/review notices, the API lane's member and review emails, and the `balance.low` email. Absent ⇒ the email lane no-ops |
|
|
1603
1607
|
| `API_KEY_RATE_LIMITER` | `RateLimit` (optional) | The Decision API lane's per-key / per-source limit — its own namespace, read only with `API_LANE` on |
|
|
@@ -1785,7 +1789,7 @@ check.**
|
|
|
1785
1789
|
| `GET /health/ready` | public, **rate-limited** (per IP) | `{ ok }` only — `200` when every critical check passes, `503` otherwise. Checks `d1`, `kv`, `engine` (its `/.well-known/did.json`) and, with `API_LANE` and `API_PAYMENTS` on, `facilitator` (`X402_FACILITATOR_URL/supported`), in parallel, 2 s each, plus `identity` (a config read: fails when `ORACLE_ENTITY_DID` is unset on a non-local `ORACLE_HOSTNAME`) and `owner-delegation` (fails when `OWNER_DELEGATION_CAR` is set but is not a UCAN delegation; unset passes); the settled answer is cached per isolate for 15 s. A failure before the route runs (a config that does not load) is also `503 { ok: false }`. Names no check — the detail is `/v1/admin/status`'s |
|
|
1786
1790
|
| `GET /.well-known/did.json` | public, rate-limit exempt | Needs `SERVICE_ED25519_MNEMONIC` |
|
|
1787
1791
|
| `GET /.well-known/oauth-protected-resource/v1/mcp` | public, rate-limit exempt, `Access-Control-Allow-Origin: *`, `cache-control: public, max-age=300` | RFC 9728 metadata for the MCP server: `{ resource: "https://<ORACLE_HOSTNAME>/v1/mcp", authorization_servers: [AUTH_HUB_URL], scopes_supported: ["claims:write", "claims:read"], bearer_methods_supported: ["header"] }`. `404` unless `API_LANE` is on. Outside the `/v1/api` contract |
|
|
1788
|
-
| `GET /v1/info` | **public** (the only public `/v1` path) | —. The marketplace listing: `name`, `description`, `did`, `address`, `entityDid` (the on-chain oracle entity from `ORACLE_ENTITY_DID`, `null` when unset), `serviceDid`, `lanes: { chain, api }` (booleans: `CHAIN_LANE` and `API_LANE` — a portal offers an on-chain hire only where `chain` is `true`, a console lists the oracle for the Decision API only where `api` is; the listing is cached 300 s, so a lane flip shows up to 5 min late), `supportedProtocols`, `protocols` (the same list readably: `[{ did, name, fee }]` — `name` the protocol's
|
|
1792
|
+
| `GET /v1/info` | **public** (the only public `/v1` path) | —. The marketplace listing: `name`, `description`, `did`, `address`, `entityDid` (the on-chain oracle entity from `ORACLE_ENTITY_DID`, `null` when unset), `serviceDid`, `lanes: { chain, api }` (booleans: `CHAIN_LANE` and `API_LANE` — a portal offers an on-chain hire only where `chain` is `true`, a console lists the oracle for the Decision API only where `api` is; the listing is cached 300 s, so a lane flip shows up to 5 min late), `supportedProtocols`, `protocols` (the same list readably: `[{ did, name, fee }]` — `name` the protocol entity's name from IXO Names (`https://names.ixo.earth`, per network — its profile name), else its claim form's title, cached 1 h, `null` when neither reads; `fee` the `{ denom, minAmount }` register charges for it), `pricing`, `policies`, `earnings: { address, baseWallet }` (the operator's `EARNINGS_ADDRESS` / `EARNINGS_BASE_WALLET`, `null` when unset — read-only, set in the oracle's config), `payouts: { decisionToPay, operatorAmount }` — how a payout amount is chosen, for a portal to show before a company opts in: `decisionToPay` is the config's `payouts` map verbatim (per protocol DID, `{ amount: <answer path>, currency: <ISO 4217 code> | { path } | { asset, decimals } }`; `{}` when none, and a protocol absent from it gets no decision to pay), `operatorAmount` is `{ summary }` from `policies.actSummary` when an `act` policy is configured, else `null` (`actSummary` is served only here, never under `policies`), and `reviewBilling: { mode, pricePerReview }` — how a collection pays for its reviews: `mode: "x402"` (per-review billing ACTIVE: IXO's plan for the oracle allows it — the engine's `GET /v1/oracles/me` `reviewBilling`, KV-cached 5 min — on an oracle running `API_LANE`: per review from the company's credits, an empty evaluation leg) with `pricePerReview: { denom: "upay", amount }` the published per-review price (the one the supported protocols share, else `pricing.api.amountMicroUsd` / `API_PRICE_USD_CENTS`; `null` when none is published), or `mode: "escrow"` (the collection's on-chain evaluation payment, `pricing`) with `pricePerReview: null`. `cache-control: public, max-age=300`. With `openhands` set, also `openhands: { hire: "/openhands/hire/:collectionId", scan: "/openhands/scan/:collectionId", why: "/openhands/claims/:claimId/why" }` — absent on any other oracle. A portal is built against these exact field names |
|
|
1789
1793
|
| `POST /openhands/hire/:collectionId` | public, **`OPENHANDS_RATE_LIMITER`** (per caller and per collection; unbound outside development ⇒ `503`), `openhands` on only | With `CHAIN_LANE` `"false"`, `409 { error, reason: "chain_lane_off" }` before anything else (no limiter token, no read, no start). Starts the collection's hire (`202 { started: true }`) after reading that it exists and its admin granted this oracle a live meta-grant: `404` no such collection (not cached), `409` no meta-grant (cached 10 min). A hire in flight, or an ended one the chain says is healthy, is `200 { existing: true }` (the healthy answer cached 1 min); an ended one the chain says is stale or low is rerun from the webhook's own budget (`200 { restarted: true, reason }`, three a day, then `{ throttled: true }`). `400` a malformed id, `405` not POST, `503` when the chain or Blocksync cannot answer |
|
|
1790
1794
|
| `POST /openhands/scan/:collectionId` | public, **`OPENHANDS_RATE_LIMITER`**, `openhands` on only | Scans one watched collection now (with `CHAIN_LANE` `"false"`, `409 { error, reason: "chain_lane_off" }` first): `200 { started }`, `202 { coalesced: true }` within a minute of the last (scanned on the next minute tick), `404` not watched, `409` paused. A `200 { started: 0 }` (or a failed scan) is retried on the next three minute ticks |
|
|
1791
1795
|
| `GET /openhands/claims/:claimId/why` | **the claim's own submitter**: a UCAN invocation (`Authorization: Bearer <token>`, `X-Auth-Type: ucan`) carrying exactly `{ can: "claims/why", with: "ixo:claim:<claimId>" }`, addressed to this oracle's did:web, self-issued (no delegation), expiring at most 10 min out, whose issuer is the claim's on-chain `agentDid`. **`OPENHANDS_RATE_LIMITER`** per caller address before the token is checked and per issuer after (`429`; unbound outside development ⇒ `429`). `openhands` on only | Why the claim was decided: `200 { outcome, summary, reasons[], evidenceGrade?, reviewNote?, receiptCid? }` — `outcome` is `approved` (approve or partial) / `rejected` / `review` (held for a person) / `pending`; each reason is `{ code, label, result: pass \| fail \| error \| review, detail, value?, threshold?, unit? }`, one per gate or criterion, explained through the one fact it reads and labelled by the pinned rubric (`#rub`, read for its public sentences only, hash-checked, cached 7 days; unreadable ⇒ codes without labels). An `ext` fact's reason is never echoed (only the stock geo handlers' distances and evidence grade), an AI sentence only scrubbed of identifiers, and no AI instruction is ever read. A claim queued, or on a watched collection and not yet seen, is `pending`; a **failed ingest** is `pending` with a fixed sentence (`claimFailureReason`) — never the stored error. Anyone but the agent, or a claim this oracle never saw, gets the same `404 NOT_FOUND`; `401` no or a bad token, `400` a malformed id, `405` not GET, `503` when Blocksync or the DID resolver cannot answer |
|
|
@@ -2225,7 +2229,7 @@ the inner request — never a caller's `X-Auth-Type` / `X-Source-Id`:
|
|
|
2225
2229
|
| `submit_claim` | `protocolDid?`, `answers`, `attachments?`, `submitter?`, `metadata?`, `webhookUrl?`, `idempotencyKey?`, `resumePayment?` (after a card 3-D Secure refusal: its `paymentRequired`, once the payer has confirmed at `confirmUrl`) | `POST /v1/api/claims` with `Prefer: wait=90` and an `Idempotency-Key` — the argument, else `mcp_` + hex `sha256(canonicalJson(request))`; a 402 is paid by at most one attempt per rail with `X-Payment-Delegation`, as the SDK's payer does (the card authorize goes to this oracle's `X402_FACILITATOR_URL`, never the delegation's audience; a `resumePayment` that is not this oracle's card 402 is a `VALIDATION` refusal) | the decided record, or `{ status: "pending", claimId, pollUrl }` |
|
|
2226
2230
|
| `upload_file` | `sourceId?` (OAuth only) | `POST /v1/api/uploads/links` | `{ uploadId, uploadUrl, expiresAt }` as `structuredContent`; the text is instructions instead of the JSON (the upload card, or `curl -sS -T <path> '<uploadUrl>'`, then `submit_claim` with `{ question, uploadId }`) |
|
|
2227
2231
|
| `get_decision` | `claimId` | `GET /v1/api/claims/:claimId` | the record |
|
|
2228
|
-
| `list_protocols` | `protocolDid?` | `GET /v1/api/protocols`, or `…/:did` for one protocol's work order (answers JSON Schema, files, facts, price, example) | the list (`{ protocolDid, name, price }`: `name` is the protocol entity's
|
|
2232
|
+
| `list_protocols` | `protocolDid?` | `GET /v1/api/protocols`, or `…/:did` for one protocol's work order (answers JSON Schema, files, facts, price, example) | the list (`{ protocolDid, name, price }`: `name` is the protocol entity's name from IXO Names (its profile name, KV-cached 1 h), else its claim form's title, else `null`; a failed read never fails the list), or the work order |
|
|
2229
2233
|
| `verify_receipt` | `claimId`, or `jws` (+ `cid?`) | `GET /v1/api/claims/:claimId/receipt` (with `claimId` alone; given both, the `jws` is verified and must name that `claimId`), then `verifyReceipt` trusting only this oracle's engine (`did:web:<EVAL_ENGINE_HOSTNAME>`) | `{ valid: true, issuer, claimId, verdict, status, outcome, protocolDid, oracleDid, kind, evaluatedAt }` or `{ valid: false, reason, message }` |
|
|
2230
2234
|
|
|
2231
2235
|
**An attachment named by `uploadId` alone gets its `cid` filled in.** Before anything else is
|
|
@@ -2486,8 +2490,24 @@ and `oracle-claims-feed` monitors stop checking in, so close them in Sentry if y
|
|
|
2486
2490
|
|
|
2487
2491
|
### Workflows
|
|
2488
2492
|
|
|
2489
|
-
- **`ClaimIngest`** — one instance per claim. `record-queued` →
|
|
2490
|
-
`
|
|
2493
|
+
- **`ClaimIngest`** — one instance per claim. `record-queued` → (API lane: `notify-accepted`) →
|
|
2494
|
+
`evaluate` → `act` → `mark-processed` → `notify-review` (the last two swapped for a
|
|
2495
|
+
`pending_review`), each checkpointed and retried
|
|
2496
|
+
independently; `processed` follows the decision directly, so the ledger never waits on a
|
|
2497
|
+
receiver's webhook. A Decision API claim submitted with `Prefer: wait=N` (N > 0) is evaluated by
|
|
2498
|
+
the accepting request too, right after this instance is created: the same `evaluate` body
|
|
2499
|
+
(`workflows/evaluate.ts` `evaluateInline`), which takes the ledger row only from `queued` —
|
|
2500
|
+
writing its lease, `claim_ingests.inline_until` (the caller's deadline + 45 s; migration
|
|
2501
|
+
`0029_inline_lease`), in the same statement — and marks it `processed` itself (after the
|
|
2502
|
+
`review_required` event, for a claim that waits for review). An `evaluate` attempt that finds the
|
|
2503
|
+
row `processing` under a live lease waits for that run's decision row instead of deciding beside
|
|
2504
|
+
it; with no lease it never waits. A run that fails ends its lease and leaves the row
|
|
2505
|
+
`processing`, so the instance resumes it at once with the recovery read (`GET
|
|
2506
|
+
/v1/decisions/:claimId`) first — never a blind second decide. `record-queued` never moves a row
|
|
2507
|
+
back from `processing` / `processed`; `processed` comes after `notify-review` for a
|
|
2508
|
+
`pending_review` (its record reads the tasks off the event that step writes); and an `evaluate`
|
|
2509
|
+
that finds a recorded failure (`invalid_facts`, a content refusal) fails the ingest, never marks
|
|
2510
|
+
it `processed`. `evaluate` is pull → facts →
|
|
2491
2511
|
decide in **one** step, because the FactSet contains the claim answers and may never be a step
|
|
2492
2512
|
result; only the small decision summary leaves it. A retry that finds the decision row returns it
|
|
2493
2513
|
— no second pull, no second handler run. A retry that finds the row mid-flight asks the engine's
|
package/docs/guide.md
CHANGED
|
@@ -1494,13 +1494,31 @@ The domain metrics, by the same slots (`-` = unused):
|
|
|
1494
1494
|
| `facilitator.call` | timing | `offers`, `verify`, `settle`, `settlement`, `extend`, `balances` | - | HTTP status or `network`; `settlement_pending` for PAY's normal settle | `ok`, `error`, or the refusal code (a `/verify` `invalidReason` or `/settle` `errorReason` too — both answer HTTP 200) | - |
|
|
1495
1495
|
| `api.submit` | count, per claim taken | `sync` / `async` (a `Prefer: wait` above 0, or none / `wait=0`), `batch` | - | - | - | - |
|
|
1496
1496
|
| `api.wait` | count, per wait asked (above 0) | `submit` / `get` | - | - | `hit` (the decision landed in time) / `miss` | - |
|
|
1497
|
+
| `api.inline` | count + timing (start → `processed`, or → the failure), per waiting single submit | - | - | - | `decided` (the request decided it) / `failed` (left to the workflow) / `skipped` (the workflow had it first, or the claim may not run) | - |
|
|
1497
1498
|
| `api.402` | count, every 402 answered | `first_leg` (x402's opening `PAYMENT_REQUIRED`, no `PAYMENT-SIGNATURE` sent) / `refused` | - | `PAYMENT_REQUIRED` / `SPEND_CAP` / `INSUFFICIENT_CREDITS` | - | - |
|
|
1498
1499
|
| `api.idempotent_replay` | count, per repeat answered | `submit` / `batch` (a claim's repeat), `other` (any other keyed route's stored answer) | - | - | - | - |
|
|
1499
1500
|
| `api.rate_limited` | count, per key/source limit hit | - | the endpoint pattern | - | - | - |
|
|
1500
1501
|
| `ucan.wildcard` | count, per chain-lane call still signing the legacy `can: "*"` | - | `<METHOD> <route pattern>` | - | - | - |
|
|
1501
1502
|
|
|
1502
1503
|
`api.decision.latency` starts at the API claim's `receivedAt`, or when a chain claim's ledger row
|
|
1503
|
-
was written; `ai` means the protocol's rubric declares AI checks. The
|
|
1504
|
+
was written; `ai` means the protocol's rubric declares AI checks. The `cache` metric's ops include
|
|
1505
|
+
`engine-manifest-l1` (the isolate's copy of a protocol's manifest), `engine-manifest` (KV) and
|
|
1506
|
+
`engine-manifest-recheck` (`hit`: a cached manifest older than 5 minutes kept, because the chain
|
|
1507
|
+
still anchors the same `#rub` and `#vct`; `miss`: re-fetched from the engine).
|
|
1508
|
+
|
|
1509
|
+
**A Decision API claim submitted with `Prefer: wait=N` (N > 0) is decided by the request itself.**
|
|
1510
|
+
The request creates the claim's `ClaimIngest` workflow first — it stays the durable fallback and
|
|
1511
|
+
runs every step — and then runs the same `evaluate` (pull → facts → decide → record) inline, and
|
|
1512
|
+
answers `200` with the record as soon as it is `processed`, instead of waiting out the workflow's
|
|
1513
|
+
queue time (seconds under load). The workflow finds the decision recorded and decides nothing again:
|
|
1514
|
+
one decide, one charge, one set of timeline events and webhooks. If the inline run fails for any
|
|
1515
|
+
reason, it leaves the claim to the workflow (its normal retries, the engine's stored decision read
|
|
1516
|
+
first, so nothing the engine already decided is decided again) and the caller falls back to
|
|
1517
|
+
waiting on the ledger, as before. The run's lease lives on the ledger row
|
|
1518
|
+
(`claim_ingests.inline_until`, migration `0029_inline_lease` — apply the package's migrations
|
|
1519
|
+
before deploying this version). `wait=0` (or no `Prefer`), a batch, a repeat of an
|
|
1520
|
+
`Idempotency-Key`, and a submit past the caps (20 waiters per source, `MAX_INLINE_RUNS` = 8 inline
|
|
1521
|
+
runs per isolate) go through the workflow alone. `api.inline` counts each outcome. The backlog gauges are written
|
|
1504
1522
|
once per minute tick: `review.pending` (decisions awaiting a reviewer) and `collections.paused`, and
|
|
1505
1523
|
with `API_LANE` on `backlog.webhook.due`, `backlog.webhook.oldest_age_s` and `sources.paused` — and,
|
|
1506
1524
|
with a facilitator configured, every 5 minutes after the payment reconcile,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ALTER TABLE `claim_ingests` ADD `inline_until` integer;
|