@axorum/client 0.0.0-stage → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +530 -2
  3. package/dist/agent-uri.d.ts +30 -0
  4. package/dist/agent-uri.d.ts.map +1 -0
  5. package/dist/agent-uri.js +218 -0
  6. package/dist/agent-uri.js.map +1 -0
  7. package/dist/authorize.d.ts +671 -0
  8. package/dist/authorize.d.ts.map +1 -0
  9. package/dist/authorize.js +947 -0
  10. package/dist/authorize.js.map +1 -0
  11. package/dist/capabilities.d.ts +30 -0
  12. package/dist/capabilities.d.ts.map +1 -0
  13. package/dist/capabilities.js +40 -0
  14. package/dist/capabilities.js.map +1 -0
  15. package/dist/chart.d.ts +74 -0
  16. package/dist/chart.d.ts.map +1 -0
  17. package/dist/chart.js +107 -0
  18. package/dist/chart.js.map +1 -0
  19. package/dist/client.d.ts +644 -0
  20. package/dist/client.d.ts.map +1 -0
  21. package/dist/client.js +1302 -0
  22. package/dist/client.js.map +1 -0
  23. package/dist/errors.d.ts +646 -0
  24. package/dist/errors.d.ts.map +1 -0
  25. package/dist/errors.js +928 -0
  26. package/dist/errors.js.map +1 -0
  27. package/dist/failover.d.ts +197 -0
  28. package/dist/failover.d.ts.map +1 -0
  29. package/dist/failover.js +289 -0
  30. package/dist/failover.js.map +1 -0
  31. package/dist/freshness.d.ts +65 -0
  32. package/dist/freshness.d.ts.map +1 -0
  33. package/dist/freshness.js +148 -0
  34. package/dist/freshness.js.map +1 -0
  35. package/dist/generated/agent-plane.d.ts +1863 -0
  36. package/dist/generated/agent-plane.d.ts.map +1 -0
  37. package/dist/generated/agent-plane.js +19 -0
  38. package/dist/generated/agent-plane.js.map +1 -0
  39. package/dist/idempotency.d.ts +160 -0
  40. package/dist/idempotency.d.ts.map +1 -0
  41. package/dist/idempotency.js +208 -0
  42. package/dist/idempotency.js.map +1 -0
  43. package/dist/index.d.ts +89 -0
  44. package/dist/index.d.ts.map +1 -0
  45. package/dist/index.js +87 -0
  46. package/dist/index.js.map +1 -0
  47. package/dist/intent.d.ts +163 -0
  48. package/dist/intent.d.ts.map +1 -0
  49. package/dist/intent.js +82 -0
  50. package/dist/intent.js.map +1 -0
  51. package/dist/json.d.ts +49 -0
  52. package/dist/json.d.ts.map +1 -0
  53. package/dist/json.js +259 -0
  54. package/dist/json.js.map +1 -0
  55. package/dist/key.d.ts +64 -0
  56. package/dist/key.d.ts.map +1 -0
  57. package/dist/key.js +71 -0
  58. package/dist/key.js.map +1 -0
  59. package/dist/payment.d.ts +172 -0
  60. package/dist/payment.d.ts.map +1 -0
  61. package/dist/payment.js +178 -0
  62. package/dist/payment.js.map +1 -0
  63. package/dist/refusal.d.ts +121 -0
  64. package/dist/refusal.d.ts.map +1 -0
  65. package/dist/refusal.js +176 -0
  66. package/dist/refusal.js.map +1 -0
  67. package/dist/retry.d.ts +215 -0
  68. package/dist/retry.d.ts.map +1 -0
  69. package/dist/retry.js +297 -0
  70. package/dist/retry.js.map +1 -0
  71. package/dist/typeid.d.ts +64 -0
  72. package/dist/typeid.d.ts.map +1 -0
  73. package/dist/typeid.js +119 -0
  74. package/dist/typeid.js.map +1 -0
  75. package/dist/types.d.ts +245 -0
  76. package/dist/types.d.ts.map +1 -0
  77. package/dist/types.js +14 -0
  78. package/dist/types.js.map +1 -0
  79. package/package.json +58 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-plane.d.ts","sourceRoot":"","sources":["../../src/generated/agent-plane.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Wire types for the Axorum agent plane, generated from the frozen contract at
3
+ * `spec/openapi/agent-plane.v1.json`.
4
+ *
5
+ * DO NOT EDIT BY HAND — run `pnpm generate`.
6
+ *
7
+ * Field names are the wire's own: `snake_case` here means `snake_case` on the wire.
8
+ * Every `integer` in the contract is typed `bigint`, because the contract's integers
9
+ * include 128-bit money that a JavaScript `number` silently truncates; `src/json.ts`
10
+ * decodes and encodes them to match.
11
+ */
12
+ /**
13
+ * The capabilities this contract's server advertises in
14
+ * `info["x-axorum-capabilities"]` of `GET /api/openapi.json`: each token names a
15
+ * guarantee beyond the contract version. A client ignores tokens it does not
16
+ * know; an empty list promises nothing more.
17
+ */
18
+ export const capabilities = ["keyed-submit"];
19
+ //# sourceMappingURL=agent-plane.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-plane.js","sourceRoot":"","sources":["../../src/generated/agent-plane.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAuzDH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAsB,CAAC,cAAc,CAAC,CAAC"}
@@ -0,0 +1,160 @@
1
+ /**
2
+ * Retry keys, and the window that bounds them (contract 5.0.0).
3
+ *
4
+ * A transaction id is the ledger's retry key. Within the service's idempotency window,
5
+ * resubmitting the identical intent under a committed id answers the original outcome,
6
+ * marked `replayed: true`, and records nothing. **Past the window a resubmission is
7
+ * refused** `409 stale_idempotency_key`: the id may have been forgotten, so the service
8
+ * will not commit it a second time.
9
+ *
10
+ * So a key has an age, and this module makes that age checkable. An
11
+ * {@link IdempotencyKey} remembers when its id was minted; {@link ensureFresh} refuses
12
+ * one older than the window the service advertises
13
+ * ({@link AxorumClient.idempotencyWindow}); {@link AxorumClient.submitKeyed} does both
14
+ * before anything is sent.
15
+ *
16
+ * ```ts
17
+ * const window = await client.idempotencyWindow();
18
+ * const key = IdempotencyKey.mint(); // hold on to this across retries
19
+ * const envelope = pinIntent({ ...draft, transaction: key.transaction }, policy);
20
+ * await client.submitKeyed(key, window, envelope); // throws StaleIdempotencyKeyError past the window
21
+ * ```
22
+ *
23
+ * The service states the window in three response headers on `GET /api/openapi.json`
24
+ * ({@link IDEMPOTENCY_WINDOW_HEADERS}), outside the frozen document it serves;
25
+ * {@link readIdempotencyWindow} is the pure reading of them, pinned for every SDK by
26
+ * `spec/fixtures/idempotency-window-v1.json`.
27
+ *
28
+ * @packageDocumentation
29
+ */
30
+ import type { IdempotencyWindow } from "./types.js";
31
+ /**
32
+ * A transaction id and the moment it was minted: a retry key whose age can be checked.
33
+ *
34
+ * Mint one per intent with {@link IdempotencyKey.mint}, keep it with the intent, and
35
+ * resubmit under it as often as you need to. When it is older than the service's window
36
+ * it stops vouching for a safe retry, and {@link ensureFresh} says so.
37
+ *
38
+ * ```ts
39
+ * const key = IdempotencyKey.mint();
40
+ * key.transaction; // "txn_…"
41
+ * key.ageAt(new Date()); // milliseconds since minting
42
+ * ```
43
+ */
44
+ export declare class IdempotencyKey {
45
+ /** The transaction id: the retry key itself. */
46
+ readonly transaction: string;
47
+ /** When the id was minted, in milliseconds since the Unix epoch. */
48
+ readonly mintedAtMs: number;
49
+ /**
50
+ * A key for an id minted at a known time: one read back from storage, say.
51
+ *
52
+ * ```ts
53
+ * const key = new IdempotencyKey("txn_7w5b4trnc7b2ja027jyyb64395", Date.parse(savedAt));
54
+ * ```
55
+ *
56
+ * @param transaction - The transaction id.
57
+ * @param mintedAtMs - When it was minted, in milliseconds since the Unix epoch.
58
+ */
59
+ constructor(transaction: string, mintedAtMs: number);
60
+ /**
61
+ * Mints a key: a fresh transaction id (or the one given), stamped now.
62
+ *
63
+ * ```ts
64
+ * const key = IdempotencyKey.mint();
65
+ * const same = IdempotencyKey.mint("txn_7w5b4trnc7b2ja027jyyb64395");
66
+ * ```
67
+ *
68
+ * @param transaction - The id to stamp; a new one is minted when omitted.
69
+ * @param nowMs - The minting time; `Date.now()` when omitted.
70
+ */
71
+ static mint(transaction?: string, nowMs?: number): IdempotencyKey;
72
+ /**
73
+ * The key's age at `nowMs`, in milliseconds. A mint time in the future (a clock that
74
+ * stepped back) reads as zero rather than negative.
75
+ *
76
+ * ```ts
77
+ * new IdempotencyKey("txn_7w5b4trnc7b2ja027jyyb64395", 1_000).ageAt(4_000); // 3000
78
+ * ```
79
+ */
80
+ ageAt(nowMs: number): number;
81
+ }
82
+ /**
83
+ * The key's mint time as the envelope's `minted_at_ms`: whole milliseconds since the
84
+ * Unix epoch, rounded down, and zero for a time before it.
85
+ *
86
+ * ```ts
87
+ * mintedAtWire(new IdempotencyKey("txn_7w5b4trnc7b2ja027jyyb64395", 1_500.9)); // 1500n
88
+ * ```
89
+ *
90
+ * @internal Exported for tests.
91
+ * @throws {ConfigError} If the key's mint time is not a finite number.
92
+ */
93
+ export declare function mintedAtWire(key: IdempotencyKey): bigint;
94
+ /**
95
+ * Whether the service's window still covers `key` at `nowMs`, as a pure answer.
96
+ *
97
+ * `false` when the key's age has reached `window_seconds`, and `false` when the service
98
+ * advertises no wall-clock window (`window_seconds: null`, heartbeat disabled): a key
99
+ * cannot be aged against a window with no length in seconds.
100
+ *
101
+ * ```ts
102
+ * const window = { capacity: 500_000n, window_seconds: 86_400n, window_ticks: 86_400n };
103
+ * isFresh(new IdempotencyKey("txn_7w5b4trnc7b2ja027jyyb64395", 0), window, 1_000); // true
104
+ * ```
105
+ */
106
+ export declare function isFresh(key: IdempotencyKey, window: IdempotencyWindow, nowMs?: number): boolean;
107
+ /**
108
+ * Refuses a key the service's window no longer covers.
109
+ *
110
+ * Throws rather than returns, because the only safe thing to do with a stale key is not
111
+ * to send it: the fix is a new transaction id.
112
+ *
113
+ * ```ts
114
+ * const window = await client.idempotencyWindow();
115
+ * ensureFresh(key, window); // throws StaleIdempotencyKeyError when key is too old
116
+ * ```
117
+ *
118
+ * @throws {StaleIdempotencyKeyError} `reason: "expired"` when the key's age has reached
119
+ * `window_seconds`; `reason: "unclocked"` when the service advertises no wall-clock
120
+ * window.
121
+ */
122
+ export declare function ensureFresh(key: IdempotencyKey, window: IdempotencyWindow, nowMs?: number): void;
123
+ /**
124
+ * The three response headers on `GET /api/openapi.json` that state the service's
125
+ * idempotency window (contract 5.0.0). `window_ticks` and `capacity` are always sent by
126
+ * a service whose writer can answer; `window_seconds` only when its heartbeat runs.
127
+ */
128
+ export declare const IDEMPOTENCY_WINDOW_HEADERS: {
129
+ readonly window_ticks: "axorum-idempotency-window-ticks";
130
+ readonly window_seconds: "axorum-idempotency-window-seconds";
131
+ readonly capacity: "axorum-idempotency-capacity";
132
+ };
133
+ /** Anything that answers a header by name: a `Headers`, or a stand-in in a test. */
134
+ export interface HeaderSource {
135
+ get(name: string): string | null;
136
+ }
137
+ /**
138
+ * Reads the service's idempotency window from the headers on `GET /api/openapi.json`,
139
+ * as a pure function.
140
+ *
141
+ * A header states a count only as 1 to 20 ASCII digits between 1 and `2^64 - 1`. Every
142
+ * present header is checked before an absent one is reported, so a garbled response is
143
+ * never mistaken for a service that predates the window.
144
+ *
145
+ * ```ts
146
+ * const headers = new Headers({
147
+ * "axorum-idempotency-window-ticks": "86400",
148
+ * "axorum-idempotency-capacity": "500000",
149
+ * });
150
+ * readIdempotencyWindow(headers);
151
+ * // { capacity: 500000n, window_seconds: null, window_ticks: 86400n }
152
+ * ```
153
+ *
154
+ * @param headers - The response's headers.
155
+ * @param status - The response's status, carried on the error; `null` when there was none.
156
+ * @throws {IdempotencyWindowError} `reason: "malformed"` when a present header states no
157
+ * count; `reason: "not_advertised"` when the ticks or capacity header is absent.
158
+ */
159
+ export declare function readIdempotencyWindow(headers: HeaderSource, status?: number | null): IdempotencyWindow;
160
+ //# sourceMappingURL=idempotency.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"idempotency.d.ts","sourceRoot":"","sources":["../src/idempotency.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD;;;;;;;;;;;;GAYG;AACH,qBAAa,cAAc;IACzB,gDAAgD;IAChD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,oEAAoE;IACpE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B;;;;;;;;;OASG;gBACS,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAKnD;;;;;;;;;;OAUG;IACH,MAAM,CAAC,IAAI,CAAC,WAAW,GAAE,MAA2B,EAAE,KAAK,GAAE,MAAmB,GAAG,cAAc;IAIjG;;;;;;;OAOG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;CAG7B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,cAAc,GAAG,MAAM,CAQxD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,GAAE,MAAmB,GAAG,OAAO,CAQ3G;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,GAAE,MAAmB,GAAG,IAAI,CAa5G;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B;;;;CAI7B,CAAC;AAEX,oFAAoF;AACpF,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;CAClC;AAQD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,GAAE,MAAM,GAAG,IAAW,GAAG,iBAAiB,CAmB5G"}
@@ -0,0 +1,208 @@
1
+ /**
2
+ * Retry keys, and the window that bounds them (contract 5.0.0).
3
+ *
4
+ * A transaction id is the ledger's retry key. Within the service's idempotency window,
5
+ * resubmitting the identical intent under a committed id answers the original outcome,
6
+ * marked `replayed: true`, and records nothing. **Past the window a resubmission is
7
+ * refused** `409 stale_idempotency_key`: the id may have been forgotten, so the service
8
+ * will not commit it a second time.
9
+ *
10
+ * So a key has an age, and this module makes that age checkable. An
11
+ * {@link IdempotencyKey} remembers when its id was minted; {@link ensureFresh} refuses
12
+ * one older than the window the service advertises
13
+ * ({@link AxorumClient.idempotencyWindow}); {@link AxorumClient.submitKeyed} does both
14
+ * before anything is sent.
15
+ *
16
+ * ```ts
17
+ * const window = await client.idempotencyWindow();
18
+ * const key = IdempotencyKey.mint(); // hold on to this across retries
19
+ * const envelope = pinIntent({ ...draft, transaction: key.transaction }, policy);
20
+ * await client.submitKeyed(key, window, envelope); // throws StaleIdempotencyKeyError past the window
21
+ * ```
22
+ *
23
+ * The service states the window in three response headers on `GET /api/openapi.json`
24
+ * ({@link IDEMPOTENCY_WINDOW_HEADERS}), outside the frozen document it serves;
25
+ * {@link readIdempotencyWindow} is the pure reading of them, pinned for every SDK by
26
+ * `spec/fixtures/idempotency-window-v1.json`.
27
+ *
28
+ * @packageDocumentation
29
+ */
30
+ import { ConfigError, IdempotencyWindowError, StaleIdempotencyKeyError } from "./errors.js";
31
+ import { newTransactionId } from "./typeid.js";
32
+ /**
33
+ * A transaction id and the moment it was minted: a retry key whose age can be checked.
34
+ *
35
+ * Mint one per intent with {@link IdempotencyKey.mint}, keep it with the intent, and
36
+ * resubmit under it as often as you need to. When it is older than the service's window
37
+ * it stops vouching for a safe retry, and {@link ensureFresh} says so.
38
+ *
39
+ * ```ts
40
+ * const key = IdempotencyKey.mint();
41
+ * key.transaction; // "txn_…"
42
+ * key.ageAt(new Date()); // milliseconds since minting
43
+ * ```
44
+ */
45
+ export class IdempotencyKey {
46
+ /** The transaction id: the retry key itself. */
47
+ transaction;
48
+ /** When the id was minted, in milliseconds since the Unix epoch. */
49
+ mintedAtMs;
50
+ /**
51
+ * A key for an id minted at a known time: one read back from storage, say.
52
+ *
53
+ * ```ts
54
+ * const key = new IdempotencyKey("txn_7w5b4trnc7b2ja027jyyb64395", Date.parse(savedAt));
55
+ * ```
56
+ *
57
+ * @param transaction - The transaction id.
58
+ * @param mintedAtMs - When it was minted, in milliseconds since the Unix epoch.
59
+ */
60
+ constructor(transaction, mintedAtMs) {
61
+ this.transaction = transaction;
62
+ this.mintedAtMs = mintedAtMs;
63
+ }
64
+ /**
65
+ * Mints a key: a fresh transaction id (or the one given), stamped now.
66
+ *
67
+ * ```ts
68
+ * const key = IdempotencyKey.mint();
69
+ * const same = IdempotencyKey.mint("txn_7w5b4trnc7b2ja027jyyb64395");
70
+ * ```
71
+ *
72
+ * @param transaction - The id to stamp; a new one is minted when omitted.
73
+ * @param nowMs - The minting time; `Date.now()` when omitted.
74
+ */
75
+ static mint(transaction = newTransactionId(), nowMs = Date.now()) {
76
+ return new IdempotencyKey(transaction, nowMs);
77
+ }
78
+ /**
79
+ * The key's age at `nowMs`, in milliseconds. A mint time in the future (a clock that
80
+ * stepped back) reads as zero rather than negative.
81
+ *
82
+ * ```ts
83
+ * new IdempotencyKey("txn_7w5b4trnc7b2ja027jyyb64395", 1_000).ageAt(4_000); // 3000
84
+ * ```
85
+ */
86
+ ageAt(nowMs) {
87
+ return Math.max(0, nowMs - this.mintedAtMs);
88
+ }
89
+ }
90
+ /**
91
+ * The key's mint time as the envelope's `minted_at_ms`: whole milliseconds since the
92
+ * Unix epoch, rounded down, and zero for a time before it.
93
+ *
94
+ * ```ts
95
+ * mintedAtWire(new IdempotencyKey("txn_7w5b4trnc7b2ja027jyyb64395", 1_500.9)); // 1500n
96
+ * ```
97
+ *
98
+ * @internal Exported for tests.
99
+ * @throws {ConfigError} If the key's mint time is not a finite number.
100
+ */
101
+ export function mintedAtWire(key) {
102
+ if (!Number.isFinite(key.mintedAtMs)) {
103
+ throw new ConfigError(`the key for '${key.transaction}' has no finite mint time (${key.mintedAtMs}): mint it ` +
104
+ `with IdempotencyKey.mint(), or pass milliseconds since the Unix epoch.`);
105
+ }
106
+ return BigInt(Math.max(0, Math.floor(key.mintedAtMs)));
107
+ }
108
+ /**
109
+ * Whether the service's window still covers `key` at `nowMs`, as a pure answer.
110
+ *
111
+ * `false` when the key's age has reached `window_seconds`, and `false` when the service
112
+ * advertises no wall-clock window (`window_seconds: null`, heartbeat disabled): a key
113
+ * cannot be aged against a window with no length in seconds.
114
+ *
115
+ * ```ts
116
+ * const window = { capacity: 500_000n, window_seconds: 86_400n, window_ticks: 86_400n };
117
+ * isFresh(new IdempotencyKey("txn_7w5b4trnc7b2ja027jyyb64395", 0), window, 1_000); // true
118
+ * ```
119
+ */
120
+ export function isFresh(key, window, nowMs = Date.now()) {
121
+ const seconds = window.window_seconds;
122
+ if (seconds === null) {
123
+ return false;
124
+ }
125
+ // In bigint milliseconds, so the boundary is exact however long the window: a key
126
+ // is fresh strictly inside it, never at it.
127
+ return BigInt(Math.floor(key.ageAt(nowMs))) < seconds * 1000n;
128
+ }
129
+ /**
130
+ * Refuses a key the service's window no longer covers.
131
+ *
132
+ * Throws rather than returns, because the only safe thing to do with a stale key is not
133
+ * to send it: the fix is a new transaction id.
134
+ *
135
+ * ```ts
136
+ * const window = await client.idempotencyWindow();
137
+ * ensureFresh(key, window); // throws StaleIdempotencyKeyError when key is too old
138
+ * ```
139
+ *
140
+ * @throws {StaleIdempotencyKeyError} `reason: "expired"` when the key's age has reached
141
+ * `window_seconds`; `reason: "unclocked"` when the service advertises no wall-clock
142
+ * window.
143
+ */
144
+ export function ensureFresh(key, window, nowMs = Date.now()) {
145
+ if (window.window_seconds === null) {
146
+ throw new StaleIdempotencyKeyError(key.transaction, "unclocked", null, null, window.window_ticks);
147
+ }
148
+ if (!isFresh(key, window, nowMs)) {
149
+ throw new StaleIdempotencyKeyError(key.transaction, "expired", key.ageAt(nowMs), window.window_seconds, window.window_ticks);
150
+ }
151
+ }
152
+ /**
153
+ * The three response headers on `GET /api/openapi.json` that state the service's
154
+ * idempotency window (contract 5.0.0). `window_ticks` and `capacity` are always sent by
155
+ * a service whose writer can answer; `window_seconds` only when its heartbeat runs.
156
+ */
157
+ export const IDEMPOTENCY_WINDOW_HEADERS = {
158
+ window_ticks: "axorum-idempotency-window-ticks",
159
+ window_seconds: "axorum-idempotency-window-seconds",
160
+ capacity: "axorum-idempotency-capacity",
161
+ };
162
+ /** The largest count a header may state: `2^64 - 1`. */
163
+ const MAX_COUNT = 18446744073709551615n;
164
+ /** The shape of a count: 1 to 20 ASCII digits. */
165
+ const COUNT = /^[0-9]{1,20}$/;
166
+ /**
167
+ * Reads the service's idempotency window from the headers on `GET /api/openapi.json`,
168
+ * as a pure function.
169
+ *
170
+ * A header states a count only as 1 to 20 ASCII digits between 1 and `2^64 - 1`. Every
171
+ * present header is checked before an absent one is reported, so a garbled response is
172
+ * never mistaken for a service that predates the window.
173
+ *
174
+ * ```ts
175
+ * const headers = new Headers({
176
+ * "axorum-idempotency-window-ticks": "86400",
177
+ * "axorum-idempotency-capacity": "500000",
178
+ * });
179
+ * readIdempotencyWindow(headers);
180
+ * // { capacity: 500000n, window_seconds: null, window_ticks: 86400n }
181
+ * ```
182
+ *
183
+ * @param headers - The response's headers.
184
+ * @param status - The response's status, carried on the error; `null` when there was none.
185
+ * @throws {IdempotencyWindowError} `reason: "malformed"` when a present header states no
186
+ * count; `reason: "not_advertised"` when the ticks or capacity header is absent.
187
+ */
188
+ export function readIdempotencyWindow(headers, status = null) {
189
+ const count = (name) => {
190
+ const value = headers.get(name);
191
+ if (value === null) {
192
+ return null;
193
+ }
194
+ const parsed = COUNT.test(value) ? BigInt(value) : 0n;
195
+ if (parsed < 1n || parsed > MAX_COUNT) {
196
+ throw new IdempotencyWindowError(status, "malformed", name, value);
197
+ }
198
+ return parsed;
199
+ };
200
+ const windowTicks = count(IDEMPOTENCY_WINDOW_HEADERS.window_ticks);
201
+ const windowSeconds = count(IDEMPOTENCY_WINDOW_HEADERS.window_seconds);
202
+ const capacity = count(IDEMPOTENCY_WINDOW_HEADERS.capacity);
203
+ if (windowTicks === null || capacity === null) {
204
+ throw new IdempotencyWindowError(status, "not_advertised", null, null);
205
+ }
206
+ return { capacity, window_seconds: windowSeconds, window_ticks: windowTicks };
207
+ }
208
+ //# sourceMappingURL=idempotency.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"idempotency.js","sourceRoot":"","sources":["../src/idempotency.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ /**
2
+ * `@axorum/client` — the official TypeScript SDK for the Axorum agent plane.
3
+ *
4
+ * Submit intents, read ledger state, and recover from a stale policy pin, against an
5
+ * `axorum-serve` instance. Zero runtime dependencies: the platform's `fetch`,
6
+ * `crypto.randomUUID`, and `AbortSignal` are all it needs.
7
+ *
8
+ * ## The one rule
9
+ *
10
+ * **A policy refusal is not an error.** An intent the policy in force forbids is still
11
+ * committed, still judged, and still *recorded* — and that recording is the product. It
12
+ * resolves as an {@link AgentOutcome} with `posted: false` and
13
+ * `verdict: "ForbiddenRejected"`, over a `200`.
14
+ *
15
+ * ## Reads are credentialed
16
+ *
17
+ * A submit authenticates *inside* the envelope. The party-scoped reads — `transaction`,
18
+ * `obligations`, `balance`, `usage` — present the **same** PASETO attestation as
19
+ * `Authorization: Bearer …`, and the service answers them only within the party that
20
+ * token is bound to. So give the client the attestation, and it can read as well as
21
+ * write; omit it and a read fails locally with a {@link MissingAttestationError}, before
22
+ * a byte leaves the process.
23
+ *
24
+ * ```ts
25
+ * import { AxorumClient, refusalOf } from "@axorum/client";
26
+ *
27
+ * const axorum = new AxorumClient({ baseUrl: "http://127.0.0.1:8080", attestation: paseto });
28
+ *
29
+ * const outcome = await axorum.submitPinned({
30
+ * agent: "agent://example.com/agent/clerk_01h455vb4pex5vsknk084sn02q",
31
+ * attestation: paseto,
32
+ * action: { action: "post", bindings: {} },
33
+ * entries: [
34
+ * { account: cash, side: "Debit", amount: { minor: 1_000n, currency: "USD" } },
35
+ * { account: revenue, side: "Credit", amount: { minor: 1_000n, currency: "USD" } },
36
+ * ],
37
+ * justification: "invoice 4471",
38
+ * });
39
+ *
40
+ * if (outcome.posted) {
41
+ * console.log("permitted, and the entries posted");
42
+ * } else {
43
+ * // Not a failure. The ledger recorded a refusal, which is what you asked it to do.
44
+ * // Branch on `code`; show `explanation` to a human.
45
+ * const refusal = refusalOf(outcome);
46
+ * console.log("refused:", refusal?.code, refusal?.explanation);
47
+ * }
48
+ * ```
49
+ *
50
+ * An {@link AxorumError} means the ledger never got to answer at all: the caller was not
51
+ * who they claimed, the pin did not hold, the cluster could not confirm, the wire broke.
52
+ *
53
+ * ## Metered spend is one intent
54
+ *
55
+ * An agent that consumes a metered resource carries the usage moves on the **same** draft
56
+ * as the journal legs — `consume_usage`, `meter_usage`, `bill_usage` — so consuming,
57
+ * metering and billing commit atomically with the money, under the conservation law
58
+ * `0 ≤ billed ≤ metered ≤ consumed`. Metering more than was consumed is phantom usage;
59
+ * billing more than was metered is billing with no meter basis; the ledger refuses both,
60
+ * and nothing posts. Read a balance back with {@link AxorumClient.usage}.
61
+ *
62
+ * ## Money is `bigint`
63
+ *
64
+ * The ledger denominates money in 128-bit integer minor units. A JavaScript `number`
65
+ * cannot hold one, so this client decodes every JSON integer as a `bigint` — with its
66
+ * own parser, because `JSON.parse` would silently truncate. `{ minor: 50_000n }`.
67
+ *
68
+ * @packageDocumentation
69
+ */
70
+ export { AxorumClient, MAX_PINS, ONE_ENDPOINT_WARNING, type AxorumClientOptions, type RequestOptions, } from "./client.js";
71
+ export { ApiError, AttestationError, AxorumError, CLIENT_ERROR_CODES, CommitUnavailableError, ConfigError, DeadlineExceededError, DecodeError, EndpointsExhaustedError, InvalidAgentError, InvalidPaymentError, MissingAttestationError, NoActivePolicyError, NotPrimaryError, IdempotencyWindowError, StaleIdempotencyKeyError, StalePolicyError, TransactionReusedError, TransportError, UnexpectedResponseError, UnknownAgentError, WIRE_ERROR_CODES, WROTE_NOTHING_507, WROTE_NOTHING_UNPROPOSED, ConnectError, RATE_LIMIT_EXCEEDED, RateLimitedError, errorFromBody, isAxorumError, isKnownErrorCode, type AxorumErrorCode, type ClientErrorCode, type StaleKeyReason, type WindowHeaderReason, type WireErrorCode, } from "./errors.js";
72
+ export { RETRIES_COUNTER, ROTATIONS_COUNTER, endpointSet, rotationLabel, type EndpointAttempt, type EndpointSetRefusal, type RotationReason, } from "./failover.js";
73
+ export { pinIntent, type IntentDraft } from "./intent.js";
74
+ export { IDEMPOTENCY_WINDOW_HEADERS, IdempotencyKey, ensureFresh, isFresh, readIdempotencyWindow, type HeaderSource, } from "./idempotency.js";
75
+ export { agentUriProblem, type AgentUriProblem } from "./agent-uri.js";
76
+ export { Agent, AuthorizeError, MAX_AUTHORIZE_PINS, afterDoubt, NOT_SUBMITTED_CAVEAT, attestationProblem, classify, judge, justificationHash, justificationMatches, keyGate, vouch, leavesDoubt, type Allowed, type AttestationSource, type Authorization, type AuthorizeFailure, type Cause, type Disposition, type NotSubmittedCause, type Refused, type SubmissionBound, } from "./authorize.js";
77
+ export { AUTHORIZE_DEADLINE_MS, AUTHORIZE_RESENT_STATUSES, AUTHORIZE_RETRY_POLICY, COMMIT_WAIT_MARGIN_MS, DEFAULT_RETRY_POLICY, SUBMIT_ATTEMPT_FALLBACK_MS, SUBMIT_TIMEOUT_HEADER, advertisedCommitWait, attemptTimeout, backoffDelay, fitsBefore, isConnectFailure, isRetriableStatus, liftedSubmitTimeout, nextPause, parseRetryAfter, pause, retryLabel, shouldRetry, submitAttemptTimeout, wantsRetry, type Jitter, type RetryPolicy, type RetryReason, } from "./retry.js";
78
+ export { DEFAULT_CHART_V1, defaultChartAccount, defaultChartLegs, uuidV5, type ChartRole, } from "./chart.js";
79
+ export { MAX_PAYEE_BYTES, newPaymentId, payeeProblem, keyedPayment, payment, planPayment, resumePayment, type Payment, type PaymentInit, type PaymentOrigin, } from "./payment.js";
80
+ export { COMPARISON_OPS, CONDITION_KINDS, FIGURE_SOURCES, MANDATE_QUANTITIES, MODALITIES, REFUSAL_CODES, REGISTER_SCOPES, SUBSTRATE_CAUSES, SUBSTRATE_LAWS, WINDOW_KINDS, figureOf, isKnownConditionKind, isKnownRefusalCode, isKnownSubstrateCause, isKnownSubstrateLaw, refusalOf, type KnownConditionKind, type KnownRefusalCode, type KnownSubstrateCause, type KnownSubstrateLaw, } from "./refusal.js";
81
+ export { AUTHORIZE_NAMESPACE, MAX_PAYMENT_KEY_BYTES, paymentKey, paymentKeyProblem, keyedTransaction, type PaymentKey, } from "./key.js";
82
+ export { ATTESTATION_CLOCK_ALLOWANCE_MS, ATTESTATION_MIN_REMAINING_MS, attestationFreshness, submissionDeadline, type Freshness, } from "./freshness.js";
83
+ export { newTransactionId, uuidV7, v7MintedAtMs } from "./typeid.js";
84
+ export { parseJson, stringifyJson } from "./json.js";
85
+ export { CAPABILITIES_EXTENSION, advertisedCapabilities, advertises, type Capabilities, } from "./capabilities.js";
86
+ export { capabilities } from "./generated/agent-plane.js";
87
+ export type { ActionTerm, ActivePolicyResponse, AgentOutcome, Amount, BalanceResponse, Condition, CurrencyWarning, DeclaredCurrencies, DeclaredCurrency, Entry, Envelope, ErrorBody, IdempotencyWindow, Figure, FigureCounterparty, FigureWindow, IntentEnvelope, MasterDataBasis, ObligationInstance, ObligationOutcomes, ObligationState, ObligationsResponse, OutcomeProvenance, Provenance, ReferenceSet, Refusal, RefusingRule, SemanticsVersion, SetAside, Side, TransactionRecord, UsageBalanceReport, UsageMove, Value, Verdict, } from "./types.js";
88
+ export type { components, operations, paths } from "./generated/agent-plane.js";
89
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js ADDED
@@ -0,0 +1,87 @@
1
+ /**
2
+ * `@axorum/client` — the official TypeScript SDK for the Axorum agent plane.
3
+ *
4
+ * Submit intents, read ledger state, and recover from a stale policy pin, against an
5
+ * `axorum-serve` instance. Zero runtime dependencies: the platform's `fetch`,
6
+ * `crypto.randomUUID`, and `AbortSignal` are all it needs.
7
+ *
8
+ * ## The one rule
9
+ *
10
+ * **A policy refusal is not an error.** An intent the policy in force forbids is still
11
+ * committed, still judged, and still *recorded* — and that recording is the product. It
12
+ * resolves as an {@link AgentOutcome} with `posted: false` and
13
+ * `verdict: "ForbiddenRejected"`, over a `200`.
14
+ *
15
+ * ## Reads are credentialed
16
+ *
17
+ * A submit authenticates *inside* the envelope. The party-scoped reads — `transaction`,
18
+ * `obligations`, `balance`, `usage` — present the **same** PASETO attestation as
19
+ * `Authorization: Bearer …`, and the service answers them only within the party that
20
+ * token is bound to. So give the client the attestation, and it can read as well as
21
+ * write; omit it and a read fails locally with a {@link MissingAttestationError}, before
22
+ * a byte leaves the process.
23
+ *
24
+ * ```ts
25
+ * import { AxorumClient, refusalOf } from "@axorum/client";
26
+ *
27
+ * const axorum = new AxorumClient({ baseUrl: "http://127.0.0.1:8080", attestation: paseto });
28
+ *
29
+ * const outcome = await axorum.submitPinned({
30
+ * agent: "agent://example.com/agent/clerk_01h455vb4pex5vsknk084sn02q",
31
+ * attestation: paseto,
32
+ * action: { action: "post", bindings: {} },
33
+ * entries: [
34
+ * { account: cash, side: "Debit", amount: { minor: 1_000n, currency: "USD" } },
35
+ * { account: revenue, side: "Credit", amount: { minor: 1_000n, currency: "USD" } },
36
+ * ],
37
+ * justification: "invoice 4471",
38
+ * });
39
+ *
40
+ * if (outcome.posted) {
41
+ * console.log("permitted, and the entries posted");
42
+ * } else {
43
+ * // Not a failure. The ledger recorded a refusal, which is what you asked it to do.
44
+ * // Branch on `code`; show `explanation` to a human.
45
+ * const refusal = refusalOf(outcome);
46
+ * console.log("refused:", refusal?.code, refusal?.explanation);
47
+ * }
48
+ * ```
49
+ *
50
+ * An {@link AxorumError} means the ledger never got to answer at all: the caller was not
51
+ * who they claimed, the pin did not hold, the cluster could not confirm, the wire broke.
52
+ *
53
+ * ## Metered spend is one intent
54
+ *
55
+ * An agent that consumes a metered resource carries the usage moves on the **same** draft
56
+ * as the journal legs — `consume_usage`, `meter_usage`, `bill_usage` — so consuming,
57
+ * metering and billing commit atomically with the money, under the conservation law
58
+ * `0 ≤ billed ≤ metered ≤ consumed`. Metering more than was consumed is phantom usage;
59
+ * billing more than was metered is billing with no meter basis; the ledger refuses both,
60
+ * and nothing posts. Read a balance back with {@link AxorumClient.usage}.
61
+ *
62
+ * ## Money is `bigint`
63
+ *
64
+ * The ledger denominates money in 128-bit integer minor units. A JavaScript `number`
65
+ * cannot hold one, so this client decodes every JSON integer as a `bigint` — with its
66
+ * own parser, because `JSON.parse` would silently truncate. `{ minor: 50_000n }`.
67
+ *
68
+ * @packageDocumentation
69
+ */
70
+ export { AxorumClient, MAX_PINS, ONE_ENDPOINT_WARNING, } from "./client.js";
71
+ export { ApiError, AttestationError, AxorumError, CLIENT_ERROR_CODES, CommitUnavailableError, ConfigError, DeadlineExceededError, DecodeError, EndpointsExhaustedError, InvalidAgentError, InvalidPaymentError, MissingAttestationError, NoActivePolicyError, NotPrimaryError, IdempotencyWindowError, StaleIdempotencyKeyError, StalePolicyError, TransactionReusedError, TransportError, UnexpectedResponseError, UnknownAgentError, WIRE_ERROR_CODES, WROTE_NOTHING_507, WROTE_NOTHING_UNPROPOSED, ConnectError, RATE_LIMIT_EXCEEDED, RateLimitedError, errorFromBody, isAxorumError, isKnownErrorCode, } from "./errors.js";
72
+ export { RETRIES_COUNTER, ROTATIONS_COUNTER, endpointSet, rotationLabel, } from "./failover.js";
73
+ export { pinIntent } from "./intent.js";
74
+ export { IDEMPOTENCY_WINDOW_HEADERS, IdempotencyKey, ensureFresh, isFresh, readIdempotencyWindow, } from "./idempotency.js";
75
+ export { agentUriProblem } from "./agent-uri.js";
76
+ export { Agent, AuthorizeError, MAX_AUTHORIZE_PINS, afterDoubt, NOT_SUBMITTED_CAVEAT, attestationProblem, classify, judge, justificationHash, justificationMatches, keyGate, vouch, leavesDoubt, } from "./authorize.js";
77
+ export { AUTHORIZE_DEADLINE_MS, AUTHORIZE_RESENT_STATUSES, AUTHORIZE_RETRY_POLICY, COMMIT_WAIT_MARGIN_MS, DEFAULT_RETRY_POLICY, SUBMIT_ATTEMPT_FALLBACK_MS, SUBMIT_TIMEOUT_HEADER, advertisedCommitWait, attemptTimeout, backoffDelay, fitsBefore, isConnectFailure, isRetriableStatus, liftedSubmitTimeout, nextPause, parseRetryAfter, pause, retryLabel, shouldRetry, submitAttemptTimeout, wantsRetry, } from "./retry.js";
78
+ export { DEFAULT_CHART_V1, defaultChartAccount, defaultChartLegs, uuidV5, } from "./chart.js";
79
+ export { MAX_PAYEE_BYTES, newPaymentId, payeeProblem, keyedPayment, payment, planPayment, resumePayment, } from "./payment.js";
80
+ export { COMPARISON_OPS, CONDITION_KINDS, FIGURE_SOURCES, MANDATE_QUANTITIES, MODALITIES, REFUSAL_CODES, REGISTER_SCOPES, SUBSTRATE_CAUSES, SUBSTRATE_LAWS, WINDOW_KINDS, figureOf, isKnownConditionKind, isKnownRefusalCode, isKnownSubstrateCause, isKnownSubstrateLaw, refusalOf, } from "./refusal.js";
81
+ export { AUTHORIZE_NAMESPACE, MAX_PAYMENT_KEY_BYTES, paymentKey, paymentKeyProblem, keyedTransaction, } from "./key.js";
82
+ export { ATTESTATION_CLOCK_ALLOWANCE_MS, ATTESTATION_MIN_REMAINING_MS, attestationFreshness, submissionDeadline, } from "./freshness.js";
83
+ export { newTransactionId, uuidV7, v7MintedAtMs } from "./typeid.js";
84
+ export { parseJson, stringifyJson } from "./json.js";
85
+ export { CAPABILITIES_EXTENSION, advertisedCapabilities, advertises, } from "./capabilities.js";
86
+ export { capabilities } from "./generated/agent-plane.js";
87
+ //# sourceMappingURL=index.js.map