@ixo/decision-oracle 0.2.24 → 0.2.26

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.
Files changed (65) hide show
  1. package/README.md +5 -3
  2. package/dist/config.d.ts +3 -0
  3. package/dist/config.d.ts.map +1 -1
  4. package/dist/config.js +17 -0
  5. package/dist/config.js.map +1 -1
  6. package/dist/cron/payer-billing.d.ts.map +1 -1
  7. package/dist/cron/payer-billing.js +4 -0
  8. package/dist/cron/payer-billing.js.map +1 -1
  9. package/dist/cron/scan.d.ts +3 -1
  10. package/dist/cron/scan.d.ts.map +1 -1
  11. package/dist/cron/scan.js +36 -11
  12. package/dist/cron/scan.js.map +1 -1
  13. package/dist/define-oracle.d.ts.map +1 -1
  14. package/dist/define-oracle.js +4 -2
  15. package/dist/define-oracle.js.map +1 -1
  16. package/dist/env.d.ts +2 -0
  17. package/dist/env.d.ts.map +1 -1
  18. package/dist/lib/chain-lane.d.ts +17 -0
  19. package/dist/lib/chain-lane.d.ts.map +1 -0
  20. package/dist/lib/chain-lane.js +21 -0
  21. package/dist/lib/chain-lane.js.map +1 -0
  22. package/dist/lib/ixo/chain-write.d.ts.map +1 -1
  23. package/dist/lib/ixo/chain-write.js +6 -0
  24. package/dist/lib/ixo/chain-write.js.map +1 -1
  25. package/dist/lib/openhands/explain.d.ts +85 -0
  26. package/dist/lib/openhands/explain.d.ts.map +1 -0
  27. package/dist/lib/openhands/explain.js +499 -0
  28. package/dist/lib/openhands/explain.js.map +1 -0
  29. package/dist/lib/openhands/routes.d.ts +7 -0
  30. package/dist/lib/openhands/routes.d.ts.map +1 -1
  31. package/dist/lib/openhands/routes.js +12 -1
  32. package/dist/lib/openhands/routes.js.map +1 -1
  33. package/dist/lib/openhands/why.d.ts +74 -0
  34. package/dist/lib/openhands/why.d.ts.map +1 -0
  35. package/dist/lib/openhands/why.js +244 -0
  36. package/dist/lib/openhands/why.js.map +1 -0
  37. package/dist/lib/register.d.ts.map +1 -1
  38. package/dist/lib/register.js +5 -0
  39. package/dist/lib/register.js.map +1 -1
  40. package/dist/routes/v1/admin.d.ts.map +1 -1
  41. package/dist/routes/v1/admin.js +4 -0
  42. package/dist/routes/v1/admin.js.map +1 -1
  43. package/dist/routes/v1/collections.d.ts +5 -0
  44. package/dist/routes/v1/collections.d.ts.map +1 -1
  45. package/dist/routes/v1/collections.js +12 -0
  46. package/dist/routes/v1/collections.js.map +1 -1
  47. package/dist/routes/v1/info.d.ts.map +1 -1
  48. package/dist/routes/v1/info.js +8 -2
  49. package/dist/routes/v1/info.js.map +1 -1
  50. package/dist/runtime.d.ts +3 -2
  51. package/dist/runtime.d.ts.map +1 -1
  52. package/dist/runtime.js +7 -2
  53. package/dist/runtime.js.map +1 -1
  54. package/dist/workflows/claim-ingest.d.ts.map +1 -1
  55. package/dist/workflows/claim-ingest.js +8 -0
  56. package/dist/workflows/claim-ingest.js.map +1 -1
  57. package/dist/workflows/openhands-hire.d.ts.map +1 -1
  58. package/dist/workflows/openhands-hire.js +8 -0
  59. package/dist/workflows/openhands-hire.js.map +1 -1
  60. package/docs/api.md +29 -17
  61. package/docs/guide.md +61 -6
  62. package/package.json +1 -1
  63. package/skills/decision-api-oracle/SKILL.md +10 -0
  64. package/templates/project/.dev.vars.example +4 -0
  65. package/templates/project/wrangler.jsonc +8 -0
@@ -1 +1 @@
1
- {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../src/lib/openhands/routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAI3C,OAAO,EAEL,KAAK,QAAQ,EAGb,KAAK,cAAc,EAEpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAGL,KAAK,SAAS,EAGf,MAAM,SAAS,CAAC;AAgBjB,gGAAgG;AAChG,eAAO,MAAM,SAAS,kCAAkC,CAAC;AACzD,eAAO,MAAM,SAAS,kCAAkC,CAAC;AAGzD,mGAAmG;AACnG,eAAO,MAAM,gBAAgB,QAAuB,CAAC;AAErD,6FAA6F;AAC7F,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,cAAc,iBAAkB,MAAM,WAA6C,CAAC;AACjG,yFAAyF;AACzF,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,cAAc,iBAAkB,MAAM,WAA6C,CAAC;AACjG,0CAA0C;AAC1C,eAAO,MAAM,qBAAqB,KAAK,CAAC;AACxC,eAAO,MAAM,aAAa,iBAAkB,MAAM,WAAqC,CAAC;AACxF,6FAA6F;AAC7F,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAUtC;;;GAGG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAKlD;AA+CD;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,4FAA4F;IAC5F,KAAK,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACpD,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;IACrE,kEAAkE;IAClE,aAAa,CACX,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,cAAc,GAAG,WAAW,CAAC,CAAC;CAC1C;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,CAkCvD;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,SAAS,GAAG,QAAQ,CAGjD;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,SAAS,EACd,KAAK,CAAC,EAAE,SAAS,GAChB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CA2B1B;AAuJD;;;;;GAKG;AACH,wBAAsB,aAAa,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAoBnE"}
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../src/lib/openhands/routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAK3C,OAAO,EAEL,KAAK,QAAQ,EAGb,KAAK,cAAc,EAEpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAGL,KAAK,SAAS,EAGf,MAAM,SAAS,CAAC;AAgBjB,gGAAgG;AAChG,eAAO,MAAM,SAAS,kCAAkC,CAAC;AACzD,eAAO,MAAM,SAAS,kCAAkC,CAAC;AAGzD,mGAAmG;AACnG,eAAO,MAAM,gBAAgB,QAAuB,CAAC;AAErD,6FAA6F;AAC7F,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,cAAc,iBAAkB,MAAM,WAA6C,CAAC;AACjG,yFAAyF;AACzF,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,eAAO,MAAM,cAAc,iBAAkB,MAAM,WAA6C,CAAC;AACjG,0CAA0C;AAC1C,eAAO,MAAM,qBAAqB,KAAK,CAAC;AACxC,eAAO,MAAM,aAAa,iBAAkB,MAAM,WAAqC,CAAC;AACxF,6FAA6F;AAC7F,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAUtC;;;GAGG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAKlD;AA8BD,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,aAAa,CAAC;AAE3D,wBAAsB,UAAU,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAalF;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,4FAA4F;IAC5F,KAAK,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACpD,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;IACrE,kEAAkE;IAClE,aAAa,CACX,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,SAAS,GACd,OAAO,CAAC,cAAc,GAAG,WAAW,CAAC,CAAC;CAC1C;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,CAkCvD;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,SAAS,GAAG,QAAQ,CAGjD;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,SAAS,EACd,KAAK,CAAC,EAAE,SAAS,GAChB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAgC1B;AAuJD;;;;;GAKG;AACH,wBAAsB,aAAa,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAoBnE"}
@@ -7,6 +7,8 @@
7
7
  * UNAUTHENTICATED on purpose: they only ask this oracle to look at the chain, so there is no secret
8
8
  * on them and every caller is a stranger. What bounds a stranger is all here:
9
9
  *
10
+ * - with the chain lane off (config.ts `CHAIN_LANE`), `409 { reason: chain_lane_off }` before
11
+ * anything else is spent;
10
12
  * - `OPENHANDS_RATE_LIMITER`, spent per caller address (an IPv6 caller by its /64) and per
11
13
  * collection, failing CLOSED (503) where it is not bound outside development;
12
14
  * - a collection id shaped like one (no leading zeros: one collection, one key, one instance id);
@@ -21,10 +23,14 @@
21
23
  * What a stranger cannot do: make this oracle MINT where the chain does not say so (the hire signs
22
24
  * nothing until it read a live meta-grant from the collection's own admin), un-pause a collection,
23
25
  * or evaluate a claim it was not authorized for.
26
+ *
27
+ * The third OpenHands route, `GET /openhands/claims/:claimId/why`, is the claimant's and carries a
28
+ * UCAN: why.ts.
24
29
  */
25
30
  import { loadConfig } from "../../config.js";
26
31
  import { cronContext } from "../../cron/scan.js";
27
32
  import { scanCollection } from "../../runtime.js";
33
+ import { CHAIN_LANE_OFF, CHAIN_LANE_OFF_MESSAGE } from "../chain-lane.js";
28
34
  import { AppError } from "../errors.js";
29
35
  import { getCollection } from "../ixo/blocksync/index.js";
30
36
  import { ENDED, hireWorkflow, isAlreadyExists, watchedRestartReason, } from "./backstop.js";
@@ -96,7 +102,7 @@ function ipv6Slash64(address) {
96
102
  return null;
97
103
  return `${prefix.map((g) => Number.parseInt(g, 16).toString(16)).join(":")}::/64`;
98
104
  }
99
- async function spendLimit(env, key) {
105
+ export async function spendLimit(env, key) {
100
106
  const limiter = env.OPENHANDS_RATE_LIMITER;
101
107
  if (!limiter) {
102
108
  if (loadConfig(env).ENVIRONMENT === "development")
@@ -167,6 +173,11 @@ export async function handleOpenhandsRoute(request, env, chain) {
167
173
  error: `collectionId must be a decimal collection id without leading zeros, got ${rawId.slice(0, 32) || "''"}`,
168
174
  });
169
175
  }
176
+ // An API-only oracle (CHAIN_LANE off) hires and scans no collection on chain — said before a
177
+ // limiter token is spent or anything is read, minted or signed (lib/chain-lane.ts).
178
+ if (!loadConfig(env).CHAIN_LANE) {
179
+ return json(409, { error: CHAIN_LANE_OFF_MESSAGE, reason: CHAIN_LANE_OFF });
180
+ }
170
181
  // The address first: a caller over its own budget must not also spend the collection's.
171
182
  let spent = await spendLimit(env, `ip:${callerKey(request)}`);
172
183
  if (spent === "ok")
@@ -1 +1 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../../src/lib/openhands/routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../../src/lib/openhands/routes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * GET /openhands/claims/:claimId/why — why a claim was decided the way it was, for the ONE person
3
+ * who submitted it. Ported from openhands-oracles `core/src/openhands/why.ts` so every OpenHands
4
+ * checker answers it, not only IXO's own; the OpenHands app (`app/api/claim/[id]/why`) proxies it
5
+ * and parses the body strictly (`parseWhy`: `outcome` is one of approved / rejected / review /
6
+ * pending, nothing else).
7
+ *
8
+ * The public receipt says which gate failed and nothing more: the engine keeps every word of prose
9
+ * off it. This oracle holds the rest — the frozen facts and `erroredFacts` on its `decisions` row —
10
+ * and the pinned rubric says what each gate means, so `explain.ts` turns the two into
11
+ * `{ outcome, summary, reasons[], evidenceGrade?, reviewNote?, receiptCid? }`. A claim this oracle
12
+ * has queued, or watches but has not seen yet, is `pending`; a FAILED ingest is `pending` too, with
13
+ * `claimFailureReason`'s sentence (lib/claim-failure.ts) — never the stored error, which is the
14
+ * operator's text.
15
+ *
16
+ * The gate: a UCAN invocation `{ can: "claims/why", with: "ixo:claim:<claimId>" }` addressed to our
17
+ * did:web, self-issued (no delegation), at most ten minutes long, whose issuer is the claim's
18
+ * on-chain `agentDid`. Anyone else gets the SAME 404 as a claim this oracle never saw, so the route
19
+ * cannot be used to learn which claims exist. Ownership that cannot be read (Blocksync down) is a
20
+ * 503, never a guess.
21
+ *
22
+ * Not under `/v1/*`: its capability is on the claim, not `ixo:eval-oracle`, and it sits in front of
23
+ * the app with the hire/scan webhooks (define-oracle.ts), behind the same `OPENHANDS_RATE_LIMITER`
24
+ * (its own key prefixes), spent per caller address BEFORE a token is verified — verifying resolves
25
+ * DIDs over the network and the issuer is the caller's own choice — and per issuer after.
26
+ */
27
+ import type { OracleEnv } from "../../env.js";
28
+ import { type RubricView, type WhyBody, type WhyRow } from "./explain.js";
29
+ /** The path `GET /v1/info` advertises (`openhands.why`). */
30
+ export declare const WHY_PATH = "/openhands/claims/:claimId/why";
31
+ export declare const WHY_CAN = "claims/why";
32
+ export declare const claimResource: (claimId: string) => string;
33
+ export declare const whyRubricKey: (rubricId: string) => string;
34
+ export type Verified = {
35
+ ok: true;
36
+ issuer: string;
37
+ } | {
38
+ ok: false;
39
+ code: string;
40
+ };
41
+ export interface WhyIngest {
42
+ collectionId: string;
43
+ status: string;
44
+ error: string | null;
45
+ }
46
+ /** Everything the route reads — injected by tests. Every read THROWS when its source can't answer. */
47
+ export interface WhyDeps {
48
+ /** `false` when the calling ADDRESS is over its budget — asked before anything else is done. */
49
+ allowCaller(): Promise<boolean>;
50
+ /** Throws only on a transient failure (DID resolution unreachable) — a bad token is `ok: false`. */
51
+ verify(token: string, claimId: string): Promise<Verified>;
52
+ /** `false` when this verified issuer is over its budget. */
53
+ allow(issuer: string): Promise<boolean>;
54
+ decision(claimId: string): Promise<WhyRow | null>;
55
+ ingested(claimId: string): Promise<WhyIngest | null>;
56
+ /** The claim's on-chain agent and collection; null when the chain has no such claim. */
57
+ onChain(claimId: string): Promise<{
58
+ agentDid: string | null;
59
+ collectionId: string;
60
+ } | null>;
61
+ /** Does this oracle watch the collection (a claim it has not discovered yet is still ours)? */
62
+ watched(collectionId: string): Promise<boolean>;
63
+ /** The pinned rubric's claimant-visible view; null when it can't be read or is re-anchored. */
64
+ rubric(collectionId: string, rubricId: string): Promise<RubricView | null>;
65
+ }
66
+ /** A failed ingest, said safely: still `pending` (the app knows no other word for "not decided"). */
67
+ export declare function failedBody(error: string | null): WhyBody;
68
+ export declare function handleWhy(request: Request, rawClaimId: string, deps: WhyDeps): Promise<Response>;
69
+ export declare function verifyWhyToken(env: OracleEnv, token: string, claimId: string): Promise<Verified>;
70
+ /** `caller` is the request's address key (`callerKey`). */
71
+ export declare function liveWhyDeps(env: OracleEnv, caller: string): WhyDeps;
72
+ /** Answer `GET /openhands/claims/:claimId/why`, or `null` when the request is not one. */
73
+ export declare function handleWhyRoute(request: Request, env: OracleEnv): Promise<Response | null>;
74
+ //# sourceMappingURL=why.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"why.d.ts","sourceRoot":"","sources":["../../../src/lib/openhands/why.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAM3C,OAAO,EAGL,KAAK,UAAU,EAEf,KAAK,OAAO,EACZ,KAAK,MAAM,EACZ,MAAM,WAAW,CAAC;AAGnB,4DAA4D;AAC5D,eAAO,MAAM,QAAQ,mCAAmC,CAAC;AAEzD,eAAO,MAAM,OAAO,eAAe,CAAC;AACpC,eAAO,MAAM,aAAa,YAAa,MAAM,KAAG,MAAgC,CAAC;AASjF,eAAO,MAAM,YAAY,aAAc,MAAM,WAAuC,CAAC;AAErF,MAAM,MAAM,QAAQ,GAAG;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAElF,MAAM,WAAW,SAAS;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,sGAAsG;AACtG,MAAM,WAAW,OAAO;IACtB,gGAAgG;IAChG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,oGAAoG;IACpG,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC1D,4DAA4D;IAC5D,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAClD,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;IACrD,wFAAwF;IACxF,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IAC5F,+FAA+F;IAC/F,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAChD,+FAA+F;IAC/F,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;CAC5E;AAmBD,qGAAqG;AACrG,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAExD;AAED,wBAAsB,SAAS,CAC7B,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,QAAQ,CAAC,CAiDnB;AA2DD,wBAAsB,cAAc,CAClC,GAAG,EAAE,SAAS,EACd,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,QAAQ,CAAC,CAkBnB;AAED,2DAA2D;AAC3D,wBAAgB,WAAW,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAkEnE;AAED,0FAA0F;AAC1F,wBAAsB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAI/F"}
@@ -0,0 +1,244 @@
1
+ /**
2
+ * GET /openhands/claims/:claimId/why — why a claim was decided the way it was, for the ONE person
3
+ * who submitted it. Ported from openhands-oracles `core/src/openhands/why.ts` so every OpenHands
4
+ * checker answers it, not only IXO's own; the OpenHands app (`app/api/claim/[id]/why`) proxies it
5
+ * and parses the body strictly (`parseWhy`: `outcome` is one of approved / rejected / review /
6
+ * pending, nothing else).
7
+ *
8
+ * The public receipt says which gate failed and nothing more: the engine keeps every word of prose
9
+ * off it. This oracle holds the rest — the frozen facts and `erroredFacts` on its `decisions` row —
10
+ * and the pinned rubric says what each gate means, so `explain.ts` turns the two into
11
+ * `{ outcome, summary, reasons[], evidenceGrade?, reviewNote?, receiptCid? }`. A claim this oracle
12
+ * has queued, or watches but has not seen yet, is `pending`; a FAILED ingest is `pending` too, with
13
+ * `claimFailureReason`'s sentence (lib/claim-failure.ts) — never the stored error, which is the
14
+ * operator's text.
15
+ *
16
+ * The gate: a UCAN invocation `{ can: "claims/why", with: "ixo:claim:<claimId>" }` addressed to our
17
+ * did:web, self-issued (no delegation), at most ten minutes long, whose issuer is the claim's
18
+ * on-chain `agentDid`. Anyone else gets the SAME 404 as a claim this oracle never saw, so the route
19
+ * cannot be used to learn which claims exist. Ownership that cannot be read (Blocksync down) is a
20
+ * 503, never a guess.
21
+ *
22
+ * Not under `/v1/*`: its capability is on the claim, not `ixo:eval-oracle`, and it sits in front of
23
+ * the app with the hire/scan webhooks (define-oracle.ts), behind the same `OPENHANDS_RATE_LIMITER`
24
+ * (its own key prefixes), spent per caller address BEFORE a token is verified — verifying resolves
25
+ * DIDs over the network and the issuer is the caller's own choice — and per issuer after.
26
+ */
27
+ import { loadConfig } from "../../config.js";
28
+ import { cronContext } from "../../cron/scan.js";
29
+ import { readLinkedDoc } from "../../facts/linked-doc.js";
30
+ import { claimFailureReason } from "../claim-failure.js";
31
+ import { getClaimById, getCollection, getEntityLinkedResources } from "../ixo/blocksync/index.js";
32
+ import { getDIDWeb } from "../ixo/identity.js";
33
+ import { readCache } from "../metrics.js";
34
+ import { explain, pendingBody, rubricView, } from "./explain.js";
35
+ import { callerKey, spendLimit } from "./routes.js";
36
+ /** The path `GET /v1/info` advertises (`openhands.why`). */
37
+ export const WHY_PATH = "/openhands/claims/:claimId/why";
38
+ const WHY_ROUTE = /^\/openhands\/claims\/([^/]+)\/why\/?$/;
39
+ export const WHY_CAN = "claims/why";
40
+ export const claimResource = (claimId) => `ixo:claim:${claimId}`;
41
+ /** Same guard as the claim routes: CIDs and Matrix event ids, printable ASCII. */
42
+ const CLAIM_ID_RE = /^[\x21-\x7e]{1,512}$/;
43
+ /** The longest token this route takes, plus a minute of clock skew. */
44
+ const MAX_TTL_SEC = 600 + 60;
45
+ /** A rubric is content-addressed, so its view never changes once read. */
46
+ const RUBRIC_TTL_SEC = 7 * 24 * 3600;
47
+ const RUBRIC_MAX_BYTES = 1_000_000;
48
+ export const whyRubricKey = (rubricId) => `openhands:why-rubric:${rubricId}`;
49
+ const json = (status, body) => new Response(JSON.stringify(body), {
50
+ status,
51
+ headers: { "content-type": "application/json", "cache-control": "no-store" },
52
+ });
53
+ const fail = (status, code, message) => json(status, { error: { code, message } });
54
+ // One body for "no such claim" and "not yours" — the whole point is that they read the same.
55
+ const notFound = () => fail(404, "NOT_FOUND", "No such claim");
56
+ const rateLimited = () => fail(429, "RATE_LIMITED", "Too many requests — retry in a minute");
57
+ const asMessage = (err) => (err instanceof Error ? err.message : String(err));
58
+ /** A failed ingest, said safely: still `pending` (the app knows no other word for "not decided"). */
59
+ export function failedBody(error) {
60
+ return { outcome: "pending", summary: claimFailureReason(error), reasons: [] };
61
+ }
62
+ export async function handleWhy(request, rawClaimId, deps) {
63
+ if (request.method !== "GET")
64
+ return fail(405, "METHOD_NOT_ALLOWED", "Use GET on this endpoint");
65
+ if (!(await deps.allowCaller()))
66
+ return rateLimited();
67
+ let claimId;
68
+ try {
69
+ claimId = decodeURIComponent(rawClaimId);
70
+ }
71
+ catch {
72
+ return fail(400, "BAD_CLAIM_ID", "claimId is not a valid path segment");
73
+ }
74
+ if (!CLAIM_ID_RE.test(claimId))
75
+ return fail(400, "BAD_CLAIM_ID", "claimId is malformed");
76
+ if (request.headers.get("X-Auth-Type") !== "ucan") {
77
+ return fail(401, "UNAUTHORIZED", "UCAN invocation required (set X-Auth-Type: ucan)");
78
+ }
79
+ const auth = request.headers.get("Authorization");
80
+ const token = auth?.startsWith("Bearer ") ? auth.slice(7).trim() : "";
81
+ if (!token)
82
+ return fail(401, "UNAUTHORIZED", "Missing Authorization Bearer token");
83
+ let verified;
84
+ try {
85
+ verified = await deps.verify(token, claimId);
86
+ }
87
+ catch (err) {
88
+ console.error(`[openhands] why: token check unavailable: ${asMessage(err)}`);
89
+ return fail(503, "UNAVAILABLE", "Token check temporarily unavailable — retry");
90
+ }
91
+ if (!verified.ok)
92
+ return fail(401, "UNAUTHORIZED", `Invalid UCAN invocation: ${verified.code}`);
93
+ if (!(await deps.allow(verified.issuer)))
94
+ return rateLimited();
95
+ try {
96
+ const row = await deps.decision(claimId);
97
+ const ingest = row ? null : await deps.ingested(claimId);
98
+ const chain = await deps.onChain(claimId);
99
+ if (!chain?.agentDid || chain.agentDid !== verified.issuer)
100
+ return notFound();
101
+ // No row at all: ours only while we watch its collection (the cron has not reached it yet).
102
+ if (!row && !ingest && !(await deps.watched(chain.collectionId)))
103
+ return notFound();
104
+ if (!row)
105
+ return json(200, ingest?.status === "failed" ? failedBody(ingest.error) : pendingBody());
106
+ // Labels are a courtesy: a rubric that cannot be read still leaves codes and outcomes.
107
+ const rubric = row.rubricId
108
+ ? await deps.rubric(row.collectionId, row.rubricId).catch(() => null)
109
+ : null;
110
+ return json(200, explain(row, rubric));
111
+ }
112
+ catch (err) {
113
+ console.error(`[openhands] why: ${claimId} could not be answered: ${asMessage(err)}`);
114
+ return fail(503, "UNAVAILABLE", "Claim record temporarily unavailable — retry");
115
+ }
116
+ }
117
+ // Built once per isolate, like middleware/ucan-auth.ts — the service DID and resolvers are static.
118
+ let validatorPromise = null;
119
+ function validatorFor(env) {
120
+ if (validatorPromise)
121
+ return validatorPromise;
122
+ const building = (async () => {
123
+ const config = loadConfig(env);
124
+ if (!config.SERVICE_ED25519_MNEMONIC) {
125
+ throw new Error("SERVICE_ED25519_MNEMONIC not configured");
126
+ }
127
+ const u = await import("@ixo/ucan");
128
+ // Pinned to our canonical host, never the request's Host header.
129
+ const { serviceDid, publicKeyMultibase } = await getDIDWeb(config.SERVICE_ED25519_MNEMONIC, config.ORACLE_HOSTNAME);
130
+ const local = u.createLocalDIDResolver();
131
+ local.register(serviceDid, publicKeyMultibase);
132
+ const didResolver = u.createCompositeDIDResolver([
133
+ local,
134
+ u.createIxoDIDResolver({ indexerUrl: config.BLOCKSYNC_GRAPHQL_URL }),
135
+ ]);
136
+ const validator = (await u.createUCANValidator({
137
+ serverDid: serviceDid,
138
+ rootIssuers: ["*"],
139
+ didResolver,
140
+ requireExpiration: true,
141
+ // Read-only and claim-scoped, with a ten-minute ceiling: a replayed token only re-reads
142
+ // what its own signer may already read.
143
+ invocationStore: { has: async () => false, add: async () => { } },
144
+ }));
145
+ return { validator, capability: u.defineCapability({ can: WHY_CAN, protocol: "ixo:" }) };
146
+ })();
147
+ validatorPromise = building;
148
+ building.catch(() => {
149
+ if (validatorPromise === building)
150
+ validatorPromise = null;
151
+ });
152
+ return building;
153
+ }
154
+ export async function verifyWhyToken(env, token, claimId) {
155
+ const { validator, capability } = await validatorFor(env);
156
+ const resource = claimResource(claimId);
157
+ const result = await validator.validate(token, capability, resource);
158
+ if (!result.ok || !result.invoker)
159
+ return { ok: false, code: result.error?.code ?? "INVALID" };
160
+ // The validator relaxes `with` matching; this route is scoped to exactly one claim.
161
+ if (result.capability?.can !== WHY_CAN || result.capability.with !== resource) {
162
+ return { ok: false, code: "WRONG_CAPABILITY" };
163
+ }
164
+ // Self-issued only: the claimant signs for themselves, no delegation to anyone else.
165
+ if ((result.proofChain?.length ?? 0) > 0 && result.proofChain?.[0] !== result.invoker) {
166
+ return { ok: false, code: "DELEGATED" };
167
+ }
168
+ const now = Math.floor(Date.now() / 1000);
169
+ if (!result.expiration || result.expiration - now > MAX_TTL_SEC) {
170
+ return { ok: false, code: "TTL_TOO_LONG" };
171
+ }
172
+ return { ok: true, issuer: result.invoker };
173
+ }
174
+ /** `caller` is the request's address key (`callerKey`). */
175
+ export function liveWhyDeps(env, caller) {
176
+ const { db, deps: blocksync } = cronContext(env);
177
+ const config = loadConfig(env);
178
+ const under = async (key) => (await spendLimit(env, key)) === "ok";
179
+ return {
180
+ allowCaller: () => under(`why-ip:${caller}`),
181
+ verify: (token, claimId) => verifyWhyToken(env, token, claimId),
182
+ allow: (issuer) => under(`why-did:${issuer}`),
183
+ decision: async (claimId) => (await db.query.decisions.findFirst({
184
+ columns: {
185
+ claimId: true,
186
+ collectionId: true,
187
+ rubricId: true,
188
+ verdict: true,
189
+ status: true,
190
+ receiptCid: true,
191
+ decision: true,
192
+ facts: true,
193
+ erroredFacts: true,
194
+ },
195
+ where: (t, { eq }) => eq(t.claimId, claimId),
196
+ })) ?? null,
197
+ ingested: async (claimId) => (await db.query.claimIngests.findFirst({
198
+ columns: { collectionId: true, status: true, error: true },
199
+ where: (t, { eq }) => eq(t.claimId, claimId),
200
+ })) ?? null,
201
+ onChain: async (claimId) => {
202
+ const claim = await getClaimById(blocksync, claimId);
203
+ return claim ? { agentDid: claim.agentDid, collectionId: claim.collectionId } : null;
204
+ },
205
+ watched: async (collectionId) => !!(await db.query.watchedCollections.findFirst({
206
+ columns: { collectionId: true },
207
+ where: (t, { eq }) => eq(t.collectionId, collectionId),
208
+ })),
209
+ rubric: async (collectionId, rubricId) => {
210
+ const key = whyRubricKey(rubricId);
211
+ const cached = await readCache("openhands-why-rubric", () => env.CACHE_KV.get(key, "json"));
212
+ if (cached)
213
+ return cached;
214
+ const protocol = (await getCollection(blocksync, collectionId))?.protocol;
215
+ if (!protocol)
216
+ return null;
217
+ // The protocol's `#rub` as the engine resolves it: its proof IS the rubric id (the sha256 of
218
+ // the bytes). A protocol re-anchored since this claim was decided no longer serves the pinned
219
+ // rubric — no labels, never the wrong ones.
220
+ const anchor = (await getEntityLinkedResources(blocksync, protocol)).find((r) => r.type === "rubric" && r.id?.endsWith("#rub"));
221
+ if (!anchor?.proof || anchor.proof.toLowerCase() !== rubricId.toLowerCase())
222
+ return null;
223
+ const read = await readLinkedDoc(anchor, {
224
+ ipfsGateway: config.IPFS_GATEWAY_URL,
225
+ maxBytes: RUBRIC_MAX_BYTES,
226
+ });
227
+ if (!read.ok || !read.verified)
228
+ return null;
229
+ const view = rubricView(read.json);
230
+ if (view) {
231
+ await env.CACHE_KV.put(key, JSON.stringify(view), { expirationTtl: RUBRIC_TTL_SEC }).catch(() => undefined);
232
+ }
233
+ return view;
234
+ },
235
+ };
236
+ }
237
+ /** Answer `GET /openhands/claims/:claimId/why`, or `null` when the request is not one. */
238
+ export async function handleWhyRoute(request, env) {
239
+ const why = WHY_ROUTE.exec(new URL(request.url).pathname);
240
+ if (!why)
241
+ return null;
242
+ return handleWhy(request, why[1] ?? "", liveWhyDeps(env, callerKey(request)));
243
+ }
244
+ //# sourceMappingURL=why.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"why.js","sourceRoot":"","sources":["../../../src/lib/openhands/why.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../src/lib/register.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAc,KAAK,iBAAiB,EAAsB,MAAM,cAAc,CAAC;AACtF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAaxC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAE9C;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,IAAI,CAAC,iBAAiB,EAAE,UAAU,GAAG,eAAe,CAAC,EAC1D,GAAG,EAAE,MAAM,GACV,OAAO,CAET;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,EAAE,EAAE,QAAQ,CAAC;IACb,4FAA4F;IAC5F,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC,iBAAiB,CAAC,CAiV5B;AAsBD,qFAAqF;AACrF,KAAK,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC,GAAG;IACnE,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;CAClC,CAAC;AAqDF,+DAA+D;AAC/D,eAAO,MAAM,UAAU,MAAM,CAAC;AAE9B,MAAM,MAAM,aAAa,GACrB,QAAQ,GACR,WAAW,GACX,YAAY,GACZ,UAAU,GACV,aAAa,GACb,aAAa,CAAC;AAElB;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,UAAU,GAAG;IAAE,EAAE,EAAE,QAAQ,CAAA;CAAE,EAClC,aAAa,CAAC,EAAE,MAAM,EAAE,GACvB,OAAO,CAAC;IACT,KAAK,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,aAAa,CAAC;QAAC,aAAa,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;IACnF,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC,CAsCD"}
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../src/lib/register.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAc,KAAK,iBAAiB,EAAsB,MAAM,cAAc,CAAC;AACtF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAcxC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAE9C;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,IAAI,CAAC,iBAAiB,EAAE,UAAU,GAAG,eAAe,CAAC,EAC1D,GAAG,EAAE,MAAM,GACV,OAAO,CAET;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,EAAE,EAAE,QAAQ,CAAC;IACb,4FAA4F;IAC5F,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC,iBAAiB,CAAC,CAsV5B;AAsBD,qFAAqF;AACrF,KAAK,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC,GAAG;IACnE,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;CAClC,CAAC;AAqDF,+DAA+D;AAC/D,eAAO,MAAM,UAAU,MAAM,CAAC;AAE9B,MAAM,MAAM,aAAa,GACrB,QAAQ,GACR,WAAW,GACX,YAAY,GACZ,UAAU,GACV,aAAa,GACb,aAAa,CAAC;AAElB;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,UAAU,GAAG;IAAE,EAAE,EAAE,QAAQ,CAAA;CAAE,EAClC,aAAa,CAAC,EAAE,MAAM,EAAE,GACvB,OAAO,CAAC;IACT,KAAK,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,aAAa,CAAC;QAAC,aAAa,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;IACnF,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC,CAsCD"}
@@ -16,6 +16,7 @@ import { apiSources, watchedCollections } from "../db/schema.js";
16
16
  import { effectivePricing, evaluationFeeFor, getOracle } from "../oracle.js";
17
17
  import { notifyCollectionResumed } from "../workflows/steps.js";
18
18
  import { hasUnlinkedActiveSource, linkCompanySources } from "./api-lane/linked.js";
19
+ import { assertChainLane } from "./chain-lane.js";
19
20
  import { createEngineClient } from "./engine/client.js";
20
21
  import { EngineError } from "./engine/types.js";
21
22
  import { AppError } from "./errors.js";
@@ -43,6 +44,10 @@ export function isOwnerOrEnroller(row, did) {
43
44
  export async function registerCollection(ctx, input) {
44
45
  const { config, trace, logger, metrics, db, env } = ctx;
45
46
  const { collectionId, principal, delegationCar, contactEmail, cursor } = input;
47
+ // Before any of register's own reads: an API-only oracle (CHAIN_LANE off) is hired by no
48
+ // collection, and a stranger's register must not cost it a Blocksync read, a grant query or a
49
+ // row (lib/chain-lane.ts).
50
+ assertChainLane(config);
46
51
  // Confirm the collection actually exists on-chain (clean 404 rather than watching a typo). Its
47
52
  // `entity` resolves the owner, its `admin` is the grant's granter, its `payments` the fee.
48
53
  const collection = await getCollection({ config, trace }, collectionId);
@@ -1 +1 @@
1
- {"version":3,"file":"register.js","sourceRoot":"","sources":["../../src/lib/register.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"register.js","sourceRoot":"","sources":["../../src/lib/register.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
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"}
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;AAkB5C,eAAO,MAAM,KAAK,qDAAqB,CAAC"}
@@ -21,6 +21,7 @@ import { z } from "zod";
21
21
  import { CollectionId } from "../../contracts/index.js";
22
22
  import { readApiBacklog, readChainBacklog } from "../../cron/backlog.js";
23
23
  import { decisions } from "../../db/schema.js";
24
+ import { assertChainLane } from "../../lib/chain-lane.js";
24
25
  import { createEngineClient } from "../../lib/engine/client.js";
25
26
  import { AppError } from "../../lib/errors.js";
26
27
  import { buildFacts, factDeps } from "../../lib/facts/builder.js";
@@ -185,6 +186,9 @@ admin.post("/claims/:claimId/reviewer-note", validate("param", ClaimParam), asyn
185
186
  */
186
187
  admin.post("/claims/:claimId/redeliver", validate("param", ClaimParam), async (c) => {
187
188
  const config = c.get("config");
189
+ // First: with the chain lane off the delivery below signs nothing, so the re-pull, the rebuild's
190
+ // AI spend and the facts write would all be for nothing (lib/chain-lane.ts).
191
+ assertChainLane(config);
188
192
  if (!config.ORACLE_ADMIN_DIDS.includes(c.get("principal").did)) {
189
193
  throw AppError.forbidden("Operators only (ORACLE_ADMIN_DIDS)");
190
194
  }