@ixo/decision-oracle 0.2.19 → 0.2.21
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 +3 -1
- package/dist/cli/commands/redeliver.d.ts +12 -0
- package/dist/cli/commands/redeliver.d.ts.map +1 -0
- package/dist/cli/commands/redeliver.js +45 -0
- package/dist/cli/commands/redeliver.js.map +1 -0
- package/dist/cli/index.js +2 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/lib/usage.d.ts +1 -1
- package/dist/cli/lib/usage.d.ts.map +1 -1
- package/dist/cli/lib/usage.js +2 -0
- package/dist/cli/lib/usage.js.map +1 -1
- package/dist/lib/facts/stock/ai-check.d.ts +8 -0
- package/dist/lib/facts/stock/ai-check.d.ts.map +1 -1
- package/dist/lib/facts/stock/ai-check.js +12 -4
- package/dist/lib/facts/stock/ai-check.js.map +1 -1
- package/dist/middleware/capability.d.ts +1 -1
- package/dist/middleware/capability.d.ts.map +1 -1
- package/dist/middleware/capability.js +4 -0
- package/dist/middleware/capability.js.map +1 -1
- package/dist/routes/v1/admin.d.ts +3 -0
- package/dist/routes/v1/admin.d.ts.map +1 -1
- package/dist/routes/v1/admin.js +102 -0
- package/dist/routes/v1/admin.js.map +1 -1
- package/docs/api.md +8 -2
- package/docs/guide.md +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -410,6 +410,7 @@ re-decides itself against live state, so re-running it is always safe.
|
|
|
410
410
|
| `scan --collection <id> [--kit <url>]` | makes the oracle discover and start claims now instead of at the next cron tick | testing, or catching up after a pause |
|
|
411
411
|
| `relink [--collection <id>]… [--kit <url>]` | as an operator (your DID in `ORACLE_ADMIN_DIDS`), links watched collections — every one, or those named — to the `active` Decision API sources of their company, exactly as `register` now does (`POST /v1/admin/collections/relink`); prints each collection's outcome. Idempotent | once, for collections registered before register linked them |
|
|
412
412
|
| `reviewer-note <claimId> [--kit <url>]` | as an operator (your DID in `ORACLE_ADMIN_DIDS`), (re)makes the plain-words reviewer note for a claim held for a person (`POST /v1/admin/claims/:claimId/reviewer-note`): the oracle re-pulls the body and spends one model call; the note is read on `GET /v1/reviews/:claimId` | a claim held before `policies.reviewerNote` was on, or one whose note failed |
|
|
413
|
+
| `redeliver <claimId> [--yes] [--kit <url>]` | as an operator (your DID in `ORACLE_ADMIN_DIDS`), releases a decided approve/reject whose chain delivery is parked without facts (`POST /v1/admin/claims/:claimId/redeliver`): the oracle re-pulls the body, rebuilds the facts its act policy reads (the engine's decision and receipt stay as recorded), stores them and signs `MsgEvaluateClaim`. Dry run without `--yes`; idempotent once delivered | a `blocked` claim whose `chainError` says its facts could not be rebuilt |
|
|
413
414
|
| `erase (<claimId>… \| --collection <id>) [--kit <url>] [--yes]` | as the collection's current chain owner, erases claims' transcripts and registry text (`DELETE /v1/claims/:claimId/body` per claim; `--collection` = every claim this oracle has seen, skipping and listing those still being decided; a `429` waits its `Retry-After`). Dry run without `--yes` | when the organisation deletes its data — the oracle never does it on its own |
|
|
414
415
|
| `oracle init --protocol <did> --kit-url <url> [--logo <url|file>] [--openhands [--price-pay <n>]] [--only <step>] [--relogin] [--yes]` | provisions the whole oracle in thirteen idempotent steps — `fund` tops the wallet up to 1 IXO for gas, `iid` its IID document, `key` the Ed25519 verification method, `matrix` its bot account (the access token is written into `.dev.vars`), `entity`, `orz`, `profile`, `domain` (the `#dmn` domain card), `acard` (the `#acard` Agent Card), `linked`, `service` (the `#eval` endpoint, re-pointed when it moved), `backlink`, `index` — `--logo` is optional but recommended (without it the portal and the console show a placeholder); `--openhands` (or an oracle whose `/v1/info` names its `openhands` webhooks — one built with `init --openhands`) adds `check-openhands` (the OpenHands app's checker marker), priced in PAY from `/v1/info`'s `pricing.api` (else `--price-pay <n>`, else the protocol's evaluation fee when it is in `upay`; 1 PAY = 1 USD); each deciding `do` or `skip` against live state, so a re-run is always safe. Dry run without `--yes`; `--only <step>` runs exactly one, `--relogin` forces a fresh Matrix token. Only `iid`, `key` and `matrix` need the oracle's own `ORACLE_SECP_MNEMONIC` / `SERVICE_ED25519_MNEMONIC` (a step that does names the missing one); every other step runs on the AuthHub session alone, so a deployed oracle whose keys are only worker secrets can still `--only orz|profile|domain|acard` ([what each step does](#declaring-yourself-on-chain)) | once per network, and again after a deploy that changes your host |
|
|
415
416
|
|
|
@@ -712,6 +713,7 @@ chain owner, or any holder of a live evaluate grant on it (the enroller only whi
|
|
|
712
713
|
| `GET /v1/reviews/:claimId` | read gate, or a live reviewer | pending tasks, stored answers, why a fold failed |
|
|
713
714
|
| `GET /v1/admin/status` | `ORACLE_ADMIN_DIDS` or `STATUS_READER_DIDS` | readiness per check, the backlog, the engine's billing status |
|
|
714
715
|
| `POST /v1/admin/collections/relink` | `ORACLE_ADMIN_DIDS` | `{ collectionIds? }` — link watched collections to their company's Decision API sources, as register does |
|
|
716
|
+
| `POST /v1/admin/claims/:claimId/redeliver` | `ORACLE_ADMIN_DIDS` | rebuild a parked decided claim's facts (act-policy inputs only) and deliver it to the chain |
|
|
715
717
|
|
|
716
718
|
The claim reads are operator plumbing. The oracle dashboard — billing status, fees, usage,
|
|
717
719
|
decisions, earnings — is hosted by the decision engine, not by this package.
|
|
@@ -782,6 +784,6 @@ symlinks are not packed). CI diffs them — change one, copy it to the other.
|
|
|
782
784
|
|
|
783
785
|
## Status
|
|
784
786
|
|
|
785
|
-
Published on npm: `@ixo/decision-oracle` 0.2.
|
|
787
|
+
Published on npm: `@ixo/decision-oracle` 0.2.21 and `@ixo/decision-oracle-client` 0.1.1.
|
|
786
788
|
|
|
787
789
|
Apache License 2.0: `LICENSE` at the repo root and in each package.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `decision-oracle redeliver <claimId>` — the operator's release of one decided claim whose chain
|
|
3
|
+
* delivery is parked without facts (`POST /v1/admin/claims/:claimId/redeliver`): the oracle re-pulls
|
|
4
|
+
* the body, rebuilds the facts its act policy reads (the engine's decision and receipt stay as
|
|
5
|
+
* recorded), stores them, and signs `MsgEvaluateClaim` with ITS chain key — hence the `--yes` gate.
|
|
6
|
+
* Signed as the AuthHub session `decision-oracle login` saved, whose DID must be in the oracle's
|
|
7
|
+
* `ORACLE_ADMIN_DIDS`.
|
|
8
|
+
*
|
|
9
|
+
* decision-oracle redeliver <claimId> [--yes] [--network devnet|testnet|mainnet] [--kit <url>] [--env-file <path>]
|
|
10
|
+
*/
|
|
11
|
+
export declare function run(argv: string[]): Promise<number>;
|
|
12
|
+
//# sourceMappingURL=redeliver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redeliver.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/redeliver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAiCzD"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `decision-oracle redeliver <claimId>` — the operator's release of one decided claim whose chain
|
|
3
|
+
* delivery is parked without facts (`POST /v1/admin/claims/:claimId/redeliver`): the oracle re-pulls
|
|
4
|
+
* the body, rebuilds the facts its act policy reads (the engine's decision and receipt stay as
|
|
5
|
+
* recorded), stores them, and signs `MsgEvaluateClaim` with ITS chain key — hence the `--yes` gate.
|
|
6
|
+
* Signed as the AuthHub session `decision-oracle login` saved, whose DID must be in the oracle's
|
|
7
|
+
* `ORACLE_ADMIN_DIDS`.
|
|
8
|
+
*
|
|
9
|
+
* decision-oracle redeliver <claimId> [--yes] [--network devnet|testnet|mainnet] [--kit <url>] [--env-file <path>]
|
|
10
|
+
*/
|
|
11
|
+
import { parse, UsageError } from "../lib/args.js";
|
|
12
|
+
import { confirm, resolveNetwork } from "../lib/chain.js";
|
|
13
|
+
import { oracleUrlFor, tryProjectConfig } from "../lib/devvars.js";
|
|
14
|
+
import { kitFetch, loadSession } from "../lib/session.js";
|
|
15
|
+
export async function run(argv) {
|
|
16
|
+
const { values, positionals } = parse(argv, {
|
|
17
|
+
options: {
|
|
18
|
+
yes: { type: "boolean" },
|
|
19
|
+
network: { type: "string" },
|
|
20
|
+
kit: { type: "string" },
|
|
21
|
+
"env-file": { type: "string" },
|
|
22
|
+
},
|
|
23
|
+
});
|
|
24
|
+
const claimId = positionals[0];
|
|
25
|
+
if (!claimId)
|
|
26
|
+
throw new UsageError("redeliver needs a claim id");
|
|
27
|
+
const network = resolveNetwork(values.network);
|
|
28
|
+
const kitUrl = oracleUrlFor({
|
|
29
|
+
kit: values.kit,
|
|
30
|
+
devVars: tryProjectConfig({ envFile: values["env-file"] }),
|
|
31
|
+
});
|
|
32
|
+
const session = await loadSession(network);
|
|
33
|
+
const path = `/v1/admin/claims/${encodeURIComponent(claimId)}/redeliver`;
|
|
34
|
+
confirm({
|
|
35
|
+
network,
|
|
36
|
+
signer: session.did,
|
|
37
|
+
action: "release a parked decision to the chain — the oracle signs MsgEvaluateClaim",
|
|
38
|
+
lines: [`oracle : ${kitUrl}`, `claim : ${claimId}`],
|
|
39
|
+
}, values.yes === true, { proceeding: "asking the oracle to deliver…" });
|
|
40
|
+
const { res, did } = await kitFetch(session, kitUrl, path, { body: "{}" });
|
|
41
|
+
console.log(`redeliver as ${did} → ${kitUrl}${path}`);
|
|
42
|
+
console.log(`${res.status} ${await res.text()}`);
|
|
43
|
+
return res.ok ? 0 : 1;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=redeliver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"redeliver.js","sourceRoot":"","sources":["../../../src/cli/commands/redeliver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAEvD,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,IAAc;IACtC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE;QAC1C,OAAO,EAAE;YACP,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YACxB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC3B,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACvB,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC/B;KACF,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAC/B,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,UAAU,CAAC,4BAA4B,CAAC,CAAC;IAEjE,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,YAAY,CAAC;QAC1B,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,OAAO,EAAE,gBAAgB,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;KAC3D,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG,oBAAoB,kBAAkB,CAAC,OAAO,CAAC,YAAY,CAAC;IACzE,OAAO,CACL;QACE,OAAO;QACP,MAAM,EAAE,OAAO,CAAC,GAAG;QACnB,MAAM,EAAE,4EAA4E;QACpF,KAAK,EAAE,CAAC,aAAa,MAAM,EAAE,EAAE,aAAa,OAAO,EAAE,CAAC;KACvD,EACD,MAAM,CAAC,GAAG,KAAK,IAAI,EACnB,EAAE,UAAU,EAAE,+BAA+B,EAAE,CAChD,CAAC;IACF,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,MAAM,MAAM,GAAG,IAAI,EAAE,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,MAAM,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACjD,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,CAAC"}
|
package/dist/cli/index.js
CHANGED
|
@@ -100,6 +100,8 @@ async function main(argv) {
|
|
|
100
100
|
return (await import("./commands/relink.js")).run(rest);
|
|
101
101
|
case "reviewer-note":
|
|
102
102
|
return (await import("./commands/reviewer-note.js")).run(rest);
|
|
103
|
+
case "redeliver":
|
|
104
|
+
return (await import("./commands/redeliver.js")).run(rest);
|
|
103
105
|
case "erase":
|
|
104
106
|
return (await import("./commands/erase.js")).run(rest);
|
|
105
107
|
case "manifest":
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/lib/usage.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* The CLI's usage text, and one command's slice of it for `decision-oracle <command> --help`.
|
|
3
3
|
*/
|
|
4
|
-
export declare const USAGE = "usage: decision-oracle <command> [options]\n\nproject\n init <dir> [--name <project-name>] [--openhands] generate a new oracle project (never installs for you);\n --openhands makes it an OpenHands checker\n skills sync [--dir <path>] refresh the package's Claude skills (default .claude/skills)\n\nidentity\n derive (\"<mnemonic>\" | --new) [--write <file> [--as <VAR>]]\n the ORACLE_* lines for .dev.vars, from a chain mnemonic;\n --write appends the key to that file (0600) instead of\n printing it, under --as (default ORACLE_SECP_MNEMONIC)\n login sign in to ixo AuthHub \u2014 once per network\n login --session-file <json> [--yes] no browser: save a session obtained elsewhere (a service or\n test account); --yes replaces an existing one\n logout forget that network's saved session ({ removed, path })\n delegation --audience <did> --out <file> mint an owner\u2192oracle claim-bot delegation CAR\n (--for engine mints the billing one instead)\n\nchain (needs a login; nothing is signed without --yes)\n oracle init --protocol <did> --kit-url <url> [--logo <url|file>] [--openhands]\n provision this oracle (13 steps): fund its wallet,\n its IID + Ed25519 key, its Matrix account, its\n entity + profile + domain card + agent card\n publish-protocol --rubric <file> --form <file> publish a protocol entity + its #vct and #rub\n [--name <text> [--description <text>]] \u2026 and its #pro profile, so apps show its name\n publish-protocol --phase rub --protocol <did> --rubric <file> --form <file>\n anchor/replace #rub alone on a protocol that\n already has its form\n create-deed --protocol <did> --title <name> create a deed linked to that protocol\n create-collection --entity <deed> --protocol <did> --eval-amount <uixo>\n create/fund/grant a claim collection\n submit-claim --collection <id> --answers <file> submit a test claim as the logged-in wallet\n org create --name <name> [--logo <url>] create an organisation (a dao entity) your login\n controls \u2014 or print the one it owns by that name\n org balance --entity <did> an organisation's admin account and its balances\n org fund --entity <did> --amount <n> [--coin ixo|usdc]\n send coins from your wallet to that admin account\n\nthis oracle\n register --collection <id> enrol a collection with this oracle, as its owner\n scan --collection <id> make this oracle scan an enrolled collection now\n relink [--collection <id>]\u2026 operator: link watched collections to their company's\n Decision API sources, as register does (ORACLE_ADMIN_DIDS)\n reviewer-note <claimId> operator: (re)make a held claim's reviewer note (ORACLE_ADMIN_DIDS)\n erase (<claimId>\u2026 | --collection <id>) [--yes]\n as the collection's owner, erase claims' transcripts and\n registry text (the oracle never deletes them on its own)\n manifest <protocol did> the engine's work order for a protocol's rubric\n engine register [--env <name>] [--env-file <path>] [--yes]\n register this oracle with the engine now (payable at the\n Standard plan at once), not lazily at the first decide\n\nthe Decision API (API_LANE on; signed as your login, --kit <url> or .dev.vars' host)\n api source create --name <n> --contact <email> --entity <did>\n add this oracle to your organisation \u2014 its\n webhook secret shown ONCE; pending-link\n api source link <sourceId> sign the organisation's link at the engine and\n sync it: pending-link \u2192 active\n api sources the sources your login belongs to\n api key create --source <id> --scopes <s,\u2026> [--name <n>] [--max-spend-cents <n>]\n mint an API key \u2014 shown ONCE\n api keys --source <id> a source's keys, masked\n api key revoke --source <id> <prefix|masked key> [--grace-days <n>]\n api admin sources every source (your DID in ORACLE_ADMIN_DIDS)\n api admin pause <sourceId> [--note <text>]\n api admin resume <sourceId>\n api admin protocols <sourceId> <did,\u2026>|--none replace a source's allowed protocols\n api admin billing-mode <sourceId> x402|none\n (a source link, a key revoke and every admin change is a dry run without --yes; --json prints the raw answer;\n api --help for the flags)\n\nyour handlers\n protocol review <protocol did> what a protocol's rubric asks your oracle to produce\n facts scaffold <protocol did> [--all] a stub handler + a test per name needing one\n facts run --protocol <did> --claim <file> [--preview] [--no-ai]\n run your handlers against a claim file (its answers, or\n { answers, attachments }) \u2014 no chain, no credits; a rubric's\n dup lane needs D1, so here it stands in as \"review\"\n\nrubric authoring\n rubric fetch-form --protocol <did> --out <file> download a protocol's live claim form (#vct)\n rubric validate --rubric <file> --form <file> check a rubric with the engine's own binder\n\nevery network-facing command takes --network devnet|testnet|mainnet (default devnet); every\nengine-facing one takes --engine-url <url>.\n";
|
|
4
|
+
export declare const USAGE = "usage: decision-oracle <command> [options]\n\nproject\n init <dir> [--name <project-name>] [--openhands] generate a new oracle project (never installs for you);\n --openhands makes it an OpenHands checker\n skills sync [--dir <path>] refresh the package's Claude skills (default .claude/skills)\n\nidentity\n derive (\"<mnemonic>\" | --new) [--write <file> [--as <VAR>]]\n the ORACLE_* lines for .dev.vars, from a chain mnemonic;\n --write appends the key to that file (0600) instead of\n printing it, under --as (default ORACLE_SECP_MNEMONIC)\n login sign in to ixo AuthHub \u2014 once per network\n login --session-file <json> [--yes] no browser: save a session obtained elsewhere (a service or\n test account); --yes replaces an existing one\n logout forget that network's saved session ({ removed, path })\n delegation --audience <did> --out <file> mint an owner\u2192oracle claim-bot delegation CAR\n (--for engine mints the billing one instead)\n\nchain (needs a login; nothing is signed without --yes)\n oracle init --protocol <did> --kit-url <url> [--logo <url|file>] [--openhands]\n provision this oracle (13 steps): fund its wallet,\n its IID + Ed25519 key, its Matrix account, its\n entity + profile + domain card + agent card\n publish-protocol --rubric <file> --form <file> publish a protocol entity + its #vct and #rub\n [--name <text> [--description <text>]] \u2026 and its #pro profile, so apps show its name\n publish-protocol --phase rub --protocol <did> --rubric <file> --form <file>\n anchor/replace #rub alone on a protocol that\n already has its form\n create-deed --protocol <did> --title <name> create a deed linked to that protocol\n create-collection --entity <deed> --protocol <did> --eval-amount <uixo>\n create/fund/grant a claim collection\n submit-claim --collection <id> --answers <file> submit a test claim as the logged-in wallet\n org create --name <name> [--logo <url>] create an organisation (a dao entity) your login\n controls \u2014 or print the one it owns by that name\n org balance --entity <did> an organisation's admin account and its balances\n org fund --entity <did> --amount <n> [--coin ixo|usdc]\n send coins from your wallet to that admin account\n\nthis oracle\n register --collection <id> enrol a collection with this oracle, as its owner\n scan --collection <id> make this oracle scan an enrolled collection now\n relink [--collection <id>]\u2026 operator: link watched collections to their company's\n Decision API sources, as register does (ORACLE_ADMIN_DIDS)\n reviewer-note <claimId> operator: (re)make a held claim's reviewer note (ORACLE_ADMIN_DIDS)\n redeliver <claimId> [--yes] operator: rebuild the facts of a decided claim parked without\n them and sign its evaluation on chain (ORACLE_ADMIN_DIDS)\n erase (<claimId>\u2026 | --collection <id>) [--yes]\n as the collection's owner, erase claims' transcripts and\n registry text (the oracle never deletes them on its own)\n manifest <protocol did> the engine's work order for a protocol's rubric\n engine register [--env <name>] [--env-file <path>] [--yes]\n register this oracle with the engine now (payable at the\n Standard plan at once), not lazily at the first decide\n\nthe Decision API (API_LANE on; signed as your login, --kit <url> or .dev.vars' host)\n api source create --name <n> --contact <email> --entity <did>\n add this oracle to your organisation \u2014 its\n webhook secret shown ONCE; pending-link\n api source link <sourceId> sign the organisation's link at the engine and\n sync it: pending-link \u2192 active\n api sources the sources your login belongs to\n api key create --source <id> --scopes <s,\u2026> [--name <n>] [--max-spend-cents <n>]\n mint an API key \u2014 shown ONCE\n api keys --source <id> a source's keys, masked\n api key revoke --source <id> <prefix|masked key> [--grace-days <n>]\n api admin sources every source (your DID in ORACLE_ADMIN_DIDS)\n api admin pause <sourceId> [--note <text>]\n api admin resume <sourceId>\n api admin protocols <sourceId> <did,\u2026>|--none replace a source's allowed protocols\n api admin billing-mode <sourceId> x402|none\n (a source link, a key revoke and every admin change is a dry run without --yes; --json prints the raw answer;\n api --help for the flags)\n\nyour handlers\n protocol review <protocol did> what a protocol's rubric asks your oracle to produce\n facts scaffold <protocol did> [--all] a stub handler + a test per name needing one\n facts run --protocol <did> --claim <file> [--preview] [--no-ai]\n run your handlers against a claim file (its answers, or\n { answers, attachments }) \u2014 no chain, no credits; a rubric's\n dup lane needs D1, so here it stands in as \"review\"\n\nrubric authoring\n rubric fetch-form --protocol <did> --out <file> download a protocol's live claim form (#vct)\n rubric validate --rubric <file> --form <file> check a rubric with the engine's own binder\n\nevery network-facing command takes --network devnet|testnet|mainnet (default devnet); every\nengine-facing one takes --engine-url <url>.\n";
|
|
5
5
|
/**
|
|
6
6
|
* The usage lines for one command — every entry whose text starts with it (`engine` → `engine
|
|
7
7
|
* register …`), each with its continuation lines — or null when none does. An entry is a line
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/usage.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/usage.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,KAAK,o6MAwFjB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAgBvD"}
|
package/dist/cli/lib/usage.js
CHANGED
|
@@ -46,6 +46,8 @@ this oracle
|
|
|
46
46
|
relink [--collection <id>]… operator: link watched collections to their company's
|
|
47
47
|
Decision API sources, as register does (ORACLE_ADMIN_DIDS)
|
|
48
48
|
reviewer-note <claimId> operator: (re)make a held claim's reviewer note (ORACLE_ADMIN_DIDS)
|
|
49
|
+
redeliver <claimId> [--yes] operator: rebuild the facts of a decided claim parked without
|
|
50
|
+
them and sign its evaluation on chain (ORACLE_ADMIN_DIDS)
|
|
49
51
|
erase (<claimId>… | --collection <id>) [--yes]
|
|
50
52
|
as the collection's owner, erase claims' transcripts and
|
|
51
53
|
registry text (the oracle never deletes them on its own)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage.js","sourceRoot":"","sources":["../../../src/cli/lib/usage.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,CAAC,MAAM,KAAK,GAAG
|
|
1
|
+
{"version":3,"file":"usage.js","sourceRoot":"","sources":["../../../src/cli/lib/usage.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,CAAC,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwFpB,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,QAAQ,CAAC,OAAe;IACtC,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACf,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,GAAG,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC;YAC5D,IAAI,MAAM;gBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;aAAM,IAAI,MAAM,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3C,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,KAAK,CAAC;QACjB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,0BAA0B,OAAO,SAAS,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC5F,CAAC"}
|
|
@@ -56,6 +56,14 @@ export declare const aiCallTimeoutMs: (sent: readonly AiInput[]) => number;
|
|
|
56
56
|
* which the code turns into an error fact (the rubric's `onError`) — an unreadable photo is not
|
|
57
57
|
* evidence of anything, so it must never become `valid:false` and a gate reject.
|
|
58
58
|
*
|
|
59
|
+
* STRICTNESS is the rubric's, not this prefix's (2026-10-21). The prefix used to say "do not give
|
|
60
|
+
* benefit of the doubt", which overrode every rubric that asks for leniency (the OpenHands
|
|
61
|
+
* bridge's "a dim or low-resolution photo is still evidence … let your score carry the doubt").
|
|
62
|
+
* So it is neutral: each rule is judged as its own text states it, lenient where it says so,
|
|
63
|
+
* failing on doubt where it says so, and a rule silent on doubt fails when the inputs do not show
|
|
64
|
+
* what it requires. It adds no rule of its own either — a screen or a print is not a real photo
|
|
65
|
+
* only where a rule asks for one.
|
|
66
|
+
*
|
|
59
67
|
* COMPARISON is the one variant of the prefix, added when two or more images reach the model (a
|
|
60
68
|
* before/after pair): the work being judged changes the subject between the photos, so an
|
|
61
69
|
* expected change (cleaner, a colour revealed, other light) must not read as a different subject —
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-check.d.ts","sourceRoot":"","sources":["../../../../src/lib/facts/stock/ai-check.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAG7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EACL,KAAK,OAAO,EAUb,MAAM,aAAa,CAAC;AAarB,qGAAqG;AACrG,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,WAAW,CAAC;IACnB,sEAAsE;IACtE,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,UAAU,CAAC;IAClB,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,QAAmB,CAAC;AAQxD;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,QAAY,CAAC;AAC5C,eAAO,MAAM,uBAAuB,QAAgB,CAAC;AACrD,eAAO,MAAM,eAAe,SAAU,SAAS,OAAO,EAAE,KAAG,MAGnC,CAAC;AAMzB
|
|
1
|
+
{"version":3,"file":"ai-check.d.ts","sourceRoot":"","sources":["../../../../src/lib/facts/stock/ai-check.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAG7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EACL,KAAK,OAAO,EAUb,MAAM,aAAa,CAAC;AAarB,qGAAqG;AACrG,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,WAAW,CAAC;IACnB,sEAAsE;IACtE,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,UAAU,CAAC;IAClB,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,QAAmB,CAAC;AAQxD;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,QAAY,CAAC;AAC5C,eAAO,MAAM,uBAAuB,QAAgB,CAAC;AACrD,eAAO,MAAM,eAAe,SAAU,SAAS,OAAO,EAAE,KAAG,MAGnC,CAAC;AAMzB;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,EACvC,IAAI,GAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,MAAM,CAuCR;AAmED,iGAAiG;AACjG,MAAM,MAAM,SAAS,GAAG,IAAI,CAC1B,YAAY,EACZ,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,KAAK,CAC/F,CAAC;AAEF;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAM1F;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE;IACL,KAAK,EAAE,WAAW,CAAC;IACnB,yFAAyF;IACzF,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC7B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,EACD,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,MAAM,CAAC,CAsXjB"}
|
|
@@ -59,6 +59,14 @@ const ruleId = (i) => `R${i + 1}`;
|
|
|
59
59
|
* which the code turns into an error fact (the rubric's `onError`) — an unreadable photo is not
|
|
60
60
|
* evidence of anything, so it must never become `valid:false` and a gate reject.
|
|
61
61
|
*
|
|
62
|
+
* STRICTNESS is the rubric's, not this prefix's (2026-10-21). The prefix used to say "do not give
|
|
63
|
+
* benefit of the doubt", which overrode every rubric that asks for leniency (the OpenHands
|
|
64
|
+
* bridge's "a dim or low-resolution photo is still evidence … let your score carry the doubt").
|
|
65
|
+
* So it is neutral: each rule is judged as its own text states it, lenient where it says so,
|
|
66
|
+
* failing on doubt where it says so, and a rule silent on doubt fails when the inputs do not show
|
|
67
|
+
* what it requires. It adds no rule of its own either — a screen or a print is not a real photo
|
|
68
|
+
* only where a rule asks for one.
|
|
69
|
+
*
|
|
62
70
|
* COMPARISON is the one variant of the prefix, added when two or more images reach the model (a
|
|
63
71
|
* before/after pair): the work being judged changes the subject between the photos, so an
|
|
64
72
|
* expected change (cleaner, a colour revealed, other light) must not read as a different subject —
|
|
@@ -67,7 +75,7 @@ const ruleId = (i) => `R${i + 1}`;
|
|
|
67
75
|
export function aiSystemPrompt(check, opts = {}) {
|
|
68
76
|
const rules = check.instructions.map((rule, i) => `[${ruleId(i)}] ${rule}`).join("\n");
|
|
69
77
|
return [
|
|
70
|
-
"You are a
|
|
78
|
+
"You are a compliance evaluator. You receive one or more INPUTS (text, images, documents) and a numbered ruleset. You decide whether the inputs satisfy EVERY rule.",
|
|
71
79
|
"",
|
|
72
80
|
"INPUTS",
|
|
73
81
|
"Each input is labeled [INPUT 1: <kind>], [INPUT 2: <kind>], and so on. For an image or document the label also states the file's name and MIME type, e.g. [INPUT 1: file — filename: \"report.pdf\", type: application/pdf] — a rule about a file's name or file type is judged from that label. A rule may target a specific input by number, or apply to all of them. If a rule names an input that was not provided, that rule FAILS.",
|
|
@@ -85,9 +93,9 @@ export function aiSystemPrompt(check, opts = {}) {
|
|
|
85
93
|
"",
|
|
86
94
|
"VERDICT POLICY",
|
|
87
95
|
"- valid = true only if ZERO rules fail and ZERO are undeterminable.",
|
|
88
|
-
"- Judge what is present.
|
|
89
|
-
"-
|
|
90
|
-
"- If an input
|
|
96
|
+
"- Judge each rule exactly as its own text states it, against what is present in the inputs. Add no requirement a rule does not state, and drop none it does.",
|
|
97
|
+
"- How strict to be is the ruleset's to say, not yours. Where a rule tells you to be lenient, to read evidence generously, or to let doubt lower your score rather than fail, do that. Where a rule tells you to fail on doubt, or on anything missing, fail. Where a rule says neither, it fails when the inputs do not show what it requires.",
|
|
98
|
+
"- If an input cannot be read well enough to judge a rule either way — even read the way the ruleset says to read it — that rule is UNDETERMINABLE: list it in `undeterminable_rules`, never in `failed_rules`. Undeterminable means the evidence cannot be read, never that the answer is unwelcome or uncertain; a readable input you are unsure about is judged and scored.",
|
|
91
99
|
"",
|
|
92
100
|
...(opts.comparison ? COMPARISON : []),
|
|
93
101
|
"SCORE (0-100)",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-check.js","sourceRoot":"","sources":["../../../../src/lib/facts/stock/ai-check.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ai-check.js","sourceRoot":"","sources":["../../../../src/lib/facts/stock/ai-check.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ import type { AppEnv } from "../context.js";
|
|
|
13
13
|
/** Until the strict step: an invocation still minting `{ can: "*" }` keeps working. */
|
|
14
14
|
export declare const ACCEPT_WILDCARD = true;
|
|
15
15
|
/** [method, path pattern (`:param` = one segment), the one action it accepts]. */
|
|
16
|
-
export declare const ROUTE_ACTIONS: readonly [readonly ["POST", "/v1/collections/register", "collections/register"], readonly ["GET", "/v1/collections", "collections/read"], readonly ["POST", "/v1/collections/:collectionId/pause", "collections/pause"], readonly ["POST", "/v1/collections/:collectionId/resume", "collections/resume"], readonly ["POST", "/v1/collections/:collectionId/scan", "collections/scan"], readonly ["PATCH", "/v1/collections/:collectionId/settings", "collections/settings"], readonly ["GET", "/v1/collections/:collectionId/settings", "collections/settings-read"], readonly ["POST", "/v1/collections/:collectionId/reviewers", "collections/reviewers-grant"], readonly ["GET", "/v1/collections/:collectionId/reviewers", "collections/reviewers-read"], readonly ["POST", "/v1/collections/:collectionId/reviewers/:delegationCid/revoke", "collections/reviewers-revoke"], readonly ["GET", "/v1/claims", "claims/read"], readonly ["GET", "/v1/claims/:claimId", "claims/read"], readonly ["DELETE", "/v1/claims/:claimId/body", "claims/erase"], readonly ["GET", "/v1/reviews/:claimId", "reviews/read"], readonly ["POST", "/v1/reviews/:claimId", "reviews/submit"], readonly ["GET", "/v1/admin/status", "admin/status"], readonly ["POST", "/v1/admin/collections/relink", "admin/collections-relink"], readonly ["POST", "/v1/admin/claims/:claimId/reviewer-note", "admin/reviewer-note"], readonly ["GET", "/v1/oauth/approvals/:approvalId", "oauth/approval/read"], readonly ["POST", "/v1/oauth/approvals/:approvalId", "oauth/approval/approve"], readonly ["GET", "/v1/oauth/standing/:grantId", "oauth/standing/read"], readonly ["PUT", "/v1/oauth/standing/:grantId", "oauth/standing/set"], readonly ["DELETE", "/v1/oauth/standing/:grantId", "oauth/standing/revoke"]];
|
|
16
|
+
export declare const ROUTE_ACTIONS: readonly [readonly ["POST", "/v1/collections/register", "collections/register"], readonly ["GET", "/v1/collections", "collections/read"], readonly ["POST", "/v1/collections/:collectionId/pause", "collections/pause"], readonly ["POST", "/v1/collections/:collectionId/resume", "collections/resume"], readonly ["POST", "/v1/collections/:collectionId/scan", "collections/scan"], readonly ["PATCH", "/v1/collections/:collectionId/settings", "collections/settings"], readonly ["GET", "/v1/collections/:collectionId/settings", "collections/settings-read"], readonly ["POST", "/v1/collections/:collectionId/reviewers", "collections/reviewers-grant"], readonly ["GET", "/v1/collections/:collectionId/reviewers", "collections/reviewers-read"], readonly ["POST", "/v1/collections/:collectionId/reviewers/:delegationCid/revoke", "collections/reviewers-revoke"], readonly ["GET", "/v1/claims", "claims/read"], readonly ["GET", "/v1/claims/:claimId", "claims/read"], readonly ["DELETE", "/v1/claims/:claimId/body", "claims/erase"], readonly ["GET", "/v1/reviews/:claimId", "reviews/read"], readonly ["POST", "/v1/reviews/:claimId", "reviews/submit"], readonly ["GET", "/v1/admin/status", "admin/status"], readonly ["POST", "/v1/admin/collections/relink", "admin/collections-relink"], readonly ["POST", "/v1/admin/claims/:claimId/reviewer-note", "admin/reviewer-note"], readonly ["POST", "/v1/admin/claims/:claimId/redeliver", "admin/redeliver"], readonly ["GET", "/v1/oauth/approvals/:approvalId", "oauth/approval/read"], readonly ["POST", "/v1/oauth/approvals/:approvalId", "oauth/approval/approve"], readonly ["GET", "/v1/oauth/standing/:grantId", "oauth/standing/read"], readonly ["PUT", "/v1/oauth/standing/:grantId", "oauth/standing/set"], readonly ["DELETE", "/v1/oauth/standing/:grantId", "oauth/standing/revoke"]];
|
|
17
17
|
export type OracleAction = (typeof ROUTE_ACTIONS)[number][2];
|
|
18
18
|
/** Actions the legacy `*` NEVER stands in for, whatever `ACCEPT_WILDCARD` says (S3 review §3). */
|
|
19
19
|
export declare const STRICT_ACTIONS: ReadonlySet<OracleAction>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capability.d.ts","sourceRoot":"","sources":["../../src/middleware/capability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAGzC,uFAAuF;AACvF,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC,kFAAkF;AAClF,eAAO,MAAM,aAAa,sBACvB,MAAM,EAAE,0BAA0B,EAAE,sBAAsB,aAC1D,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,aAC5C,MAAM,EAAE,qCAAqC,EAAE,mBAAmB,aAClE,MAAM,EAAE,sCAAsC,EAAE,oBAAoB,aACpE,MAAM,EAAE,oCAAoC,EAAE,kBAAkB,aAEhE,OAAO,EAAE,wCAAwC,EAAE,sBAAsB,aACzE,KAAK,EAAE,wCAAwC,EAAE,2BAA2B,aAE5E,MAAM,EAAE,yCAAyC,EAAE,6BAA6B,aAChF,KAAK,EAAE,yCAAyC,EAAE,4BAA4B,aAE7E,MAAM,EACN,+DAA+D,EAC/D,8BAA8B,aAE/B,KAAK,EAAE,YAAY,EAAE,aAAa,aAClC,KAAK,EAAE,qBAAqB,EAAE,aAAa,aAE3C,QAAQ,EAAE,0BAA0B,EAAE,cAAc,aACpD,KAAK,EAAE,sBAAsB,EAAE,cAAc,aAC7C,MAAM,EAAE,sBAAsB,EAAE,gBAAgB,aAChD,KAAK,EAAE,kBAAkB,EAAE,cAAc,aAEzC,MAAM,EAAE,8BAA8B,EAAE,0BAA0B,aAElE,MAAM,EAAE,yCAAyC,EAAE,qBAAqB,aAExE,KAAK,EAAE,iCAAiC,EAAE,qBAAqB,aAC/D,MAAM,EAAE,iCAAiC,EAAE,wBAAwB,aAEnE,KAAK,EAAE,6BAA6B,EAAE,qBAAqB,aAC3D,KAAK,EAAE,6BAA6B,EAAE,oBAAoB,aAC1D,QAAQ,EAAE,6BAA6B,EAAE,uBAAuB,EACzD,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAE7D,kGAAkG;AAClG,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,YAAY,
|
|
1
|
+
{"version":3,"file":"capability.d.ts","sourceRoot":"","sources":["../../src/middleware/capability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAGzC,uFAAuF;AACvF,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC,kFAAkF;AAClF,eAAO,MAAM,aAAa,sBACvB,MAAM,EAAE,0BAA0B,EAAE,sBAAsB,aAC1D,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,aAC5C,MAAM,EAAE,qCAAqC,EAAE,mBAAmB,aAClE,MAAM,EAAE,sCAAsC,EAAE,oBAAoB,aACpE,MAAM,EAAE,oCAAoC,EAAE,kBAAkB,aAEhE,OAAO,EAAE,wCAAwC,EAAE,sBAAsB,aACzE,KAAK,EAAE,wCAAwC,EAAE,2BAA2B,aAE5E,MAAM,EAAE,yCAAyC,EAAE,6BAA6B,aAChF,KAAK,EAAE,yCAAyC,EAAE,4BAA4B,aAE7E,MAAM,EACN,+DAA+D,EAC/D,8BAA8B,aAE/B,KAAK,EAAE,YAAY,EAAE,aAAa,aAClC,KAAK,EAAE,qBAAqB,EAAE,aAAa,aAE3C,QAAQ,EAAE,0BAA0B,EAAE,cAAc,aACpD,KAAK,EAAE,sBAAsB,EAAE,cAAc,aAC7C,MAAM,EAAE,sBAAsB,EAAE,gBAAgB,aAChD,KAAK,EAAE,kBAAkB,EAAE,cAAc,aAEzC,MAAM,EAAE,8BAA8B,EAAE,0BAA0B,aAElE,MAAM,EAAE,yCAAyC,EAAE,qBAAqB,aAExE,MAAM,EAAE,qCAAqC,EAAE,iBAAiB,aAEhE,KAAK,EAAE,iCAAiC,EAAE,qBAAqB,aAC/D,MAAM,EAAE,iCAAiC,EAAE,wBAAwB,aAEnE,KAAK,EAAE,6BAA6B,EAAE,qBAAqB,aAC3D,KAAK,EAAE,6BAA6B,EAAE,oBAAoB,aAC1D,QAAQ,EAAE,6BAA6B,EAAE,uBAAuB,EACzD,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAE7D,kGAAkG;AAClG,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,YAAY,CAoBnD,CAAC;AAEH,uGAAuG;AACvG,eAAO,MAAM,aAAa,EAAE,SAAS,MAAM,EAK1C,CAAC;AAUF;sFACsF;AACtF,wBAAgB,SAAS,CACvB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACX;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,YAAY,CAAA;CAAE,GAAG,IAAI,CAIlD;AAED;;gCAEgC;AAChC,eAAO,MAAM,aAAa,gEAuBxB,CAAC"}
|
|
@@ -42,6 +42,8 @@ export const ROUTE_ACTIONS = [
|
|
|
42
42
|
["POST", "/v1/admin/collections/relink", "admin/collections-relink"],
|
|
43
43
|
// The operator's reviewer-note (re)make for a held claim (lib/review/reviewer-note.ts) — strict.
|
|
44
44
|
["POST", "/v1/admin/claims/:claimId/reviewer-note", "admin/reviewer-note"],
|
|
45
|
+
// The operator's release of a decided claim parked without facts (routes/v1/admin.ts) — strict.
|
|
46
|
+
["POST", "/v1/admin/claims/:claimId/redeliver", "admin/redeliver"],
|
|
45
47
|
// AuthHub's approvals back-channel (MCP over OAuth, S7) — strict from day one, below.
|
|
46
48
|
["GET", "/v1/oauth/approvals/:approvalId", "oauth/approval/read"],
|
|
47
49
|
["POST", "/v1/oauth/approvals/:approvalId", "oauth/approval/approve"],
|
|
@@ -64,6 +66,8 @@ export const STRICT_ACTIONS = new Set([
|
|
|
64
66
|
"admin/collections-relink",
|
|
65
67
|
// It spends a model call and re-reads a claim body: only a token minted for it.
|
|
66
68
|
"admin/reviewer-note",
|
|
69
|
+
// It signs a chain tx: only a token minted for it.
|
|
70
|
+
"admin/redeliver",
|
|
67
71
|
"oauth/approval/read",
|
|
68
72
|
"oauth/approval/approve",
|
|
69
73
|
"oauth/standing/read",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capability.js","sourceRoot":"","sources":["../../src/middleware/capability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,uFAAuF;AACvF,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC;AAEpC,kFAAkF;AAClF,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,CAAC,MAAM,EAAE,0BAA0B,EAAE,sBAAsB,CAAC;IAC5D,CAAC,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,CAAC;IAC9C,CAAC,MAAM,EAAE,qCAAqC,EAAE,mBAAmB,CAAC;IACpE,CAAC,MAAM,EAAE,sCAAsC,EAAE,oBAAoB,CAAC;IACtE,CAAC,MAAM,EAAE,oCAAoC,EAAE,kBAAkB,CAAC;IAClE,4EAA4E;IAC5E,CAAC,OAAO,EAAE,wCAAwC,EAAE,sBAAsB,CAAC;IAC3E,CAAC,KAAK,EAAE,wCAAwC,EAAE,2BAA2B,CAAC;IAC9E,+EAA+E;IAC/E,CAAC,MAAM,EAAE,yCAAyC,EAAE,6BAA6B,CAAC;IAClF,CAAC,KAAK,EAAE,yCAAyC,EAAE,4BAA4B,CAAC;IAChF;QACE,MAAM;QACN,+DAA+D;QAC/D,8BAA8B;KAC/B;IACD,CAAC,KAAK,EAAE,YAAY,EAAE,aAAa,CAAC;IACpC,CAAC,KAAK,EAAE,qBAAqB,EAAE,aAAa,CAAC;IAC7C,0EAA0E;IAC1E,CAAC,QAAQ,EAAE,0BAA0B,EAAE,cAAc,CAAC;IACtD,CAAC,KAAK,EAAE,sBAAsB,EAAE,cAAc,CAAC;IAC/C,CAAC,MAAM,EAAE,sBAAsB,EAAE,gBAAgB,CAAC;IAClD,CAAC,KAAK,EAAE,kBAAkB,EAAE,cAAc,CAAC;IAC3C,uFAAuF;IACvF,CAAC,MAAM,EAAE,8BAA8B,EAAE,0BAA0B,CAAC;IACpE,iGAAiG;IACjG,CAAC,MAAM,EAAE,yCAAyC,EAAE,qBAAqB,CAAC;IAC1E,sFAAsF;IACtF,CAAC,KAAK,EAAE,iCAAiC,EAAE,qBAAqB,CAAC;IACjE,CAAC,MAAM,EAAE,iCAAiC,EAAE,wBAAwB,CAAC;IACrE,2EAA2E;IAC3E,CAAC,KAAK,EAAE,6BAA6B,EAAE,qBAAqB,CAAC;IAC7D,CAAC,KAAK,EAAE,6BAA6B,EAAE,oBAAoB,CAAC;IAC5D,CAAC,QAAQ,EAAE,6BAA6B,EAAE,uBAAuB,CAAC;CAC1D,CAAC;AAIX,kGAAkG;AAClG,MAAM,CAAC,MAAM,cAAc,GAA8B,IAAI,GAAG,CAAC;IAC/D,sBAAsB;IACtB,2BAA2B;IAC3B,6BAA6B;IAC7B,4BAA4B;IAC5B,8BAA8B;IAC9B,yDAAyD;IACzD,cAAc;IACd,iGAAiG;IACjG,gBAAgB;IAChB,0BAA0B;IAC1B,gFAAgF;IAChF,qBAAqB;IACrB,qBAAqB;IACrB,wBAAwB;IACxB,qBAAqB;IACrB,oBAAoB;IACpB,uBAAuB;CACxB,CAAC,CAAC;AAEH,uGAAuG;AACvG,MAAM,CAAC,MAAM,aAAa,GAAsB;IAC9C,GAAG,IAAI,GAAG,CAAS;QACjB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,AAAD,EAAG,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC;QAC9C,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAClC,CAAC;CACH,CAAC;AAEF,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;IACjE,MAAM;IACN,OAAO;IACP,MAAM;IACN,gGAAgG;IAChG,EAAE,EAAE,IAAI,MAAM,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC;CACjE,CAAC,CAAC,CAAC;AAEJ;sFACsF;AACtF,MAAM,UAAU,SAAS,CACvB,MAAc,EACd,IAAY;IAEZ,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IAC5E,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACrE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7D,CAAC;AAED;;gCAEgC;AAChC,MAAM,CAAC,MAAM,aAAa,GAAG,gBAAgB,CAAS,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;IACtE,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClD,IAAI,eAAe,IAAI,SAAS,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,KAAK,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QAC7F,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YACnD,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC;YACzF,kEAAkE;YAClE,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC;IACD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,QAAQ,CAAC,SAAS,CACtB,uBAAuB,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,yBAAyB,SAAS,CAAC,GAAG,IAAI,CAC5F,CAAC;IACJ,CAAC;IACD,IAAI,SAAS,CAAC,GAAG,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;QACnC,MAAM,QAAQ,CAAC,SAAS,CACtB,gCAAgC,KAAK,CAAC,MAAM,yCAAyC,SAAS,CAAC,GAAG,IAAI,CACvG,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,EAAE,CAAC;AAChB,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"capability.js","sourceRoot":"","sources":["../../src/middleware/capability.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,9 @@
|
|
|
11
11
|
* `POST /v1/admin/collections/relink` — the operator's backfill of register's company links
|
|
12
12
|
* (`lib/register.ts` `relinkCollections`): collections watched before register linked them to their
|
|
13
13
|
* company's Decision API sources get the same links now. `ORACLE_ADMIN_DIDS` only — it writes.
|
|
14
|
+
*
|
|
15
|
+
* `POST /v1/admin/claims/:claimId/redeliver` — the operator's release of a decided claim parked
|
|
16
|
+
* without facts (below). `ORACLE_ADMIN_DIDS` only — it signs.
|
|
14
17
|
*/
|
|
15
18
|
import { Hono } from "hono";
|
|
16
19
|
import type { AppEnv } from "../../context.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin.d.ts","sourceRoot":"","sources":["../../../src/routes/v1/admin.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"admin.d.ts","sourceRoot":"","sources":["../../../src/routes/v1/admin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAiB5C,eAAO,MAAM,KAAK,qDAAqB,CAAC"}
|
package/dist/routes/v1/admin.js
CHANGED
|
@@ -11,14 +11,22 @@
|
|
|
11
11
|
* `POST /v1/admin/collections/relink` — the operator's backfill of register's company links
|
|
12
12
|
* (`lib/register.ts` `relinkCollections`): collections watched before register linked them to their
|
|
13
13
|
* company's Decision API sources get the same links now. `ORACLE_ADMIN_DIDS` only — it writes.
|
|
14
|
+
*
|
|
15
|
+
* `POST /v1/admin/claims/:claimId/redeliver` — the operator's release of a decided claim parked
|
|
16
|
+
* without facts (below). `ORACLE_ADMIN_DIDS` only — it signs.
|
|
14
17
|
*/
|
|
18
|
+
import { and, eq, isNull } from "drizzle-orm";
|
|
15
19
|
import { Hono } from "hono";
|
|
16
20
|
import { z } from "zod";
|
|
17
21
|
import { CollectionId } from "../../contracts/index.js";
|
|
18
22
|
import { readApiBacklog, readChainBacklog } from "../../cron/backlog.js";
|
|
23
|
+
import { decisions } from "../../db/schema.js";
|
|
19
24
|
import { createEngineClient } from "../../lib/engine/client.js";
|
|
20
25
|
import { AppError } from "../../lib/errors.js";
|
|
26
|
+
import { buildFacts, factDeps } from "../../lib/facts/builder.js";
|
|
27
|
+
import { factsDigest } from "../../lib/facts/factset.js";
|
|
21
28
|
import { depsFromEnv } from "../../lib/ixo/index.js";
|
|
29
|
+
import { deliverChainEvaluation } from "../../lib/ixo/chain-write.js";
|
|
22
30
|
import { readiness } from "../../lib/readiness.js";
|
|
23
31
|
import { RELINK_CAP, relinkCollections } from "../../lib/register.js";
|
|
24
32
|
import { writeReviewerNote } from "../../lib/review/reviewer-note.js";
|
|
@@ -157,4 +165,98 @@ admin.post("/claims/:claimId/reviewer-note", validate("param", ClaimParam), asyn
|
|
|
157
165
|
});
|
|
158
166
|
return c.json({ claimId, written: note !== null }, note ? 200 : 503);
|
|
159
167
|
});
|
|
168
|
+
/**
|
|
169
|
+
* Release a decided claim whose chain delivery is stuck on missing facts: an approve/reject the
|
|
170
|
+
* engine decided and receipted, parked `blocked` because the evaluate step's recovery path
|
|
171
|
+
* (claim-ingest.ts `recordRecovered`) could not freeze the facts the act policy reads. Nothing
|
|
172
|
+
* retries those rows by itself — a workflow rerun finds the decision and returns it untouched.
|
|
173
|
+
* Operators only (ORACLE_ADMIN_DIDS); it signs a chain tx.
|
|
174
|
+
*
|
|
175
|
+
* One request, like the reviewer note: the pull and the build are what one evaluate attempt runs
|
|
176
|
+
* (the fact cache keeps a crashed attempt's paid answers), and a fresh ClaimIngest could not do it
|
|
177
|
+
* — its instance id is the claim's, and its evaluate step returns the recorded row as it is. The
|
|
178
|
+
* rebuilt facts are the act policy's inputs ONLY: never sent to the engine, whose decision and
|
|
179
|
+
* receipt stay exactly as recorded. A build for another rubric than the decision's is refused
|
|
180
|
+
* (those are not the facts it was decided on); a digest that differs from the engine's — an AI
|
|
181
|
+
* fact that answered differently this time — is stored and said (`factsDigestMatches`), the
|
|
182
|
+
* operator's call. A deterministic facts-lane failure is a 409 with no write; transient trouble
|
|
183
|
+
* throws and the operator runs it again. A row that already has facts goes straight to the
|
|
184
|
+
* idempotent delivery.
|
|
185
|
+
*/
|
|
186
|
+
admin.post("/claims/:claimId/redeliver", validate("param", ClaimParam), async (c) => {
|
|
187
|
+
const config = c.get("config");
|
|
188
|
+
if (!config.ORACLE_ADMIN_DIDS.includes(c.get("principal").did)) {
|
|
189
|
+
throw AppError.forbidden("Operators only (ORACLE_ADMIN_DIDS)");
|
|
190
|
+
}
|
|
191
|
+
const { claimId } = c.req.valid("param");
|
|
192
|
+
const db = await c.var.db();
|
|
193
|
+
const [decision, ingest] = await Promise.all([
|
|
194
|
+
db.query.decisions.findFirst({ where: (t, { eq }) => eq(t.claimId, claimId) }),
|
|
195
|
+
db.query.claimIngests.findFirst({ where: (t, { eq }) => eq(t.claimId, claimId) }),
|
|
196
|
+
]);
|
|
197
|
+
if (!decision)
|
|
198
|
+
throw AppError.notFound(`No decision for claim ${claimId}`);
|
|
199
|
+
const evaluationStatus = decision.decision?.evaluationStatus;
|
|
200
|
+
if (decision.status !== "decided" ||
|
|
201
|
+
(evaluationStatus !== 1 && evaluationStatus !== 2) ||
|
|
202
|
+
!decision.receiptCid ||
|
|
203
|
+
(decision.chainStatus !== "pending" && decision.chainStatus !== "blocked")) {
|
|
204
|
+
throw AppError.conflict(`Claim ${claimId} is not a receipted approve/reject waiting for the chain (${decision.status} / ${decision.verdict ?? "none"} / ${decision.chainStatus})`);
|
|
205
|
+
}
|
|
206
|
+
const deps = depsFromEnv(c.env, { claimId });
|
|
207
|
+
let factsDigestMatches = null;
|
|
208
|
+
if (!decision.facts) {
|
|
209
|
+
const source = sourceFor(ingest?.lane ?? "chain", c.env, deps);
|
|
210
|
+
const engine = createEngineClient({
|
|
211
|
+
config,
|
|
212
|
+
logger: deps.logger,
|
|
213
|
+
trace: deps.trace,
|
|
214
|
+
cache: c.env.CACHE_KV,
|
|
215
|
+
});
|
|
216
|
+
// Nothing is sent, so the content is dropped with the pull (as in `recordRecovered`).
|
|
217
|
+
const { content: _content, ...claim } = await source.pull(claimId);
|
|
218
|
+
const built = await buildFacts(factDeps(deps, claim.media, engine, db, c.env, source), {
|
|
219
|
+
claim,
|
|
220
|
+
protocolDid: await source.protocolDid(decision.collectionId),
|
|
221
|
+
});
|
|
222
|
+
if (!built.ok) {
|
|
223
|
+
throw AppError.conflict(`Facts could not be rebuilt for ${claimId}: ${built.reason}`, {
|
|
224
|
+
reason: built.reason,
|
|
225
|
+
issues: built.issues,
|
|
226
|
+
});
|
|
227
|
+
}
|
|
228
|
+
if (decision.rubricId && built.rubricId !== decision.rubricId) {
|
|
229
|
+
throw AppError.conflict(`Claim ${claimId} was decided on rubric ${decision.rubricId}; the protocol now pins ${built.rubricId}`);
|
|
230
|
+
}
|
|
231
|
+
factsDigestMatches = (await factsDigest(built.facts)) === decision.factsDigest;
|
|
232
|
+
// One statement, and only onto a row still without facts. The park WAS the missing facts, so
|
|
233
|
+
// it is lifted with them; the delivery below writes whatever comes next.
|
|
234
|
+
await db
|
|
235
|
+
.update(decisions)
|
|
236
|
+
.set({
|
|
237
|
+
facts: { ext: built.facts.ext, ai: built.facts.ai },
|
|
238
|
+
chainStatus: "pending",
|
|
239
|
+
chainError: null,
|
|
240
|
+
})
|
|
241
|
+
.where(and(eq(decisions.claimId, claimId), isNull(decisions.facts)));
|
|
242
|
+
deps.logger.info("admin.redeliver.facts-stored", { claimId, factsDigestMatches });
|
|
243
|
+
}
|
|
244
|
+
const outcome = await deliverChainEvaluation({
|
|
245
|
+
config,
|
|
246
|
+
logger: deps.logger,
|
|
247
|
+
metrics: deps.metrics,
|
|
248
|
+
trace: deps.trace,
|
|
249
|
+
db,
|
|
250
|
+
sequenceManager: c.env.SEQUENCE_MANAGER,
|
|
251
|
+
cache: c.env.CACHE_KV,
|
|
252
|
+
email: c.env.EMAIL,
|
|
253
|
+
// What the act policy is handed (lib/ixo/chain-write.ts `ChainWriteDeps`).
|
|
254
|
+
env: c.env,
|
|
255
|
+
}, claimId);
|
|
256
|
+
const after = await db.query.decisions.findFirst({
|
|
257
|
+
where: (t, { eq }) => eq(t.claimId, claimId),
|
|
258
|
+
columns: { chainStatus: true, chainError: true, txHash: true },
|
|
259
|
+
});
|
|
260
|
+
return c.json({ claimId, outcome, factsDigestMatches, ...after });
|
|
261
|
+
});
|
|
160
262
|
//# sourceMappingURL=admin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin.js","sourceRoot":"","sources":["../../../src/routes/v1/admin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"admin.js","sourceRoot":"","sources":["../../../src/routes/v1/admin.ts"],"names":[],"mappings":"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"}
|
package/docs/api.md
CHANGED
|
@@ -1021,6 +1021,11 @@ numbered ruleset appended, the typed inputs last, strict structured output.
|
|
|
1021
1021
|
|
|
1022
1022
|
- **Policy gate:** `settings.allowAiChecks === false` ⇒ returns `error / ai-checks-disabled` with
|
|
1023
1023
|
**no model call**. Never approve on a check that did not run.
|
|
1024
|
+
- **Strictness is your rules':** the prompt judges each rule exactly as its text states it and adds
|
|
1025
|
+
no rule of its own. A rule that says to be lenient (a dim photo is still evidence, let doubt lower
|
|
1026
|
+
the score rather than fail) is judged leniently; a rule that says to fail on doubt fails on doubt;
|
|
1027
|
+
a rule silent on it fails when the inputs do not show what it requires. A check for screens,
|
|
1028
|
+
prints or generated images runs only where one of your rules asks for a real photo.
|
|
1024
1029
|
- **Model:** `opts.model` overrides the pinned `AI_CHECK_MODEL`.
|
|
1025
1030
|
- **Images:** sent at the pinned `AI_IMAGE_DETAIL` (default `high`), and the transcript records it.
|
|
1026
1031
|
- **Provider:** `AI_PROVIDER` — the Cloudflare AI Gateway (the `AI` binding + `AI_GATEWAY_ID`) by
|
|
@@ -1034,8 +1039,8 @@ numbered ruleset appended, the typed inputs last, strict structured output.
|
|
|
1034
1039
|
two calls under one name can never collide on the provider's cache.
|
|
1035
1040
|
- **Three outcomes per rule:** the strict schema is `{ failed_rules, undeterminable_rules, reason,
|
|
1036
1041
|
valid, score }`. A rule the readable evidence refutes **fails**; a rule the model cannot judge
|
|
1037
|
-
either way because an input is too blurred, dark, cropped, truncated or not sent
|
|
1038
|
-
**undeterminable**. Any undeterminable rule makes the fact an `error` (the rubric's `onError`,
|
|
1042
|
+
either way because an input is too blurred, dark, cropped, truncated or not sent — even read the
|
|
1043
|
+
way your rules say to read it — is **undeterminable**. Any undeterminable rule makes the fact an `error` (the rubric's `onError`,
|
|
1039
1044
|
detail `undeterminable: R1 (<rule text>) — <model reason>`), never `valid: false`, even when
|
|
1040
1045
|
another rule failed: an unreadable photo is not evidence that the work was not done.
|
|
1041
1046
|
- **Comparison guidance:** when two or more images reach the model (a before/after pair), the
|
|
@@ -1789,6 +1794,7 @@ check.**
|
|
|
1789
1794
|
| `GET /v1/admin/status` | UCAN `admin/status` + `ORACLE_ADMIN_DIDS` or `STATUS_READER_DIDS` (`403` otherwise — everyone, while both are unset) | `{ readiness: { ok, checks: { <name>: { ok, ms, critical, detail? } } }, backlog: { review: { pending }, collections: { paused: { total, <reason>: n } }, sources?: { paused }, webhooks?: { due, oldestAgeS } }, engine: { billingStatus, manageSubscriptionUrl } \| null }` — `sources`/`webhooks` only with `API_LANE` on; `engine` is the engine's `GET /v1/oracles/me`, `null` when it did not answer within 2 s; `detail` is set only on a failed `identity` or `owner-delegation` check and names the command to run. Outside the `/v1/api` contract |
|
|
1790
1795
|
| `POST /v1/admin/collections/relink` | UCAN `admin/collections-relink` (strict: never `*`) + `ORACLE_ADMIN_DIDS` (`403` otherwise) | The operator's backfill of register's company links. Body `{ collectionIds?: string[] }` (1–100 ids); absent ⇒ every watched collection, lowest id first, up to 100 (`truncated: true` says more exist — name them). Per collection, the same engine read and the same link register makes (no `active` source left unlinked ⇒ `unchanged`, no engine call) → `{ items: [{ collectionId, outcome: "linked" \| "unchanged" \| "no-company" \| "disputed" \| "unavailable" \| "not-watched", linkedSources }], truncated }`. Idempotent. CLI: `decision-oracle relink [--collection <id>]…`. Outside the `/v1/api` contract |
|
|
1791
1796
|
| `POST /v1/admin/claims/:claimId/reviewer-note` | UCAN `admin/reviewer-note` (strict: never `*`) + `ORACLE_ADMIN_DIDS` (`403` otherwise) | (Re)makes the reviewer note for a claim held for a person — one decided before the oracle made notes, or one whose note failed. Re-pulls the body through the claim's own lane, spends one model call, stores the note. `200 { claimId, written: true }`, `503 { written: false }` when the model gave none, `404` no decision, `409` not `pending_review`. The note itself is read on `GET /v1/reviews/:claimId`. CLI: `decision-oracle reviewer-note <claimId>`. Outside the `/v1/api` contract |
|
|
1797
|
+
| `POST /v1/admin/claims/:claimId/redeliver` | UCAN `admin/redeliver` (strict: never `*`) + `ORACLE_ADMIN_DIDS` (`403` otherwise) | Releases a decided approve/reject with a receipt whose delivery is `pending`/`blocked` — made for the row the evaluate step's recovery parked without facts. With `facts` null it re-pulls the body through the claim's own lane, rebuilds the facts (`buildFacts`, the collection's protocol) and stores their `ext`/`ai` on the row with `chainStatus: pending` in one statement — the act policy's inputs only, never sent to the engine, whose decision and receipt stay as recorded — then runs the idempotent `deliverChainEvaluation`. `200 { claimId, outcome, factsDigestMatches, chainStatus, chainError, txHash }` (`factsDigestMatches` null when the row had facts already, `false` when the rebuild differs from the engine's `factsDigest`, e.g. an AI fact answering differently — stored anyway); `404` no decision; `409` not a receipted approve/reject waiting for the chain, a rubric-unusable / invalid-facts rebuild (`details.reason`, `details.issues`; nothing written), or a protocol now pinned to another rubric than the decision's; transient trouble is a `503` to run again. CLI: `decision-oracle redeliver <claimId> --yes`. Outside the `/v1/api` contract |
|
|
1792
1798
|
| `GET /v1/oauth/approvals/:approvalId` | UCAN `oauth/approval/read`, invoker AuthHub's `did:web` only (`403` otherwise; `*` is never accepted here); no `X-Auth-Type` needed | What AuthHub's approve page shows: `{ did, grantId, clientName, protocol: { did, name \| null }, price: { display, maxAmountUpay }, billingMode: "x402" \| "none", status, expiresAt }` (`expiresAt` in unix seconds). `404` unless the approval exists, is `pending` and has not expired. Never the delegation. `404` without `API_LANE`. Outside the `/v1/api` contract |
|
|
1793
1799
|
| `POST /v1/oauth/approvals/:approvalId` | UCAN `oauth/approval/approve`, same invoker rule | `{ decision: "approve", did, delegation: string \| null }` or `{ decision: "decline", did }` → `{ status: "approved" \| "declined" }`. `404` unless pending and `did` is the approval's. For billing `x402` the delegation must be a payment delegation (`parsePaymentDelegation`) whose root issuer is `did`, whose `oracles` name this oracle's did:web, whose audience is this oracle's facilitator (`X402_FACILITATOR_URL`'s did.json), whose `maxAmount` is exactly `maxAmountUpay` (a total across rails: more would be standing authority), and which has not expired — else `400 VALIDATION` with `details.reason` one of `invalid_delegation`, `issuer_mismatch`, `oracle_mismatch`, `facilitator_mismatch` (also logged `oauth.approval.facilitator_mismatch` with both DIDs: AuthHub and this oracle name different facilitators), `amount_mismatch`, `expired`, and the approval stays pending. `price.display` is informational; AuthHub computes what it shows from `maxAmountUpay`. For `none` nothing is kept. Approving gives the app 15 minutes to use it. Audited as `oauth.approval_approved` / `oauth.approval_declined` (actor kind `oauth`). Outside the `/v1/api` contract |
|
|
1794
1800
|
| `GET /v1/oauth/standing/:grantId` | UCAN `oauth/standing/read`, AuthHub's `did:web` only, never `*` | A grant's auto-approve: `{ perClaimUpay, totalUpay, spentUpay, until }` (upay strings, unix seconds), never the delegation. `404` when there is none, it is revoked, `until` has passed, or `policies.allowStandingApprovals` is off |
|
package/docs/guide.md
CHANGED
|
@@ -241,7 +241,7 @@ every name you leave alone is a name that cannot have a bug.
|
|
|
241
241
|
| --- | --- | --- |
|
|
242
242
|
| `ext.<name>` | The declared endpoint accepts a self-signed UCAN POST (the resolved `send` map plus the whole claim body under `claimBody`; audience the endpoint's own did:web, capability `ixo:external-source`) and answers the strict `{ valid: boolean }` / `{ score: 0..10000 }` contract. An outage (5xx, 429, timeout) retries the workflow step and is never frozen as a verdict; only a 4xx refusal or a malformed answer becomes an error fact | It is a vendor API with different auth, capability or response shape · it needs your own system, database or secret · its `send` map reads a `~derived` value, or its `audience` is not the endpoint's did:web (the stock lane always answers either `error`) |
|
|
243
243
|
| `ext.<name>` + a geo handler (`withinRadius`, `located`, `beforeAfter` from `@ixo/decision-oracle/facts`) | The rubric asks where or when a photo was taken. Missing GPS or capture time is an error (your `onError`), never `false`; the evidence grade (`camera` / `browser-reported` / `claim`) is in the reason. Send per-photo `capturedAt.{before,after}` from your form for phones that strip EXIF ([api.md](./api.md#geo-evidence-grades-and-capturedat)) | You need a different source ladder or a stricter grade |
|
|
244
|
-
| `ai.<name>` | A plain stock AI judgment against the rubric's own `instructions` is what the author meant. Evidence the model cannot read (too dark, blurred, cropped) is an error (your `onError`), never a failed rule; a before/after pair is judged knowing the work changes the subject | A different model or vision vendor is required · the inputs need re-slicing or a pre-check (a missing photo, an unreadable file) · `send` reads a `~derived` value |
|
|
244
|
+
| `ai.<name>` | A plain stock AI judgment against the rubric's own `instructions` is what the author meant. The judge is as strict or as lenient as the instructions say, no more. Evidence the model cannot read (too dark, blurred, cropped) is an error (your `onError`), never a failed rule; a before/after pair is judged knowing the work changes the subject | A different model or vision vendor is required · the inputs need re-slicing or a pre-check (a missing photo, an unreadable file) · `send` reads a `~derived` value |
|
|
245
245
|
| `unique` | Always — this oracle's own D1 registries, a keyed body digest, CID and perceptual-hash attachment lanes, a JS trigram near-text lane and the gray-zone same-event judge. Only claims registered earlier count, and a claim that never reached a decision (failed ingest, `invalid_facts`, a content refusal) never blocks a resubmission | Only a wholly different duplicate strategy, e.g. a vendor registry you already run. The `UniqueFact` shape is still fixed |
|
|
246
246
|
| `frequency` | Always — one Blocksync submission count over the claim's own UTC calendar window (a failed read retries the step, never freezes `unresolved`) | Same: only when the count lives somewhere else |
|
|
247
247
|
| `sizeProbes` | Always — the package probes the named roots itself | Never; not a handler's concern |
|
|
@@ -1563,7 +1563,7 @@ own retries, and a terminal failure clears it.
|
|
|
1563
1563
|
| A wasm / bundle error on `deploy` or `dev` | Usually a stale `worker-configuration.d.ts`, or the package's wasm not copied after an install | `bun run cf-typegen`, then reinstall. `wrangler deploy --dry-run` (`bun run build`) reproduces a bundle failure without shipping |
|
|
1564
1564
|
| `facts run` says a handler is `handler-unused` | The name in your table is not a name the manifest declares | Copy the name from `protocol review`, exactly |
|
|
1565
1565
|
| `facts run --preview` says to start `bun run dev` | The engine resolves your `did:web` from `ORACLE_HOSTNAME` and found nothing there | Start the dev server (or point `ORACLE_HOSTNAME` at a reachable host) |
|
|
1566
|
-
| A decision is `decided` but never lands on chain | `policies.autoSign` or `AUTO_SIGN` is off · `ORACLE_SECP_MNEMONIC` is unset · `chainStatus` is `blocked` (no grant, no receipt CID, or an unfunded admin account) · `chainStatus` is `held` (your own `policies.act` hook parked it on purpose) | Read `chainStatus` / `chainError` on `GET /v1/claims/:claimId`. An unfunded admin account resumes and re-delivers by itself once topped up; a `held` row waits for your own `signEvaluation(env, claimId, amount?)` call |
|
|
1566
|
+
| A decision is `decided` but never lands on chain | `policies.autoSign` or `AUTO_SIGN` is off · `ORACLE_SECP_MNEMONIC` is unset · `chainStatus` is `blocked` (no grant, no receipt CID, or an unfunded admin account) · `chainStatus` is `held` (your own `policies.act` hook parked it on purpose) | Read `chainStatus` / `chainError` on `GET /v1/claims/:claimId`. An unfunded admin account resumes and re-delivers by itself once topped up; a `held` row waits for your own `signEvaluation(env, claimId, amount?)` call; a `blocked` row whose `chainError` says its facts could not be rebuilt (a decision recovered after a crash) is released by `decision-oracle redeliver <claimId> --yes`, which rebuilds the facts your act policy reads and signs — the engine's decision and receipt stay as recorded |
|
|
1567
1567
|
|
|
1568
1568
|
---
|
|
1569
1569
|
|
package/package.json
CHANGED