@agenticprimitives/agent-naming 1.0.0-alpha.21 → 1.0.0-alpha.23
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/CLAUDE.md +34 -50
- package/README.md +7 -0
- package/dist/abis.d.ts +99 -0
- package/dist/abis.d.ts.map +1 -1
- package/dist/abis.js +40 -0
- package/dist/abis.js.map +1 -1
- package/dist/claim.d.ts +71 -0
- package/dist/claim.d.ts.map +1 -0
- package/dist/claim.js +73 -0
- package/dist/claim.js.map +1 -0
- package/dist/client.d.ts +24 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +133 -3
- package/dist/client.js.map +1 -1
- package/dist/constants.d.ts +55 -5
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +128 -4
- package/dist/constants.js.map +1 -1
- package/dist/custody.d.ts +42 -0
- package/dist/custody.d.ts.map +1 -1
- package/dist/custody.js +98 -1
- package/dist/custody.js.map +1 -1
- package/dist/dns.d.ts +91 -0
- package/dist/dns.d.ts.map +1 -0
- package/dist/dns.js +196 -0
- package/dist/dns.js.map +1 -0
- package/dist/grammar.d.ts +62 -0
- package/dist/grammar.d.ts.map +1 -0
- package/dist/grammar.js +165 -0
- package/dist/grammar.js.map +1 -0
- package/dist/hash.d.ts +14 -0
- package/dist/hash.d.ts.map +1 -0
- package/dist/hash.js +22 -0
- package/dist/hash.js.map +1 -0
- package/dist/index.d.ts +10 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -4
- package/dist/index.js.map +1 -1
- package/dist/issuance.d.ts +70 -0
- package/dist/issuance.d.ts.map +1 -0
- package/dist/issuance.js +65 -0
- package/dist/issuance.js.map +1 -0
- package/dist/label.d.ts +10 -0
- package/dist/label.d.ts.map +1 -0
- package/dist/label.js +39 -0
- package/dist/label.js.map +1 -0
- package/dist/namehash.d.ts +10 -23
- package/dist/namehash.d.ts.map +1 -1
- package/dist/namehash.js +11 -35
- package/dist/namehash.js.map +1 -1
- package/dist/normalize.d.ts +9 -26
- package/dist/normalize.d.ts.map +1 -1
- package/dist/normalize.js +11 -67
- package/dist/normalize.js.map +1 -1
- package/dist/records.d.ts +12 -0
- package/dist/records.d.ts.map +1 -1
- package/dist/records.js +62 -2
- package/dist/records.js.map +1 -1
- package/dist/types.d.ts +60 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/vertical.d.ts +43 -0
- package/dist/vertical.d.ts.map +1 -0
- package/dist/vertical.js +40 -0
- package/dist/vertical.js.map +1 -0
- package/docs/api.md +13 -1
- package/package.json +6 -6
package/dist/client.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Address, type Hex, type WalletClient } from 'viem';
|
|
2
|
-
import type { AgentNameRecords, AgentNamingClientOpts, ConnectionKind, RegisterSubnameInput, SetAgentRecordsInput, SetPrimaryNameInput, SetSubregistryInput } from './types.js';
|
|
2
|
+
import type { AgentNameRecords, AgentNamingClientOpts, ConnectionKind, DerivedTypeRecord, TypedNameCheck, TypedNameRecord, RegisterSubnameInput, SetAgentRecordsInput, SetPrimaryNameInput, SetSubregistryInput } from './types.js';
|
|
3
3
|
/**
|
|
4
4
|
* Optional per-call submission context. When provided, the write
|
|
5
5
|
* method submits the encoded call via `walletClient.sendTransaction`.
|
|
@@ -68,6 +68,29 @@ export declare class AgentNamingClient {
|
|
|
68
68
|
address: Address | null;
|
|
69
69
|
passkeyCredentialDigest: Hex | null;
|
|
70
70
|
} | null>;
|
|
71
|
+
/** `AgentNameRegistry.recordExists(node)` — the read the forced-unique walk needs. */
|
|
72
|
+
recordExists(node: Hex): Promise<boolean>;
|
|
73
|
+
/** Forced-unique label under `parentName` (a root like `me`, or a type-node like `svc.richcanvas.org`). */
|
|
74
|
+
findUniqueLabel(parentName: string, baseLabel: string, cap?: number): Promise<string>;
|
|
75
|
+
/** The `PermissionlessSubregistry` for a typed (generic or vertical) root, from `opts.subregistries`. Throws when unconfigured. */
|
|
76
|
+
subregistryFor(tld: string): Address;
|
|
77
|
+
/**
|
|
78
|
+
* Read the SA-keyed derived-type record (spec 346 §2.3) from the AgentProfileResolver. Requires
|
|
79
|
+
* `opts.profileResolver`; throws a configuration error otherwise (no silent untyped downgrade).
|
|
80
|
+
* An unregistered profile → all `null` (empty is an answer).
|
|
81
|
+
*/
|
|
82
|
+
readDerivedType(agent: Address): Promise<DerivedTypeRecord>;
|
|
83
|
+
/**
|
|
84
|
+
* Resolve a typed name and enforce the suffix ↔ derived-type ↔ root invariant (spec 346 §2.3) at read
|
|
85
|
+
* time. `null` when unregistered OR when the records disagree with the suffix (`type_mismatch`,
|
|
86
|
+
* `type_undeclared`, `role_required`, `kind_mismatch`) — a typed name whose records disagree with its
|
|
87
|
+
* suffix is not a valid typed name (ADR-0013: empty is an answer). Use `checkTypedName` for the reason.
|
|
88
|
+
* Legacy names resolve with `legacy: true` and are never suffix-validated.
|
|
89
|
+
*/
|
|
90
|
+
resolveTyped(name: string): Promise<TypedNameRecord | null>;
|
|
91
|
+
/** `resolveTyped` with the refusal reason. */
|
|
92
|
+
checkTypedName(name: string): Promise<TypedNameCheck>;
|
|
93
|
+
private _profileResolver;
|
|
71
94
|
/**
|
|
72
95
|
* Register `<label>.<parent>` under the parent namespace. The
|
|
73
96
|
* provided `walletClient`'s account MUST be authorized to register
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,OAAO,EAAE,KAAK,GAAG,EAAqB,KAAK,YAAY,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,OAAO,EAAE,KAAK,GAAG,EAAqB,KAAK,YAAY,EAAE,MAAM,MAAM,CAAC;AAwB9G,OAAO,KAAK,EACV,gBAAgB,EAChB,qBAAqB,EACrB,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAIpB;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,iBAAiB;IAGhB,QAAQ,CAAC,IAAI,EAAE,qBAAqB;IAFhD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;gBAEvB,IAAI,EAAE,qBAAqB;IAWhD;;;;;;;OAOG;IACG,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAaxD;;;;;;;;OAQG;IACG,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAU5D;;;OAGG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAyHzD;;;;;;OAMG;IACG,iBAAiB,CACrB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;QAAE,IAAI,EAAE,cAAc,CAAC;QAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;QAAC,uBAAuB,EAAE,GAAG,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;IAYzG,sFAAsF;IAChF,YAAY,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;IAS/C,2GAA2G;IACrG,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI3F,mIAAmI;IACnI,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAMpC;;;;OAIG;IACG,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAmCjE;;;;;;OAMG;IACG,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAKjE,8CAA8C;IACxC,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAuC3D,OAAO,CAAC,gBAAgB;IASxB;;;;;;;;;;;;;OAaG;IACG,eAAe,CAAC,KAAK,EAAE,oBAAoB,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC;IAwBnF;;;;;OAKG;IACG,cAAc,CAAC,KAAK,EAAE,mBAAmB,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC;IAMjF;;;;;;OAMG;IACG,eAAe,CAAC,KAAK,EAAE,oBAAoB,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAsBrF;;;;OAIG;IACG,cAAc,CAAC,KAAK,EAAE,mBAAmB,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC;IAUjF;;;;OAIG;YACW,OAAO;CAkCtB"}
|
package/dist/client.js
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { createPublicClient, http } from 'viem';
|
|
2
|
-
import { agentNameAttributeResolverAbi, agentNameRegistryAbi, agentNameUniversalResolverAbi, } from './abis.js';
|
|
3
|
-
import {
|
|
2
|
+
import { agentNameAttributeResolverAbi, agentNameRegistryAbi, agentNameUniversalResolverAbi, agentProfileResolverTypeAbi, } from './abis.js';
|
|
3
|
+
import { rootClassForDerivedType } from '@agenticprimitives/types';
|
|
4
|
+
import { derivedTypeForTld } from './constants.js';
|
|
5
|
+
import { parseAgentName } from './grammar.js';
|
|
6
|
+
import { findUniqueLabel, validateTypedClaim } from './claim.js';
|
|
7
|
+
import { PREDICATE_ID, decodeRecords, decodeAgentKind, decodeAgentType, } from './records.js';
|
|
4
8
|
import { buildRegisterSubnameCall, buildRecordCalls, buildSetPrimaryNameCall, buildSetSubregistryCall, } from './custody.js';
|
|
5
9
|
import { namehash, ZERO_NODE } from './namehash.js';
|
|
6
10
|
import { normalizeLabel } from './normalize.js';
|
|
@@ -107,6 +111,7 @@ export class AgentNamingClient {
|
|
|
107
111
|
PREDICATE_ID.description,
|
|
108
112
|
PREDICATE_ID.metadataUri,
|
|
109
113
|
PREDICATE_ID.nativeId,
|
|
114
|
+
PREDICATE_ID.cardUri,
|
|
110
115
|
];
|
|
111
116
|
const stringValues = await this.publicClient.readContract({
|
|
112
117
|
address: this.opts.universalResolver,
|
|
@@ -137,7 +142,7 @@ export class AgentNamingClient {
|
|
|
137
142
|
args: [node, PREDICATE_ID.connectionAddress],
|
|
138
143
|
}),
|
|
139
144
|
]);
|
|
140
|
-
const [agentKind, metadataHash, passkeyDigest, connectionKind] = await Promise.all([
|
|
145
|
+
const [agentKind, metadataHash, passkeyDigest, connectionKind, cardDigest] = await Promise.all([
|
|
141
146
|
this.publicClient.readContract({
|
|
142
147
|
address: resolverAddr,
|
|
143
148
|
abi: agentNameAttributeResolverAbi,
|
|
@@ -162,6 +167,12 @@ export class AgentNamingClient {
|
|
|
162
167
|
functionName: 'getBytes32',
|
|
163
168
|
args: [node, PREDICATE_ID.connectionKind],
|
|
164
169
|
}),
|
|
170
|
+
this.publicClient.readContract({
|
|
171
|
+
address: resolverAddr,
|
|
172
|
+
abi: agentNameAttributeResolverAbi,
|
|
173
|
+
functionName: 'getBytes32',
|
|
174
|
+
args: [node, PREDICATE_ID.cardDigest],
|
|
175
|
+
}),
|
|
165
176
|
]);
|
|
166
177
|
const input = { strings: {}, addresses: {}, bytes32s: {} };
|
|
167
178
|
input.strings[PREDICATE_ID.displayName] = stringValues[0];
|
|
@@ -174,6 +185,7 @@ export class AgentNamingClient {
|
|
|
174
185
|
input.strings[PREDICATE_ID.description] = stringValues[7];
|
|
175
186
|
input.strings[PREDICATE_ID.metadataUri] = stringValues[8];
|
|
176
187
|
input.strings[PREDICATE_ID.nativeId] = stringValues[9];
|
|
188
|
+
input.strings[PREDICATE_ID.cardUri] = stringValues[10];
|
|
177
189
|
if (addr !== '0x0000000000000000000000000000000000000000') {
|
|
178
190
|
input.addresses[PREDICATE_ID.addr] = addr;
|
|
179
191
|
}
|
|
@@ -184,6 +196,8 @@ export class AgentNamingClient {
|
|
|
184
196
|
input.bytes32s[PREDICATE_ID.agentKind] = agentKind;
|
|
185
197
|
if (metadataHash !== ZERO_NODE)
|
|
186
198
|
input.bytes32s[PREDICATE_ID.metadataHash] = metadataHash;
|
|
199
|
+
if (cardDigest !== ZERO_NODE)
|
|
200
|
+
input.bytes32s[PREDICATE_ID.cardDigest] = cardDigest;
|
|
187
201
|
if (passkeyDigest !== ZERO_NODE)
|
|
188
202
|
input.bytes32s[PREDICATE_ID.passkeyCredentialDigest] = passkeyDigest;
|
|
189
203
|
if (connectionKind !== ZERO_NODE)
|
|
@@ -210,6 +224,122 @@ export class AgentNamingClient {
|
|
|
210
224
|
passkeyCredentialDigest: r.passkeyCredentialDigest ?? null,
|
|
211
225
|
};
|
|
212
226
|
}
|
|
227
|
+
// ─── Typed naming (spec 346) ─────────────────────────────────────
|
|
228
|
+
/** `AgentNameRegistry.recordExists(node)` — the read the forced-unique walk needs. */
|
|
229
|
+
async recordExists(node) {
|
|
230
|
+
return (await this.publicClient.readContract({
|
|
231
|
+
address: this.opts.registry,
|
|
232
|
+
abi: agentNameRegistryAbi,
|
|
233
|
+
functionName: 'recordExists',
|
|
234
|
+
args: [node],
|
|
235
|
+
}));
|
|
236
|
+
}
|
|
237
|
+
/** Forced-unique label under `parentName` (a root like `me`, or a type-node like `svc.richcanvas.org`). */
|
|
238
|
+
async findUniqueLabel(parentName, baseLabel, cap) {
|
|
239
|
+
return findUniqueLabel(this, namehash(parentName), baseLabel, cap);
|
|
240
|
+
}
|
|
241
|
+
/** The `PermissionlessSubregistry` for a typed (generic or vertical) root, from `opts.subregistries`. Throws when unconfigured. */
|
|
242
|
+
subregistryFor(tld) {
|
|
243
|
+
const a = this.opts.subregistries?.[tld];
|
|
244
|
+
if (!a)
|
|
245
|
+
throw new Error(`[agent-naming] no PermissionlessSubregistry configured for ".${tld}"`);
|
|
246
|
+
return a;
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* Read the SA-keyed derived-type record (spec 346 §2.3) from the AgentProfileResolver. Requires
|
|
250
|
+
* `opts.profileResolver`; throws a configuration error otherwise (no silent untyped downgrade).
|
|
251
|
+
* An unregistered profile → all `null` (empty is an answer).
|
|
252
|
+
*/
|
|
253
|
+
async readDerivedType(agent) {
|
|
254
|
+
const profileResolver = this._profileResolver();
|
|
255
|
+
const registered = (await this.publicClient.readContract({
|
|
256
|
+
address: profileResolver,
|
|
257
|
+
abi: agentProfileResolverTypeAbi,
|
|
258
|
+
functionName: 'isRegistered',
|
|
259
|
+
args: [agent],
|
|
260
|
+
}));
|
|
261
|
+
if (!registered)
|
|
262
|
+
return { agentType: null, serviceRole: null, agentKind: null, agentSubtype: null };
|
|
263
|
+
const [typeId, role, kindId, subtype] = await Promise.all([
|
|
264
|
+
this.publicClient.readContract({
|
|
265
|
+
address: profileResolver, abi: agentProfileResolverTypeAbi, functionName: 'getBytes32Property',
|
|
266
|
+
args: [agent, PREDICATE_ID.agentType],
|
|
267
|
+
}),
|
|
268
|
+
this.publicClient.readContract({
|
|
269
|
+
address: profileResolver, abi: agentProfileResolverTypeAbi, functionName: 'getStringProperty',
|
|
270
|
+
args: [agent, PREDICATE_ID.serviceRole],
|
|
271
|
+
}),
|
|
272
|
+
this.publicClient.readContract({
|
|
273
|
+
address: profileResolver, abi: agentProfileResolverTypeAbi, functionName: 'getBytes32Property',
|
|
274
|
+
args: [agent, PREDICATE_ID.agentKind],
|
|
275
|
+
}),
|
|
276
|
+
this.publicClient.readContract({
|
|
277
|
+
address: profileResolver, abi: agentProfileResolverTypeAbi, functionName: 'getStringProperty',
|
|
278
|
+
args: [agent, PREDICATE_ID.agentSubtype],
|
|
279
|
+
}),
|
|
280
|
+
]);
|
|
281
|
+
return {
|
|
282
|
+
agentType: typeId === ZERO_NODE ? null : (decodeAgentType(typeId) ?? null),
|
|
283
|
+
serviceRole: role && role.length > 0 ? role : null,
|
|
284
|
+
agentKind: kindId === ZERO_NODE ? null : (decodeAgentKind(kindId) ?? null),
|
|
285
|
+
agentSubtype: subtype && subtype.length > 0 ? subtype : null,
|
|
286
|
+
};
|
|
287
|
+
}
|
|
288
|
+
/**
|
|
289
|
+
* Resolve a typed name and enforce the suffix ↔ derived-type ↔ root invariant (spec 346 §2.3) at read
|
|
290
|
+
* time. `null` when unregistered OR when the records disagree with the suffix (`type_mismatch`,
|
|
291
|
+
* `type_undeclared`, `role_required`, `kind_mismatch`) — a typed name whose records disagree with its
|
|
292
|
+
* suffix is not a valid typed name (ADR-0013: empty is an answer). Use `checkTypedName` for the reason.
|
|
293
|
+
* Legacy names resolve with `legacy: true` and are never suffix-validated.
|
|
294
|
+
*/
|
|
295
|
+
async resolveTyped(name) {
|
|
296
|
+
const r = await this.checkTypedName(name);
|
|
297
|
+
return r.ok ? r.record : null;
|
|
298
|
+
}
|
|
299
|
+
/** `resolveTyped` with the refusal reason. */
|
|
300
|
+
async checkTypedName(name) {
|
|
301
|
+
const p = parseAgentName(name);
|
|
302
|
+
if (p.kind === 'root' || p.kind === 'type-node') {
|
|
303
|
+
return { ok: false, reason: 'not_typed', detail: `a ${p.kind} name has no subject` };
|
|
304
|
+
}
|
|
305
|
+
const address = await this.resolveName(p.onChainName);
|
|
306
|
+
if (!address)
|
|
307
|
+
return { ok: false, reason: 'unregistered' };
|
|
308
|
+
const declared = await this.readDerivedType(address);
|
|
309
|
+
const context = p.context ? { name: `${p.context.label}.${p.context.tld}`, derivedType: p.context.derivedType } : undefined;
|
|
310
|
+
if (p.legacy) {
|
|
311
|
+
const record = {
|
|
312
|
+
name: p.normalized, onChainName: p.onChainName, node: p.node, address, tld: p.tld,
|
|
313
|
+
derivedType: declared.agentType, subtype: declared.agentSubtype, root: declared.agentType ? rootClassForDerivedType(declared.agentType) : declared.agentKind,
|
|
314
|
+
serviceRole: declared.serviceRole, legacy: true, typeConsistent: false,
|
|
315
|
+
};
|
|
316
|
+
return { ok: true, record };
|
|
317
|
+
}
|
|
318
|
+
const nodeKind = (await this.getRecords(p.onChainName)).agentKind ?? null;
|
|
319
|
+
const violations = validateTypedClaim({
|
|
320
|
+
name: p,
|
|
321
|
+
subject: { agentType: declared.agentType, serviceRole: declared.serviceRole, nameKind: nodeKind, agentSubtype: declared.agentSubtype },
|
|
322
|
+
});
|
|
323
|
+
if (violations.length > 0) {
|
|
324
|
+
const v = violations[0];
|
|
325
|
+
return { ok: false, reason: v.code, detail: 'detail' in v ? v.detail : `${v.code}: expected ${v.expected}, got ${v.actual}` };
|
|
326
|
+
}
|
|
327
|
+
const derivedType = derivedTypeForTld(p.handle.tld);
|
|
328
|
+
return {
|
|
329
|
+
ok: true,
|
|
330
|
+
record: {
|
|
331
|
+
name: p.normalized, onChainName: p.onChainName, node: p.node, address, tld: p.tld, derivedType,
|
|
332
|
+
subtype: p.subtype ?? null, root: rootClassForDerivedType(derivedType), serviceRole: declared.serviceRole, legacy: false,
|
|
333
|
+
typeConsistent: true, ...(context ? { context } : {}),
|
|
334
|
+
},
|
|
335
|
+
};
|
|
336
|
+
}
|
|
337
|
+
_profileResolver() {
|
|
338
|
+
if (!this.opts.profileResolver) {
|
|
339
|
+
throw new Error('[agent-naming] profileResolver address required for typed resolution (spec 346 §2.3)');
|
|
340
|
+
}
|
|
341
|
+
return this.opts.profileResolver;
|
|
342
|
+
}
|
|
213
343
|
// ─── Writes (Phase 4 — live) ─────────────────────────────────────
|
|
214
344
|
/**
|
|
215
345
|
* Register `<label>.<parent>` under the parent namespace. The
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -1,8 +1,58 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
2
|
+
* Typed TLD registry (ADR-0061 / spec 346 §3–§4).
|
|
3
|
+
*
|
|
4
|
+
* Every canonical suffix names a DERIVED agent type; resolution maps suffix → derived type → root.
|
|
5
|
+
* The name string never encodes hierarchy, a role, or a technology. The suffix is a CLAIM — the
|
|
6
|
+
* on-chain `atl:agentType` record on the SA subject is the authority (spec 346 §2.3).
|
|
7
|
+
*
|
|
8
|
+
* `.ws` is a package-level alias normalizing to `workspace`; it is not an on-chain root.
|
|
9
|
+
* `.impact` / `.agent` are UNTYPED LEGACY roots: they resolve, they are not validated, and they close to
|
|
10
|
+
* new claims once the owning apps migrate (spec 346 §3.5).
|
|
5
11
|
*/
|
|
6
|
-
|
|
7
|
-
|
|
12
|
+
import { type Hex } from 'viem';
|
|
13
|
+
import type { AgentType, DerivedAgentType } from '@agenticprimitives/types';
|
|
14
|
+
import { rootClassForDerivedType } from '@agenticprimitives/types';
|
|
15
|
+
/** The ten registry-canonical suffixes, in canonical order (`.registry` names the Service Agent that OPERATES a registry;
|
|
16
|
+
* `.church` / `.circle` are organization-class kinds — ADR-0061 amendment 2026-08-30; `.household` the family's own
|
|
17
|
+
* organization-class agent — amendment 2026-09-07, spec 368). */
|
|
18
|
+
export declare const AGENT_TLDS: readonly ["me", "org", "team", "svc", "workspace", "treasury", "registry", "church", "circle", "household"];
|
|
19
|
+
export type AgentTld = (typeof AGENT_TLDS)[number];
|
|
20
|
+
/** Package-level aliases applied during normalization (never on-chain roots). */
|
|
21
|
+
export declare const AGENT_TLD_ALIASES: Readonly<Record<string, AgentTld>>;
|
|
22
|
+
/** Untyped legacy roots — resolvable, never suffix-validated, closed to new claims after app adoption. */
|
|
23
|
+
export declare const LEGACY_TLDS: readonly ["impact", "agent"];
|
|
24
|
+
export type LegacyTld = (typeof LEGACY_TLDS)[number];
|
|
25
|
+
/**
|
|
26
|
+
* Labels that MUST NOT be claimed under any root or inside any context: the type words (they would
|
|
27
|
+
* collide with the DNS type level `<label>.<type>.<zone>`, spec 346 §5), the alias, and the fixed
|
|
28
|
+
* infrastructure hosts (`mtls.<host>` is ADR-0057's hostname).
|
|
29
|
+
*/
|
|
30
|
+
export declare const RESERVED_LABELS: readonly string[];
|
|
31
|
+
export declare function isAgentTld(v: string): v is AgentTld;
|
|
32
|
+
/** A generic suffix OR an app-registered vertical suffix (spec 346 §2.4). */
|
|
33
|
+
export type AnyAgentTld = AgentTld | (string & {});
|
|
34
|
+
export declare function isKnownAgentTld(v: string): v is AnyAgentTld;
|
|
35
|
+
export declare function isLegacyTld(v: string): v is LegacyTld;
|
|
36
|
+
/** Resolve an alias (`ws`) to its canonical suffix; canonical and registered vertical suffixes pass through; others null. */
|
|
37
|
+
export declare function canonicalTld(v: string): AnyAgentTld | null;
|
|
38
|
+
/** `me → person`, `org → org`, `team → team`, `svc → service`, `workspace → workspace`, `treasury → treasury`,
|
|
39
|
+
* `registry → registry`; a vertical suffix → the GENERIC derived type it refines (its subtype is `subtypeForTld`). */
|
|
40
|
+
export declare function derivedTypeForTld(tld: AnyAgentTld): DerivedAgentType;
|
|
41
|
+
/** The vertical subtype a suffix names (`null` for the seven generic suffixes). */
|
|
42
|
+
export declare function subtypeForTld(tld: AnyAgentTld): string | null;
|
|
43
|
+
/** Every suffix this process knows: the seven generic + registered vertical ones. */
|
|
44
|
+
export declare function allAgentTlds(): readonly string[];
|
|
45
|
+
export declare function tldForDerivedType(t: DerivedAgentType): AgentTld;
|
|
46
|
+
/** Re-exported for callers that only import agent-naming: derived type → closed root (ADR-0046). */
|
|
47
|
+
export { rootClassForDerivedType };
|
|
48
|
+
/** Root class a suffix resolves to (`suffix → derived type → root`). */
|
|
49
|
+
export declare function rootClassForTld(tld: AnyAgentTld): AgentType;
|
|
50
|
+
/**
|
|
51
|
+
* The per-root `rootKind` tag written by `AgentNameRegistry.initializeRoot` for a typed root:
|
|
52
|
+
* `keccak256("namespace:<DerivedType>")`. Opaque on chain; mirrored here so deploy scripts and the SDK
|
|
53
|
+
* agree (golden-vector tested). The legacy roots carry `keccak256("namespace:Agent")` (`KIND_AGENT`).
|
|
54
|
+
*/
|
|
55
|
+
export declare function rootKindForTld(tld: AnyAgentTld): Hex;
|
|
56
|
+
/** `KIND_AGENT` — the `rootKind` of the untyped legacy roots. */
|
|
57
|
+
export declare const ROOT_KIND_AGENT: Hex;
|
|
8
58
|
//# sourceMappingURL=constants.d.ts.map
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAoB,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAGnE;;kEAEkE;AAClE,eAAO,MAAM,UAAU,6GAA8G,CAAC;AACtI,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAsC,CAAC;AAExG,0GAA0G;AAC1G,eAAO,MAAM,WAAW,8BAA+B,CAAC;AACxD,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAErD;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAQ3C,CAAC;AA0CH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,IAAI,QAAQ,CAEnD;AAED,6EAA6E;AAC7E,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AACnD,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,IAAI,WAAW,CAE3D;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,IAAI,SAAS,CAErD;AAED,6HAA6H;AAC7H,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAK1D;AAED;uHACuH;AACvH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,WAAW,GAAG,gBAAgB,CAKpE;AAED,mFAAmF;AACnF,wBAAgB,aAAa,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAE7D;AAED,qFAAqF;AACrF,wBAAgB,YAAY,IAAI,SAAS,MAAM,EAAE,CAEhD;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,gBAAgB,GAAG,QAAQ,CAE/D;AAED,oGAAoG;AACpG,OAAO,EAAE,uBAAuB,EAAE,CAAC;AAEnC,wEAAwE;AACxE,wBAAgB,eAAe,CAAC,GAAG,EAAE,WAAW,GAAG,SAAS,CAE3D;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,GAAG,CAGpD;AAED,iEAAiE;AACjE,eAAO,MAAM,eAAe,EAAE,GAAyC,CAAC"}
|
package/dist/constants.js
CHANGED
|
@@ -1,7 +1,131 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
2
|
+
* Typed TLD registry (ADR-0061 / spec 346 §3–§4).
|
|
3
|
+
*
|
|
4
|
+
* Every canonical suffix names a DERIVED agent type; resolution maps suffix → derived type → root.
|
|
5
|
+
* The name string never encodes hierarchy, a role, or a technology. The suffix is a CLAIM — the
|
|
6
|
+
* on-chain `atl:agentType` record on the SA subject is the authority (spec 346 §2.3).
|
|
7
|
+
*
|
|
8
|
+
* `.ws` is a package-level alias normalizing to `workspace`; it is not an on-chain root.
|
|
9
|
+
* `.impact` / `.agent` are UNTYPED LEGACY roots: they resolve, they are not validated, and they close to
|
|
10
|
+
* new claims once the owning apps migrate (spec 346 §3.5).
|
|
5
11
|
*/
|
|
6
|
-
|
|
12
|
+
import { keccak256, toHex } from 'viem';
|
|
13
|
+
import { rootClassForDerivedType } from '@agenticprimitives/types';
|
|
14
|
+
import { verticalAgentTypeForTld, verticalAgentTlds, verticalRootKindForTld } from './vertical.js';
|
|
15
|
+
/** The ten registry-canonical suffixes, in canonical order (`.registry` names the Service Agent that OPERATES a registry;
|
|
16
|
+
* `.church` / `.circle` are organization-class kinds — ADR-0061 amendment 2026-08-30; `.household` the family's own
|
|
17
|
+
* organization-class agent — amendment 2026-09-07, spec 368). */
|
|
18
|
+
export const AGENT_TLDS = ['me', 'org', 'team', 'svc', 'workspace', 'treasury', 'registry', 'church', 'circle', 'household'];
|
|
19
|
+
/** Package-level aliases applied during normalization (never on-chain roots). */
|
|
20
|
+
export const AGENT_TLD_ALIASES = Object.freeze({ ws: 'workspace' });
|
|
21
|
+
/** Untyped legacy roots — resolvable, never suffix-validated, closed to new claims after app adoption. */
|
|
22
|
+
export const LEGACY_TLDS = ['impact', 'agent'];
|
|
23
|
+
/**
|
|
24
|
+
* Labels that MUST NOT be claimed under any root or inside any context: the type words (they would
|
|
25
|
+
* collide with the DNS type level `<label>.<type>.<zone>`, spec 346 §5), the alias, and the fixed
|
|
26
|
+
* infrastructure hosts (`mtls.<host>` is ADR-0057's hostname).
|
|
27
|
+
*/
|
|
28
|
+
export const RESERVED_LABELS = Object.freeze([
|
|
29
|
+
...AGENT_TLDS,
|
|
30
|
+
'ws',
|
|
31
|
+
'www',
|
|
32
|
+
'mtls',
|
|
33
|
+
'edge',
|
|
34
|
+
'api',
|
|
35
|
+
'well-known',
|
|
36
|
+
]);
|
|
37
|
+
const TLD_TO_DERIVED = Object.freeze({
|
|
38
|
+
me: 'person',
|
|
39
|
+
org: 'org',
|
|
40
|
+
team: 'team',
|
|
41
|
+
svc: 'service',
|
|
42
|
+
workspace: 'workspace',
|
|
43
|
+
treasury: 'treasury',
|
|
44
|
+
registry: 'registry',
|
|
45
|
+
church: 'church',
|
|
46
|
+
circle: 'circle',
|
|
47
|
+
household: 'household',
|
|
48
|
+
});
|
|
49
|
+
const DERIVED_TO_TLD = Object.freeze({
|
|
50
|
+
person: 'me',
|
|
51
|
+
org: 'org',
|
|
52
|
+
team: 'team',
|
|
53
|
+
service: 'svc',
|
|
54
|
+
workspace: 'workspace',
|
|
55
|
+
treasury: 'treasury',
|
|
56
|
+
registry: 'registry',
|
|
57
|
+
church: 'church',
|
|
58
|
+
circle: 'circle',
|
|
59
|
+
household: 'household',
|
|
60
|
+
});
|
|
61
|
+
/** Derived-type CURIE-style names used for the per-root `rootKind` tag (`namespace:<Type>`). */
|
|
62
|
+
const DERIVED_ROOT_KIND_NAME = Object.freeze({
|
|
63
|
+
person: 'namespace:Person',
|
|
64
|
+
org: 'namespace:Organization',
|
|
65
|
+
team: 'namespace:Team',
|
|
66
|
+
service: 'namespace:Service',
|
|
67
|
+
workspace: 'namespace:Workspace',
|
|
68
|
+
treasury: 'namespace:Treasury',
|
|
69
|
+
registry: 'namespace:Registry',
|
|
70
|
+
church: 'namespace:Church',
|
|
71
|
+
circle: 'namespace:Circle',
|
|
72
|
+
household: 'namespace:Household',
|
|
73
|
+
});
|
|
74
|
+
export function isAgentTld(v) {
|
|
75
|
+
return AGENT_TLDS.includes(v);
|
|
76
|
+
}
|
|
77
|
+
export function isKnownAgentTld(v) {
|
|
78
|
+
return isAgentTld(v) || verticalAgentTypeForTld(v) !== null;
|
|
79
|
+
}
|
|
80
|
+
export function isLegacyTld(v) {
|
|
81
|
+
return LEGACY_TLDS.includes(v);
|
|
82
|
+
}
|
|
83
|
+
/** Resolve an alias (`ws`) to its canonical suffix; canonical and registered vertical suffixes pass through; others null. */
|
|
84
|
+
export function canonicalTld(v) {
|
|
85
|
+
if (isAgentTld(v))
|
|
86
|
+
return v;
|
|
87
|
+
const a = AGENT_TLD_ALIASES[v];
|
|
88
|
+
if (a)
|
|
89
|
+
return a;
|
|
90
|
+
return verticalAgentTypeForTld(v) ? v : null;
|
|
91
|
+
}
|
|
92
|
+
/** `me → person`, `org → org`, `team → team`, `svc → service`, `workspace → workspace`, `treasury → treasury`,
|
|
93
|
+
* `registry → registry`; a vertical suffix → the GENERIC derived type it refines (its subtype is `subtypeForTld`). */
|
|
94
|
+
export function derivedTypeForTld(tld) {
|
|
95
|
+
if (isAgentTld(tld))
|
|
96
|
+
return TLD_TO_DERIVED[tld];
|
|
97
|
+
const v = verticalAgentTypeForTld(tld);
|
|
98
|
+
if (!v)
|
|
99
|
+
throw new Error(`[agent-naming] unknown tld "${tld}"`);
|
|
100
|
+
return v.derivedType;
|
|
101
|
+
}
|
|
102
|
+
/** The vertical subtype a suffix names (`null` for the seven generic suffixes). */
|
|
103
|
+
export function subtypeForTld(tld) {
|
|
104
|
+
return isAgentTld(tld) ? null : (verticalAgentTypeForTld(tld)?.subtype ?? null);
|
|
105
|
+
}
|
|
106
|
+
/** Every suffix this process knows: the seven generic + registered vertical ones. */
|
|
107
|
+
export function allAgentTlds() {
|
|
108
|
+
return [...AGENT_TLDS, ...verticalAgentTlds()];
|
|
109
|
+
}
|
|
110
|
+
export function tldForDerivedType(t) {
|
|
111
|
+
return DERIVED_TO_TLD[t];
|
|
112
|
+
}
|
|
113
|
+
/** Re-exported for callers that only import agent-naming: derived type → closed root (ADR-0046). */
|
|
114
|
+
export { rootClassForDerivedType };
|
|
115
|
+
/** Root class a suffix resolves to (`suffix → derived type → root`). */
|
|
116
|
+
export function rootClassForTld(tld) {
|
|
117
|
+
return rootClassForDerivedType(derivedTypeForTld(tld));
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* The per-root `rootKind` tag written by `AgentNameRegistry.initializeRoot` for a typed root:
|
|
121
|
+
* `keccak256("namespace:<DerivedType>")`. Opaque on chain; mirrored here so deploy scripts and the SDK
|
|
122
|
+
* agree (golden-vector tested). The legacy roots carry `keccak256("namespace:Agent")` (`KIND_AGENT`).
|
|
123
|
+
*/
|
|
124
|
+
export function rootKindForTld(tld) {
|
|
125
|
+
if (!isAgentTld(tld))
|
|
126
|
+
return verticalRootKindForTld(tld);
|
|
127
|
+
return keccak256(toHex(DERIVED_ROOT_KIND_NAME[derivedTypeForTld(tld)]));
|
|
128
|
+
}
|
|
129
|
+
/** `KIND_AGENT` — the `rootKind` of the untyped legacy roots. */
|
|
130
|
+
export const ROOT_KIND_AGENT = keccak256(toHex('namespace:Agent'));
|
|
7
131
|
//# sourceMappingURL=constants.js.map
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
|
package/dist/custody.d.ts
CHANGED
|
@@ -17,6 +17,8 @@
|
|
|
17
17
|
*/
|
|
18
18
|
import type { Address, Hex } from '@agenticprimitives/types';
|
|
19
19
|
import { type EncodedRecord } from './records.js';
|
|
20
|
+
import { type DerivedAgentType } from '@agenticprimitives/types';
|
|
21
|
+
import type { AgentNameRecords } from './types.js';
|
|
20
22
|
/** Minimal call-shape: the standard `{ to, value, data }` triple. */
|
|
21
23
|
export interface ContractCall {
|
|
22
24
|
to: Address;
|
|
@@ -123,6 +125,46 @@ export declare function buildSubregistryRegisterCall(args: {
|
|
|
123
125
|
label: string;
|
|
124
126
|
newOwner: Address;
|
|
125
127
|
}): ContractCall;
|
|
128
|
+
/**
|
|
129
|
+
* Step 1b of the bootstrap (spec 346 §3.6): declare the SA's derived type on its OWN profile subject.
|
|
130
|
+
* `msg.sender` MUST be the SA (`AgentProfileResolver.onlyAgent`) — compose these into the SA's execute
|
|
131
|
+
* batch. Registers the profile mirror first when `registered` is false (the typed setters require it),
|
|
132
|
+
* writing the ROOT kind there; then `atl:agentType` (+ `atl:serviceRole` when given, REQUIRED and equal
|
|
133
|
+
* to the type name for `workspace` and `registry`).
|
|
134
|
+
*/
|
|
135
|
+
export declare function buildDeclareAgentTypeCalls(args: {
|
|
136
|
+
profileResolver: Address;
|
|
137
|
+
agent: Address;
|
|
138
|
+
agentType: DerivedAgentType;
|
|
139
|
+
serviceRole?: string;
|
|
140
|
+
/** Vertical subtype (spec 346 §2.4) — written to `atl:agentSubtype`; REQUIRED for a vertical suffix claim. */
|
|
141
|
+
subtype?: string;
|
|
142
|
+
/** Whether `AgentProfileResolver.isRegistered(agent)` is already true. */
|
|
143
|
+
registered: boolean;
|
|
144
|
+
/** Used only when registering the profile mirror. */
|
|
145
|
+
displayName?: string;
|
|
146
|
+
}): ContractCall[];
|
|
147
|
+
/**
|
|
148
|
+
* Steps 2–3 of the bootstrap for a CANONICAL (root-level) typed name (spec 346 §3.3): claim
|
|
149
|
+
* `<label>.<tld>` through that root's `PermissionlessSubregistry`, write the root kind + optional records
|
|
150
|
+
* on the new node, and set the primary name. The caller MUST have run `validateTypedClaim` (or
|
|
151
|
+
* `AgentNamingClient.checkTypedName`) — this builder only refuses a suffix/type disagreement it can see
|
|
152
|
+
* locally. `setPrimaryName` requires `msg.sender == owner`; the subregistry claim may be sent by anyone.
|
|
153
|
+
*/
|
|
154
|
+
export declare function buildTypedClaimCalls(args: {
|
|
155
|
+
name: string;
|
|
156
|
+
owner: Address;
|
|
157
|
+
registry: Address;
|
|
158
|
+
resolver: Address;
|
|
159
|
+
subregistries: Partial<Record<string, Address>>;
|
|
160
|
+
agentType: DerivedAgentType;
|
|
161
|
+
records?: Omit<AgentNameRecords, 'agentKind' | 'addr'>;
|
|
162
|
+
}): {
|
|
163
|
+
claim: ContractCall;
|
|
164
|
+
records: ContractCall[];
|
|
165
|
+
primaryName: ContractCall;
|
|
166
|
+
node: Hex;
|
|
167
|
+
};
|
|
126
168
|
/**
|
|
127
169
|
* Convenience: re-export the encoded-record shape from records.ts so
|
|
128
170
|
* downstream callers can pick whichever level of abstraction fits
|
package/dist/custody.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custody.d.ts","sourceRoot":"","sources":["../src/custody.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAO7D,OAAO,
|
|
1
|
+
{"version":3,"file":"custody.d.ts","sourceRoot":"","sources":["../src/custody.ts"],"names":[],"mappings":"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"}
|