@agentunion/fastaun 0.5.35 → 0.5.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/_packed_docs/CHANGELOG.md +26 -0
  3. package/_packed_docs/INDEX.md +10 -3
  4. package/_packed_docs/sdk/0.5.36-SDK/345/272/224/347/224/250/351/233/206/346/210/220/346/214/207/345/215/227.md +130 -0
  5. package/_packed_docs/sdk/0.5.36-SDK/345/274/200/345/217/221/344/270/216/347/247/273/346/244/215/346/214/207/345/215/227.md +176 -0
  6. package/_packed_docs/sdk/INDEX.md +15 -10
  7. package/dist/agent-md.d.ts +2 -1
  8. package/dist/agent-md.js +33 -6
  9. package/dist/agent-md.js.map +1 -1
  10. package/dist/aid-store.js +5 -1
  11. package/dist/aid-store.js.map +1 -1
  12. package/dist/auth.js +5 -2
  13. package/dist/auth.js.map +1 -1
  14. package/dist/client/delivery.d.ts +1 -0
  15. package/dist/client/delivery.js +66 -34
  16. package/dist/client/delivery.js.map +1 -1
  17. package/dist/client/rpc-pipeline.d.ts +2 -0
  18. package/dist/client/rpc-pipeline.js +28 -3
  19. package/dist/client/rpc-pipeline.js.map +1 -1
  20. package/dist/client/v2-e2ee.js +5 -1
  21. package/dist/client/v2-e2ee.js.map +1 -1
  22. package/dist/client.js +19 -7
  23. package/dist/client.js.map +1 -1
  24. package/dist/ownership-v21.d.ts +2 -1
  25. package/dist/ownership-v21.js +19 -9
  26. package/dist/ownership-v21.js.map +1 -1
  27. package/dist/pubsub/channel.js +3 -3
  28. package/dist/pubsub/channel.js.map +1 -1
  29. package/dist/pubsub/client.js +3 -4
  30. package/dist/pubsub/client.js.map +1 -1
  31. package/dist/pubsub/service.js +1 -1
  32. package/dist/pubsub/service.js.map +1 -1
  33. package/dist/tools/cross-sdk-agent.d.ts +1 -1
  34. package/dist/udp-standby.d.ts +0 -1
  35. package/dist/udp-standby.js +7 -11
  36. package/dist/udp-standby.js.map +1 -1
  37. package/dist/version.d.ts +1 -1
  38. package/dist/version.js +1 -1
  39. package/package.json +1 -1
@@ -89,6 +89,7 @@ export interface OwnershipAgentObservation {
89
89
  pending?: boolean;
90
90
  stage_supported?: boolean;
91
91
  owner_aid?: string | null;
92
+ owner_md_sha256?: string;
92
93
  observed_at: number;
93
94
  recovery_ready?: boolean;
94
95
  }
@@ -195,7 +196,7 @@ export declare class OwnershipFiles {
195
196
  cancelOwnerProposal(task: OwnershipFileTask): Promise<void>;
196
197
  readAgent(subAid: string, stage?: boolean): Promise<OwnershipAgentObservation>;
197
198
  readOwner(ownerAid: string, subAid: string): Promise<OwnershipOwnerObservation>;
198
- verifyFile(raw: string, role: OwnershipFileRole, subAid: string, ownerAid?: string): Promise<OwnershipFile>;
199
+ verifyFile(raw: string, role: OwnershipFileRole, subAid: string, ownerAid?: string, requireActiveSigning?: boolean): Promise<OwnershipFile>;
199
200
  requireTransfer(task: OwnershipFileTask): Promise<OwnershipFile>;
200
201
  private targetOwner;
201
202
  private requireLocal;
@@ -160,9 +160,9 @@ export function parseOwnershipFile(content, role, context = {}) {
160
160
  function validateOwnershipCurrentCertificate(certificate, signer, fields, now) {
161
161
  if (Number(fields.timestamp) > now + 300)
162
162
  throw new ValidationError('ownership file timestamp is too far in the future');
163
- if (certificate.chain_valid === false || certificate.revoked === true || typeof certificate.state === 'string' && certificate.state !== 'active_signing')
164
- throw new ValidationError('ownership signing certificate is not currently verified and active_signing', { stringCode: 'invalid' });
165
- if (certificate.chain_valid !== true || certificate.revoked !== false || certificate.revocation_checked !== true || certificate.state !== 'active_signing' || !Number.isSafeInteger(certificate.observed_at) || certificate.observed_at <= 0 || certificate.observed_at > now + 300 || certificate.observed_at < now - 330)
163
+ if (certificate.chain_valid === false || certificate.revoked === true || typeof certificate.state === 'string' && !['active_signing', 'verify_only'].includes(certificate.state))
164
+ throw new ValidationError('ownership verification certificate state is invalid', { stringCode: 'invalid' });
165
+ if (certificate.chain_valid !== true || certificate.revoked !== false || certificate.revocation_checked !== true || !['active_signing', 'verify_only'].includes(certificate.state) || !Number.isSafeInteger(certificate.observed_at) || certificate.observed_at <= 0 || certificate.observed_at > now + 300 || certificate.observed_at < now - 330)
166
166
  throw new StateError('ownership certificate current status is unavailable', { stringCode: 'unavailable', retryable: true });
167
167
  if (typeof certificate.cert_pem !== 'string' || !certificate.cert_pem.trim())
168
168
  throw ownershipFailure('unavailable', 'ownership signing certificate is missing', true);
@@ -194,9 +194,9 @@ export function verifyOwnershipFile(content, role, certificate, context = {}) {
194
194
  const additional = new Map();
195
195
  for (const item of parseAgentMdTailSignature(new TextDecoder('utf-8', { fatal: true, ignoreBOM: true }).decode(parsed.raw)).signatures.slice(1)) {
196
196
  const fields = item.fields, extra = context.certificateResolver?.(fields.signer_aid, fields.cert_fingerprint, Number(fields.timestamp));
197
- if (extra && (extra.chain_valid === false || extra.revoked === true || typeof extra.state === 'string' && extra.state !== 'active_signing'))
198
- throw new ValidationError('ownership additional signing certificate is not currently verified and active_signing', { stringCode: 'invalid' });
199
- if (!extra || extra.chain_valid !== true || extra.revoked !== false || extra.revocation_checked !== true || extra.state !== 'active_signing' || !Number.isSafeInteger(extra.observed_at) || extra.observed_at <= 0 || extra.observed_at > now + 300 || extra.observed_at < now - 330 || !extra.cert_pem?.trim())
197
+ if (extra && (extra.chain_valid === false || extra.revoked === true || typeof extra.state === 'string' && !['active_signing', 'verify_only'].includes(extra.state)))
198
+ throw new ValidationError('ownership additional verification certificate state is invalid', { stringCode: 'invalid' });
199
+ if (!extra || extra.chain_valid !== true || extra.revoked !== false || extra.revocation_checked !== true || !['active_signing', 'verify_only'].includes(extra.state) || !Number.isSafeInteger(extra.observed_at) || extra.observed_at <= 0 || extra.observed_at > now + 300 || extra.observed_at < now - 330 || !extra.cert_pem?.trim())
200
200
  throw new StateError('ownership additional certificate current status is unavailable', { stringCode: 'unavailable', retryable: true });
201
201
  additional.set(`${fields.signer_aid};${fields.cert_fingerprint}`, extra.cert_pem);
202
202
  }
@@ -493,7 +493,7 @@ export class OwnershipFiles {
493
493
  throw ownershipFailure('unavailable', 'Storage complete file digest does not match authoritative observation', true);
494
494
  return value;
495
495
  }
496
- async verifyFile(raw, role, subAid, ownerAid) {
496
+ async verifyFile(raw, role, subAid, ownerAid, requireActiveSigning = false) {
497
497
  if (role === 'agent') {
498
498
  const meta = parseFileFrontmatter(parseAgentMdTailSignature(raw).payload);
499
499
  if ('ownership_proof' in meta || 'ownership_release' in meta || 'owner' in meta && !('ownership' in meta) && !['group', 'org'].includes(String(meta.type)))
@@ -503,6 +503,8 @@ export class OwnershipFiles {
503
503
  const parsed = parseOwnershipFile(raw, role, context);
504
504
  const signer = role === 'agent' ? subAid : String(parsed.frontmatter.owner_aid);
505
505
  const certificate = await this.deps.resolveCertificate(signer, parsed.signature.cert_fingerprint, role === 'agent' && parsed.frontmatter.type === 'group' ? 'group_identity' : undefined);
506
+ if (requireActiveSigning && certificate.state !== 'active_signing')
507
+ throw ownershipFailure('invalid', 'ownership new signatures require active_signing');
506
508
  const additional = new Map();
507
509
  for (const item of parseAgentMdTailSignature(raw).signatures.slice(1))
508
510
  additional.set(`${item.fields.signer_aid};${item.fields.cert_fingerprint}`, await this.deps.resolveCertificate(item.fields.signer_aid, item.fields.cert_fingerprint));
@@ -644,7 +646,11 @@ export class OwnershipFiles {
644
646
  throw ownershipFailure('conflict', 'original owner.md material changed before publication');
645
647
  const ownership = await prepare(current);
646
648
  task.assertActive?.();
647
- const raw = signOwnershipFile(this.deps.currentAid(), `---\nowner_aid: ${ownerAid}\nsub_aid: ${task.sub_aid}\nownership: ${JSON.stringify(ownership)}\n---\n`, 'owner', { now: this.deps.now(), expectedOwnerAid: ownerAid, expectedSubAid: task.sub_aid });
649
+ const identity = this.deps.currentAid();
650
+ if ((await this.deps.resolveCertificate(identity.aid, identity.certFingerprint)).state !== 'active_signing')
651
+ throw new ValidationError('ownership new signatures require active_signing', { stringCode: 'invalid' });
652
+ task.assertActive?.();
653
+ const raw = signOwnershipFile(identity, `---\nowner_aid: ${ownerAid}\nsub_aid: ${task.sub_aid}\nownership: ${JSON.stringify(ownership)}\n---\n`, 'owner', { now: this.deps.now(), expectedOwnerAid: ownerAid, expectedSubAid: task.sub_aid });
648
654
  saved = { raw, hash: ownershipSha256(raw), condition: {}, original_owner: { exists: current.exists, raw: current.content, sha256: current.exists ? ownershipSha256(current.content) : '' } };
649
655
  if (key === 'transfer')
650
656
  saved.expires_at = ownership.transfer.expires_at;
@@ -695,7 +701,11 @@ export class OwnershipFiles {
695
701
  return current;
696
702
  const payload = updateOwnershipAgentMd(original.exists ? original.content : buildDefaultAgentMd(task.sub_aid, { type: this.deps.currentType?.() ?? 'agent', exttype: this.deps.currentExttype?.() }), fields);
697
703
  task.assertActive?.();
698
- const raw = signOwnershipFile(this.deps.currentAid(), payload.endsWith('\n') || payload.endsWith('\r') ? payload : `${payload}\n`, 'agent', { now: this.deps.now(), expectedSubAid: task.sub_aid });
704
+ const identity = this.deps.currentAid();
705
+ if ((await this.deps.resolveCertificate(identity.aid, identity.certFingerprint)).state !== 'active_signing')
706
+ throw new ValidationError('ownership new signatures require active_signing', { stringCode: 'invalid' });
707
+ task.assertActive?.();
708
+ const raw = signOwnershipFile(identity, payload.endsWith('\n') || payload.endsWith('\r') ? payload : `${payload}\n`, 'agent', { now: this.deps.now(), expectedSubAid: task.sub_aid });
699
709
  saved = { raw, hash: ownershipSha256(raw), condition: current.exists ? { if_match: current.etag } : { if_none_match: '*' } };
700
710
  task.files.agent = saved;
701
711
  await task.persist();
@@ -1 +1 @@
1
- {"version":3,"file":"ownership-v21.js","sourceRoot":"","sources":["../src/ownership-v21.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ownership-v21.js","sourceRoot":"","sources":["../src/ownership-v21.ts"],"names":[],"mappings":"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"}
@@ -75,14 +75,14 @@ export function defaultState(sdk, serviceAid, kind) {
75
75
  export class TokenBucket {
76
76
  clock;
77
77
  calls = 4;
78
- bytes = 65536;
78
+ bytes = 1_000_000;
79
79
  updated;
80
80
  constructor(clock = () => performance.now()) {
81
81
  this.clock = clock;
82
82
  this.updated = clock();
83
83
  }
84
- delay(size) { if (size > 65536)
85
- throw new PubSubError('MESSAGE_TOO_LARGE'); const now = this.clock(), elapsed = Math.max(0, now - this.updated); this.calls = Math.min(4, this.calls + elapsed * 0.04); this.bytes = Math.min(65536, this.bytes + elapsed * 262.144); this.updated = now; return Math.max(0, (1 - this.calls) / 0.04, (size - this.bytes) / 262.144); }
84
+ delay(size) { if (size > 1_000_000)
85
+ throw new PubSubError('MESSAGE_TOO_LARGE'); const now = this.clock(), elapsed = Math.max(0, now - this.updated); this.calls = Math.min(4, this.calls + elapsed * 0.04); this.bytes = Math.min(1_000_000, this.bytes + elapsed * 262.144); this.updated = now; return Math.max(0, (1 - this.calls) / 0.04, (size - this.bytes) / 262.144); }
86
86
  take(size) { if (this.delay(size) > 0)
87
87
  return false; this.calls--; this.bytes -= size; return true; }
88
88
  }
@@ -1 +1 @@
1
- {"version":3,"file":"channel.js","sourceRoot":"","sources":["../../src/pubsub/channel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"channel.js","sourceRoot":"","sources":["../../src/pubsub/channel.ts"],"names":[],"mappings":"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"}
@@ -56,7 +56,7 @@ export class PubSubClient {
56
56
  this.sdk = sdk;
57
57
  this.serviceAid = serviceAid;
58
58
  this.clock = options.clock ?? (() => Date.now());
59
- this.limits = { publish_queue_size: 256, publish_queue_bytes: 1048576, publish_workers: 4, pending_requests: 64, accepted_requests: 64, receive_queue_size: 256, receive_queue_bytes: 1048576, max_event_bytes: 65536, publish_results: 1024, publish_result_bytes: 4194304, send_attempts: 2, request_timeout: 60, renew_interval_seconds: 3600, ...options.limits };
59
+ this.limits = { publish_queue_size: 256, publish_queue_bytes: 1048576, publish_workers: 4, pending_requests: 64, accepted_requests: 64, receive_queue_size: 256, receive_queue_bytes: 1048576, publish_results: 1024, publish_result_bytes: 4194304, send_attempts: 2, request_timeout: 60, renew_interval_seconds: 3600, ...options.limits };
60
60
  this.channel = new SDKChannel(sdk, serviceAid, (sender, payload, _route, local) => this.receive(sender, payload, local), this.clock);
61
61
  this.state = defaultState(sdk, serviceAid, options.stateKey ?? 'client');
62
62
  }
@@ -312,8 +312,7 @@ export class PubSubClient {
312
312
  if (upgrade)
313
313
  payload.reply_mode = 'accepted';
314
314
  this.preparePublication(payload);
315
- } payload ??= this.payload('publish', { lease_id: this.lease.lease_id, event_name: eventName, schema_version: version, reply_mode: mode, event_id: id, data, expires_at: this.clock() + ttl * 1000 }); const bytes = wireSize(payload); if (bytes > this.limits.max_event_bytes)
316
- throw new PubSubError('MESSAGE_TOO_LARGE'); if (this.queue.length + this.active + this.accepted.size + this.publishCallbacks >= this.limits.publish_queue_size || this.queuedBytes + bytes > this.limits.publish_queue_bytes)
315
+ } payload ??= this.payload('publish', { lease_id: this.lease.lease_id, event_name: eventName, schema_version: version, reply_mode: mode, event_id: id, data, expires_at: this.clock() + ttl * 1000 }); const bytes = wireSize(payload); if (this.queue.length + this.active + this.accepted.size + this.publishCallbacks >= this.limits.publish_queue_size || this.queuedBytes + bytes > this.limits.publish_queue_bytes)
317
316
  throw new PubSubError('OVERLOADED'); while (this.results.size - (previous ? 1 : 0) >= this.limits.publish_results || this.resultBytes - (previous?.bytes ?? 0) + bytes > this.limits.publish_result_bytes) {
318
317
  const oldest = this.results.entries().next().value;
319
318
  if (!oldest || oldest[0] === id || !oldest[1].result.settled || !oldest[1].published && oldest[1].payload.expires_at > this.clock())
@@ -426,7 +425,7 @@ export class PubSubClient {
426
425
  return; const key = `${sender}\0${payload.publisher_aid}\0${payload.event_id}`; for (const [k, expiry] of this.seen)
427
426
  if (expiry <= this.clock())
428
427
  this.seen.delete(k); if (this.seen.has(key))
429
- return; const bytes = wireSize(payload); if (bytes > this.limits.max_event_bytes || this.receivedBytes + bytes > this.limits.receive_queue_bytes || this.receivedCount >= this.limits.receive_queue_size || this.seen.size >= this.limits.receive_queue_size * 4)
428
+ return; const bytes = wireSize(payload); if (this.receivedBytes + bytes > this.limits.receive_queue_bytes || this.receivedCount >= this.limits.receive_queue_size || this.seen.size >= this.limits.receive_queue_size * 4)
430
429
  return; if (!local && !this.receiveRate.take(bytes))
431
430
  return; this.seen.set(key, Number(payload.expires_at)); this.receivedBytes += bytes; this.receivedCount++; const item = clone(payload), generation = this.generation, subscriptionVersion = this.subscriptionVersions.get(String(payload.event_name)) ?? 0; if (this.eventHandlers.size) {
432
431
  this.handlerChain = this.handlerChain.then(async () => { for (const handler of this.eventHandlers) {