@cello-protocol/protocol-types 0.0.21 → 0.0.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.
Files changed (57) hide show
  1. package/dist/cbor.d.ts +25 -0
  2. package/dist/cbor.d.ts.map +1 -0
  3. package/dist/cbor.js +51 -0
  4. package/dist/cbor.js.map +1 -0
  5. package/dist/connection-package.d.ts +4 -0
  6. package/dist/connection-package.d.ts.map +1 -1
  7. package/dist/connection-package.js +5 -6
  8. package/dist/connection-package.js.map +1 -1
  9. package/dist/index.d.ts +5 -1
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +7 -1
  12. package/dist/index.js.map +1 -1
  13. package/dist/limits.d.ts +10 -0
  14. package/dist/limits.d.ts.map +1 -0
  15. package/dist/limits.js +10 -0
  16. package/dist/limits.js.map +1 -0
  17. package/dist/manifest.d.ts +2 -4
  18. package/dist/manifest.d.ts.map +1 -1
  19. package/dist/manifest.js +2 -4
  20. package/dist/manifest.js.map +1 -1
  21. package/dist/primary-transfer.d.ts +6 -8
  22. package/dist/primary-transfer.d.ts.map +1 -1
  23. package/dist/primary-transfer.js +18 -13
  24. package/dist/primary-transfer.js.map +1 -1
  25. package/dist/revocation.d.ts.map +1 -1
  26. package/dist/revocation.js +2 -5
  27. package/dist/revocation.js.map +1 -1
  28. package/dist/session-liveness.js +4 -4
  29. package/dist/session-liveness.js.map +1 -1
  30. package/dist/session.d.ts +26 -61
  31. package/dist/session.d.ts.map +1 -1
  32. package/dist/session.js +22 -54
  33. package/dist/session.js.map +1 -1
  34. package/dist/structure1.d.ts +16 -0
  35. package/dist/structure1.d.ts.map +1 -0
  36. package/dist/structure1.js +33 -0
  37. package/dist/structure1.js.map +1 -0
  38. package/dist/structure2.d.ts.map +1 -1
  39. package/dist/structure2.js +7 -8
  40. package/dist/structure2.js.map +1 -1
  41. package/dist/trust-signal.d.ts +94 -0
  42. package/dist/trust-signal.d.ts.map +1 -0
  43. package/dist/trust-signal.js +252 -0
  44. package/dist/trust-signal.js.map +1 -0
  45. package/package.json +6 -3
  46. package/test/vectors/connection-package-canonical.json +10 -0
  47. package/test/vectors/envelope-v1-canonical.json +16 -0
  48. package/test/vectors/genesis-prev-root.json +53 -0
  49. package/test/vectors/scan-result-unscanned.json +5 -0
  50. package/test/vectors/structure1-canonical.json +13 -0
  51. package/test/vectors/structure2-canonical.json +12 -0
  52. package/test/vectors/tbs-v0-canonical.json +8 -0
  53. package/test/vectors/trust-signal-envelope-canonical.json +136 -0
  54. package/dist/envelope.d.ts +0 -170
  55. package/dist/envelope.d.ts.map +0 -1
  56. package/dist/envelope.js +0 -776
  57. package/dist/envelope.js.map +0 -1
package/dist/cbor.d.ts ADDED
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Encode to CBOR: byte strings for bytes, maps for objects. Valid RFC 8949.
3
+ *
4
+ * NOT RFC 8949 §4.2 deterministic FOR MAPS, and anything hashed or signed must account for that.
5
+ * Measured (M10 / DOD-CBOR-1, journal Entry 4):
6
+ *
7
+ * encode({b:1, a:2}) -> b9 0002 6162 01 6161 02
8
+ * encode({a:2, b:1}) -> b9 0002 6161 02 6162 01 <- different bytes, same object
9
+ *
10
+ * Two departures from Core Deterministic Encoding, both map-only: keys follow INSERTION ORDER
11
+ * rather than bytewise sort, and the map header is not minimal-length (`b9 0002` for a 2-entry map
12
+ * where CDE requires `a2`).
13
+ *
14
+ * ARRAYS, text strings, byte strings, integers and null ARE minimal and order-fixed. That is why
15
+ * every to-be-signed structure in CELLO is an ARRAY with a domain tag in slot 0 —
16
+ * buildAgentRevocationTbs, buildPrimaryTransferTbs, buildSealTbs, buildParkContentTbs,
17
+ * encodeTrustSignalEnvelope. Two parties encoding the same array always produce the same bytes;
18
+ * two parties encoding the same MAP do not, if they built it in a different field order.
19
+ *
20
+ * So: never hash or sign a CBOR map produced by this encoder. Put the fields in a fixed-order array.
21
+ */
22
+ export declare function encodeCbor(value: unknown): Uint8Array;
23
+ /** Decode CBOR. Tolerates the older tag-64 and record encodings so pre-migration data still reads. */
24
+ export declare function decodeCbor(bytes: Uint8Array): unknown;
25
+ //# sourceMappingURL=cbor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cbor.d.ts","sourceRoot":"","sources":["../src/cbor.ts"],"names":[],"mappings":"AAwBA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,CAErD;AAED,sGAAsG;AACtG,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAErD"}
package/dist/cbor.js ADDED
@@ -0,0 +1,51 @@
1
+ /**
2
+ * The CBOR encoder. Singular — import it, never construct another.
3
+ *
4
+ * `no-multiple-cbor-encoders.test.ts` fails the build if any production file builds its own Encoder
5
+ * or imports cbor-x's bare `encode`. A second encoder is a second wire format written into the same
6
+ * columns and frames, and it takes a data migration to undo.
7
+ *
8
+ * Two settings, both load-bearing:
9
+ *
10
+ * `tagUint8Array: false` — byte fields encode as CBOR byte strings (major type 2), not cbor-x's
11
+ * tag-64 typed arrays. This is what the directory and the relay decode.
12
+ *
13
+ * `useRecords: false` — objects encode as CBOR maps. cbor-x defaults this ON, which emits its own
14
+ * tag 57343 instead of a map: a private format that no other CBOR reader can parse. Signed TBS
15
+ * payloads are all ARRAYS and encode identically either way, so signatures do not depend on this;
16
+ * what depends on it is whether a non-cbor-x implementation can read our wire and our seals.
17
+ *
18
+ * Decoding uses cbor-x's `decode`, which reads byte strings, tag-64, and records alike. That
19
+ * tolerance is for data that predates this module — it is not a licence to write a second format.
20
+ */
21
+ import { Encoder, decode } from "cbor-x";
22
+ const ENCODER = new Encoder({ tagUint8Array: false, useRecords: false });
23
+ /**
24
+ * Encode to CBOR: byte strings for bytes, maps for objects. Valid RFC 8949.
25
+ *
26
+ * NOT RFC 8949 §4.2 deterministic FOR MAPS, and anything hashed or signed must account for that.
27
+ * Measured (M10 / DOD-CBOR-1, journal Entry 4):
28
+ *
29
+ * encode({b:1, a:2}) -> b9 0002 6162 01 6161 02
30
+ * encode({a:2, b:1}) -> b9 0002 6161 02 6162 01 <- different bytes, same object
31
+ *
32
+ * Two departures from Core Deterministic Encoding, both map-only: keys follow INSERTION ORDER
33
+ * rather than bytewise sort, and the map header is not minimal-length (`b9 0002` for a 2-entry map
34
+ * where CDE requires `a2`).
35
+ *
36
+ * ARRAYS, text strings, byte strings, integers and null ARE minimal and order-fixed. That is why
37
+ * every to-be-signed structure in CELLO is an ARRAY with a domain tag in slot 0 —
38
+ * buildAgentRevocationTbs, buildPrimaryTransferTbs, buildSealTbs, buildParkContentTbs,
39
+ * encodeTrustSignalEnvelope. Two parties encoding the same array always produce the same bytes;
40
+ * two parties encoding the same MAP do not, if they built it in a different field order.
41
+ *
42
+ * So: never hash or sign a CBOR map produced by this encoder. Put the fields in a fixed-order array.
43
+ */
44
+ export function encodeCbor(value) {
45
+ return ENCODER.encode(value);
46
+ }
47
+ /** Decode CBOR. Tolerates the older tag-64 and record encodings so pre-migration data still reads. */
48
+ export function decodeCbor(bytes) {
49
+ return decode(bytes);
50
+ }
51
+ //# sourceMappingURL=cbor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cbor.js","sourceRoot":"","sources":["../src/cbor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEzC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;AAEzE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,UAAU,CAAC,KAAc;IACvC,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAe,CAAC;AAC7C,CAAC;AAED,sGAAsG;AACtG,MAAM,UAAU,UAAU,CAAC,KAAiB;IAC1C,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC"}
@@ -269,6 +269,10 @@ export type BuildPseudonymBindingResult = {
269
269
  ok: false;
270
270
  reason: "pseudonym_label_too_long";
271
271
  };
272
+ /**
273
+ * Canonical CBOR encoder per RFC 8949 §4.2.1.
274
+ * tagUint8Array: false — encode Uint8Array as CBOR byte strings (major type 2).
275
+ */
272
276
  /** Maximum pseudonym_label size in UTF-8 bytes (AC-007, AC-008). */
273
277
  export declare const MAX_PSEUDONYM_LABEL_BYTES = 64;
274
278
  /** Expected ML-DSA-44 public key size in bytes (NIST FIPS 204). */
@@ -1 +1 @@
1
- {"version":3,"file":"connection-package.d.ts","sourceRoot":"","sources":["../src/connection-package.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection-package.d.ts","sourceRoot":"","sources":["../src/connection-package.ts"],"names":[],"mappings":"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"}
@@ -60,14 +60,13 @@
60
60
  * RFC 8949 §4.2.1 — Core Deterministic Encoding Requirements
61
61
  * NIST FIPS 204 — Module-Lattice-Based Digital Signature Standard (ML-DSA)
62
62
  */
63
- import { Encoder } from "cbor-x";
63
+ import { encodeCbor } from "./cbor.js";
64
64
  import { decode as cborDecode } from "cbor-x";
65
65
  // ─── CBOR encoder ─────────────────────────────────────────────────────────────
66
66
  /**
67
67
  * Canonical CBOR encoder per RFC 8949 §4.2.1.
68
68
  * tagUint8Array: false — encode Uint8Array as CBOR byte strings (major type 2).
69
69
  */
70
- const CBOR_ENC = new Encoder({ tagUint8Array: false });
71
70
  /** Maximum pseudonym_label size in UTF-8 bytes (AC-007, AC-008). */
72
71
  export const MAX_PSEUDONYM_LABEL_BYTES = 64;
73
72
  /** Expected ML-DSA-44 public key size in bytes (NIST FIPS 204). */
@@ -85,7 +84,7 @@ export const ML_DSA_SIGNATURE_BYTES = 2420;
85
84
  */
86
85
  function buildPseudonymBindingTbs(pseudonym_label, k_local_pubkey, primary_pubkey, ml_dsa_pubkey, created_at) {
87
86
  const tsEncoded = created_at > 0xffffffff ? BigInt(created_at) : created_at;
88
- return new Uint8Array(CBOR_ENC.encode([
87
+ return new Uint8Array(encodeCbor([
89
88
  pseudonym_label,
90
89
  k_local_pubkey,
91
90
  primary_pubkey,
@@ -104,7 +103,7 @@ function buildPseudonymBindingTbs(pseudonym_label, k_local_pubkey, primary_pubke
104
103
  function buildEndorsementTbs(e) {
105
104
  const createdEncoded = e.created_at > 0xffffffff ? BigInt(e.created_at) : e.created_at;
106
105
  const expiresEncoded = e.expires_at > 0xffffffff ? BigInt(e.expires_at) : e.expires_at;
107
- return new Uint8Array(CBOR_ENC.encode([
106
+ return new Uint8Array(encodeCbor([
108
107
  e.endorser_pubkey,
109
108
  e.endorser_ml_dsa_pubkey,
110
109
  e.target_pubkey,
@@ -124,7 +123,7 @@ function buildEndorsementTbs(e) {
124
123
  function buildAttestationTbs(a) {
125
124
  const createdEncoded = a.created_at > 0xffffffff ? BigInt(a.created_at) : a.created_at;
126
125
  const expiresEncoded = a.expires_at > 0xffffffff ? BigInt(a.expires_at) : a.expires_at;
127
- return new Uint8Array(CBOR_ENC.encode([
126
+ return new Uint8Array(encodeCbor([
128
127
  a.attester_pubkey,
129
128
  a.attester_ml_dsa_pubkey,
130
129
  a.attestation_type,
@@ -259,7 +258,7 @@ export function validateConnectionPackage(pkg, sender_k_local_pubkey, current_ti
259
258
  * Timestamps use minimal encoding per RFC 8949 §4.2.1.
260
259
  */
261
260
  export function encodeConnectionPackage(pkg) {
262
- return CBOR_ENC.encode({
261
+ return encodeCbor({
263
262
  pseudonym_binding: encodePseudonymBindingMap(pkg.pseudonym_binding),
264
263
  endorsements: pkg.endorsements.map(encodeEndorsementMap),
265
264
  attestations: pkg.attestations.map(encodeAttestationMap),
@@ -1 +1 @@
1
- {"version":3,"file":"connection-package.js","sourceRoot":"","sources":["../src/connection-package.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection-package.js","sourceRoot":"","sources":["../src/connection-package.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,9 @@
1
+ export { encodeCbor, decodeCbor } from "./cbor.js";
2
+ export { TRUST_SIGNAL_DOMAIN, encodeTrustSignalEnvelope, hashTrustSignalEnvelope, verifyTrustSignalHash, } from "./trust-signal.js";
3
+ export type { TrustSignalEnvelope, SignalSubjectKind, SignalIssuerKind, } from "./trust-signal.js";
1
4
  export type { MessageEnvelope, MessageEnvelopeV1, EnvelopeError, BuildResult, BuildResultV1, ValidateResult, ValidateResultV1, DeserializeResult, DeserializeResultV1, } from "./types.js";
2
- export { MAX_CONTENT_BYTES, buildEnvelope, serializeEnvelope, deserializeEnvelope, validateEnvelope, buildEnvelopeV1, serializeEnvelopeV1, deserializeEnvelopeV1, validateEnvelopeV1, extractStructure1, } from "./envelope.js";
5
+ export { MAX_CONTENT_BYTES } from "./limits.js";
6
+ export { encodeStructure1, STRUCTURE1_VERSION } from "./structure1.js";
3
7
  export type { ScanResultSentinel, Structure2, BuildStructure2Result } from "./structure2.js";
4
8
  export { SCAN_RESULT_SENTINEL, buildStructure2, encodeStructure2, encodeScanResultSentinel, verifyStructure2Signature, } from "./structure2.js";
5
9
  export { computeGenesisPrevRoot, encodeSealPayload, decodeSealPayload, buildSessionEstablishmentTbs, buildSealTbs, SEAL_RECEIPT_DISCLAIMER } from "./session.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAKnD,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAEvE,YAAY,EAAE,kBAAkB,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC7F,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,4BAA4B,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACjK,YAAY,EACV,iBAAiB,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,eAAe,EAAE,iBAAiB,EAAE,WAAW,EACnH,gBAAgB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,aAAa,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,YAAY,EAChI,eAAe,EAAE,cAAc,EAAE,yBAAyB,EAAE,0BAA0B,GACvF,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,2BAA2B,EAC3B,2BAA2B,EAC3B,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,2BAA2B,EAC3B,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AAGjC,YAAY,EACV,eAAe,EACf,WAAW,EACX,QAAQ,EACR,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEzF,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AACnF,YAAY,EACV,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,iBAAiB,EACjB,wBAAwB,EACxB,kBAAkB,EAClB,yBAAyB,EACzB,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,EACtB,4BAA4B,EAC5B,iBAAiB,EACjB,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EAClB,yBAAyB,EACzB,gBAAgB,EAChB,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,yBAAyB,CAAC;AAEjC,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EACf,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACV,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,EAC1B,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,aAAa,GACd,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAGvB,YAAY,EACV,mBAAmB,EACnB,sBAAsB,EACtB,kBAAkB,EAClB,wBAAwB,EACxB,uBAAuB,EACvB,+BAA+B,GAChC,MAAM,uBAAuB,CAAC;AAG/B,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAE/B,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC1B,6BAA6B,EAC7B,6BAA6B,GAC9B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,10 @@
1
- export { MAX_CONTENT_BYTES, buildEnvelope, serializeEnvelope, deserializeEnvelope, validateEnvelope, buildEnvelopeV1, serializeEnvelopeV1, deserializeEnvelopeV1, validateEnvelopeV1, extractStructure1, } from "./envelope.js";
1
+ export { encodeCbor, decodeCbor } from "./cbor.js";
2
+ // M10 / DOD-CBOR-1 — the canonical trust-signal envelope. ONE implementation, consumed by the
3
+ // portal (mint), the directory (submission + presentation), and both daemons (receipt +
4
+ // verification) — M10-D16.
5
+ export { TRUST_SIGNAL_DOMAIN, encodeTrustSignalEnvelope, hashTrustSignalEnvelope, verifyTrustSignalHash, } from "./trust-signal.js";
6
+ export { MAX_CONTENT_BYTES } from "./limits.js";
7
+ export { encodeStructure1, STRUCTURE1_VERSION } from "./structure1.js";
2
8
  export { SCAN_RESULT_SENTINEL, buildStructure2, encodeStructure2, encodeScanResultSentinel, verifyStructure2Signature, } from "./structure2.js";
3
9
  export { computeGenesisPrevRoot, encodeSealPayload, decodeSealPayload, buildSessionEstablishmentTbs, buildSealTbs, SEAL_RECEIPT_DISCLAIMER } from "./session.js";
4
10
  export { MAX_PSEUDONYM_LABEL_BYTES, ML_DSA_PUBKEY_BYTES, ML_DSA_SIGNATURE_BYTES, buildPseudonymBinding, verifyPseudonymBinding, verifyEndorsement, verifyAttestation, validateConnectionPackage, encodeConnectionPackage, decodeConnectionPackage, } from "./connection-package.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,4BAA4B,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AA0BjK,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AAmBjC,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEzF,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AA6DnF,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAuBvB,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAO/B,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC1B,6BAA6B,EAC7B,6BAA6B,GAC9B,MAAM,uBAAuB,CAAC;AAE/B,wFAAwF;AACxF,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEnD,8FAA8F;AAC9F,wFAAwF;AACxF,2BAA2B;AAC3B,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAmB3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAGvE,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,4BAA4B,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AA0BjK,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AAmBjC,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEzF,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AA6DnF,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAuBvB,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAO/B,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC1B,6BAA6B,EAC7B,6BAA6B,GAC9B,MAAM,uBAAuB,CAAC;AAE/B,wFAAwF;AACxF,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Protocol size limits.
3
+ *
4
+ * MAX_CONTENT_BYTES lived in envelope.ts, which was the M6-era MessageEnvelope module — a v0/v1
5
+ * copy-paste pair with zero production consumers (wire encoding moved to Structure1/Structure2 in
6
+ * M7). It was deleted; this constant was its one live export and moved here rather than dying with it.
7
+ */
8
+ /** Hard cap on a single message's content, enforced before any encode. 1 MiB. */
9
+ export declare const MAX_CONTENT_BYTES = 1048576;
10
+ //# sourceMappingURL=limits.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limits.d.ts","sourceRoot":"","sources":["../src/limits.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,UAAY,CAAC"}
package/dist/limits.js ADDED
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Protocol size limits.
3
+ *
4
+ * MAX_CONTENT_BYTES lived in envelope.ts, which was the M6-era MessageEnvelope module — a v0/v1
5
+ * copy-paste pair with zero production consumers (wire encoding moved to Structure1/Structure2 in
6
+ * M7). It was deleted; this constant was its one live export and moved here rather than dying with it.
7
+ */
8
+ /** Hard cap on a single message's content, enforced before any encode. 1 MiB. */
9
+ export const MAX_CONTENT_BYTES = 1_048_576;
10
+ //# sourceMappingURL=limits.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limits.js","sourceRoot":"","sources":["../src/limits.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,iFAAiF;AACjF,MAAM,CAAC,MAAM,iBAAiB,GAAG,SAAS,CAAC"}
@@ -5,10 +5,8 @@
5
5
  * the CELLO consortium. It is threshold-signed by officer keys to prevent
6
6
  * unauthorized modification.
7
7
  *
8
- * Types defined here are consumed by:
9
- * - core/crypto (verification logic)
10
- * - core/client (manifest fetching and caching)
11
- * - core/adapter-claude-code (bootstrap)
8
+ * Types defined here are consumed by core/crypto (verification logic) and core/daemon (manifest
9
+ * fetching, caching, and bootstrap).
12
10
  */
13
11
  /** A single directory node in the consortium. */
14
12
  export interface ConsortiumNode {
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,iDAAiD;AACjD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,KAAK,GAAG,KAAK,GAAG,OAAO,CAAC;IAClC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,uEAAuE;AACvE,MAAM,WAAW,gBAAgB;IAC/B,qDAAqD;IACrD,YAAY,EAAE,MAAM,CAAC;IACrB,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,8DAA8D;AAC9D,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,mEAAmE;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,UAAU,EAAE,gBAAgB,EAAE,CAAC;CAChC;AAED,+DAA+D;AAC/D,MAAM,MAAM,aAAa,GACrB,4BAA4B,GAC5B,2BAA2B,GAC3B,kBAAkB,CAAC;AAEvB,qDAAqD;AACrD,eAAO,MAAM,0BAA0B,EAAE,aAA4C,CAAC;AAEtF,mFAAmF;AACnF,eAAO,MAAM,yBAAyB,EAAE,aAA2C,CAAC;AAEpF,+DAA+D;AAC/D,eAAO,MAAM,gBAAgB,EAAE,aAAkC,CAAC"}
1
+ {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,iDAAiD;AACjD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,KAAK,GAAG,KAAK,GAAG,OAAO,CAAC;IAClC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,uEAAuE;AACvE,MAAM,WAAW,gBAAgB;IAC/B,qDAAqD;IACrD,YAAY,EAAE,MAAM,CAAC;IACrB,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,8DAA8D;AAC9D,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,mEAAmE;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,UAAU,EAAE,gBAAgB,EAAE,CAAC;CAChC;AAED,+DAA+D;AAC/D,MAAM,MAAM,aAAa,GACrB,4BAA4B,GAC5B,2BAA2B,GAC3B,kBAAkB,CAAC;AAEvB,qDAAqD;AACrD,eAAO,MAAM,0BAA0B,EAAE,aAA4C,CAAC;AAEtF,mFAAmF;AACnF,eAAO,MAAM,yBAAyB,EAAE,aAA2C,CAAC;AAEpF,+DAA+D;AAC/D,eAAO,MAAM,gBAAgB,EAAE,aAAkC,CAAC"}
package/dist/manifest.js CHANGED
@@ -5,10 +5,8 @@
5
5
  * the CELLO consortium. It is threshold-signed by officer keys to prevent
6
6
  * unauthorized modification.
7
7
  *
8
- * Types defined here are consumed by:
9
- * - core/crypto (verification logic)
10
- * - core/client (manifest fetching and caching)
11
- * - core/adapter-claude-code (bootstrap)
8
+ * Types defined here are consumed by core/crypto (verification logic) and core/daemon (manifest
9
+ * fetching, caching, and bootstrap).
12
10
  */
13
11
  /** Error constant: signature verification failed. */
14
12
  export const MANIFEST_SIGNATURE_INVALID = "manifest_signature_invalid";
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAqCH,qDAAqD;AACrD,MAAM,CAAC,MAAM,0BAA0B,GAAkB,4BAA4B,CAAC;AAEtF,mFAAmF;AACnF,MAAM,CAAC,MAAM,yBAAyB,GAAkB,2BAA2B,CAAC;AAEpF,+DAA+D;AAC/D,MAAM,CAAC,MAAM,gBAAgB,GAAkB,kBAAkB,CAAC"}
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAqCH,qDAAqD;AACrD,MAAM,CAAC,MAAM,0BAA0B,GAAkB,4BAA4B,CAAC;AAEtF,mFAAmF;AACnF,MAAM,CAAC,MAAM,yBAAyB,GAAkB,2BAA2B,CAAC;AAEpF,+DAA+D;AAC/D,MAAM,CAAC,MAAM,gBAAgB,GAAkB,kBAAkB,CAAC"}
@@ -1,18 +1,16 @@
1
1
  /**
2
- * CELLO Primary/Standby Transfer Wire Types — M8C-PRIMARY-1
2
+ * CELLO Primary/Standby Transfer Wire Types
3
3
  *
4
- * Design: docs/planning/user-stories/m8c/M8C-PRIMARY-DESIGN.md (Decision 4, revised across 3
5
- * passes: adversarial security review, a code-level correction to the real client-coordinated-
6
- * per-node pattern, and a release-attestation crypto fix reusing the existing FROST ceremony).
4
+ * Design: docs/planning/user-stories/m8c/M8C-PRIMARY-DESIGN.md (Decision 4).
7
5
  * Mirrors registration.ts's DKG protocol shape exactly — CELLO has no cross-node RPC/consensus
8
6
  * anywhere; "exactly one Primary" is enforced by the SAME pattern DKG already uses: the daemon
9
7
  * (client) dials each of T-of-N directory nodes holding the agent's FROST shares directly, and
10
8
  * each node independently verifies + records the claim locally. There is no directory-to-directory
11
9
  * frame here — only client-to-directory, repeated per node.
12
10
  *
13
- * Phase P — Pseudocode
11
+ * Protocol flow
14
12
  * ─────────────────────────────────────────────────────────────────────────────
15
- * Primary-transfer flow (on the existing authenticated /cello/signaling/1.0.0 stream, once per
13
+ * Primary-transfer flow (on the authenticated /cello/signaling/1.0.0 stream, once per
16
14
  * directory node the daemon dials):
17
15
  *
18
16
  * CLIENT (new Primary) → DIRECTORY (one node):
@@ -74,12 +72,12 @@
74
72
  export declare const PRIMARY_TRANSFER_DOMAIN = "CELLO-PRIMARY-TRANSFER-v1";
75
73
  /**
76
74
  * Canonical to-be-signed bytes for a primary-transfer release attestation (M8C-PRIMARY-DESIGN
77
- * Decision 3, Pass 3). Field order is LOAD-BEARING — both the signer (the old Primary daemon,
75
+ * Decision 3). Field order is LOAD-BEARING — both the signer (the old Primary daemon,
78
76
  * via participateInCeremony) and every verifier (each directory node, via verifySignature) must
79
77
  * produce IDENTICAL bytes, or verification never succeeds regardless of whether the ceremony
80
78
  * itself was genuine. Mirrors buildAgentRevocationTbs's exact structure (revocation.ts).
81
79
  */
82
- export declare function buildPrimaryTransferTbs(kLocalPubkeyHex: string, newDaemonId: string, oldDaemonId: string, nonce: string, timestamp: number): Uint8Array;
80
+ export declare function buildPrimaryTransferTbs(kLocalPubkeyHex: string, newDaemonId: string, oldDaemonId: string, nonce: string, timestamp: number | bigint): Uint8Array;
83
81
  /**
84
82
  * Step 1: the new Primary attests a transfer to one directory node. Sent on that node's
85
83
  * authenticated signaling stream. The daemon repeats this per node it dials.
@@ -1 +1 @@
1
- {"version":3,"file":"primary-transfer.d.ts","sourceRoot":"","sources":["../src/primary-transfer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoEG;AAQH;;;mEAGmE;AACnE,eAAO,MAAM,uBAAuB,8BAA8B,CAAC;AAEnE;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,UAAU,CASZ;AAID;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,0BAA0B,CAAC;IACjC,yFAAyF;IACzF,cAAc,EAAE,MAAM,CAAC;IACvB,4EAA4E;IAC5E,aAAa,EAAE,MAAM,CAAC;IACtB,sEAAsE;IACtE,aAAa,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oFAAoF;IACpF,KAAK,EAAE,MAAM,CAAC;IACd,oGAAoG;IACpG,SAAS,EAAE,MAAM,CAAC;CACnB;AAID;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,sBAAsB,CAAC;IAC7B,8EAA8E;IAC9E,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,wBAAwB,CAAC;IAC/B,MAAM,EAAE,sBAAsB,GAAG,cAAc,GAAG,eAAe,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;CACzG"}
1
+ {"version":3,"file":"primary-transfer.d.ts","sourceRoot":"","sources":["../src/primary-transfer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkEG;AAKH;;;mEAGmE;AACnE,eAAO,MAAM,uBAAuB,8BAA8B,CAAC;AAEnE;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAAG,MAAM,GACzB,UAAU,CAmBZ;AAID;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,0BAA0B,CAAC;IACjC,yFAAyF;IACzF,cAAc,EAAE,MAAM,CAAC;IACvB,4EAA4E;IAC5E,aAAa,EAAE,MAAM,CAAC;IACtB,sEAAsE;IACtE,aAAa,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oFAAoF;IACpF,KAAK,EAAE,MAAM,CAAC;IACd,oGAAoG;IACpG,SAAS,EAAE,MAAM,CAAC;CACnB;AAID;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,sBAAsB,CAAC;IAC7B,8EAA8E;IAC9E,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,wBAAwB,CAAC;IAC/B,MAAM,EAAE,sBAAsB,GAAG,cAAc,GAAG,eAAe,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;CACzG"}
@@ -1,18 +1,16 @@
1
1
  /**
2
- * CELLO Primary/Standby Transfer Wire Types — M8C-PRIMARY-1
2
+ * CELLO Primary/Standby Transfer Wire Types
3
3
  *
4
- * Design: docs/planning/user-stories/m8c/M8C-PRIMARY-DESIGN.md (Decision 4, revised across 3
5
- * passes: adversarial security review, a code-level correction to the real client-coordinated-
6
- * per-node pattern, and a release-attestation crypto fix reusing the existing FROST ceremony).
4
+ * Design: docs/planning/user-stories/m8c/M8C-PRIMARY-DESIGN.md (Decision 4).
7
5
  * Mirrors registration.ts's DKG protocol shape exactly — CELLO has no cross-node RPC/consensus
8
6
  * anywhere; "exactly one Primary" is enforced by the SAME pattern DKG already uses: the daemon
9
7
  * (client) dials each of T-of-N directory nodes holding the agent's FROST shares directly, and
10
8
  * each node independently verifies + records the claim locally. There is no directory-to-directory
11
9
  * frame here — only client-to-directory, repeated per node.
12
10
  *
13
- * Phase P — Pseudocode
11
+ * Protocol flow
14
12
  * ─────────────────────────────────────────────────────────────────────────────
15
- * Primary-transfer flow (on the existing authenticated /cello/signaling/1.0.0 stream, once per
13
+ * Primary-transfer flow (on the authenticated /cello/signaling/1.0.0 stream, once per
16
14
  * directory node the daemon dials):
17
15
  *
18
16
  * CLIENT (new Primary) → DIRECTORY (one node):
@@ -67,10 +65,7 @@
67
65
  * hope the signature check alone catches it (defense in depth, cheap check first).
68
66
  * ─────────────────────────────────────────────────────────────────────────────
69
67
  */
70
- import { Encoder } from "cbor-x";
71
- // Same config as session.ts/revocation.ts's own TBS builders — tagUint8Array:false so byte
72
- // strings encode as definite-length CBOR byte strings (stable, encoder-independent layout).
73
- const CBOR_ENC = new Encoder({ tagUint8Array: false });
68
+ import { encodeCbor } from "./cbor.js";
74
69
  /** Domain separation tag — bound as the first TBS field so a primary-transfer release signature
75
70
  * can never be replayed as any other CELLO signature (and vice-versa) even before FROST's own
76
71
  * CONTEXT_PRIMARY_RELEASE domain separation is applied — belt and suspenders, matching the
@@ -78,19 +73,29 @@ const CBOR_ENC = new Encoder({ tagUint8Array: false });
78
73
  export const PRIMARY_TRANSFER_DOMAIN = "CELLO-PRIMARY-TRANSFER-v1";
79
74
  /**
80
75
  * Canonical to-be-signed bytes for a primary-transfer release attestation (M8C-PRIMARY-DESIGN
81
- * Decision 3, Pass 3). Field order is LOAD-BEARING — both the signer (the old Primary daemon,
76
+ * Decision 3). Field order is LOAD-BEARING — both the signer (the old Primary daemon,
82
77
  * via participateInCeremony) and every verifier (each directory node, via verifySignature) must
83
78
  * produce IDENTICAL bytes, or verification never succeeds regardless of whether the ceremony
84
79
  * itself was genuine. Mirrors buildAgentRevocationTbs's exact structure (revocation.ts).
85
80
  */
86
81
  export function buildPrimaryTransferTbs(kLocalPubkeyHex, newDaemonId, oldDaemonId, nonce, timestamp) {
87
- return CBOR_ENC.encode([
82
+ // Past 0xffffffff, cbor-x encodes a JS `number` as an IEEE float64 (`fb`), not a uint64 (`1b`) —
83
+ // so a MILLISECOND timestamp (Date.now() ≈ 1.77e12, which is what a caller will reach for) would
84
+ // be hashed as a float, and any non-cbor-x verifier would compute different TBS bytes and reject a
85
+ // genuine transfer. buildSealTbs (session.ts:160,271) and buildAgentRevocationTbs
86
+ // (revocation.ts:39) both carry this coercion; this builder shipped without it.
87
+ //
88
+ // Safe to add now: there is no client-side sender yet (`primary_transfer_request` has no producer
89
+ // in cello-client), so no signature exists over these bytes, and every timestamp below 2^32
90
+ // encodes byte-identically to before.
91
+ const tsEncoded = typeof timestamp === "bigint" || timestamp > 0xffffffff ? BigInt(timestamp) : timestamp;
92
+ return encodeCbor([
88
93
  PRIMARY_TRANSFER_DOMAIN,
89
94
  kLocalPubkeyHex,
90
95
  newDaemonId,
91
96
  oldDaemonId,
92
97
  nonce,
93
- timestamp,
98
+ tsEncoded,
94
99
  ]);
95
100
  }
96
101
  //# sourceMappingURL=primary-transfer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"primary-transfer.js","sourceRoot":"","sources":["../src/primary-transfer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC,2FAA2F;AAC3F,4FAA4F;AAC5F,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;AAEvD;;;mEAGmE;AACnE,MAAM,CAAC,MAAM,uBAAuB,GAAG,2BAA2B,CAAC;AAEnE;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CACrC,eAAuB,EACvB,WAAmB,EACnB,WAAmB,EACnB,KAAa,EACb,SAAiB;IAEjB,OAAO,QAAQ,CAAC,MAAM,CAAC;QACrB,uBAAuB;QACvB,eAAe;QACf,WAAW;QACX,WAAW;QACX,KAAK;QACL,SAAS;KACV,CAAe,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"primary-transfer.js","sourceRoot":"","sources":["../src/primary-transfer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAGvC;;;mEAGmE;AACnE,MAAM,CAAC,MAAM,uBAAuB,GAAG,2BAA2B,CAAC;AAEnE;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CACrC,eAAuB,EACvB,WAAmB,EACnB,WAAmB,EACnB,KAAa,EACb,SAA0B;IAE1B,iGAAiG;IACjG,iGAAiG;IACjG,mGAAmG;IACnG,kFAAkF;IAClF,gFAAgF;IAChF,EAAE;IACF,kGAAkG;IAClG,4FAA4F;IAC5F,sCAAsC;IACtC,MAAM,SAAS,GAAG,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1G,OAAO,UAAU,CAAC;QAChB,uBAAuB;QACvB,eAAe;QACf,WAAW;QACX,WAAW;QACX,KAAK;QACL,SAAS;KACV,CAAe,CAAC;AACnB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"revocation.d.ts","sourceRoot":"","sources":["../src/revocation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAQH;8DAC8D;AAC9D,eAAO,MAAM,uBAAuB,oBAAoB,CAAC;AAEzD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,MAAM,GACzB,UAAU,CAUZ;AAID;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,cAAc,CAAC;IACrB,+EAA+E;IAC/E,QAAQ,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,UAAU,EAAE,MAAM,CAAC;IACnB,gFAAgF;IAChF,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;yBACyB;AACzB,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,sBAAsB,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,+EAA+E;AAC/E,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,wBAAwB,CAAC;IAC/B,MAAM,EAAE,0BAA0B,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,0BAA0B,GAClC,eAAe,GACf,qBAAqB,GACrB,mBAAmB,GACnB,WAAW,GACX,gBAAgB,CAAC"}
1
+ {"version":3,"file":"revocation.d.ts","sourceRoot":"","sources":["../src/revocation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAKH;8DAC8D;AAC9D,eAAO,MAAM,uBAAuB,oBAAoB,CAAC;AAEzD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,MAAM,GACzB,UAAU,CAUZ;AAID;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,cAAc,CAAC;IACrB,+EAA+E;IAC/E,QAAQ,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,UAAU,EAAE,MAAM,CAAC;IACnB,gFAAgF;IAChF,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;yBACyB;AACzB,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,sBAAsB,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,+EAA+E;AAC/E,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,wBAAwB,CAAC;IAC/B,MAAM,EAAE,0BAA0B,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,0BAA0B,GAClC,eAAe,GACf,qBAAqB,GACrB,mBAAmB,GACnB,WAAW,GACX,gBAAgB,CAAC"}
@@ -15,10 +15,7 @@
15
15
  * buildAgentRevocationTbs until a publish ships this helper to it; a drift-guard test + the live spine
16
16
  * (sign here / verify there) catch any divergence.
17
17
  */
18
- import { Encoder } from "cbor-x";
19
- // Same config as session.ts buildSessionEstablishmentTbs — tagUint8Array:false so byte strings encode
20
- // as definite-length CBOR byte strings (stable, encoder-independent layout).
21
- const CBOR_ENC = new Encoder({ tagUint8Array: false });
18
+ import { encodeCbor } from "./cbor.js";
22
19
  /** Domain separation tag — bound as the first TBS field so a revocation signature can never be
23
20
  * replayed as any other CELLO signature (and vice-versa). */
24
21
  export const AGENT_REVOCATION_DOMAIN = "CELLO-REVOKE-v1";
@@ -30,7 +27,7 @@ export const AGENT_REVOCATION_DOMAIN = "CELLO-REVOKE-v1";
30
27
  */
31
28
  export function buildAgentRevocationTbs(agentId, kLocalPubkeyHex, epochId, reason, revokedAt) {
32
29
  const tsEncoded = typeof revokedAt === "bigint" || revokedAt > 0xffffffff ? BigInt(revokedAt) : revokedAt;
33
- return CBOR_ENC.encode([
30
+ return encodeCbor([
34
31
  AGENT_REVOCATION_DOMAIN,
35
32
  agentId,
36
33
  kLocalPubkeyHex,
@@ -1 +1 @@
1
- {"version":3,"file":"revocation.js","sourceRoot":"","sources":["../src/revocation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC,sGAAsG;AACtG,6EAA6E;AAC7E,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;AAEvD;8DAC8D;AAC9D,MAAM,CAAC,MAAM,uBAAuB,GAAG,iBAAiB,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CACrC,OAAe,EACf,eAAuB,EACvB,OAAe,EACf,MAAc,EACd,SAA0B;IAE1B,MAAM,SAAS,GAAG,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1G,OAAO,QAAQ,CAAC,MAAM,CAAC;QACrB,uBAAuB;QACvB,OAAO;QACP,eAAe;QACf,OAAO;QACP,MAAM;QACN,SAAS;KACV,CAAe,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"revocation.js","sourceRoot":"","sources":["../src/revocation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAGvC;8DAC8D;AAC9D,MAAM,CAAC,MAAM,uBAAuB,GAAG,iBAAiB,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CACrC,OAAe,EACf,eAAuB,EACvB,OAAe,EACf,MAAc,EACd,SAA0B;IAE1B,MAAM,SAAS,GAAG,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1G,OAAO,UAAU,CAAC;QAChB,uBAAuB;QACvB,OAAO;QACP,eAAe;QACf,OAAO;QACP,MAAM;QACN,SAAS;KACV,CAAe,CAAC;AACnB,CAAC"}
@@ -21,8 +21,8 @@
21
21
  * NEVER fabricates 'gone' from a missing entry (no observation is
22
22
  * 'unknown', not 'gone').
23
23
  */
24
- import { Encoder, decode as cborDecode } from "cbor-x";
25
- const CBOR_ENC = new Encoder({ tagUint8Array: false });
24
+ import { decode as cborDecode } from "cbor-x";
25
+ import { encodeCbor } from "./cbor.js";
26
26
  function toUint8Array(v) {
27
27
  if (v instanceof Uint8Array)
28
28
  return v;
@@ -34,7 +34,7 @@ function isLiveness(v) {
34
34
  return v === "alive" || v === "gone" || v === "unknown";
35
35
  }
36
36
  export function encodeSessionLivenessQuery(frame) {
37
- return CBOR_ENC.encode({
37
+ return encodeCbor({
38
38
  type: "session_liveness_query",
39
39
  session_id: frame.session_id,
40
40
  counterparty_pubkey: frame.counterparty_pubkey,
@@ -62,7 +62,7 @@ export function decodeSessionLivenessQuery(bytes) {
62
62
  return { type: "session_liveness_query", session_id, counterparty_pubkey };
63
63
  }
64
64
  export function encodeSessionLivenessResponse(frame) {
65
- return CBOR_ENC.encode({
65
+ return encodeCbor({
66
66
  type: "session_liveness_response",
67
67
  session_id: frame.session_id,
68
68
  counterparty_pubkey: frame.counterparty_pubkey,
@@ -1 +1 @@
1
- {"version":3,"file":"session-liveness.js","sourceRoot":"","sources":["../src/session-liveness.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-liveness.js","sourceRoot":"","sources":["../src/session-liveness.ts"],"names":[],"mappings":"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"}