@odatano/nightgate-mcp 0.5.1 → 0.6.1
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/CHANGELOG.md +81 -0
- package/README.md +7 -8
- package/dist/builder.d.ts +1 -1
- package/dist/builder.js +36 -17
- package/dist/builder.js.map +1 -1
- package/dist/tools.js +79 -72
- package/dist/tools.js.map +1 -1
- package/package.json +4 -3
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to `@odatano/nightgate-mcp` are documented in this file.
|
|
4
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
5
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
6
|
+
The server compatibility table in the README says which NIGHTGATE each
|
|
7
|
+
version needs.
|
|
8
|
+
|
|
9
|
+
## [0.6.1] - 2026-09-19
|
|
10
|
+
|
|
11
|
+
### Changed
|
|
12
|
+
|
|
13
|
+
- **The ODATANO ACCESS key (`oda_…`) is the documented credential.**
|
|
14
|
+
`api.nightgate.dev` is the ODATANO ACCESS gateway since 2026-09-18: it
|
|
15
|
+
meters the key in units, swaps in the NIGHTGATE agent grant underneath and
|
|
16
|
+
fronts ODATANO with the same key. Set `NIGHTGATE_BASE_URL=https://api.nightgate.dev`
|
|
17
|
+
and `NIGHTGATE_TOKEN=oda_…`; the key goes as a plain `Authorization: Bearer`.
|
|
18
|
+
Get one at `POST https://api.odatano.dev/keys` (x402), from a giveaway
|
|
19
|
+
code, or by signing in at the console. A raw `ngat_…` agent grant
|
|
20
|
+
(`x-agent-token`) still works against a direct NIGHTGATE instance. No code
|
|
21
|
+
change: the client already sent a prefix-less token as a bearer.
|
|
22
|
+
- `.env.example` and README updated accordingly; this changelog added and
|
|
23
|
+
shipped with the package.
|
|
24
|
+
|
|
25
|
+
## [0.6.0] - 2026-09
|
|
26
|
+
|
|
27
|
+
### Changed (breaking)
|
|
28
|
+
|
|
29
|
+
- **Vault lineage 4: every record is keyed by attester AND payload**
|
|
30
|
+
(NIGHTGATE >= 0.24.0). `verify_attestation` takes `attesterId` +
|
|
31
|
+
`payloadHash` (or a bound `documentId`), `verify_predicate` takes
|
|
32
|
+
`attesterId`, the `prove_*` tools accept an optional `attesterId` (the
|
|
33
|
+
record the claim is proven against), `anchor_document` is one plain attest
|
|
34
|
+
and returns `attesterId`.
|
|
35
|
+
- `prepare_anchor_commitment` and `commit_document_anchor` are gone: nothing
|
|
36
|
+
is left to guard, no identity can take over another attester's record.
|
|
37
|
+
- Local building needs `@odatano/nightgate-tx` >= 0.6.0; the proof calls
|
|
38
|
+
take `recordKey` or `payloadHash` (+ `attesterId`). Against a 0.23.x server
|
|
39
|
+
the verify calls fail with 400 (unknown parameter).
|
|
40
|
+
|
|
41
|
+
## [0.5.1] - 2026-08-23
|
|
42
|
+
|
|
43
|
+
### Added
|
|
44
|
+
|
|
45
|
+
- **32-slot vault.** Schema and opening take 16 or 32 entries, `allowedMask`
|
|
46
|
+
up to 32 bits, `k` up to 32; the vacuity guard is checked against the
|
|
47
|
+
schema instead of a fixed all-ones constant. Target it with
|
|
48
|
+
`compiledArtifactRef: 'attestation-vault-32'` (NIGHTGATE >= 0.19.0 for
|
|
49
|
+
width 32). A 16-slot setup keeps working against any 0.18.x server.
|
|
50
|
+
- Local ZK claims: field and document proofs can be built in-process.
|
|
51
|
+
|
|
52
|
+
## [0.5.0] - 2026-08-19
|
|
53
|
+
|
|
54
|
+
### Added
|
|
55
|
+
|
|
56
|
+
- **Parallel sponsoring channel:** `sponsor_unbound_transaction` with the
|
|
57
|
+
platform pool id (NIGHTGATE >= 0.18.0; 404 against older servers).
|
|
58
|
+
- **Local transaction building** for agents: `build_sponsorable_transaction`
|
|
59
|
+
and `get_attester_identity` via the optional `@odatano/nightgate-tx`
|
|
60
|
+
>= 0.2.0 txbuilder, driven by `NIGHTGATE_SEED_HEX` (never a tool argument).
|
|
61
|
+
|
|
62
|
+
## [0.3.0] - 2026-08-16
|
|
63
|
+
|
|
64
|
+
### Added
|
|
65
|
+
|
|
66
|
+
- Cross-root document proofs and guarded anchoring (`prepare_anchor_commitment`
|
|
67
|
+
/ `commit_document_anchor`, removed again in 0.6.0).
|
|
68
|
+
|
|
69
|
+
## [0.2.0] - 2026-08-10
|
|
70
|
+
|
|
71
|
+
### Added
|
|
72
|
+
|
|
73
|
+
- Membership and equality proof tools; README documents the tool set and the
|
|
74
|
+
server compatibility table.
|
|
75
|
+
|
|
76
|
+
## [0.1.0] - 2026-08-07
|
|
77
|
+
|
|
78
|
+
### Added
|
|
79
|
+
|
|
80
|
+
- Initial MCP server: attestation, verification and job tools over the
|
|
81
|
+
NIGHTGATE OData API, agent-grant (`ngat_…`) or basic auth.
|
package/README.md
CHANGED
|
@@ -29,7 +29,8 @@ rejects the call with 400.
|
|
|
29
29
|
|
|
30
30
|
| MCP | NIGHTGATE | Notes |
|
|
31
31
|
|---|---|---|
|
|
32
|
-
| **0.
|
|
32
|
+
| **0.6.0** | **>= 0.24.0** | Current. Vault lineage 4 keys every record by attester AND payload: `verify_attestation` takes `attesterId` + `payloadHash` (or a bound `documentId`), `verify_predicate` takes `attesterId`, the `prove_*` tools accept an optional `attesterId` (the record the claim is proven against), `anchor_document` is one plain attest and returns `attesterId`. `prepare_anchor_commitment` and `commit_document_anchor` are gone (nothing to guard: no identity can take over another attester's record). Local building needs `@odatano/nightgate-tx` >= 0.6.0; the proof calls take `recordKey` or `payloadHash` (+ `attesterId`). Against a 0.23.x server the verify calls fail with 400 (unknown parameter). |
|
|
33
|
+
| 0.5.1 | >= 0.19.0 for width 32 | Accepts the 32-slot vault: schema and opening take 16 or 32 entries, `allowedMask` up to 32 bits, `k` up to 32, and the vacuity guard is checked against the SCHEMA instead of a fixed all-ones constant. Target it with `compiledArtifactRef: 'attestation-vault-32'`. Everything else is unchanged, so a 16-slot setup keeps working against any 0.18.x server. |
|
|
33
34
|
| 0.5.x | >= 0.18.0 | Adds the parallel sponsoring channel (`sponsor_unbound_transaction`, platform pool id) and LOCAL transaction building (`build_sponsorable_transaction`, `get_attester_identity`) via the optional `@odatano/nightgate-tx` >= 0.2.0 txbuilder; `sponsor_unbound_transaction` 404s against older servers. |
|
|
34
35
|
| 0.4.x | >= 0.17.0 | Cross-server fee sponsoring, serial channel only (`sponsor_finalized_transaction`), custom-token identity (`derive_token_type`). |
|
|
35
36
|
| 0.3.x | >= 0.16.0 (0.16.2 recommended) | Cross-root proofs, guarded anchoring, schema ids, per-field salts. Does NOT work against 0.15.x and older, which know no salt parameters. |
|
|
@@ -117,7 +118,7 @@ Configuration is environment-driven:
|
|
|
117
118
|
|---|---|---|
|
|
118
119
|
| `NIGHTGATE_BASE_URL` | `http://localhost:4004` | NIGHTGATE host app |
|
|
119
120
|
| `NIGHTGATE_USERNAME` / `NIGHTGATE_PASSWORD` | unset | Basic auth (CAP dev/mocked auth) |
|
|
120
|
-
| `NIGHTGATE_TOKEN` | unset | `ngat_...` agent
|
|
121
|
+
| `NIGHTGATE_TOKEN` | unset | **The usual credential: an ODATANO ACCESS key `oda_…`** (sent as `Authorization: Bearer`; `api.nightgate.dev` is the gateway). A raw `ngat_...` agent grant (sent as `x-agent-token`, combinable with basic auth) for a direct NIGHTGATE instance, or any other plain bearer |
|
|
121
122
|
| `NIGHTGATE_SERVICE_PATH` | `/api/v1/nightgate` | OData service path |
|
|
122
123
|
| `NIGHTGATE_TIMEOUT_MS` | `30000` | Per-request timeout |
|
|
123
124
|
| `NIGHTGATE_SEED_HEX` | unset | Caller seed (64 or 128 hex) for `build_sponsorable_transaction`; never a tool argument. Needs `@odatano/nightgate-tx` installed |
|
|
@@ -156,24 +157,22 @@ Or in a project `.mcp.json`:
|
|
|
156
157
|
|
|
157
158
|
| Tool | What it does |
|
|
158
159
|
|---|---|
|
|
159
|
-
| `verify_attestation` | Live-state check that a payload hash
|
|
160
|
-
| `verify_predicate` | Live-state check that a ZK claim was recorded true on-chain, id-free: numeric predicates, `bytesEquality` (+ `expectedDigest`), `setMembership` (+ `setRoot`) and the cross-root kinds `documentIntegrity` / `documentDiff` (+ `payloadHashB`) |
|
|
160
|
+
| `verify_attestation` | Live-state check that an attester's record of a payload hash stands in an AttestationVault: named by `attesterId` + `payloadHash` or by a bound `documentId` (crawler-free, optional content-root / schema check, optional cross-network read) |
|
|
161
|
+
| `verify_predicate` | Live-state check that a ZK claim was recorded true on-chain, id-free: `attesterId` + `payloadHash` name the record; numeric predicates, `bytesEquality` (+ `expectedDigest`), `setMembership` (+ `setRoot`) and the cross-root kinds `documentIntegrity` / `documentDiff` (+ `payloadHashB`, optional `attesterIdB`) |
|
|
161
162
|
| `verify_predicate_attestation` | Verify a server-issued predicate attestation by its row id |
|
|
162
163
|
| `verify_document` | Verify an anchored document by document id + sha256 |
|
|
163
164
|
| `prepare_document_proof` | Canonicalize a document into payloadHash + salted Merkle contentRoot + schemaId + per-field proof inputs (incl. each slot salt) + the full `opening` the cross-root proofs need (synchronous) |
|
|
164
165
|
| `prepare_membership_set` | Build the canonical allow-list set tree: setRoot for verifiers, inclusion path for provers (synchronous) |
|
|
165
166
|
| `attest_agent_output` | Anchor agent-output provenance (canonical envelope, third-party verifiable; async job, NIGHTGATE >= 0.14.0) |
|
|
166
|
-
| `anchor_document` | Anchor a document content hash on-chain
|
|
167
|
+
| `anchor_document` | Anchor a document content hash on-chain as the session's own record, keyed by attester and hash; returns `attesterId` for verifiers (async job) |
|
|
167
168
|
| `prove_field_predicate` | ZK proof that a hidden document field satisfies a threshold, without revealing it (async job) |
|
|
168
169
|
| `prove_field_equality` | ZK proof that a string field carries exactly the value behind a public digest (async job) |
|
|
169
170
|
| `prove_field_membership` | ZK proof that a hidden string field is one of a public allow-list, without revealing which (async job) |
|
|
170
171
|
| `prove_field_predicates_batch` | Up to 8 claims on one document in ONE transaction, any mix of numeric / equality / membership / cross-root kinds (async job) |
|
|
171
172
|
| `prove_document_integrity` | ZK proof that a second document differs from the anchored one ONLY in a public slot mask, values hidden (async job) |
|
|
172
173
|
| `prove_document_diff` | ZK proof that two anchored documents differ at >= k of the vault's slots, without revealing which (async job) |
|
|
173
|
-
| `prepare_anchor_commitment` | Compute the commitment + secret nonce for guarded anchoring (synchronous) |
|
|
174
|
-
| `commit_document_anchor` | Record that commitment on-chain, so a mempool observer cannot front-run the later reveal (async job) |
|
|
175
174
|
| `grant_disclosure` / `revoke_disclosure` | Attester-only on-chain disclosure ACL (async jobs) |
|
|
176
|
-
| `build_sponsorable_transaction` | Build, prove and sign an AttestationVault call LOCALLY with the seed from the server environment (attest, anchorContentRoot, grant/revokeDisclosure, register/bindPassport,
|
|
175
|
+
| `build_sponsorable_transaction` | Build, prove and sign an AttestationVault call LOCALLY with the seed from the server environment (attest, anchorContentRoot, grant/revokeDisclosure, register/bindPassport, the proveField* claims against any attester's record); returns the fee-unpaid bytes for the sponsor tools, unbound by default (synchronous, 20-60 s, needs `@odatano/nightgate-tx`) |
|
|
177
176
|
| `get_attester_identity` | The attester id this server builds under, derived from the seed (synchronous) |
|
|
178
177
|
| `sponsor_finalized_transaction` | Submit a transaction that was built, proven and signed ELSEWHERE (e.g. with the `@odatano/nightgate-tx` txbuilder, the builder's key never leaves its machine); the sponsor session pays the dust, the effect carries the builder's identity; serial per sponsor wallet (async job) |
|
|
179
178
|
| `sponsor_unbound_transaction` | Same trust shape for an UNBOUND (`bind: false`) caller transaction: the sponsor merges a dust spend from a locked backing, binds and submits, several per sponsor wallet in parallel; `sponsorSessionId` may be the platform pool id (async job) |
|
package/dist/builder.d.ts
CHANGED
|
@@ -10,7 +10,7 @@ import type { NightgateMcpConfig } from './config.js';
|
|
|
10
10
|
* the wrong shape for anyone but the operator: it would put someone else's
|
|
11
11
|
* key in our custody and stamp every claim with the same attester id.
|
|
12
12
|
*/
|
|
13
|
-
export declare const BUILDABLE_CALLS: readonly ["attest", "anchorContentRoot", "grantDisclosure", "revokeDisclosure", "registerPassport", "bindPassport", "
|
|
13
|
+
export declare const BUILDABLE_CALLS: readonly ["attest", "anchorContentRoot", "grantDisclosure", "revokeDisclosure", "registerPassport", "bindPassport", "proveFieldPredicate", "proveFieldEquality", "proveFieldMembership", "proveFieldsUnchangedExcept", "proveFieldsDiffer"];
|
|
14
14
|
export type BuildableCall = (typeof BUILDABLE_CALLS)[number];
|
|
15
15
|
/**
|
|
16
16
|
* Vault lineages the local builder can load. Each needs its OWN compiled
|
package/dist/builder.js
CHANGED
|
@@ -29,8 +29,6 @@ export const BUILDABLE_CALLS = [
|
|
|
29
29
|
'revokeDisclosure',
|
|
30
30
|
'registerPassport',
|
|
31
31
|
'bindPassport',
|
|
32
|
-
'attestCommit',
|
|
33
|
-
'attestReveal',
|
|
34
32
|
'proveFieldPredicate',
|
|
35
33
|
'proveFieldEquality',
|
|
36
34
|
'proveFieldMembership',
|
|
@@ -60,11 +58,16 @@ async function loadModules(ref = DEFAULT_ARTIFACT) {
|
|
|
60
58
|
? import('@odatano/nightgate-tx/attestation-vault-32')
|
|
61
59
|
: import('@odatano/nightgate-tx/attestation-vault'),
|
|
62
60
|
]);
|
|
63
|
-
return {
|
|
61
|
+
return {
|
|
62
|
+
createTxBuilder: tx.createTxBuilder,
|
|
63
|
+
computeRecordKey: tx.computeRecordKey,
|
|
64
|
+
calls: calls,
|
|
65
|
+
Contract: vault.Contract,
|
|
66
|
+
};
|
|
64
67
|
}
|
|
65
68
|
catch (err) {
|
|
66
69
|
modules.delete(ref);
|
|
67
|
-
throw new Error(`local building of '${ref}' needs @odatano/nightgate-tx >= 0.
|
|
70
|
+
throw new Error(`local building of '${ref}' needs @odatano/nightgate-tx >= 0.6.0 next to the MCP server ` +
|
|
68
71
|
'(npm install @odatano/nightgate-tx): ' + (err instanceof Error ? err.message : String(err)));
|
|
69
72
|
}
|
|
70
73
|
})();
|
|
@@ -133,10 +136,30 @@ function hexParam(params, key) {
|
|
|
133
136
|
throw new Error(`params.${key} must be 64 hex characters`);
|
|
134
137
|
return v.toLowerCase();
|
|
135
138
|
}
|
|
136
|
-
/**
|
|
137
|
-
|
|
139
|
+
/**
|
|
140
|
+
* Map the tool's flat params onto the typed prepare* helper of the call kind.
|
|
141
|
+
* The proof helpers take the RECORD KEY of the document they prove against:
|
|
142
|
+
* `recordKey` as given, else recordKey(attesterId ?? this builder, payloadHash).
|
|
143
|
+
*/
|
|
144
|
+
function prepareCall(mods, input, attestationSecret, ownAttesterId) {
|
|
145
|
+
const { calls } = mods;
|
|
138
146
|
const p = input.params;
|
|
139
147
|
const slotWidth = input.compiledArtifactRef === 'attestation-vault-32' ? 32 : 16;
|
|
148
|
+
const recordKeyOf = (keyName, payloadName, attesterName) => {
|
|
149
|
+
if (typeof p[keyName] === 'string')
|
|
150
|
+
return hexParam(p, keyName);
|
|
151
|
+
const attester = typeof p[attesterName] === 'string' ? hexParam(p, attesterName) : ownAttesterId;
|
|
152
|
+
return mods.computeRecordKey(attester, hexParam(p, payloadName));
|
|
153
|
+
};
|
|
154
|
+
const recordKey = () => recordKeyOf('recordKey', 'payloadHash', 'attesterId');
|
|
155
|
+
const recordKeyA = () => recordKeyOf('recordKeyA', 'payloadHashA', 'attesterIdA');
|
|
156
|
+
const recordKeyB = () => {
|
|
157
|
+
if (typeof p.recordKeyB === 'string')
|
|
158
|
+
return hexParam(p, 'recordKeyB');
|
|
159
|
+
const attester = typeof p.attesterIdB === 'string' ? hexParam(p, 'attesterIdB')
|
|
160
|
+
: typeof p.attesterIdA === 'string' ? hexParam(p, 'attesterIdA') : ownAttesterId;
|
|
161
|
+
return mods.computeRecordKey(attester, hexParam(p, 'payloadHashB'));
|
|
162
|
+
};
|
|
140
163
|
const witness = (what) => {
|
|
141
164
|
if (!input.merkleProof)
|
|
142
165
|
throw new Error(`call '${input.call}' needs merkleProof (${what}); take it from prepare_document_proof`);
|
|
@@ -153,31 +176,31 @@ function prepareCall(calls, input, attestationSecret) {
|
|
|
153
176
|
if (![0, 1].includes(op))
|
|
154
177
|
throw new Error('params.op must be 0 (lessOrEqual) or 1 (greaterOrEqual)');
|
|
155
178
|
return calls.prepareProveFieldPredicate({
|
|
156
|
-
|
|
179
|
+
recordKey: recordKey(), fieldKey: hexParam(p, 'fieldKey'),
|
|
157
180
|
threshold: BigInt(p.threshold), op: BigInt(op),
|
|
158
181
|
merkleProof: witness('fieldValue, fieldSalt, siblings, dirs'), attestationSecret, slotWidth,
|
|
159
182
|
});
|
|
160
183
|
}
|
|
161
184
|
case 'proveFieldEquality':
|
|
162
185
|
return calls.prepareProveFieldEquality({
|
|
163
|
-
|
|
186
|
+
recordKey: recordKey(), fieldKey: hexParam(p, 'fieldKey'),
|
|
164
187
|
expectedDigest: hexParam(p, 'expectedDigest'),
|
|
165
188
|
merkleProof: witness('fieldSalt, siblings, dirs'), attestationSecret, slotWidth,
|
|
166
189
|
});
|
|
167
190
|
case 'proveFieldMembership':
|
|
168
191
|
return calls.prepareProveFieldMembership({
|
|
169
|
-
|
|
192
|
+
recordKey: recordKey(), fieldKey: hexParam(p, 'fieldKey'),
|
|
170
193
|
setRoot: hexParam(p, 'setRoot'),
|
|
171
194
|
merkleProof: witness('fieldDigest, fieldSalt, siblings, dirs, setProof'), attestationSecret, slotWidth,
|
|
172
195
|
});
|
|
173
196
|
case 'proveFieldsUnchangedExcept':
|
|
174
197
|
return calls.prepareProveFieldsUnchangedExcept({
|
|
175
|
-
|
|
198
|
+
recordKeyA: recordKeyA(), recordKeyB: recordKeyB(),
|
|
176
199
|
allowedMask: Number(p.allowedMask), docPair: pair(), attestationSecret, slotWidth,
|
|
177
200
|
});
|
|
178
201
|
case 'proveFieldsDiffer':
|
|
179
202
|
return calls.prepareProveFieldsDiffer({
|
|
180
|
-
|
|
203
|
+
recordKeyA: recordKeyA(), recordKeyB: recordKeyB(),
|
|
181
204
|
k: Number(p.k), docPair: pair(), attestationSecret, slotWidth,
|
|
182
205
|
});
|
|
183
206
|
case 'attest':
|
|
@@ -196,10 +219,6 @@ function prepareCall(calls, input, attestationSecret) {
|
|
|
196
219
|
return calls.prepareRegisterPassport({ passportId: hexParam(p, 'passportId'), ownerId: hexParam(p, 'ownerId'), attestationSecret });
|
|
197
220
|
case 'bindPassport':
|
|
198
221
|
return calls.prepareBindPassport({ passportId: hexParam(p, 'passportId'), payloadHash: hexParam(p, 'payloadHash'), attestationSecret });
|
|
199
|
-
case 'attestCommit':
|
|
200
|
-
return calls.prepareAttestCommit({ commitment: hexParam(p, 'commitment'), attestationSecret });
|
|
201
|
-
case 'attestReveal':
|
|
202
|
-
return calls.prepareAttestReveal({ payloadHash: hexParam(p, 'payloadHash'), metadataHash: hexParam(p, 'metadataHash'), nonce: hexParam(p, 'nonce'), attestationSecret });
|
|
203
222
|
}
|
|
204
223
|
}
|
|
205
224
|
/** Build + prove + sign locally; unbound (parallel channel) by default. */
|
|
@@ -207,8 +226,8 @@ export async function buildSponsorable(config, input) {
|
|
|
207
226
|
const t0 = Date.now();
|
|
208
227
|
const ref = input.compiledArtifactRef ?? DEFAULT_ARTIFACT;
|
|
209
228
|
const b = await getBuilder(config, ref);
|
|
210
|
-
const
|
|
211
|
-
const call = prepareCall(
|
|
229
|
+
const mods = await loadModules(ref);
|
|
230
|
+
const call = prepareCall(mods, input, b.attestationSecret, String(b.attesterId));
|
|
212
231
|
const built = await b.buildSponsorable({ contractAddress: input.contractAddress, call, bind: input.bind ? true : false });
|
|
213
232
|
const out = {
|
|
214
233
|
channel: input.bind ? 'bound' : 'unbound',
|
package/dist/builder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGjC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,QAAQ;IACR,mBAAmB;IACnB,iBAAiB;IACjB,kBAAkB;IAClB,kBAAkB;IAClB,cAAc;IACd,
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"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"}
|
package/dist/tools.js
CHANGED
|
@@ -122,6 +122,7 @@ const membershipClaim = z.object({
|
|
|
122
122
|
const documentIntegrityClaim = z.object({
|
|
123
123
|
predicate: z.literal('documentIntegrity'),
|
|
124
124
|
payloadHashB: hex64('payloadHashB').describe('The second document (A is the batch payloadHash)'),
|
|
125
|
+
attesterIdB: hex64('attesterIdB').optional().describe('Document B\'s attester; default the batch attester'),
|
|
125
126
|
allowedMask: z.number().int().min(0).max(MAX_MASK - 1)
|
|
126
127
|
.describe('Packed slot mask, one bit per slot of the vault width (16 bits by default, 32 on attestation-vault-32), bit i = slot i MAY differ. Must leave at least one real schema slot constrained, otherwise the claim is vacuous and rejected'),
|
|
127
128
|
schema: schemaSlots,
|
|
@@ -135,6 +136,7 @@ const documentIntegrityClaim = z.object({
|
|
|
135
136
|
const documentDiffClaim = z.object({
|
|
136
137
|
predicate: z.literal('documentDiff'),
|
|
137
138
|
payloadHashB: hex64('payloadHashB').describe('The second document (A is the batch payloadHash)'),
|
|
139
|
+
attesterIdB: hex64('attesterIdB').optional().describe('Document B\'s attester; default the batch attester'),
|
|
138
140
|
k: z.number().int().min(1).max(MAX_SLOT_WIDTH).describe('Minimum number of differing slots to prove, up to the vault width'),
|
|
139
141
|
schema: schemaSlots,
|
|
140
142
|
openingA: documentOpening,
|
|
@@ -148,12 +150,21 @@ const documentDiffClaim = z.object({
|
|
|
148
150
|
export function registerTools(server, client, config) {
|
|
149
151
|
const run = wrapHandler(client);
|
|
150
152
|
server.registerTool('verify_attestation', {
|
|
151
|
-
description: 'Verify against LIVE Midnight contract state that
|
|
152
|
-
'AttestationVault (crawler-free, no txHash needed).
|
|
153
|
-
'
|
|
153
|
+
description: 'Verify against LIVE Midnight contract state that an attester\'s record of a payload ' +
|
|
154
|
+
'hash stands in an AttestationVault (crawler-free, no txHash needed). A record is ONE ' +
|
|
155
|
+
'attester\'s attestation of ONE payload (ledger key recordKey(attesterId, payloadHash)): ' +
|
|
156
|
+
'name it by attesterId + payloadHash, or by a bound documentId, which resolves to exactly ' +
|
|
157
|
+
'one record and reveals its attester. Optionally also checks that the anchored content ' +
|
|
158
|
+
'root / schema id match. Returns verified:false (not an error) when absent; the result ' +
|
|
159
|
+
'carries attesterId, payloadHash, recordKey and documentId.',
|
|
154
160
|
inputSchema: {
|
|
155
161
|
contractAddress: z.string().min(1).describe('AttestationVault contract address'),
|
|
156
|
-
|
|
162
|
+
attesterId: hex64('attesterId').optional()
|
|
163
|
+
.describe('The attester whose record to check (64 hex; get_attester_identity for this server\'s own). Required unless documentId is given'),
|
|
164
|
+
payloadHash: hex64('payloadHash').optional()
|
|
165
|
+
.describe('The attested payload hash (sha256, 64 hex). Required with attesterId; next to documentId it must match the bound record'),
|
|
166
|
+
documentId: hex64('documentId').optional()
|
|
167
|
+
.describe('A bound document id (64 hex): resolves the record through the vault\'s document bindings'),
|
|
157
168
|
contentRoot: hex64('contentRoot').optional().describe('Optional anchored content root to check (64 hex)'),
|
|
158
169
|
schemaId: hex64('schemaId').optional()
|
|
159
170
|
.describe('Optional anchored schema id to check; the result reports schemaOk, so an examiner can pin the canonical field list'),
|
|
@@ -161,23 +172,32 @@ export function registerTools(server, client, config) {
|
|
|
161
172
|
.describe('Read from another network public indexer instead of the configured one'),
|
|
162
173
|
compiledArtifactRef: z.string().optional().describe("Contract artifact ref, defaults to 'attestation-vault'"),
|
|
163
174
|
},
|
|
164
|
-
}, run(async (args) =>
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
175
|
+
}, run(async (args) => {
|
|
176
|
+
if (!args.documentId && !(args.attesterId && args.payloadHash)) {
|
|
177
|
+
throw new Error('name the record: attesterId + payloadHash, or documentId');
|
|
178
|
+
}
|
|
179
|
+
return client.callFunction('verifyAttestationState', {
|
|
180
|
+
contractAddress: args.contractAddress,
|
|
181
|
+
attesterId: args.attesterId,
|
|
182
|
+
payloadHash: args.payloadHash,
|
|
183
|
+
documentId: args.documentId,
|
|
184
|
+
contentRoot: args.contentRoot,
|
|
185
|
+
schemaId: args.schemaId,
|
|
186
|
+
compiledArtifactRef: args.compiledArtifactRef,
|
|
187
|
+
network: args.network,
|
|
188
|
+
});
|
|
189
|
+
}));
|
|
172
190
|
server.registerTool('verify_predicate', {
|
|
173
191
|
description: 'Verify against LIVE Midnight contract state that a ZK claim was recorded true on-chain. ' +
|
|
174
192
|
'Id-free: works for proofs NIGHTGATE never saw. Numeric predicates (lessOrEqual / ' +
|
|
175
193
|
'greaterOrEqual) need threshold (the SAME scaled integer the circuit hashed; a scaling ' +
|
|
176
194
|
'mismatch yields verified:false) and optionally fieldKey for field-bound proofs. ' +
|
|
177
195
|
'bytesEquality needs fieldKey + expectedDigest; setMembership needs fieldKey + setRoot ' +
|
|
178
|
-
'(recompute it from the published list via prepare_membership_set).'
|
|
196
|
+
'(recompute it from the published list via prepare_membership_set). Every claim is bound ' +
|
|
197
|
+
'to ONE attester\'s record of the document, so attesterId is part of the coordinates.',
|
|
179
198
|
inputSchema: {
|
|
180
199
|
contractAddress: z.string().min(1).describe('AttestationVault contract address'),
|
|
200
|
+
attesterId: hex64('attesterId').describe('The attester whose record of payloadHash carries the claim (64 hex)'),
|
|
181
201
|
payloadHash: hex64('payloadHash').describe('The attestation payload hash (64 hex)'),
|
|
182
202
|
predicate: z.enum(['lessOrEqual', 'greaterOrEqual', 'bytesEquality', 'setMembership',
|
|
183
203
|
'documentIntegrity', 'documentDiff']).describe('Claim kind'),
|
|
@@ -191,6 +211,8 @@ export function registerTools(server, client, config) {
|
|
|
191
211
|
.describe("setMembership only: the canonical allow-list set root"),
|
|
192
212
|
payloadHashB: hex64('payloadHashB').optional()
|
|
193
213
|
.describe('Cross-root kinds: the second document. (A, B) order is part of the claim, query it as proven'),
|
|
214
|
+
attesterIdB: hex64('attesterIdB').optional()
|
|
215
|
+
.describe('Cross-root kinds: document B\'s attester; defaults to attesterId'),
|
|
194
216
|
allowedMask: z.number().int().min(0).max(MAX_MASK).optional()
|
|
195
217
|
.describe('documentIntegrity only: the packed slot mask that was proven (16 bits by default, 32 on attestation-vault-32)'),
|
|
196
218
|
k: z.number().int().min(1).max(MAX_SLOT_WIDTH).optional()
|
|
@@ -217,7 +239,9 @@ export function registerTools(server, client, config) {
|
|
|
217
239
|
}
|
|
218
240
|
return client.callFunction('verifyPredicateState', {
|
|
219
241
|
contractAddress: args.contractAddress,
|
|
242
|
+
attesterId: args.attesterId,
|
|
220
243
|
payloadHash: args.payloadHash,
|
|
244
|
+
attesterIdB: args.attesterIdB,
|
|
221
245
|
fieldKey: args.fieldKey,
|
|
222
246
|
predicate: args.predicate,
|
|
223
247
|
threshold: args.threshold === undefined ? undefined : int64(args.threshold),
|
|
@@ -328,12 +352,11 @@ export function registerTools(server, client, config) {
|
|
|
328
352
|
})));
|
|
329
353
|
server.registerTool('anchor_document', {
|
|
330
354
|
description: 'Anchor a document content hash on the Midnight chain via the AttestationVault attest ' +
|
|
331
|
-
'circuit. Commits only the sha256 + public metadata; you are responsible
|
|
332
|
-
'actual bytes at storageRef.
|
|
333
|
-
'
|
|
334
|
-
'
|
|
335
|
-
'
|
|
336
|
-
' Also returns documentId for verify_document.',
|
|
355
|
+
'circuit (one transaction). Commits only the sha256 + public metadata; you are responsible ' +
|
|
356
|
+
'for storing the actual bytes at storageRef. The on-chain record is keyed by the session\'s ' +
|
|
357
|
+
'attester id AND the hash, so nobody can pre-empt or take over it; the same hash anchored ' +
|
|
358
|
+
'by another identity is a separate record. ' + POLL_HINT +
|
|
359
|
+
' Also returns documentId for verify_document and attesterId, which verifiers need next to the hash.',
|
|
337
360
|
inputSchema: {
|
|
338
361
|
sha256: hex64('sha256').describe('sha256 of the document content (64 hex), becomes the on-chain payload hash'),
|
|
339
362
|
storageRef: z.string().min(1).describe('Where the bytes live, e.g. file://, s3://, ipfs://'),
|
|
@@ -342,8 +365,6 @@ export function registerTools(server, client, config) {
|
|
|
342
365
|
contentType: z.string().optional().describe('MIME type, informational'),
|
|
343
366
|
size: z.number().int().nonnegative().optional().describe('Content size in bytes, informational'),
|
|
344
367
|
metadata: z.record(z.unknown()).optional().describe('Public metadata object; its hash is anchored alongside'),
|
|
345
|
-
nonce: hex64('nonce').optional()
|
|
346
|
-
.describe('Guarded REVEAL: the secret nonce from prepare_anchor_commitment, after commit_document_anchor finalized. Same sha256 and metadata as the commitment'),
|
|
347
368
|
compiledArtifactRef: z.string().optional().describe("Contract artifact ref, defaults to 'attestation-vault'"),
|
|
348
369
|
idempotencyKey: z.string().optional().describe('Dedupes retries of the same anchor request'),
|
|
349
370
|
sponsorSessionId: z.string().uuid().optional().describe('Optional second session that pays the dust fee'),
|
|
@@ -354,7 +375,6 @@ export function registerTools(server, client, config) {
|
|
|
354
375
|
size: args.size,
|
|
355
376
|
storageRef: args.storageRef,
|
|
356
377
|
metadata: args.metadata === undefined ? undefined : JSON.stringify(args.metadata),
|
|
357
|
-
nonce: args.nonce,
|
|
358
378
|
sessionId: args.sessionId,
|
|
359
379
|
contractAddress: args.contractAddress,
|
|
360
380
|
compiledArtifactRef: args.compiledArtifactRef,
|
|
@@ -370,6 +390,8 @@ export function registerTools(server, client, config) {
|
|
|
370
390
|
'at local proving time, nothing is submitted. ' + POLL_HINT,
|
|
371
391
|
inputSchema: {
|
|
372
392
|
payloadHash: hex64('payloadHash').describe('Attestation payload hash (64 hex)'),
|
|
393
|
+
attesterId: hex64('attesterId').optional()
|
|
394
|
+
.describe('The attester whose record of payloadHash the claim is bound to (64 hex); default the session\'s own. A contentRoot can only be anchored under the session\'s own record'),
|
|
373
395
|
fieldKey: hex64('fieldKey').describe('Canonical field id (64 hex, public)'),
|
|
374
396
|
value: z.string().regex(/^\d+$/, 'value must be a non-negative integer (decimal string)')
|
|
375
397
|
.describe('Scaled integer field value (witness only, never persisted)'),
|
|
@@ -389,6 +411,7 @@ export function registerTools(server, client, config) {
|
|
|
389
411
|
},
|
|
390
412
|
}, run(async (args) => client.callAction('issueFieldPredicateAttestation', {
|
|
391
413
|
payloadHash: args.payloadHash,
|
|
414
|
+
attesterId: args.attesterId,
|
|
392
415
|
fieldKey: args.fieldKey,
|
|
393
416
|
value: args.value,
|
|
394
417
|
fieldSalt: args.fieldSalt,
|
|
@@ -441,6 +464,8 @@ export function registerTools(server, client, config) {
|
|
|
441
464
|
'supplied it is anchored first. ' + POLL_HINT,
|
|
442
465
|
inputSchema: {
|
|
443
466
|
payloadHash: hex64('payloadHash').describe('Attestation payload hash (64 hex)'),
|
|
467
|
+
attesterId: hex64('attesterId').optional()
|
|
468
|
+
.describe('The attester whose record of payloadHash the claim is bound to (64 hex); default the session\'s own. A contentRoot can only be anchored under the session\'s own record'),
|
|
444
469
|
fieldKey: hex64('fieldKey').describe('Canonical field id (64 hex, public)'),
|
|
445
470
|
expectedValue: z.string().min(1).optional()
|
|
446
471
|
.describe('Raw expected string (the server digests the EXACT string; pass this OR expectedDigest)'),
|
|
@@ -463,6 +488,7 @@ export function registerTools(server, client, config) {
|
|
|
463
488
|
}
|
|
464
489
|
return client.callAction('issueFieldEqualityAttestation', {
|
|
465
490
|
payloadHash: args.payloadHash,
|
|
491
|
+
attesterId: args.attesterId,
|
|
466
492
|
fieldKey: args.fieldKey,
|
|
467
493
|
expectedValue: args.expectedValue,
|
|
468
494
|
expectedDigest: args.expectedDigest,
|
|
@@ -488,6 +514,8 @@ export function registerTools(server, client, config) {
|
|
|
488
514
|
'contentRoot is supplied it is anchored first. ' + POLL_HINT,
|
|
489
515
|
inputSchema: {
|
|
490
516
|
payloadHash: hex64('payloadHash').describe('Attestation payload hash (64 hex)'),
|
|
517
|
+
attesterId: hex64('attesterId').optional()
|
|
518
|
+
.describe('The attester whose record of payloadHash the claim is bound to (64 hex); default the session\'s own. A contentRoot can only be anchored under the session\'s own record'),
|
|
491
519
|
fieldKey: hex64('fieldKey').describe('Canonical field id (64 hex, public)'),
|
|
492
520
|
value: z.string().min(1).optional()
|
|
493
521
|
.describe('Raw member string (witness only; pass this OR valueDigest)'),
|
|
@@ -522,6 +550,7 @@ export function registerTools(server, client, config) {
|
|
|
522
550
|
}
|
|
523
551
|
return client.callAction('issueFieldMembershipAttestation', {
|
|
524
552
|
payloadHash: args.payloadHash,
|
|
553
|
+
attesterId: args.attesterId,
|
|
525
554
|
fieldKey: args.fieldKey,
|
|
526
555
|
value: args.value,
|
|
527
556
|
valueDigest: args.valueDigest,
|
|
@@ -552,6 +581,8 @@ export function registerTools(server, client, config) {
|
|
|
552
581
|
'assuming all-or-nothing. ' + POLL_HINT,
|
|
553
582
|
inputSchema: {
|
|
554
583
|
payloadHash: hex64('payloadHash').describe('Shared attestation payload hash; also document A of any cross-root claim (64 hex)'),
|
|
584
|
+
attesterId: hex64('attesterId').optional()
|
|
585
|
+
.describe('The attester whose record of payloadHash the claim is bound to (64 hex); default the session\'s own. A contentRoot can only be anchored under the session\'s own record'),
|
|
555
586
|
claims: z.array(z.union([numericClaim, equalityClaim, membershipClaim, documentIntegrityClaim, documentDiffClaim]))
|
|
556
587
|
.min(1).max(8)
|
|
557
588
|
.describe('1-8 claims on the same payload hash; any mix of numeric, bytesEquality, setMembership, documentIntegrity and documentDiff'),
|
|
@@ -569,6 +600,7 @@ export function registerTools(server, client, config) {
|
|
|
569
600
|
}
|
|
570
601
|
return client.callAction('issueFieldPredicateAttestationBatch', {
|
|
571
602
|
payloadHash: args.payloadHash,
|
|
603
|
+
attesterId: args.attesterId,
|
|
572
604
|
contentRoot: args.contentRoot,
|
|
573
605
|
schemaId: args.schemaId,
|
|
574
606
|
claimsJson: JSON.stringify(args.claims.map((c) => 'threshold' in c ? { ...c, threshold: String(c.threshold) } : c)),
|
|
@@ -590,6 +622,10 @@ export function registerTools(server, client, config) {
|
|
|
590
622
|
inputSchema: {
|
|
591
623
|
payloadHashA: hex64('payloadHashA').describe('Anchored document A (64 hex)'),
|
|
592
624
|
payloadHashB: hex64('payloadHashB').describe('Anchored document B; must differ from A'),
|
|
625
|
+
attesterIdA: hex64('attesterIdA').optional()
|
|
626
|
+
.describe('Document A\'s attester (64 hex); default the session\'s own'),
|
|
627
|
+
attesterIdB: hex64('attesterIdB').optional()
|
|
628
|
+
.describe('Document B\'s attester (64 hex); default attesterIdA'),
|
|
593
629
|
allowedMask: z.number().int().min(0).max(MAX_MASK - 1)
|
|
594
630
|
.describe('Packed slot mask, one bit per slot of the vault width (16 bits by default, 32 on attestation-vault-32), bit i = slot i MAY differ. At least one real schema slot must stay constrained'),
|
|
595
631
|
schema: schemaSlots,
|
|
@@ -610,6 +646,8 @@ export function registerTools(server, client, config) {
|
|
|
610
646
|
return client.callAction('issueDocumentIntegrityAttestation', {
|
|
611
647
|
payloadHashA: args.payloadHashA,
|
|
612
648
|
payloadHashB: args.payloadHashB,
|
|
649
|
+
attesterIdA: args.attesterIdA,
|
|
650
|
+
attesterIdB: args.attesterIdB,
|
|
613
651
|
allowedMask: args.allowedMask,
|
|
614
652
|
schemaJson: JSON.stringify(args.schema),
|
|
615
653
|
openingAJson: JSON.stringify(args.openingA),
|
|
@@ -635,6 +673,10 @@ export function registerTools(server, client, config) {
|
|
|
635
673
|
inputSchema: {
|
|
636
674
|
payloadHashA: hex64('payloadHashA').describe('Anchored document A (64 hex)'),
|
|
637
675
|
payloadHashB: hex64('payloadHashB').describe('Anchored document B; must differ from A'),
|
|
676
|
+
attesterIdA: hex64('attesterIdA').optional()
|
|
677
|
+
.describe('Document A\'s attester (64 hex); default the session\'s own'),
|
|
678
|
+
attesterIdB: hex64('attesterIdB').optional()
|
|
679
|
+
.describe('Document B\'s attester (64 hex); default attesterIdA'),
|
|
638
680
|
k: z.number().int().min(1).max(MAX_SLOT_WIDTH).describe('Minimum number of differing slots to prove, up to the vault width'),
|
|
639
681
|
schema: schemaSlots,
|
|
640
682
|
openingA: documentOpening,
|
|
@@ -651,6 +693,8 @@ export function registerTools(server, client, config) {
|
|
|
651
693
|
}, run(async (args) => client.callAction('issueDocumentDiffAttestation', {
|
|
652
694
|
payloadHashA: args.payloadHashA,
|
|
653
695
|
payloadHashB: args.payloadHashB,
|
|
696
|
+
attesterIdA: args.attesterIdA,
|
|
697
|
+
attesterIdB: args.attesterIdB,
|
|
654
698
|
k: args.k,
|
|
655
699
|
schemaJson: JSON.stringify(args.schema),
|
|
656
700
|
openingAJson: JSON.stringify(args.openingA),
|
|
@@ -664,46 +708,6 @@ export function registerTools(server, client, config) {
|
|
|
664
708
|
idempotencyKey: args.idempotencyKey,
|
|
665
709
|
sponsorSessionId: args.sponsorSessionId,
|
|
666
710
|
})));
|
|
667
|
-
server.registerTool('prepare_anchor_commitment', {
|
|
668
|
-
description: 'Phase 0 of guarded anchoring: compute the opaque commitment for commit_document_anchor ' +
|
|
669
|
-
'plus the nonce the later reveal needs. Compute-only and synchronous. STORE the nonce and ' +
|
|
670
|
-
'keep it SECRET until the reveal: it is exactly what a mempool front-runner cannot forge. ' +
|
|
671
|
-
'Pass the same metadata here and to anchor_document. Use this when the payload hash is ' +
|
|
672
|
-
'secret until anchoring; for publicly known identifiers, registrar pre-assignment is the ' +
|
|
673
|
-
'better protection.',
|
|
674
|
-
inputSchema: {
|
|
675
|
-
sha256: hex64('sha256').describe('sha256 of the document content (64 hex)'),
|
|
676
|
-
metadata: z.record(z.unknown()).optional()
|
|
677
|
-
.describe('Public metadata object; MUST equal the metadata passed to anchor_document later'),
|
|
678
|
-
nonce: hex64('nonce').optional().describe('Reuse a specific nonce; omit for a fresh random one'),
|
|
679
|
-
},
|
|
680
|
-
}, run(async (args) => client.callAction('prepareAnchorCommitment', {
|
|
681
|
-
sha256: args.sha256,
|
|
682
|
-
metadata: args.metadata === undefined ? undefined : JSON.stringify(args.metadata),
|
|
683
|
-
nonce: args.nonce,
|
|
684
|
-
})));
|
|
685
|
-
server.registerTool('commit_document_anchor', {
|
|
686
|
-
description: 'Phase 1 of guarded anchoring: record the opaque commitment on-chain. Observers learn ' +
|
|
687
|
-
'nothing about the payload. Once this job finalizes, call anchor_document with the SAME ' +
|
|
688
|
-
'sha256 and metadata plus the nonce to reveal; a plain attest that front-ran the reveal is ' +
|
|
689
|
-
'taken over in-circuit, and everything the front-runner recorded meanwhile (content root, ' +
|
|
690
|
-
'disclosure grants, claims) stops counting. ' + POLL_HINT,
|
|
691
|
-
inputSchema: {
|
|
692
|
-
commitment: hex64('commitment').describe('The commitment from prepare_anchor_commitment (64 hex)'),
|
|
693
|
-
sessionId: z.string().uuid().describe('Wallet session id that signs and submits; the SAME session must reveal'),
|
|
694
|
-
contractAddress: z.string().min(1).describe('AttestationVault deployment'),
|
|
695
|
-
compiledArtifactRef: z.string().optional().describe("Contract artifact ref, defaults to 'attestation-vault'"),
|
|
696
|
-
idempotencyKey: z.string().optional().describe('Dedupes retries'),
|
|
697
|
-
sponsorSessionId: z.string().uuid().optional().describe('Optional second session that pays the dust fee'),
|
|
698
|
-
},
|
|
699
|
-
}, run(async (args) => client.callAction('commitDocumentAnchor', {
|
|
700
|
-
commitment: args.commitment,
|
|
701
|
-
sessionId: args.sessionId,
|
|
702
|
-
contractAddress: args.contractAddress,
|
|
703
|
-
compiledArtifactRef: args.compiledArtifactRef,
|
|
704
|
-
idempotencyKey: args.idempotencyKey,
|
|
705
|
-
sponsorSessionId: args.sponsorSessionId,
|
|
706
|
-
})));
|
|
707
711
|
server.registerTool('grant_disclosure', {
|
|
708
712
|
description: 'Grant a disclosure level for an attestation to a grantee identity, on-chain via the ' +
|
|
709
713
|
'AttestationVault. Attester-only: the transaction is rejected in-circuit unless the ' +
|
|
@@ -764,16 +768,19 @@ export function registerTools(server, client, config) {
|
|
|
764
768
|
'server. params by call: attest {payloadHash, metadataHash}; anchorContentRoot ' +
|
|
765
769
|
'{payloadHash, contentRoot, schemaId}; grantDisclosure {payloadHash, grantee, level 0|1|2}; ' +
|
|
766
770
|
'revokeDisclosure {payloadHash, grantee}; registerPassport {passportId, ownerId}; ' +
|
|
767
|
-
'bindPassport {passportId, payloadHash}
|
|
768
|
-
'
|
|
769
|
-
'server and no witness ever sent
|
|
770
|
-
'
|
|
771
|
-
'
|
|
772
|
-
'
|
|
773
|
-
'
|
|
774
|
-
'
|
|
775
|
-
'
|
|
776
|
-
'
|
|
771
|
+
'bindPassport {passportId, payloadHash}. The owner-gated calls address THIS builder\'s own ' +
|
|
772
|
+
'record of the payload (the circuit derives recordKey(attesterId, payloadHash) from the ' +
|
|
773
|
+
'caller). ZK CLAIMS, proven here with no wallet on the server and no witness ever sent ' +
|
|
774
|
+
'to it, address a record explicitly: pass payloadHash (this builder\'s record) or ' +
|
|
775
|
+
'payloadHash + attesterId (another attester\'s record) or recordKey directly: ' +
|
|
776
|
+
'proveFieldPredicate {payloadHash, fieldKey, threshold, op 0=lessOrEqual|1=greaterOrEqual} ' +
|
|
777
|
+
'plus merkleProof {fieldValue, fieldSalt, siblings, dirs}; proveFieldEquality ' +
|
|
778
|
+
'{payloadHash, fieldKey, expectedDigest} plus merkleProof {fieldSalt, siblings, dirs}; ' +
|
|
779
|
+
'proveFieldMembership {payloadHash, fieldKey, setRoot} plus merkleProof {fieldDigest, ' +
|
|
780
|
+
'fieldSalt, siblings, dirs, setProof}; proveFieldsUnchangedExcept {payloadHashA, ' +
|
|
781
|
+
'payloadHashB, allowedMask} and proveFieldsDiffer {payloadHashA, payloadHashB, k} ' +
|
|
782
|
+
'(optionally attesterIdA / attesterIdB, or recordKeyA / recordKeyB), both plus docPair ' +
|
|
783
|
+
'{schema, openingA, openingB}. Every witness field comes straight out of ' +
|
|
777
784
|
'prepare_document_proof. All hashes 64 hex. The built bytes are valid for ' +
|
|
778
785
|
'the transaction TTL (~30 min) and against the contract state at build time: if the ' +
|
|
779
786
|
'sponsor job ends CHAIN_EXECUTION_FAILED, build again.',
|
package/dist/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@odatano/nightgate-mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.1",
|
|
4
4
|
"description": "MCP server exposing NIGHTGATE (Midnight blockchain attestation layer) to AI agents",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"publishConfig": {
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
"files": [
|
|
15
15
|
"dist",
|
|
16
16
|
"README.md",
|
|
17
|
+
"CHANGELOG.md",
|
|
17
18
|
"LICENSE"
|
|
18
19
|
],
|
|
19
20
|
"engines": {
|
|
@@ -48,7 +49,7 @@
|
|
|
48
49
|
"zod": "^3.23.0"
|
|
49
50
|
},
|
|
50
51
|
"peerDependencies": {
|
|
51
|
-
"@odatano/nightgate-tx": ">=0.
|
|
52
|
+
"@odatano/nightgate-tx": ">=0.6.0"
|
|
52
53
|
},
|
|
53
54
|
"peerDependenciesMeta": {
|
|
54
55
|
"@odatano/nightgate-tx": {
|
|
@@ -56,7 +57,7 @@
|
|
|
56
57
|
}
|
|
57
58
|
},
|
|
58
59
|
"devDependencies": {
|
|
59
|
-
"@odatano/nightgate-tx": "^0.
|
|
60
|
+
"@odatano/nightgate-tx": "^0.6.0",
|
|
60
61
|
"@types/node": "^20.0.0",
|
|
61
62
|
"typescript": "^5.5.0"
|
|
62
63
|
}
|