@engramx/client 0.16.0-rc.15 → 0.16.0-rc.17
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 +34 -7
- package/dist/EngramClient.d.ts +15 -1
- package/dist/EngramClient.js +18 -0
- package/dist/EngramClient.js.map +1 -1
- package/dist/birthChain.d.ts +87 -0
- package/dist/birthChain.js +233 -0
- package/dist/birthChain.js.map +1 -0
- package/dist/idl.d.ts +1 -1
- package/dist/idl.js +7 -0
- package/dist/idl.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +9 -0
- package/dist/verify.d.ts +2 -0
- package/dist/verify.js +3 -0
- package/dist/verify.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -66,7 +66,7 @@ const files = await engram.readMemoryBatch(['MEMORY.md', 'memory/daily.md']);
|
|
|
66
66
|
> ```typescript
|
|
67
67
|
> const bundle = await engram.captureEvidence(receipt, 'memory/daily.md');
|
|
68
68
|
> // fs.writeFileSync('bundle.json', JSON.stringify(bundle));
|
|
69
|
-
> // npx @engramx/client@0.16.0-rc.
|
|
69
|
+
> // npx @engramx/client@0.16.0-rc.17 verify bundle.json → each link, the signed time, the entries walked
|
|
70
70
|
> ```
|
|
71
71
|
|
|
72
72
|
|
|
@@ -88,7 +88,7 @@ in-repo consumer as a reason to report what breaks, not as a warning that it doe
|
|
|
88
88
|
|
|
89
89
|
The 2026-08-17 charter diet (below) deleted a lot of caller-less methods and **deliberately kept
|
|
90
90
|
these two.** Zero in-repo callers was the reason to look at them; it was not the reason to decide.
|
|
91
|
-
Three facts decided it. They are what `npx @engramx/mcp@0.16.0-rc.
|
|
91
|
+
Three facts decided it. They are what `npx @engramx/mcp@0.16.0-rc.17 connect` *instructs* whoever builds a new
|
|
92
92
|
SDK-lane agent to call, verbatim, in the guide the dashboard's connect page renders — deleting a method
|
|
93
93
|
while still telling people to call it is the failure this whole exercise exists to prevent.
|
|
94
94
|
`startSession()` is the only read on the **update** path, so it is the only one the canister can
|
|
@@ -114,13 +114,13 @@ Pair your agent with an engram:
|
|
|
114
114
|
|
|
115
115
|
```bash
|
|
116
116
|
# Pair the agent on this machine with the engram and install the OpenClaw plugin
|
|
117
|
-
pnpm dlx @engramx/client@0.16.0-rc.
|
|
117
|
+
pnpm dlx @engramx/client@0.16.0-rc.17 pair <invite-code> --engram <canister-id> --target openclaw
|
|
118
118
|
|
|
119
119
|
# Replacement machine — after pairing, restore memory from the engram
|
|
120
|
-
pnpm dlx @engramx/client@0.16.0-rc.
|
|
120
|
+
pnpm dlx @engramx/client@0.16.0-rc.17 migrate --engram <canister-id> --recover
|
|
121
121
|
```
|
|
122
122
|
|
|
123
|
-
`pair` generates the key for this engram at `~/.engramx/session.key` (and, on the first pairing, the agent's lasting key at `~/.engramx/root.key`), pairs the agent — the CLI prints `Paired as an agent` — and installs the OpenClaw plugin. `migrate` then moves memory, saving a local checkpoint first — run `npx @engramx/client@0.16.0-rc.
|
|
123
|
+
`pair` generates the key for this engram at `~/.engramx/session.key` (and, on the first pairing, the agent's lasting key at `~/.engramx/root.key`), pairs the agent — the CLI prints `Paired as an agent` — and installs the OpenClaw plugin. `migrate` then moves memory, saving a local checkpoint first — run `npx @engramx/client@0.16.0-rc.17 rollback` to undo. Its default direction pushes local memory files to the engram; `--recover` instead restores database backups, and memory files sync automatically on next OpenClaw startup.
|
|
124
124
|
|
|
125
125
|
⟨2026-10-13⟩ `pair` moves no memory unless you add `--migrate`, and `--yes` never adds it. Without it, `pair` leaves any OpenClaw memory files on this machine where they are and prints one line: how many it found, and the `migrate` command that moves them. With `--migrate`, it runs that migration after pairing — each file is uploaded, then deleted here, and `rollback` restores them. Through 0.16.0-rc.11, `pair` ran the migration on every pairing, whatever the `--target` (Claude too), and answered its own question under `--yes`.
|
|
126
126
|
|
|
@@ -136,7 +136,7 @@ If the owner of the wallet allows it (a standing allowance they set for this age
|
|
|
136
136
|
page), the agent can open an engram of its own through the engram it works in. The owner may be a program. Whoever runs that program is the owner for every purpose on these pages.
|
|
137
137
|
|
|
138
138
|
```bash
|
|
139
|
-
npx @engramx/client@0.16.0-rc.
|
|
139
|
+
npx @engramx/client@0.16.0-rc.17 open-engram --engram <canister-id>
|
|
140
140
|
```
|
|
141
141
|
|
|
142
142
|
The engram it works in pays to open it, from its own balance, and the agent's lasting key
|
|
@@ -145,7 +145,7 @@ paid in is the agent's from the moment the new engram exists, and nothing is tak
|
|
|
145
145
|
reads the allowance first and stops, with nothing spent, when there is none; it never creates a
|
|
146
146
|
lasting key; and it prints the engram's own sentence when the engram refuses. It then prints the
|
|
147
147
|
owner kit's command that acts as the new engram's owner with the same file —
|
|
148
|
-
`npx @engramx/owner@0.16.0-rc.
|
|
148
|
+
`npx @engramx/owner@0.16.0-rc.17 --connect --key-file <that file> --registry <id>`, with both filled in — which
|
|
149
149
|
mints an invite for an agent to pair into it. The agent's lasting key is an owner key for the engram
|
|
150
150
|
it opened only; on the engram it works in it stays an agent. The agent's work in an engram its own
|
|
151
151
|
key owns is never counted on its track record. From code: `EngramClient.getChildAllowance(key)`,
|
|
@@ -380,6 +380,33 @@ ever empty again, such a call would report `'indeterminate'` by design — the S
|
|
|
380
380
|
canonicity.) Pass `{ registryId }` to ask a different fleet (e.g. staging); the answer is then
|
|
381
381
|
_that fleet's_ testimony, not canonicity.
|
|
382
382
|
|
|
383
|
+
## Verify a birth chain ⟨2026-10-26⟩
|
|
384
|
+
|
|
385
|
+
Every engram a registry opens gets a **birth record**: its id, the engram it was opened from (none
|
|
386
|
+
for a first engram), its engram number, its birth time, a random secret, and the fingerprint of its
|
|
387
|
+
parent's record. The engram holds its own record and copies of its ancestors' records, and serves
|
|
388
|
+
them to its **owner only** (`getBirthChain`) — the owner decides whom to show them to. The registry
|
|
389
|
+
certifies each record's fingerprint, and nothing else, in its certified tree (`getCertifiedBirth`,
|
|
390
|
+
public: it reveals only whether a fingerprint is present). A record holds no person's identity,
|
|
391
|
+
memory or wallet data.
|
|
392
|
+
|
|
393
|
+
```typescript
|
|
394
|
+
import { verifyBirthChain, fromCandidBirthRecord } from '@engramx/client/verify';
|
|
395
|
+
|
|
396
|
+
const reply = await engram.getBirthChain(); // as the engram's owner
|
|
397
|
+
if ('Err' in reply) throw new Error(JSON.stringify(reply.Err));
|
|
398
|
+
const records = reply.Ok.map(fromCandidBirthRecord);
|
|
399
|
+
// The registry's witnesses are fetched for you (`registryBirthWitness`); pass `fetchWitness` to
|
|
400
|
+
// supply your own.
|
|
401
|
+
const verdict = await verifyBirthChain(agent, registryId, records, { expectChild: engramId });
|
|
402
|
+
// verdict.verified — every record certified against the IC root key AND every link holds
|
|
403
|
+
// verdict.complete — the chain starts at a first engram (a part-way run is still verifiable)
|
|
404
|
+
// verdict.links — per record: certified or not, and why
|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
Fingerprints are recomputed from the canonical encoding (`encodeBirthRecord`), never read off the
|
|
408
|
+
wire. There is no certified proof of absence: an uncertified link is "not proven", not "proven false".
|
|
409
|
+
|
|
383
410
|
## OpenClaw Integration
|
|
384
411
|
|
|
385
412
|
The `--target openclaw` option on `pair` handles plugin installation and `openclaw.json` configuration automatically. For manual setup or customization, see the README of the `@engramx/openclaw` package on npm.
|
package/dist/EngramClient.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { Ed25519KeyIdentity } from '@icp-sdk/core/identity';
|
|
|
3
3
|
import { Principal } from '@icp-sdk/core/principal';
|
|
4
4
|
import { idlFactory } from './idl.js';
|
|
5
5
|
import { type EvidenceBundle } from './evidence.js';
|
|
6
|
-
import type { MemoryHistory, MemoryRangePage, MemoryFile, MemoryFileInfo, SessionContext, Pairing, AuditPage, AgentRecord, ChildAllowanceRow, EngramStatus, OwnerConsole, GuardianRecord, BackupMetadata, BackupType, ApprovalRequest } from './types.js';
|
|
6
|
+
import type { MemoryHistory, MemoryRangePage, MemoryFile, MemoryFileInfo, SessionContext, Pairing, AuditPage, AgentRecord, AgentGrant, ChildAllowanceRow, EngramStatus, OwnerConsole, GuardianRecord, BackupMetadata, BackupRetention, BackupType, ApprovalRequest } from './types.js';
|
|
7
7
|
/**
|
|
8
8
|
* Source class declared on an append — recorded permanently in the engram's audit chain beside
|
|
9
9
|
* this agent's principal. Declared by the caller, NOT verified by the canister; a false
|
|
@@ -334,6 +334,13 @@ export declare class EngramClient {
|
|
|
334
334
|
* Terminal for this principal on this engram: pairing is one-shot, so working for it again
|
|
335
335
|
* needs a new principal and a fresh invite. Throws on a refusal (not an agent, already ended). */
|
|
336
336
|
resignAgent(): Promise<void>;
|
|
337
|
+
/** ⟨2026-10-21, round 11 g⟩ THIS agent's own grant, as the engram enforces it against the key
|
|
338
|
+
* this client signs with: what it may read, where it may write (`permissions.scopes`, the
|
|
339
|
+
* `memory.append:<path>` rules — none means anywhere it could before), its rate
|
|
340
|
+
* (`permissions.callsPerMinute`, 0 = no limit) and its payment limits. Read it before writing to
|
|
341
|
+
* avoid a refusal the owner then has to explain. Only the caller's own grant — never another
|
|
342
|
+
* agent's. Throws on a refusal: the owner, a revoked or resigned agent, a guardian or a stranger. */
|
|
343
|
+
myGrant(): Promise<AgentGrant>;
|
|
337
344
|
/** ⟨2026-09-29, the owner's ruling of that date (follow-up 10, option A)⟩ Step one of replacing
|
|
338
345
|
* THIS agent's key on the engram: the key this client signs with nominates `newKey`. Nothing
|
|
339
346
|
* moves until the new key accepts (`acceptAgentKeyNomination`, called by a client that signs with
|
|
@@ -391,6 +398,13 @@ export declare class EngramClient {
|
|
|
391
398
|
* chunk, then check the reassembled sha256 against it before applying anything. A restore that
|
|
392
399
|
* cannot state the hash it expected is not a restore. */
|
|
393
400
|
getBackupMetadata(backupId: string): Promise<BackupMetadata>;
|
|
401
|
+
/** ⟨2026-10-21, the owner's round-11 answers h and m⟩ How many backups of `dbType` the engram
|
|
402
|
+
* keeps for EACH creator — this agent's own included — and whether that number is the engram's
|
|
403
|
+
* default (`isDefault`, the owner never set one). Since that day the cap is per creator: this
|
|
404
|
+
* agent's finalize prunes only this agent's own oldest backups beyond it, never the owner's or
|
|
405
|
+
* another agent's. Needs the upload permission (`canAppendMemory`); throws on a refusal — a
|
|
406
|
+
* reader-only agent, a revoked or resigned one, a guardian, a stranger — never a made-up number. */
|
|
407
|
+
getBackupRetention(dbType: string): Promise<BackupRetention>;
|
|
394
408
|
latestBackupMatchesHash(dbType: string, sha256: string): Promise<BackupMetadata | null>;
|
|
395
409
|
/** Encrypt a backup payload IFF this engram is in Private mode — the SAME toggle that governs
|
|
396
410
|
* memory files governs backups (encrypt files ⇒ encrypt backups). Produces a whole-blob
|
package/dist/EngramClient.js
CHANGED
|
@@ -723,6 +723,15 @@ export class EngramClient {
|
|
|
723
723
|
async resignAgent() {
|
|
724
724
|
this.unwrap(await this.actor.resignAgent(), 'resignAgent');
|
|
725
725
|
}
|
|
726
|
+
/** ⟨2026-10-21, round 11 g⟩ THIS agent's own grant, as the engram enforces it against the key
|
|
727
|
+
* this client signs with: what it may read, where it may write (`permissions.scopes`, the
|
|
728
|
+
* `memory.append:<path>` rules — none means anywhere it could before), its rate
|
|
729
|
+
* (`permissions.callsPerMinute`, 0 = no limit) and its payment limits. Read it before writing to
|
|
730
|
+
* avoid a refusal the owner then has to explain. Only the caller's own grant — never another
|
|
731
|
+
* agent's. Throws on a refusal: the owner, a revoked or resigned agent, a guardian or a stranger. */
|
|
732
|
+
async myGrant() {
|
|
733
|
+
return this.unwrap(await this.actor.myGrant(), 'myGrant');
|
|
734
|
+
}
|
|
726
735
|
/** ⟨2026-09-29, the owner's ruling of that date (follow-up 10, option A)⟩ Step one of replacing
|
|
727
736
|
* THIS agent's key on the engram: the key this client signs with nominates `newKey`. Nothing
|
|
728
737
|
* moves until the new key accepts (`acceptAgentKeyNomination`, called by a client that signs with
|
|
@@ -846,6 +855,15 @@ export class EngramClient {
|
|
|
846
855
|
async getBackupMetadata(backupId) {
|
|
847
856
|
return this.unwrap(await this.actor.getBackupMetadata(backupId));
|
|
848
857
|
}
|
|
858
|
+
/** ⟨2026-10-21, the owner's round-11 answers h and m⟩ How many backups of `dbType` the engram
|
|
859
|
+
* keeps for EACH creator — this agent's own included — and whether that number is the engram's
|
|
860
|
+
* default (`isDefault`, the owner never set one). Since that day the cap is per creator: this
|
|
861
|
+
* agent's finalize prunes only this agent's own oldest backups beyond it, never the owner's or
|
|
862
|
+
* another agent's. Needs the upload permission (`canAppendMemory`); throws on a refusal — a
|
|
863
|
+
* reader-only agent, a revoked or resigned one, a guardian, a stranger — never a made-up number. */
|
|
864
|
+
async getBackupRetention(dbType) {
|
|
865
|
+
return this.unwrap(await this.actor.getBackupRetention(dbType), 'getBackupRetention');
|
|
866
|
+
}
|
|
849
867
|
// deleteBackup and setBackupRetention are owner-only; deleteBackup left in the 2026-08-17
|
|
850
868
|
// charter diet. An agent that can destroy the owner's backups is the append-only
|
|
851
869
|
// guarantee inverted — the whole point of the lane is that a compromised agent cannot erase.
|
package/dist/EngramClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EngramClient.js","sourceRoot":"","sources":["../src/EngramClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAiB,MAAM,qBAAqB,CAAC;AACtE,OAAO,EACL,wBAAwB,GAGzB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,UAAU,EAAyB,MAAM,UAAU,CAAC;AAE7D,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAkB,MAAM,WAAW,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAuB,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,WAAW,EAAkB,MAAM,kBAAkB,CAAC;AA2C/D,MAAM,eAAe,GAAG,CAAC,CAAgB,EAAgC,EAAE,CACzE,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAA2B,CAAC,CAAC;AAwClE,MAAM,KAAK,GAAG,CAAC,CAAwB,EAAU,EAAE,CACjD,KAAK,CAAC,IAAI,CAAC,CAAqB,CAAC;KAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;KAC3C,IAAI,CAAC,EAAE,CAAC,CAAC;AAEd,MAAM,SAAS,GAAG,CAChB,CAUC,EACD,IAAgB,EACD,EAAE,CAAC,CAAC;IACnB,OAAO,EAAE,CAAC,CAAC,OAAO;IAClB,GAAG,EAAE,CAAC,CAAC,GAAG;IACV,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACnB,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACnB,IAAI,EAAE,CAAC,CAAC,IAAI;IACZ,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC;IACjC,IAAI,EAAE,CAAC,CAAC,IAAI;IACZ,QAAQ,EAAE,CAAC,CAAC,QAAQ;IACpB,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC;IAC/B,IAAI;CACL,CAAC,CAAC;AAEH,SAAS,kBAAkB,CAAC,CAAS;IACnC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IACjE,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;AAC5E,CAAC;AA+BD,iGAAiG;AACjG,iGAAiG;AACjG,6FAA6F;AAC7F,mFAAmF;AACnF,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB;;;;GAIG;AACH,MAAM,eAAe,GAAG,MAAO,CAAC;AAEhC,uDAAuD;AACvD,+FAA+F;AAC/F,8FAA8F;AAC9F,mGAAmG;AACnG,gGAAgG;AAChG,gEAAgE;AAChE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,EAAE,GAAG,EAAgB,EAAE,EAAE;IAC7D,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;IAC7F,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC;QAC/B,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;QAC7C,iBAAiB,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;QACnD,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,iBAAiB,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;QAC5D,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;QAC/C,MAAM,EAAE,GAAG,CAAC,IAAI;QAChB,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;QACvD,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;QAChD,sBAAsB,EAAE,GAAG,CAAC,IAAI;QAChC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;KACrE,CAAC,CAAC;IACH,OAAO,GAAG,CAAC,OAAO,CAAC;QACjB,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QAC7C,aAAa,EAAE,GAAG,CAAC,IAAI,CACrB;YACE,GAAG,CAAC,MAAM,CAAC;gBACT,OAAO,EAAE,OAAO;gBAChB,MAAM,EAAE,GAAG,CAAC,GAAG;gBACf,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;gBACrB,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAChC,eAAe,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC3C,eAAe,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;gBACnC,kBAAkB,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;gBACpC,UAAU,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;aAC/B,CAAC;SACH,EACD,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC,EACjD,EAAE,CACH;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,uFAAuF;AACvF,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAE/B,uFAAuF;AACvF,MAAM,SAAS,GAAG,IAAI,CAAC;AAEvB,MAAM,OAAO,YAAY;IAUvB;;;;;;;OAOG;IACK,MAAM,CAAI,MAAsC,EAAE,MAAM,GAAG,eAAe;QAChF,OAAO,YAAY,CAAI,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,YAAY,MAA0B;QAf9B,yBAAoB,GAAY,KAAK,CAAC;QAgB5C,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;YAC1B,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACxD,CAAC;aAAM,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;YACjC,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAC9E,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,iBAAiB,CAAC;QAE9C,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE;YACpB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC;gBACxC,OAAO,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,WAAW,CAAC;YAC9D,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,UAAU,CAAC;YAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI;YACJ,kBAAkB,EAAE,OAAO;SAC5B,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,WAAW,CAAmB,UAAU,EAAE;YAC3D,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,MAAM,CAAC,UAAU;SAC9B,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,KAAK,CAAC;QAC/C,IAAI,CAAC,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,YAAY,IAAI,GAAG,EAAE,MAAM,CAAC,WAAW,IAAI,KAAM,CAAC,CAAC;QACpF,IAAI,CAAC,UAAU,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,aAAa,IAAI,KAAK,EAAE;YACrE,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,WAAW,EAAE,MAAM,CAAC,YAAY;SACjC,CAAC,CAAC;QACH,8EAA8E;QAC9E,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAY;QAC3B,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAa,OAAO,IAAI,EAAE,CAAC,CAAC;QACzD,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAE1B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,mBAAmB,CACzD,IAAI,CAAC,KAAK,EACV,IAAI,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAC5B,CAAC;QAEF,MAAM,IAAI,GAAe;YACvB,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,cAAc,EAAE,GAAG,CAAC,cAAc;YAClC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;SACvC,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACK,KAAK,CAAC,UAAU,CAAC,IAAY;QACnC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;QACxE,OAAO,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IAC5B,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,OAAe,EAAE,MAAqB;QACrE,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzB,kFAAkF;QAClF,kFAAkF;QAClF,kEAAkE;QAClE,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAClC,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC;YAChC,qFAAqF;YACrF,uFAAuF;YACvF,oFAAoF;YACpF,oEAAoE;YACpE,IAAI,GAAG,GAAsB,IAAI,CAAC;YAClC,IAAI,CAAC;gBACH,qFAAqF;gBACrF,qFAAqF;gBACrF,kFAAkF;gBAClF,kFAAkF;gBAClF,qDAAqD;gBACrD,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;YAC9E,CAAC;YAAC,MAAM,CAAC;gBACP,uCAAuC;YACzC,CAAC;YACD,QAAQ,GAAG,GAAG,KAAK,IAAI,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;YAC1C,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,GAAiB,CAAC,EAAE,CAAC;gBACpE,MAAM,IAAI,KAAK,CACb,qBAAqB,IAAI,0DAA0D;oBACjF,kFAAkF,CACrF,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,wEAAwE;YACxE,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACzC,CAAC;YAAC,MAAM,CAAC;gBACP,uCAAuC;YACzC,CAAC;QACH,CAAC;QACD,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;QACtD,uFAAuF;QACvF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAE7E,MAAM,OAAO,GAAG,SAAS,CACvB,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAChF,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CACvB,CAAC;QACF,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QACrC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,eAAe,CAAC,IAAyC;QAC7D,OAAO,CAAC,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IACtD,CAAC;IAED;qGACiG;IACjG,KAAK,CAAC,mBAAmB,CAAC,IAGzB;QACC,OAAO,IAAI,CAAC,MAAM,CAChB,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS,CAAC,CAAC,CAC7F,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,KAAe;QACnC,KAAK,MAAM,CAAC,IAAI,KAAK;YAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAC7C,uDAAuD;QACvD,2FAA2F;QAC3F,uFAAuF;QACvF,kFAAkF;QAClF,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC,CAAC;QACrF,OAAO,MAAM,OAAO,CAAC,GAAG,CACtB,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;YACxC,wFAAwF;YACxF,qFAAqF;YACrF,4EAA4E;YAC5E,IAAI,KAAK,IAAI,CAAC;gBAAE,OAAO,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAoB,CAAC;YAC9E,MAAM,GAAG,GAAkB,CAAC,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,mBAAmB,CACzD,IAAI,CAAC,KAAK,EACV,IAAI,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAC5B,CAAC;gBACF,MAAM,IAAI,GAAe;oBACvB,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,OAAO,EAAE,SAAS;oBAClB,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,cAAc,EAAE,GAAG,CAAC,cAAc;oBAClC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;iBACvC,CAAC;gBACF,OAAO,CAAC,CAAC,EAAE,IAAI,CAAyB,CAAC;YAC3C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,CAAC,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAoB,CAAC;YACrF,CAAC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAC,YAAY,CAAC,IAAsC;QACvD,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACzC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,IAAI,EAAE,OAAO,KAAK,OAAO,EAAE,CAAC;gBAC9B,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;YACzF,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB;QAC9B,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/E,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7B,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YACxB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,mBAAmB,CACvD,IAAI,CAAC,KAAK,EACV,IAAI,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAC1B,CAAC;YACF,MAAM,IAAI,GAAe;gBACvB,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,OAAO;gBACP,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,cAAc,EAAE,CAAC,CAAC,cAAc;gBAChC,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;aACrC,CAAC;YACF,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;YACtC,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CACH,CAAC;QACF,OAAO;YACL,KAAK;YACL,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;YACxC,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;YAClC,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;YAClC,SAAS,EAAE,GAAG,CAAC,SAAS;SACzB,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,mBAAmB,CAAC,IAAsC;QAC9D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACtC,MAAM,MAAM,GACV,uEAAuE;YACvE,gGAAgG;YAChG,wFAAwF;YACxF,CAAC,GAAG,CAAC,SAAS;gBACZ,CAAC,CAAC,eAAe,GAAG,CAAC,aAAa,6BAA6B,GAAG,CAAC,UAAU,oCAAoC;gBACjH,CAAC,CAAC,EAAE,CAAC,CAAC;QACV,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK;aACnB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,uBAAuB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,oBAAoB,CAAC;aAC5F,IAAI,CAAC,MAAM,CAAC,CAAC;QAChB,OAAO,GAAG,MAAM,KAAK,IAAI,EAAE,CAAC;IAC9B,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,gBAAgB,CACpB,IAAY,EACZ,IAAyD;QAEzD,OAAO,IAAI,CAAC,MAAM,CAChB,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAC/B,IAAI,EACJ,IAAI,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EACrD,IAAI,EAAE,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAClD,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,eAAe,CACnB,IAAY,EACZ,IAAwF;QAExF,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CACtB,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAC9B,IAAI,EACJ,MAAM,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC,EACzB,MAAM,CAAC,IAAI,EAAE,MAAM,IAAI,eAAe,CAAC,EACvC,IAAI,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAC1D,CACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IACzF,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,OAAyB;QACxD,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzB,gDAAgD;QAChD,EAAE;QACF,wFAAwF;QACxF,6FAA6F;QAC7F,yFAAyF;QACzF,2FAA2F;QAC3F,uEAAuE;QACvE,EAAE;QACF,uFAAuF;QACvF,2FAA2F;QAC3F,qFAAqF;QACrF,eAAe;QACf,IAAI,MAAc,CAAC;QACnB,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YACrE,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC;QACD,MAAM,KAAK,GAAiB,EAAE,CAAC;QAC/B,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,SAAS,CAAC;YACR,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE;gBAC5C,OAAO,EAAE,MAAM;gBACf,MAAM;gBACN,MAAM,EAAE,eAAe;aACxB,CAAC,CAAC;YACH,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5B,oFAAoF;gBACpF,qFAAqF;gBACrF,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;oBACd,MAAM,IAAI,KAAK,CACb,gBAAgB,IAAI,iDAAiD,MAAM,gDAAgD,CAC5H,CAAC;gBACJ,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvB,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,IAAI;gBAAE,MAAM;QACxB,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACtD,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACf,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC;QACjB,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC3E,wFAAwF;QACxF,0FAA0F;QAC1F,oDAAoD;QACpD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QACjC,OAAO;YACL,IAAI;YACJ,OAAO;YACP,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE;YAC/B,cAAc,EAAE,OAAO,EAAE,EAAE,IAAI,SAAS,CAAC,SAAS,EAAE;YACpD,gBAAgB,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE;SACtC,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,OAA4B;QAC3D,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzB,sFAAsF;QACtF,2FAA2F;QAC3F,mFAAmF;QACnF,4FAA4F;QAC5F,2FAA2F;QAC3F,qCAAqC;QACrC,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QACtF,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;YACvC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC;YACjE,CAAC,CAAC,GAAG,CAAC;QACR,MAAM,OAAO,GAAG,SAAS,CACvB,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,EACvD,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CACvB,CAAC;QACF,wFAAwF;QACxF,gEAAgE;QAChE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QACrC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,kFAAkF;IAClF,gEAAgE;IAChE,yEAAyE;IAEzE,wFAAwF;IACxF,iGAAiG;IACjG,OAAO;IACP,gGAAgG;IAChG,6FAA6F;IAC7F,4FAA4F;IAC5F,mFAAmF;IACnF,6FAA6F;IAC7F,0FAA0F;IAC1F,8FAA8F;IAC9F,2FAA2F;IAE3F;;;;;;;;;;;;+CAY2C;IAC3C,KAAK,CAAC,aAAa;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,mBAAmB,CAAC,CAAC,MAAM,CAAC;IACvF,CAAC;IAED,iEAAiE;IACjE,yFAAyF;IACzF,qFAAqF;IACrF,kFAAkF;IAElF;;;;;;;;;;;;;;;;oEAgBgE;IAChE,KAAK,CAAC,YAAY,CAAC,YAAoB,CAAC,EAAE,QAAgB,EAAE;QAC1D,OAAO,IAAI,CAAC,MAAM,CAChB,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EACnE,kBAAkB,CACnB,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;uGAemG;IACnG,KAAK,CAAC,YAAY;QAChB,OAAO,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,YAAY,CAAC;IACjD,CAAC;IAED;uEACmE;IACnE,KAAK,CAAC,qBAAqB;QACzB,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAKlD,CAAC;QACF,OAAO;YACL,QAAQ,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC;YACpC,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,WAAW,EAAE,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SAC5E,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,eAAe,CAAC,OAAsB,EAAE,IAAY;QACxD,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC9C,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,QAAQ,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;YACzE,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;YAC9C,IAAI,GAAG,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC5C,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CACb,8CAA8C,IAAI,CAAC,KAAK,sCAAsC,OAAO,CAAC,QAAQ,6CAA6C,CAC5J,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,WAAW;YACnB,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CACrB,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,EACvD,kBAAkB,CACnB,CAAC;QACF,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC/D,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACb,yDAAyD,OAAO,CAAC,QAAQ,+FAA+F,CACzK,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAwD,EAAE,CAAC;QACrE,IAAI,IAAI,GAAG,OAAO,CAAC,QAAQ,GAAG,EAAE,CAAC;QACjC,OAAO,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CACtB,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,EAC1D,kBAAkB,CACnB,CAAC;YACF,MAAM,GAAG,GAAgB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC/C,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;gBACjC,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;aACxC,CAAC,CAAC,CAAC;YACJ,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK;gBAAE,GAAG,CAAC,IAAI,CAAC,MAAM,WAAW,CAAC,CAAU,CAAC,CAAC,CAAC;YACpE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7D,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM;YAC5B,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;gBACpB,IAAI,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,KAAK;oBAAE,MAAM;gBAC9B,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAC7F,CAAC;YACD,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,EAAE,GAAG,EAAE,CAAC;QACtC,CAAC;QACD,OAAO;YACL,MAAM,EAAE,eAAe;YACvB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,KAAK,EAAE;gBACL,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE;gBACvB,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE;gBACzC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC7B,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;gBAClD,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC;aAClC;YACD,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,aAAa,EAAE,GAAG,CAAC,aAAa,CAAC,QAAQ,EAAE;YAC3C,SAAS,EAAE;gBACT,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAC7D,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAC9B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;aAC7B;YACD,IAAI;YACJ,KAAK,EAAE;gBACL,IAAI;gBACJ,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACnD,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE;gBACzC,OAAO,EAAE;oBACP,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE;oBACnC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE;oBAC3B,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE;oBAC7B,WAAW,EAAE,OAAO,CAAC,WAAW;oBAChC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE;iBAC9B;aACF;SACF,CAAC;IACJ,CAAC;IAED;4FACwF;IACxF,KAAK,CAAC,oBAAoB;QACxB,OAAO,wBAAwB,CAC7B,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,UAAU,EACf,MAAM,IAAI,CAAC,qBAAqB,EAAE,CACnC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM;QACV,mEAAmE;QACnE,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IAClC,CAAC;IAED;;;;;;;;;;;0EAWsE;IACtE,KAAK,CAAC,eAAe;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,iBAAiB,CAAC,CAAC;IAC5E,CAAC;IAED,mDAAmD;IACnD,uCAAuC;IAEvC;;0EAEsE;IACtE,KAAK,CAAC,aAAa,CAAC,IAAyC;QAC3D,OAAO,IAAI,CAAC,MAAM,CAChB,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS,CAAC,CAAC,CAC3F,CAAC,KAAK,CAAC;IACV,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,gBAAwB;QAC/C,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACrE,CAAC;IAED;;;uGAGmG;IACnG,KAAK,CAAC,WAAW;QACf,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,aAAa,CAAC,CAAC;IAC7D,CAAC;IAED;;;;wGAIoG;IACpG,KAAK,CAAC,gBAAgB,CAAC,MAAiB;QACtC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,kBAAkB,CAAC,CAAC;IAC7E,CAAC;IAED;;;oGAGgG;IAChG,KAAK,CAAC,wBAAwB,CAAC,QAAmB;QAChD,OAAO,IAAI,CAAC,MAAM,CAChB,MAAM,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,QAAQ,CAAC,EACnD,0BAA0B,CAC3B,CAAC;IACJ,CAAC;IAED;;;;sGAIkG;IAClG,KAAK,CAAC,iBAAiB,CAAC,QAAmB;QACzC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,mBAAmB,CAAC,CAAC;IACxF,CAAC;IAED;;;;;uEAKmE;IACnE,KAAK,CAAC,eAAe;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,iBAAiB,CAAC,CAAC;IAC5E,CAAC;IAED;;sFAEkF;IAClF,KAAK,CAAC,YAAY;QAChB,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAqB,CAAC;QAChE,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C,CAAC;IAED,6FAA6F;IAC7F,+FAA+F;IAC/F,6FAA6F;IAC7F,4FAA4F;IAC5F,gGAAgG;IAChG,yFAAyF;IAEzF;;;6FAGyF;IACzF,KAAK,CAAC,sBAAsB;QAC1B,MAAM,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,MAAM,CAChC,MAAM,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,EACzC,wBAAwB,CACzB,CAAC;QACF,OAAO,YAAY,IAAI,IAAI,CAAC;IAC9B,CAAC;IAED,+FAA+F;IAC/F,EAAE;IACF,sFAAsF;IACtF,gGAAgG;IAChG,6FAA6F;IAC7F,wFAAwF;IACxF,8FAA8F;IAC9F,4FAA4F;IAC5F,0FAA0F;IAC1F,gEAAgE;IAChE,EAAE;IACF,8FAA8F;IAC9F,6FAA6F;IAC7F,8FAA8F;IAC9F,0FAA0F;IAC1F,+FAA+F;IAC/F,uCAAuC;IACvC,EAAE;IACF,sEAAsE;IACtE,6FAA6F;IAC7F,uFAAuF;IACvF,EAAE;IACF,+FAA+F;IAC/F,oFAAoF;IACpF,6FAA6F;IAC7F,+FAA+F;IAC/F,+FAA+F;IAC/F,2FAA2F;IAC3F,4BAA4B;IAE5B,KAAK,CAAC,UAAU,CACd,MAAc,EACd,UAAsB,EACtB,cAA6B,EAC7B,MAAc,EACd,WAA0B;QAE1B,OAAO,IAAI,CAAC,MAAM,CAChB,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CACzB,MAAM,EACN,UAAU,EACV,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,EACtC,MAAM,EACN,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CACjC,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAgB,EAAE,UAAkB,EAAE,IAAgB;QAC1E,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;IACpF,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,QAAgB;QACnC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,QAAgB;QAChC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,WAAW,CAAC,YAAqB;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;QACtF,OAAO,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;IACzF,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAgB,EAAE,UAAkB;QACxD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC1F,kGAAkG;QAClG,OAAO,KAAK,YAAY,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtE,CAAC;IAED;;;8DAG0D;IAC1D,KAAK,CAAC,iBAAiB,CAAC,QAAgB;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,0FAA0F;IAC1F,iFAAiF;IACjF,6FAA6F;IAE7F,KAAK,CAAC,uBAAuB,CAAC,MAAc,EAAE,MAAc;QAC1D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG,OAAO;aACtB,MAAM,CAAC,CAAC,CAAiB,EAAE,EAAE,CAAC,WAAW,IAAI,CAAC,CAAC,MAAM,CAAC;aACtD,IAAI,CACH,CAAC,CAAiB,EAAE,CAAiB,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CACxF,CAAC;QACJ,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QACzB,OAAO,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAClD,CAAC;IAED;;;0FAGsF;IACtF,KAAK,CAAC,oBAAoB,CAAC,IAAgB;QACzC,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;YAChC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC;YACtD,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAED;;iGAE6F;IAC7F,KAAK,CAAC,oBAAoB,CAAC,KAAiB;QAC1C,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC;YACvC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;YACvD,CAAC,CAAC,KAAK,CAAC;IACZ,CAAC;IAED;kDAC8C;IAC9C,KAAK,CAAC,cAAc;QAClB,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,kFAAkF;IAClF,KAAK,CAAC,oBAAoB;QACxB,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC;IAED;;;;;;;;;;;;;;2CAcuC;IAC/B,KAAK,CAAC,oBAAoB;QAChC,IAAI,IAAI,CAAC,oBAAoB;YAAE,OAAO;QACtC,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACvD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAC9C,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;IACnC,CAAC;IAED;;gGAE4F;IAC5F,KAAK,CAAC,yBAAyB;QAC7B,OAAO,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,iBAAiB,CAAC;IACtD,CAAC;IAED,+FAA+F;IAC/F,EAAE;IACF,kGAAkG;IAClG,yFAAyF;IACzF,8FAA8F;IAC9F,+EAA+E;IAC/E,EAAE;IACF,yFAAyF;IACzF,sGAAsG;IACtG,yFAAyF;IACzF,2FAA2F;IAC3F,uFAAuF;IACvF,6FAA6F;IAC7F,yEAAyE;IACzE,EAAE;IACF,gGAAgG;IAChG,gGAAgG;IAChG,gGAAgG;IAChG,+FAA+F;IAC/F,qBAAqB;IAErB;;+CAE2C;IAC3C,KAAK,CAAC,mBAAmB,CAAC,OAAgB;QACxC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;QAC5D,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACpC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;IACnC,CAAC;IAED;;;;qFAIiF;IACjF,KAAK,CAAC,wBAAwB;QAC5B,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;QAC1F,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,8EAA8E;gBAC9E,oEAAoE;gBACpE,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAChE,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC1C,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC3C,QAAQ,IAAI,CAAC,CAAC,CAAC,6CAA6C;oBAC5D,SAAS;gBACX,CAAC;gBACD,iFAAiF;gBACjF,oFAAoF;gBACpF,oFAAoF;gBACpF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBACxE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;gBACrF,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;gBAC7D,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC1C,QAAQ,IAAI,CAAC,CAAC;YAChB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACnF,CAAC;QACH,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IACnD,CAAC;IAED;;;;;2FAKuF;IACvF,KAAK,CAAC,wBAAwB;QAC5B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gBACxF,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC/E,QAAQ,IAAI,CAAC,CAAC,CAAC,sCAAsC;oBACrD,SAAS;gBACX,CAAC;gBACD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAClF,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;gBAChE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC1C,QAAQ,IAAI,CAAC,CAAC;YAChB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACnF,CAAC;QACH,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IACnD,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAC,SAAS,CAAC,UAAkB,EAAE,IAAwB;QAC1D,MAAM,SAAS,GAAG,MAAM,aAAa,CACnC,IAAI,EACJ,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,EAC5B,UAAU,CACX,CAAC;QACF,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC;IAC/F,CAAC;IAED,yCAAyC;IAEzC;;;0FAGsF;IACtF,KAAK,CAAC,iBAAiB;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,mBAAmB,CAAC,CAAC,KAAK,CAAC;IACtF,CAAC;IAED;;6GAEyG;IACzG,KAAK,CAAC,qBAAqB,CAAC,IAG3B;QACC,6FAA6F;QAC7F,gGAAgG;QAChG,+FAA+F;QAC/F,8EAA8E;QAC9E,OAAO,IAAI,CAAC,MAAM,CAChB,MAAM,IAAI,CAAC,KAAK,CAAC,sBAAsB,CACrC,MAAM,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,EACxB,MAAM,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS,CAAC,CACjC,CACF,CAAC,KAAK,CAAC;IACV,CAAC;IAED,+FAA+F;IAC/F,8FAA8F;IAC9F,2FAA2F;IAC3F,kEAAkE;IAElE,sDAAsD;IACtD,EAAE;IACF,8FAA8F;IAC9F,4FAA4F;IAC5F,+FAA+F;IAC/F,uEAAuE;IACvE,EAAE;IACF,6FAA6F;IAC7F,8FAA8F;IAC9F,gGAAgG;IAChG,0BAA0B;IAE1B,gCAAgC;IAEhC,6EAA6E;IAC7E,0DAA0D;IAC1D,EAAE;IACF,+FAA+F;IAC/F,6FAA6F;IAC7F,+DAA+D;IAE/D,UAAU;QACR,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;IACtC,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"EngramClient.js","sourceRoot":"","sources":["../src/EngramClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { type HttpAgent } from '@icp-sdk/core/agent';
|
|
2
|
+
import { Principal } from '@icp-sdk/core/principal';
|
|
3
|
+
export interface BirthRecord {
|
|
4
|
+
version: bigint;
|
|
5
|
+
child: Principal;
|
|
6
|
+
parent: Principal | null;
|
|
7
|
+
number: bigint;
|
|
8
|
+
bornAtNs: bigint;
|
|
9
|
+
secret: Uint8Array;
|
|
10
|
+
parentFingerprint: Uint8Array | null;
|
|
11
|
+
}
|
|
12
|
+
/** A birth record as agent-js decodes the engram's `getBirthChain` reply. */
|
|
13
|
+
export interface CandidBirthRecord {
|
|
14
|
+
version: bigint;
|
|
15
|
+
child: Principal;
|
|
16
|
+
parent: [] | [Principal];
|
|
17
|
+
number: bigint;
|
|
18
|
+
bornAtNs: bigint;
|
|
19
|
+
secret: Uint8Array | number[];
|
|
20
|
+
parentFingerprint: [] | [Uint8Array | number[]];
|
|
21
|
+
}
|
|
22
|
+
export declare function fromCandidBirthRecord(c: CandidBirthRecord): BirthRecord;
|
|
23
|
+
/**
|
|
24
|
+
* The canonical encoding, version 1 (big-endian, no Candid):
|
|
25
|
+
*
|
|
26
|
+
* "engramx/birth/v1" 16 ASCII bytes
|
|
27
|
+
* u8 len(child) ‖ child bytes
|
|
28
|
+
* u8 0 | u8 1 ‖ u8 len(parent) ‖ parent bytes
|
|
29
|
+
* u64 number
|
|
30
|
+
* u64 bornAtNs (never negative)
|
|
31
|
+
* u8 len(secret) ‖ secret (len = 32)
|
|
32
|
+
* u8 0 | u8 1 ‖ 32 bytes parentFingerprint
|
|
33
|
+
*
|
|
34
|
+
* Throws on a record the registry could never have minted (wrong version, a secret or parent
|
|
35
|
+
* fingerprint that is not 32 bytes, a negative or oversized number or time).
|
|
36
|
+
*/
|
|
37
|
+
export declare function encodeBirthRecord(r: BirthRecord): Uint8Array;
|
|
38
|
+
/** SHA-256 of the canonical encoding (WebCrypto) — the key of the record's certified leaf. */
|
|
39
|
+
export declare function birthFingerprint(r: BirthRecord): Promise<Uint8Array>;
|
|
40
|
+
/** The registry's `getCertifiedBirth` reply, as agent-js decodes it. */
|
|
41
|
+
export interface CertifiedBirthReply {
|
|
42
|
+
certificate: [] | [Uint8Array | number[]];
|
|
43
|
+
witness: Uint8Array | number[];
|
|
44
|
+
}
|
|
45
|
+
export interface BirthLinkVerdict {
|
|
46
|
+
child: string;
|
|
47
|
+
fingerprintHex: string;
|
|
48
|
+
certified: boolean;
|
|
49
|
+
why: string;
|
|
50
|
+
}
|
|
51
|
+
export interface BirthChainVerdict {
|
|
52
|
+
/** Every record certified AND every adjacent pair links (and `expectChild` matched, when given). */
|
|
53
|
+
verified: boolean;
|
|
54
|
+
/** The first record is a first engram: no parent and no parent fingerprint. */
|
|
55
|
+
complete: boolean;
|
|
56
|
+
/** The last record's child — the engram the chain proves the ancestry of. */
|
|
57
|
+
endsAt: string | null;
|
|
58
|
+
links: BirthLinkVerdict[];
|
|
59
|
+
/** Self-classifying reason. Never act on a record when `verified` is false. */
|
|
60
|
+
why: string;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* The default witness fetcher: the registry's public `getCertifiedBirth`, through a narrowed view of
|
|
64
|
+
* the GENERATED registry interface (`registrySubset`), so its signature can never drift from what the
|
|
65
|
+
* registry serves. Anonymous agents are fine — the read is public and reveals only presence.
|
|
66
|
+
*/
|
|
67
|
+
export declare function registryBirthWitness(agent: HttpAgent, registryId: Principal | string): (fingerprint: Uint8Array) => Promise<CertifiedBirthReply | null>;
|
|
68
|
+
/**
|
|
69
|
+
* Verify a birth chain (root first, the engram's own record last) against the registry's certified
|
|
70
|
+
* fingerprints.
|
|
71
|
+
*
|
|
72
|
+
* `fetchWitness` is INJECTED: it is called with each record's fingerprint and returns the registry's
|
|
73
|
+
* `getCertifiedBirth` reply (or null). Typically
|
|
74
|
+
* `(fp) => registryActor.getCertifiedBirth(fp).then((r) => (r.length ? r[0] : null))`.
|
|
75
|
+
* ⟨2026-10-26⟩ TODO(Finish phase): a default fetcher over `registrySubset(['getCertifiedBirth'])`
|
|
76
|
+
* needs the regenerated registry IDL — `projectService` throws on a method the generated interface
|
|
77
|
+
* does not carry yet — so it is added when `gen-did.sh` has run.
|
|
78
|
+
* ⟨DONE 2026-10-26, Finish phase⟩ `gen-did.sh` ran; `fetchWitness` is now optional and defaults to
|
|
79
|
+
* `registryBirthWitness(agent, registryId)`, a narrowed view of the generated registry interface —
|
|
80
|
+
* never a hand-declared shape (the drift class ADR-0018 answers).
|
|
81
|
+
*
|
|
82
|
+
* The agent's root key must be set (`fetchRootKey()` first, on a local replica only).
|
|
83
|
+
*/
|
|
84
|
+
export declare function verifyBirthChain(agent: HttpAgent, registryId: Principal | string, records: BirthRecord[], opts?: {
|
|
85
|
+
fetchWitness?: (fingerprint: Uint8Array) => Promise<CertifiedBirthReply | null>;
|
|
86
|
+
expectChild?: Principal | string;
|
|
87
|
+
}): Promise<BirthChainVerdict>;
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
// birthChain.ts — verify an engram's BIRTH CHAIN: where it came from, proven against the IC root key
|
|
2
|
+
// without trusting the registry that minted it or the engram that holds it.
|
|
3
|
+
//
|
|
4
|
+
// WHAT A BIRTH CHAIN IS. Every engram a registry opens gets a birth record: which engram it is, which
|
|
5
|
+
// engram it was opened from (none for a first engram), its engram number, when it was born, a 32-byte
|
|
6
|
+
// random secret, and the fingerprint of its parent's record. The engram holds its own record and
|
|
7
|
+
// copies of its ancestors' records — root first, its own last — and serves them to its OWNER only
|
|
8
|
+
// (`getBirthChain`); the owner decides whom to show them to. The registry certifies each record's
|
|
9
|
+
// FINGERPRINT, and nothing else about it, as a leaf of its certified tree under
|
|
10
|
+
// ["births", <fingerprint>] with the constant value [0x01] (`getCertifiedBirth`, public).
|
|
11
|
+
//
|
|
12
|
+
// WHAT THIS CHECKS, every step required (a false `verified` names the first failure in `why`):
|
|
13
|
+
// 1. the chain is not empty and every record is version 1 and encodable;
|
|
14
|
+
// 2. each adjacent pair LINKS: the later record names the earlier one as its parent AND carries the
|
|
15
|
+
// earlier record's fingerprint — recomputed here from the canonical encoding, never read off the
|
|
16
|
+
// wire;
|
|
17
|
+
// 3. each fingerprint's witness verifies up to the registry's subnet-signed certified data
|
|
18
|
+
// (`verifyCertifiedLeaf`), with the leaf bytes equal to [0x01];
|
|
19
|
+
// 4. `expectChild`, when given, is the chain's last record.
|
|
20
|
+
// `complete` says whether the chain starts at a first engram (no parent, no parent fingerprint). A run
|
|
21
|
+
// that starts part-way is allowed and still `verified`: an owner may show any contiguous run, and an
|
|
22
|
+
// engram whose oldest ancestors were born before birth records existed holds one.
|
|
23
|
+
//
|
|
24
|
+
// WHAT IT CANNOT TELL YOU. That the records name the engrams you think they do beyond the ids they
|
|
25
|
+
// carry, or anything about who owns them — a record holds no person's identity, by design. Absence:
|
|
26
|
+
// the registry serves no certified proof that a fingerprint is NOT in its tree, so an uncertified
|
|
27
|
+
// link is "not proven", never "proven false".
|
|
28
|
+
//
|
|
29
|
+
// THE ENCODING is the registry's (`BirthRecord.encode`), byte for byte; the golden vector in
|
|
30
|
+
// test/birth-chain.test.ts is the same one the Motoko suite asserts, and a repository test holds the
|
|
31
|
+
// two hex literals equal.
|
|
32
|
+
//
|
|
33
|
+
// Browser-safe: WebCrypto SHA-256, no Node imports.
|
|
34
|
+
import { Actor } from '@icp-sdk/core/agent';
|
|
35
|
+
import { verifyCertifiedLeaf } from './certifiedAudit.js';
|
|
36
|
+
import { registrySubset } from './idl.js';
|
|
37
|
+
export function fromCandidBirthRecord(c) {
|
|
38
|
+
return {
|
|
39
|
+
version: c.version,
|
|
40
|
+
child: c.child,
|
|
41
|
+
parent: c.parent.length ? c.parent[0] : null,
|
|
42
|
+
number: c.number,
|
|
43
|
+
bornAtNs: c.bornAtNs,
|
|
44
|
+
secret: Uint8Array.from(c.secret),
|
|
45
|
+
parentFingerprint: c.parentFingerprint.length ? Uint8Array.from(c.parentFingerprint[0]) : null,
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
const DOMAIN_TAG = new TextEncoder().encode('engramx/birth/v1');
|
|
49
|
+
const TWO_64 = 1n << 64n;
|
|
50
|
+
function u64(n, what) {
|
|
51
|
+
if (n < 0n || n >= TWO_64)
|
|
52
|
+
throw new Error(`${what} does not fit in an unsigned 64-bit integer`);
|
|
53
|
+
const out = [];
|
|
54
|
+
for (let i = 7; i >= 0; i--)
|
|
55
|
+
out.push(Number((n >> BigInt(i * 8)) & 0xffn));
|
|
56
|
+
return out;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* The canonical encoding, version 1 (big-endian, no Candid):
|
|
60
|
+
*
|
|
61
|
+
* "engramx/birth/v1" 16 ASCII bytes
|
|
62
|
+
* u8 len(child) ‖ child bytes
|
|
63
|
+
* u8 0 | u8 1 ‖ u8 len(parent) ‖ parent bytes
|
|
64
|
+
* u64 number
|
|
65
|
+
* u64 bornAtNs (never negative)
|
|
66
|
+
* u8 len(secret) ‖ secret (len = 32)
|
|
67
|
+
* u8 0 | u8 1 ‖ 32 bytes parentFingerprint
|
|
68
|
+
*
|
|
69
|
+
* Throws on a record the registry could never have minted (wrong version, a secret or parent
|
|
70
|
+
* fingerprint that is not 32 bytes, a negative or oversized number or time).
|
|
71
|
+
*/
|
|
72
|
+
export function encodeBirthRecord(r) {
|
|
73
|
+
if (r.version !== 1n)
|
|
74
|
+
throw new Error(`birth record version ${r.version} is not 1`);
|
|
75
|
+
if (r.secret.length !== 32)
|
|
76
|
+
throw new Error(`birth record secret is ${r.secret.length} bytes, not 32`);
|
|
77
|
+
if (r.parentFingerprint && r.parentFingerprint.length !== 32)
|
|
78
|
+
throw new Error('birth record parent fingerprint is not 32 bytes');
|
|
79
|
+
const out = [...DOMAIN_TAG];
|
|
80
|
+
const child = r.child.toUint8Array();
|
|
81
|
+
out.push(child.length, ...child);
|
|
82
|
+
if (r.parent) {
|
|
83
|
+
const p = r.parent.toUint8Array();
|
|
84
|
+
out.push(1, p.length, ...p);
|
|
85
|
+
}
|
|
86
|
+
else
|
|
87
|
+
out.push(0);
|
|
88
|
+
out.push(...u64(r.number, 'the engram number'), ...u64(r.bornAtNs, 'the birth time'));
|
|
89
|
+
out.push(r.secret.length, ...r.secret);
|
|
90
|
+
if (r.parentFingerprint)
|
|
91
|
+
out.push(1, ...r.parentFingerprint);
|
|
92
|
+
else
|
|
93
|
+
out.push(0);
|
|
94
|
+
return Uint8Array.from(out);
|
|
95
|
+
}
|
|
96
|
+
/** SHA-256 of the canonical encoding (WebCrypto) — the key of the record's certified leaf. */
|
|
97
|
+
export async function birthFingerprint(r) {
|
|
98
|
+
const digest = await globalThis.crypto.subtle.digest('SHA-256', encodeBirthRecord(r));
|
|
99
|
+
return new Uint8Array(digest);
|
|
100
|
+
}
|
|
101
|
+
const hex = (b) => Array.from(b, (x) => x.toString(16).padStart(2, '0')).join('');
|
|
102
|
+
const sameBytes = (a, b) => a === null || b === null ? a === b : a.length === b.length && a.every((x, i) => x === b[i]);
|
|
103
|
+
const asText = (p) => (typeof p === 'string' ? p : p.toText());
|
|
104
|
+
const registryBirthIdl = registrySubset(['getCertifiedBirth']);
|
|
105
|
+
/**
|
|
106
|
+
* The default witness fetcher: the registry's public `getCertifiedBirth`, through a narrowed view of
|
|
107
|
+
* the GENERATED registry interface (`registrySubset`), so its signature can never drift from what the
|
|
108
|
+
* registry serves. Anonymous agents are fine — the read is public and reveals only presence.
|
|
109
|
+
*/
|
|
110
|
+
export function registryBirthWitness(agent, registryId) {
|
|
111
|
+
const registry = Actor.createActor(registryBirthIdl, { agent, canisterId: registryId });
|
|
112
|
+
return async (fingerprint) => {
|
|
113
|
+
const r = (await registry['getCertifiedBirth'](fingerprint));
|
|
114
|
+
return r.length ? r[0] : null;
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Verify a birth chain (root first, the engram's own record last) against the registry's certified
|
|
119
|
+
* fingerprints.
|
|
120
|
+
*
|
|
121
|
+
* `fetchWitness` is INJECTED: it is called with each record's fingerprint and returns the registry's
|
|
122
|
+
* `getCertifiedBirth` reply (or null). Typically
|
|
123
|
+
* `(fp) => registryActor.getCertifiedBirth(fp).then((r) => (r.length ? r[0] : null))`.
|
|
124
|
+
* ⟨2026-10-26⟩ TODO(Finish phase): a default fetcher over `registrySubset(['getCertifiedBirth'])`
|
|
125
|
+
* needs the regenerated registry IDL — `projectService` throws on a method the generated interface
|
|
126
|
+
* does not carry yet — so it is added when `gen-did.sh` has run.
|
|
127
|
+
* ⟨DONE 2026-10-26, Finish phase⟩ `gen-did.sh` ran; `fetchWitness` is now optional and defaults to
|
|
128
|
+
* `registryBirthWitness(agent, registryId)`, a narrowed view of the generated registry interface —
|
|
129
|
+
* never a hand-declared shape (the drift class ADR-0018 answers).
|
|
130
|
+
*
|
|
131
|
+
* The agent's root key must be set (`fetchRootKey()` first, on a local replica only).
|
|
132
|
+
*/
|
|
133
|
+
export async function verifyBirthChain(agent, registryId, records, opts = {}) {
|
|
134
|
+
const fetchWitness = opts.fetchWitness ?? registryBirthWitness(agent, registryId);
|
|
135
|
+
const first = records[0];
|
|
136
|
+
const last = records[records.length - 1];
|
|
137
|
+
const endsAt = last ? last.child.toText() : null;
|
|
138
|
+
const complete = first !== undefined && first.parent === null && first.parentFingerprint === null;
|
|
139
|
+
const fail = (why, links = []) => ({
|
|
140
|
+
verified: false,
|
|
141
|
+
complete,
|
|
142
|
+
endsAt,
|
|
143
|
+
links,
|
|
144
|
+
why,
|
|
145
|
+
});
|
|
146
|
+
if (records.length === 0)
|
|
147
|
+
return fail('the chain is empty — there is nothing to verify');
|
|
148
|
+
// Fingerprints, recomputed from the canonical encoding — never taken from the wire.
|
|
149
|
+
const rows = [];
|
|
150
|
+
for (const [i, rec] of records.entries()) {
|
|
151
|
+
try {
|
|
152
|
+
rows.push({ rec, fp: await birthFingerprint(rec) });
|
|
153
|
+
}
|
|
154
|
+
catch (e) {
|
|
155
|
+
return fail(`record ${i} (${rec.child.toText()}) cannot be encoded: ${e.message}`);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
// Links: each record names the one before it as its parent AND carries its fingerprint.
|
|
159
|
+
let linkBreak = null;
|
|
160
|
+
rows.reduce((prev, cur, i) => {
|
|
161
|
+
if (prev !== null && linkBreak === null) {
|
|
162
|
+
if (cur.rec.parent === null || cur.rec.parent.toText() !== prev.rec.child.toText()) {
|
|
163
|
+
linkBreak = `record ${i} (${cur.rec.child.toText()}) does not name record ${i - 1} (${prev.rec.child.toText()}) as its parent`;
|
|
164
|
+
}
|
|
165
|
+
else if (!sameBytes(cur.rec.parentFingerprint, prev.fp)) {
|
|
166
|
+
linkBreak = `record ${i} (${cur.rec.child.toText()}) does not carry the fingerprint of record ${i - 1}`;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
return cur;
|
|
170
|
+
}, null);
|
|
171
|
+
// Witnesses: each fingerprint must be a certified leaf with the constant value [0x01].
|
|
172
|
+
const utf8 = (s) => new TextEncoder().encode(s);
|
|
173
|
+
const links = [];
|
|
174
|
+
for (const { rec, fp } of rows) {
|
|
175
|
+
const child = rec.child.toText();
|
|
176
|
+
const fingerprintHex = hex(fp);
|
|
177
|
+
let reply;
|
|
178
|
+
try {
|
|
179
|
+
reply = await fetchWitness(fp);
|
|
180
|
+
}
|
|
181
|
+
catch (e) {
|
|
182
|
+
links.push({
|
|
183
|
+
child,
|
|
184
|
+
fingerprintHex,
|
|
185
|
+
certified: false,
|
|
186
|
+
why: `the witness could not be fetched: ${e.message}`,
|
|
187
|
+
});
|
|
188
|
+
continue;
|
|
189
|
+
}
|
|
190
|
+
if (!reply) {
|
|
191
|
+
links.push({
|
|
192
|
+
child,
|
|
193
|
+
fingerprintHex,
|
|
194
|
+
certified: false,
|
|
195
|
+
why: 'the registry holds no certified leaf for this fingerprint (no proof either way — an absence is not certified)',
|
|
196
|
+
});
|
|
197
|
+
continue;
|
|
198
|
+
}
|
|
199
|
+
const leaf = await verifyCertifiedLeaf(agent, registryId, reply, [utf8('births'), fp]);
|
|
200
|
+
if (!leaf.verified || !leaf.valueBytes) {
|
|
201
|
+
links.push({ child, fingerprintHex, certified: false, why: leaf.why });
|
|
202
|
+
}
|
|
203
|
+
else if (!(leaf.valueBytes.length === 1 && leaf.valueBytes[0] === 1)) {
|
|
204
|
+
links.push({
|
|
205
|
+
child,
|
|
206
|
+
fingerprintHex,
|
|
207
|
+
certified: false,
|
|
208
|
+
why: 'the certified leaf is not the constant [0x01]',
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
links.push({ child, fingerprintHex, certified: true, why: 'ok' });
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
if (linkBreak !== null)
|
|
216
|
+
return fail(linkBreak, links);
|
|
217
|
+
const uncertified = links.find((l) => !l.certified);
|
|
218
|
+
if (uncertified)
|
|
219
|
+
return fail(`the record of ${uncertified.child} is not certified: ${uncertified.why}`, links);
|
|
220
|
+
if (opts.expectChild !== undefined && asText(opts.expectChild) !== endsAt) {
|
|
221
|
+
return fail(`the chain ends at ${endsAt}, not at the expected engram ${asText(opts.expectChild)}`, links);
|
|
222
|
+
}
|
|
223
|
+
return {
|
|
224
|
+
verified: true,
|
|
225
|
+
complete,
|
|
226
|
+
endsAt,
|
|
227
|
+
links,
|
|
228
|
+
why: complete
|
|
229
|
+
? 'ok — every record certified and linked, from a first engram'
|
|
230
|
+
: 'ok — every record certified and linked; the chain starts part-way (an ancestor before it is not shown)',
|
|
231
|
+
};
|
|
232
|
+
}
|
|
233
|
+
//# sourceMappingURL=birthChain.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"birthChain.js","sourceRoot":"","sources":["../src/birthChain.ts"],"names":[],"mappings":"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"}
|
package/dist/idl.d.ts
CHANGED
|
@@ -65,7 +65,7 @@ export declare const SDK_MARKET_METHODS: readonly ["confirmJob", "disputeJob", "
|
|
|
65
65
|
* ADDING A NAME IS A PRODUCT DECISION, not a maintenance one (surface-budget rule L6): no addition
|
|
66
66
|
* without a named caller.
|
|
67
67
|
*/
|
|
68
|
-
export declare const SDK_ENGRAM_METHODS: readonly ["about", "appendMemory", "backupAbort", "backupFinalize", "backupInit", "backupPullChunk", "backupPushChunk", "getBackupMetadata", "getCertifiedAuditHead", "getEncryptedMemoryKey", "getMemoryHistory", "getMemoryKeyVerificationKey", "getOwnerConsole", "getProtectedPaths", "getWalletBalances", "getWorldIdVerification", "listAuditEntries", "listBackups", "listGuardians", "listMemoryFiles", "listMyApprovalRequests", "readMemory", "readMemoryBatch", "readMemoryBytes", "pairAgent", "reviseMemory", "resignAgent", "rotateAgentKeyHash", "nominateAgentKey", "acceptAgentKeyNomination", "getChildAllowance", "openChildEngram", "getSpawnedBy", "sessionReadContext", "setEncryptionEnabled", "writeMemory"];
|
|
68
|
+
export declare const SDK_ENGRAM_METHODS: readonly ["about", "appendMemory", "backupAbort", "backupFinalize", "backupInit", "backupPullChunk", "backupPushChunk", "getBackupMetadata", "getBackupRetention", "getCertifiedAuditHead", "getEncryptedMemoryKey", "getMemoryHistory", "getMemoryKeyVerificationKey", "getOwnerConsole", "getProtectedPaths", "getWalletBalances", "getWorldIdVerification", "listAuditEntries", "listBackups", "listGuardians", "listMemoryFiles", "listMyApprovalRequests", "readMemory", "readMemoryBatch", "readMemoryBytes", "pairAgent", "reviseMemory", "resignAgent", "myGrant", "rotateAgentKeyHash", "nominateAgentKey", "acceptAgentKeyNomination", "getChildAllowance", "openChildEngram", "getSpawnedBy", "sessionReadContext", "setEncryptionEnabled", "writeMemory"];
|
|
69
69
|
/** One of the engram methods this SDK may call. */
|
|
70
70
|
export type SdkEngramMethod = (typeof SDK_ENGRAM_METHODS)[number];
|
|
71
71
|
/**
|
package/dist/idl.js
CHANGED
|
@@ -197,6 +197,10 @@ export const SDK_ENGRAM_METHODS = [
|
|
|
197
197
|
'backupPullChunk',
|
|
198
198
|
'backupPushChunk',
|
|
199
199
|
'getBackupMetadata',
|
|
200
|
+
// ⟨2026-10-21, the owner's round-11 answers h and m⟩ Named caller: EngramClient.getBackupRetention —
|
|
201
|
+
// an agent that uploads backups reads how many of its OWN the engram keeps per kind (the cap is per
|
|
202
|
+
// creator from that day: an agent's backup never removes another party's).
|
|
203
|
+
'getBackupRetention',
|
|
200
204
|
'getCertifiedAuditHead',
|
|
201
205
|
'getEncryptedMemoryKey',
|
|
202
206
|
'getMemoryHistory',
|
|
@@ -223,6 +227,9 @@ export const SDK_ENGRAM_METHODS = [
|
|
|
223
227
|
// ⟨2026-09-28⟩ Named caller: EngramClient.resignAgent — the agent's own exit, which the owner
|
|
224
228
|
// decided the same day an agent must be able to take (and have recorded).
|
|
225
229
|
'resignAgent',
|
|
230
|
+
// ⟨2026-10-21, the owner's round-11 answer g⟩ Named callers: EngramClient.myGrant and the MCP
|
|
231
|
+
// server's engram_my_grant tool — an agent reads its own grant (its own key only).
|
|
232
|
+
'myGrant',
|
|
226
233
|
'rotateAgentKeyHash',
|
|
227
234
|
// ⟨2026-09-29, the owner's ruling of that date (follow-up 10, option A)⟩ Named callers:
|
|
228
235
|
// EngramClient.nominateAgentKey and EngramClient.acceptAgentKeyNomination — the agent's one-step
|
package/dist/idl.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"idl.js","sourceRoot":"","sources":["../src/idl.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"idl.js","sourceRoot":"","sources":["../src/idl.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -35,8 +35,9 @@ export { generateMcpConfig, claudeConfigPaths, installMcpConfig } from './claude
|
|
|
35
35
|
export type { ClaudeSetupOptions, McpConfig } from './claude-setup.js';
|
|
36
36
|
export { migrateOpenClawMemory, recoverOpenClaw, createCheckpoint, rollbackCheckpoint, listCheckpoints, hasValidPairing, resumeMigration, findIncompleteCheckpoint, } from './migrate.js';
|
|
37
37
|
export type { MigrateOptions, MigrateFileEvent, MigrateCallback, MigrateResult, RecoverResult, RollbackResult, CheckpointSummary, CheckpointMetadata, } from './migrate.js';
|
|
38
|
-
export type { Role, AgentStatus, AgentPermissions, AgentRecord, ChildAllowanceRow, KeyNomination, LogPosition, HeldKey, AgentEnding, AgentEndReason, Pairing, TrackRecordNotice, EnrolmentProof, RawMemoryFile, MemoryVersionSummary, MemoryEviction, MemoryFile, MemoryFileInfo, SessionContext, MemoryHistory, MemoryRangePage, AuditEntry, AuditPage, EngramStatus, OwnerConsole, GuardianPermissions, GuardianRecord, BackupMetadata, BackupType, BackupStatus, ApprovalStatus, ApprovalRequest, } from './types.js';
|
|
38
|
+
export type { Role, AgentStatus, AgentPermissions, AgentRecord, AgentGrant, PaymentLimits, ChildAllowanceRow, KeyNomination, LogPosition, HeldKey, AgentEnding, AgentEndReason, Pairing, TrackRecordNotice, EnrolmentProof, RawMemoryFile, MemoryVersionSummary, MemoryEviction, MemoryFile, MemoryFileInfo, SessionContext, MemoryHistory, MemoryRangePage, AuditEntry, AuditPage, EngramStatus, OwnerConsole, GuardianPermissions, GuardianRecord, BackupMetadata, BackupRetention, BackupType, BackupStatus, ApprovalStatus, ApprovalRequest, } from './types.js';
|
|
39
39
|
export { verifyCanonicalLineage, classifyLineage, CANONICAL_REGISTRY_CANISTER_ID, type LineageVerdict, type CustodyMode, } from './lineage.js';
|
|
40
|
+
export { verifyBirthChain, registryBirthWitness, encodeBirthRecord, birthFingerprint, fromCandidBirthRecord, type BirthRecord, type CandidBirthRecord, type CertifiedBirthReply, type BirthLinkVerdict, type BirthChainVerdict, } from './birthChain.js';
|
|
40
41
|
export { chunkHash, deltaHash, contentRoot, merkle, leaf, evictedRoot, opsRoot, eventHash, eventPreambleAndBody, manifestBytes, opBody, opTag, toHex, type Hash as LedgerFsHash, type ChunkRef as LedgerFsChunkRef, type Manifest as LedgerFsManifest, type Op as LedgerFsOp, type Event as LedgerFsEvent, type ImportNote as LedgerFsImportNote, } from './ledgerfsHash.js';
|
|
41
42
|
export { assembleMemoryArchive, verifyMemoryArchive, recomputeOpsRoot, memoryLogEventHash, toLedgerFsEvent, } from './memoryArchive.js';
|
|
42
43
|
export type { MemoryLogEvent, MemoryLogOp, MemoryLogImportNote, MemoryLogManifest, MemoryLogChunkRef, MemoryLogPage, MemoryLogEventPage, MemoryLogPageFetcher, MemoryExportReceipt, MemoryCondenseResult, MemoryCondensePreview, MemoryReceiptRef, MemoryExportReceiptRow, MemoryCheckpointRow, MemoryArchive, MemoryArchiveVerification, AssembleArchiveOptions, OpsRootAttestation, } from './memoryArchive.js';
|
package/dist/index.js
CHANGED
|
@@ -67,6 +67,10 @@ export { migrateOpenClawMemory, recoverOpenClaw, createCheckpoint, rollbackCheck
|
|
|
67
67
|
// Canonical-lineage verification — the one-call check for agents/relying parties: is this
|
|
68
68
|
// engram canonically spawned (registry testimony), and does it run the attested template?
|
|
69
69
|
export { verifyCanonicalLineage, classifyLineage, CANONICAL_REGISTRY_CANISTER_ID, } from './lineage.js';
|
|
70
|
+
// ⟨2026-10-26⟩ Birth chains — an engram's certified ancestry: the canonical record encoding, its
|
|
71
|
+
// fingerprint, and the verifier that walks a chain and checks each fingerprint against the
|
|
72
|
+
// registry's certified tree. Also on `./verify`.
|
|
73
|
+
export { verifyBirthChain, registryBirthWitness, encodeBirthRecord, birthFingerprint, fromCandidBirthRecord, } from './birthChain.js';
|
|
70
74
|
// ledgerfs — the era-2 hash contract (§3), reimplemented here so a relying party can recompute
|
|
71
75
|
// every ledgerfs digest from the anchored chain without trusting the canister. Locked to the Motoko
|
|
72
76
|
// implementation by the `ledgerfs-goldens` cross-lock. This is the verifier surface, not a writer.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,iGAAiG;AACjG,6FAA6F;AAC7F,iGAAiG;AACjG,+CAA+C;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAMnF,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,mGAAmG;AACnG,qGAAqG;AACrG,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAG7B,qGAAqG;AACrG,kGAAkG;AAClG,kGAAkG;AAClG,2FAA2F;AAC3F,OAAO,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE3F,OAAO,EACL,eAAe,EACf,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAE/D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,mGAAmG;AACnG,oGAAoG;AACpG,mGAAmG;AACnG,uFAAuF;AACvF,4FAA4F;AAC5F,kGAAkG;AAClG,0DAA0D;AAC1D,EAAE;AACF,oGAAoG;AACpG,2FAA2F;AAC3F,gGAAgG;AAChG,EAAE;AACF,qGAAqG;AACrG,iGAAiG;AACjG,+FAA+F;AAC/F,sEAAsE;AACtE,kGAAkG;AAClG,iGAAiG;AACjG,iGAAiG;AACjG,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,aAAa,GACd,MAAM,oBAAoB,CAAC;AAG5B,wDAAwD;AACxD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAEtC,qDAAqD;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,kFAAkF;AAClF,+FAA+F;AAC/F,uFAAuF;AAEvF,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAE5C,2GAA2G;AAC3G,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAO1D,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,qGAAqG;AACrG,kGAAkG;AAClG,iEAAiE;AACjE,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,QAAQ,EACR,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE3F,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,eAAe,EACf,wBAAwB,GACzB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -15,6 +15,12 @@ export type TrackRecordNotice = Engram.TrackRecordNotice;
|
|
|
15
15
|
export type ChildAllowanceRow = Engram.ChildAllowanceRow;
|
|
16
16
|
export type Pairing = Engram.Pairing;
|
|
17
17
|
export type AgentRecord = Engram.AgentRecord;
|
|
18
|
+
/** ⟨2026-10-21⟩ What `myGrant()` answers: the grant the engram enforces against the calling key —
|
|
19
|
+
* its reads, write folders and rate (`permissions`) and the payment limits on that key. */
|
|
20
|
+
export type AgentGrant = Engram.AgentGrant;
|
|
21
|
+
/** ⟨2026-10-21, review of round 11⟩ `AgentGrant.paymentLimits`: the caps on the calling key only —
|
|
22
|
+
* never the caller lists the payment library's policy can also hold (other parties' keys). */
|
|
23
|
+
export type PaymentLimits = Engram.PaymentLimits;
|
|
18
24
|
export type LogPosition = Engram.LogPosition;
|
|
19
25
|
export type HeldKey = Engram.HeldKey;
|
|
20
26
|
export type KeyNomination = Engram.KeyNomination;
|
|
@@ -45,6 +51,9 @@ export type GuardianRecord = Engram.GuardianRecord;
|
|
|
45
51
|
export type BackupType = Engram.BackupType;
|
|
46
52
|
export type BackupStatus = Engram.BackupStatus;
|
|
47
53
|
export type BackupMetadata = Engram.BackupMetadata;
|
|
54
|
+
/** ⟨2026-10-21⟩ What `getBackupRetention(dbType)` answers: the number of backups of that kind each
|
|
55
|
+
* creator keeps, and whether it is the engram's default. */
|
|
56
|
+
export type BackupRetention = Engram.BackupRetention;
|
|
48
57
|
export type ApprovalStatus = Engram.ApprovalStatus;
|
|
49
58
|
export type ApprovalRequest = Engram.ApprovalRequest;
|
|
50
59
|
/** A memory file with its content decoded to text (decrypted first on an encrypted engram). */
|
package/dist/verify.d.ts
CHANGED
|
@@ -4,3 +4,5 @@ export { verifyHistoricalCertificate, IC_MAINNET_ROOT_KEY_HEX } from './certifie
|
|
|
4
4
|
export type { HistoricalCertificate } from './certifiedAudit.js';
|
|
5
5
|
export { recordEntryBody, recordDigest, recordLink, legacyRecordLink, recordEntryHash, sealedRowOf, walkToCertifiedHead, } from './recordChain.js';
|
|
6
6
|
export type { RecordEntryFields, SealedRow, WalkResult } from './recordChain.js';
|
|
7
|
+
export { verifyBirthChain, registryBirthWitness, encodeBirthRecord, birthFingerprint, fromCandidBirthRecord, } from './birthChain.js';
|
|
8
|
+
export type { BirthRecord, CandidBirthRecord, CertifiedBirthReply, BirthLinkVerdict, BirthChainVerdict, } from './birthChain.js';
|
package/dist/verify.js
CHANGED
|
@@ -13,4 +13,7 @@ export { verifyCertifiedAuditHead, verifyCertifiedLeaf, verifyCertifiedRegistryH
|
|
|
13
13
|
// hash contract, which hashes with node:crypto, so `checkEvidence` stays on the package root.
|
|
14
14
|
export { verifyHistoricalCertificate, IC_MAINNET_ROOT_KEY_HEX } from './certifiedAudit.js';
|
|
15
15
|
export { recordEntryBody, recordDigest, recordLink, legacyRecordLink, recordEntryHash, sealedRowOf, walkToCertifiedHead, } from './recordChain.js';
|
|
16
|
+
// ⟨2026-10-26⟩ An engram's birth chain — where it came from, checked against the registry's
|
|
17
|
+
// certified fingerprints. Browser-safe (WebCrypto hashing).
|
|
18
|
+
export { verifyBirthChain, registryBirthWitness, encodeBirthRecord, birthFingerprint, fromCandidBirthRecord, } from './birthChain.js';
|
|
16
19
|
//# sourceMappingURL=verify.js.map
|
package/dist/verify.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,+DAA+D;AAC/D,EAAE;AACF,oGAAoG;AACpG,8FAA8F;AAC9F,2FAA2F;AAC3F,qGAAqG;AACrG,gGAAgG;AAChG,iGAAiG;AACjG,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAE7B,oGAAoG;AACpG,mGAAmG;AACnG,8FAA8F;AAC9F,OAAO,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE3F,OAAO,EACL,eAAe,EACf,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,mBAAmB,GACpB,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,+DAA+D;AAC/D,EAAE;AACF,oGAAoG;AACpG,8FAA8F;AAC9F,2FAA2F;AAC3F,qGAAqG;AACrG,gGAAgG;AAChG,iGAAiG;AACjG,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAE7B,oGAAoG;AACpG,mGAAmG;AACnG,8FAA8F;AAC9F,OAAO,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE3F,OAAO,EACL,eAAe,EACf,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAE1B,4FAA4F;AAC5F,4DAA4D;AAC5D,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,iBAAiB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@engramx/client",
|
|
3
|
-
"version": "0.16.0-rc.
|
|
3
|
+
"version": "0.16.0-rc.17",
|
|
4
4
|
"description": "Client SDK for EngramX — persistent, decentralized memory for AI agents on the Internet Computer",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "EngramX <developer@engramx.ai>",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"@icp-sdk/core": "^6.1.0"
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"@engramx/idl": "0.16.0-rc.
|
|
56
|
+
"@engramx/idl": "0.16.0-rc.17",
|
|
57
57
|
"@icp-sdk/core": "^6.1.0",
|
|
58
58
|
"@icp-sdk/vetkeys": "0.7.0",
|
|
59
59
|
"@noble/curves": "^2.4.0"
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
"devDependencies": {
|
|
62
62
|
"@types/node": "^26.6.4",
|
|
63
63
|
"typescript": "^6.0.3",
|
|
64
|
-
"vite": "^8.3.
|
|
64
|
+
"vite": "^8.3.3",
|
|
65
65
|
"vitest": "^5.0.3"
|
|
66
66
|
},
|
|
67
67
|
"scripts": {
|