@cello-protocol/daemon 0.0.161 → 0.0.162

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 (60) hide show
  1. package/dist/daemon.js +10 -4
  2. package/dist/daemon.js.map +1 -1
  3. package/dist/document-ack-inbound.d.ts +8 -1
  4. package/dist/document-ack-inbound.d.ts.map +1 -1
  5. package/dist/document-ack-inbound.js +31 -8
  6. package/dist/document-ack-inbound.js.map +1 -1
  7. package/dist/document-amendment-store.d.ts +72 -0
  8. package/dist/document-amendment-store.d.ts.map +1 -0
  9. package/dist/document-amendment-store.js +151 -0
  10. package/dist/document-amendment-store.js.map +1 -0
  11. package/dist/document-delivery-transport.d.ts +2 -1
  12. package/dist/document-delivery-transport.d.ts.map +1 -1
  13. package/dist/document-delivery-transport.js +1 -1
  14. package/dist/document-delivery-transport.js.map +1 -1
  15. package/dist/document-delivery.d.ts +6 -1
  16. package/dist/document-delivery.d.ts.map +1 -1
  17. package/dist/document-delivery.js +167 -201
  18. package/dist/document-delivery.js.map +1 -1
  19. package/dist/document-frame-router.d.ts +15 -1
  20. package/dist/document-frame-router.d.ts.map +1 -1
  21. package/dist/document-frame-router.js +22 -1
  22. package/dist/document-frame-router.js.map +1 -1
  23. package/dist/document-gate.js +1 -1
  24. package/dist/document-gate.js.map +1 -1
  25. package/dist/document-handlers.d.ts.map +1 -1
  26. package/dist/document-handlers.js +552 -2
  27. package/dist/document-handlers.js.map +1 -1
  28. package/dist/document-handshake.d.ts +13 -0
  29. package/dist/document-handshake.d.ts.map +1 -1
  30. package/dist/document-handshake.js +24 -0
  31. package/dist/document-handshake.js.map +1 -1
  32. package/dist/document-inbound.d.ts +12 -0
  33. package/dist/document-inbound.d.ts.map +1 -1
  34. package/dist/document-inbound.js +141 -10
  35. package/dist/document-inbound.js.map +1 -1
  36. package/dist/document-join-store.d.ts +80 -0
  37. package/dist/document-join-store.d.ts.map +1 -0
  38. package/dist/document-join-store.js +197 -0
  39. package/dist/document-join-store.js.map +1 -0
  40. package/dist/document-layer.d.ts +35 -1
  41. package/dist/document-layer.d.ts.map +1 -1
  42. package/dist/document-layer.js +417 -11
  43. package/dist/document-layer.js.map +1 -1
  44. package/dist/document-lifecycle.d.ts.map +1 -1
  45. package/dist/document-lifecycle.js +24 -4
  46. package/dist/document-lifecycle.js.map +1 -1
  47. package/dist/document-publish.d.ts +7 -0
  48. package/dist/document-publish.d.ts.map +1 -1
  49. package/dist/document-publish.js +20 -4
  50. package/dist/document-publish.js.map +1 -1
  51. package/dist/document-rejection.js +1 -1
  52. package/dist/document-rejection.js.map +1 -1
  53. package/dist/document-store.d.ts +97 -4
  54. package/dist/document-store.d.ts.map +1 -1
  55. package/dist/document-store.js +319 -21
  56. package/dist/document-store.js.map +1 -1
  57. package/dist/vocabulary.d.ts.map +1 -1
  58. package/dist/vocabulary.js +2 -0
  59. package/dist/vocabulary.js.map +1 -1
  60. package/package.json +5 -5
@@ -21,6 +21,7 @@
21
21
  * would be a default answer to "is this authentic", and both inbound paths refuse rather than
22
22
  * admit when it says no.
23
23
  */
24
+ import { createHash } from "node:crypto";
24
25
  import { verify } from "@cello-protocol/crypto";
25
26
  import { DocumentStore } from "./document-store.js";
26
27
  import { DocumentEngine } from "./document-engine.js";
@@ -29,6 +30,8 @@ import { screeningRule, SCREEN_RULE_ID } from "./document-screen.js";
29
30
  import { DocumentRejections } from "./document-rejection.js";
30
31
  import { DocumentInbound } from "./document-inbound.js";
31
32
  import { DocumentAckInbound } from "./document-ack-inbound.js";
33
+ import { DocumentAmendmentStore } from "./document-amendment-store.js";
34
+ import { DocumentJoinStore } from "./document-join-store.js";
32
35
  import { DocumentFrameRouter } from "./document-frame-router.js";
33
36
  import { LiveDocuments } from "./document-live-docs.js";
34
37
  import { DocumentLifecycle } from "./document-lifecycle.js";
@@ -38,7 +41,7 @@ import { projectDocumentText } from "./document-json.js";
38
41
  import { rootForDocumentType } from "./document-types.js";
39
42
  import { DocumentHandshake } from "./document-handshake.js";
40
43
  import { DocumentWritePath } from "./document-write-path.js";
41
- import { decodeDocumentRejection, buildDocumentRejectionTbs, documentRejectionHash, decodeDocumentProposalAck, buildDocumentProposalAckTbs, decodeDocumentControl, buildDocumentControlTbs, decodeDocumentUpdateEnvelope, encodeDocumentAck, buildDocumentAckTbs, } from "@cello-protocol/protocol-types";
44
+ import { decodeDocumentRejection, buildDocumentRejectionTbs, documentRejectionHash, decodeDocumentProposalAck, buildDocumentProposalAckTbs, decodeDocumentControl, buildDocumentControlTbs, decodeDocumentUpdateEnvelope, buildDocumentUpdateTbs, documentEnvelopeHash, buildDocumentJoinAnswerTbs, encodeDocumentJoinAnswer, buildDocumentJoinOfferTbs, decodeDocumentJoinOffer, decodeDocumentAmendment, decodeDocumentProposal, encodeDocumentProposalAck, DOCUMENT_PROPOSAL_ACK_VERSION, MAX_PROPOSAL_REFUSAL_REASON_LENGTH, documentAmendmentHash, validateDocumentJoinOffer, documentGovernancePolicy, arrangementGenesisFromProposal, deriveArrangement, encodeDocumentAck, buildDocumentAckTbs, } from "@cello-protocol/protocol-types";
42
45
  import { LEAF_KIND_REJECT } from "./session-relay-client.js";
43
46
  /**
44
47
  * The default `publicKeyFor`: a remote agent's id IS its K_local public key, hex-encoded (M14-D5).
@@ -115,20 +118,28 @@ export function createDocumentLayer(deps) {
115
118
  logger,
116
119
  verifySignature,
117
120
  liveDocFor: (ownerAgentId, documentId) => live.get(ownerAgentId, documentId),
121
+ membershipOf: (ownerAgentId, documentId, agentId) => amendments.membershipOf(ownerAgentId, documentId, agentId),
122
+ currentHolders: (ownerAgentId, documentId) => holdersFor(ownerAgentId, documentId),
118
123
  sign: deps.sign,
119
124
  });
120
125
  // WAITERS for `awaitAck`, keyed by owner + envelope. A Set per key because two callers may wait
121
126
  // on the same envelope (a redelivery racing the original), and dropping one of them would leave a
122
127
  // session held open for the full grace period with the answer already in hand.
128
+ // KEYED BY ACKER TOO (FANOUT-1 review H1): an envelope-keyed waiter let ANY holder's ack —
129
+ // including a redelivered one from an already-settled holder — resolve the grace wait for
130
+ // whichever holder was being dialed, and the worker then settled the DIALED holder's row for
131
+ // content that never reached them. §7-1's silent divergence, through the sender's own
132
+ // bookkeeping.
123
133
  const ackWaiters = new Map();
124
- const waiterKey = (ownerAgentId, envelopeHash) => `${ownerAgentId}\u0000${envelopeHash}`;
134
+ const waiterKey = (ownerAgentId, envelopeHash, ackerAgentId) => `${ownerAgentId}\u0000${envelopeHash}\u0000${ackerAgentId}`;
125
135
  const ackInbound = new DocumentAckInbound({
126
136
  store,
127
137
  rejections,
128
138
  logger,
129
139
  verifySignature,
130
- onSettled: (ownerAgentId, envelopeHash, admitted) => {
131
- const key = waiterKey(ownerAgentId, envelopeHash);
140
+ currentHolders: (o, d) => holdersFor(o, d),
141
+ onSettled: (ownerAgentId, envelopeHash, ackerAgentId, admitted) => {
142
+ const key = waiterKey(ownerAgentId, envelopeHash, ackerAgentId);
132
143
  const waiting = ackWaiters.get(key);
133
144
  if (!waiting)
134
145
  return;
@@ -140,14 +151,14 @@ export function createDocumentLayer(deps) {
140
151
  wake(admitted);
141
152
  },
142
153
  });
143
- const awaitAck = async (ownerAgentId, envelopeHash, timeoutMs) => {
144
- // ALREADY SETTLED WINS. The ack round trip was measured at 4ms on a local pair; the caller
145
- // reaches this line after a network send. Checking the store first is not an optimisation —
146
- // without it the common case waits out the entire grace period for an answer already recorded.
147
- const already = store.envelopeSettlement(ownerAgentId, envelopeHash);
154
+ const awaitAck = async (ownerAgentId, envelopeHash, expectedAckerAgentId, timeoutMs) => {
155
+ // ALREADY SETTLED WINS by THE HOLDER BEING DIALED (H1): the per-acker read first, the
156
+ // envelope-level read only for the zero-row bilateral legacy.
157
+ const already = store.holderSettlement(ownerAgentId, envelopeHash, expectedAckerAgentId) ??
158
+ store.envelopeSettlement(ownerAgentId, envelopeHash);
148
159
  if (already)
149
160
  return already;
150
- const key = waiterKey(ownerAgentId, envelopeHash);
161
+ const key = waiterKey(ownerAgentId, envelopeHash, expectedAckerAgentId);
151
162
  return new Promise((resolve) => {
152
163
  let timer;
153
164
  const wake = (admitted) => {
@@ -173,6 +184,74 @@ export function createDocumentLayer(deps) {
173
184
  // proposal is refused before it can occupy a document_id (ON CONFLICT DO NOTHING makes the first
174
185
  // arrival's bytes permanent for that id).
175
186
  const handshake = new DocumentHandshake(db, logger, verifySignature);
187
+ // M14B / DOD-MP-JOIN-1 — the amendment chain and the join-consent stores. The membership READ
188
+ // path (`currentDocumentEpoch`) has run through DocumentStore since AMEND-1; these are the
189
+ // WRITE path, and every append below validates first (the standing AMEND-1 condition).
190
+ const amendments = new DocumentAmendmentStore(db, logger);
191
+ const joins = new DocumentJoinStore(db, logger);
192
+ /**
193
+ * M14B / DOD-MP-FANOUT-1 — the CURRENT holders of a document, derived from genesis + the
194
+ * recorded chain. Null when the document is unknown or its chain does not derive — NOT an
195
+ * empty list, because "nobody holds this" and "this cannot be answered" are different facts
196
+ * and the worker schedules them differently.
197
+ */
198
+ const holdersFor = (ownerAgentId, documentId) => {
199
+ const genesisRecord = handshake.get(ownerAgentId, documentId);
200
+ if (!genesisRecord) {
201
+ // The SAME event the publish refusal points at — an operator hunting
202
+ // document.holders.underivable must find it for BOTH null causes (review M6).
203
+ logger.error("document.holders.underivable", {
204
+ documentId,
205
+ reason: "no_genesis_record: the document has a row but no stored genesis proposal",
206
+ });
207
+ return null;
208
+ }
209
+ const derived = deriveArrangement(arrangementGenesisFromProposal(genesisRecord.envelope), amendments.chain(ownerAgentId, documentId), documentGovernancePolicy, verifySignature);
210
+ if (!derived.ok) {
211
+ logger.error("document.holders.underivable", {
212
+ documentId,
213
+ reason: derived.reason,
214
+ });
215
+ return null;
216
+ }
217
+ return [...derived.arrangement.participants];
218
+ };
219
+ /** Is this agent a CURRENT holder — the ack gate's membership question. */
220
+ const isCurrentHolder = (ownerAgentId, documentId, agentId) => {
221
+ const holders = holdersFor(ownerAgentId, documentId);
222
+ return holders !== null && holders.includes(agentId);
223
+ };
224
+ /** Sign and send a join answer — best-effort, never a veto over the local decision. */
225
+ const sendJoinAnswer = async (ownerAgentId, inviterAgentId, documentId, amendmentHash, accepted, reason) => {
226
+ try {
227
+ const answer = {
228
+ type: "document_join_answer",
229
+ document_id: documentId,
230
+ amendment_hash: amendmentHash,
231
+ invitee_agent_id: ownerAgentId,
232
+ accepted,
233
+ refusal_reason: accepted ? null : reason,
234
+ answered_at_ms: Date.now(),
235
+ signature: new Uint8Array(0),
236
+ };
237
+ answer.signature = await deps.sign(ownerAgentId, buildDocumentJoinAnswerTbs(answer));
238
+ await deps.sendFrame(ownerAgentId, inviterAgentId, encodeDocumentJoinAnswer(answer));
239
+ }
240
+ catch (err) {
241
+ logger.warn("document.join.answer_send_failed", {
242
+ documentId,
243
+ amendmentHash,
244
+ error: err instanceof Error ? err.message : String(err),
245
+ });
246
+ }
247
+ };
248
+ /** Re-send the STANDING decision for an already-decided offer a redelivery just matched. */
249
+ const resendJoinAnswer = async (ownerAgentId, amendmentHash, inviterAgentId) => {
250
+ const record = joins.get(ownerAgentId, amendmentHash);
251
+ if (!record || record.state === "pending")
252
+ return;
253
+ await sendJoinAnswer(ownerAgentId, inviterAgentId, record.documentId, amendmentHash, record.state === "accepted", record.reason);
254
+ };
176
255
  const router = new DocumentFrameRouter({
177
256
  inbound,
178
257
  ackInbound,
@@ -181,7 +260,129 @@ export function createDocumentLayer(deps) {
181
260
  recordProposal: (ownerAgentId, wire, nowMs) => {
182
261
  // THROWS on a forged or misaddressed proposal, which the router contains and reports. That is
183
262
  // right: those are refusals, and nothing should be recorded for them.
184
- handshake.recordProposal(ownerAgentId, wire, nowMs);
263
+ const recorded = handshake.recordProposal(ownerAgentId, wire, nowMs);
264
+ // BOTH ENDS GET THE SENTENCE (TOPOLOGY-1 review F1, the join path's rule applied here):
265
+ // an arrival auto-refusal — seam violation, version mismatch — used to write its sentence
266
+ // to OUR database and answer the proposer with silence, a hang they diagnose as a network
267
+ // fault. The signed refusal ack now travels best-effort; the proposal verified against its
268
+ // named proposer at record time, so the answer goes to an authenticated party.
269
+ const refusalReason = recorded.reason;
270
+ if (recorded.state === "refused" && refusalReason !== undefined) {
271
+ const proposal = decodeDocumentProposal(wire);
272
+ void (async () => {
273
+ try {
274
+ const ack = {
275
+ type: "document_proposal_ack",
276
+ ack_version: DOCUMENT_PROPOSAL_ACK_VERSION,
277
+ document_id: recorded.documentId,
278
+ acker_agent_id: ownerAgentId,
279
+ accepted: false,
280
+ refusal_reason: refusalReason.slice(0, MAX_PROPOSAL_REFUSAL_REASON_LENGTH),
281
+ decided_at_ms: Date.now(),
282
+ signature: new Uint8Array(0),
283
+ };
284
+ ack.signature = await deps.sign(ownerAgentId, buildDocumentProposalAckTbs(ack));
285
+ await deps.sendFrame(ownerAgentId, proposal.proposer_agent_id, encodeDocumentProposalAck(ack));
286
+ }
287
+ catch (err) {
288
+ logger.warn("document.proposal.auto_refusal_ack_failed", {
289
+ documentId: recorded.documentId,
290
+ error: err instanceof Error ? err.message : String(err),
291
+ });
292
+ }
293
+ })();
294
+ }
295
+ },
296
+ recordJoinOffer: (ownerAgentId, wire, nowMs) => {
297
+ const offer = decodeDocumentJoinOffer(wire);
298
+ // ADDRESSED TO US — the same multi-agent-daemon rule recordProposal enforces: consent
299
+ // belongs to the agent the inviter named, and a throw here is contained by the router.
300
+ if (offer.invitee_agent_id !== ownerAgentId) {
301
+ throw new Error(`document_join_wrong_invitee: this offer is addressed to ${offer.invitee_agent_id}, ` +
302
+ `not to ${ownerAgentId}`);
303
+ }
304
+ const validation = validateDocumentJoinOffer(offer, documentGovernancePolicy, verifySignature);
305
+ if (validation.ok) {
306
+ const stored = joins.recordIncoming(ownerAgentId, wire, validation.pendingAmendmentHash, { state: "pending" }, nowMs);
307
+ // REDELIVERY OF A DECIDED OFFER RE-SENDS THE ANSWER. A lost answer was otherwise lost
308
+ // forever: the invitee's decision stood, the inviter's row sat pending, and the
309
+ // inviter's only lever — re-inviting, which redelivers this exact offer — reached a
310
+ // DO-NOTHING insert. Now that redelivery is the recovery: the standing decision is
311
+ // re-signed and travels again. Best-effort, like every answer.
312
+ if (stored.state !== "pending") {
313
+ void resendJoinAnswer(ownerAgentId, validation.pendingAmendmentHash, offer.inviter_agent_id);
314
+ }
315
+ return;
316
+ }
317
+ // A REFUSAL IS RECORDED — AND ANSWERED — ONLY WHEN IT IS AUTHENTICATED. The first cut
318
+ // recorded every refusal under the admitting amendment's hash, and that was a standing
319
+ // veto: any party holding the amendment bytes (every holder gets them in the fan-out)
320
+ // could deliver a garbage offer FIRST, occupy the real settle key with a refused row, and
321
+ // the genuine offer would arrive to a DO-NOTHING insert — the admin's admission silently
322
+ // suppressed, both operators seeing nothing. So: an offer whose signature does not verify
323
+ // against its named inviter THROWS (contained + logged, nothing recorded — the forged-
324
+ // proposal treatment), and an authenticated refusal is recorded under the hash of ITS OWN
325
+ // BYTES — visible to the operator, never able to occupy a real join's settle key.
326
+ if (!verifySignature(offer.inviter_agent_id, buildDocumentJoinOfferTbs(offer), offer.signature)) {
327
+ throw new Error(validation.reason);
328
+ }
329
+ const refusalKey = createHash("sha256").update(wire).digest("hex");
330
+ joins.recordIncoming(ownerAgentId, wire, refusalKey, { state: "refused", reason: validation.reason }, nowMs);
331
+ // BOTH ENDS get the sentence: the refusal answer travels back to the authenticated
332
+ // inviter, settling their row with the reason — the version-mismatch sentence was written
333
+ // for a human and was reaching a database column. The settle key is the admitting
334
+ // amendment's hash when one is recoverable (the inviter's row lives under it).
335
+ const last = offer.amendments[offer.amendments.length - 1];
336
+ if (last !== undefined) {
337
+ try {
338
+ const settleKey = Buffer.from(documentAmendmentHash(decodeDocumentAmendment(last).body)).toString("hex");
339
+ void sendJoinAnswer(ownerAgentId, offer.inviter_agent_id, offer.document_id, settleKey, false, validation.reason);
340
+ }
341
+ catch {
342
+ // No recoverable settle key — the refusal stays visible locally and the inviter's
343
+ // re-invite (which redelivers) will meet the same recorded refusal.
344
+ }
345
+ }
346
+ },
347
+ recordJoinAnswer: (ownerAgentId, wire, nowMs) => {
348
+ const r = joins.recordAnswer(ownerAgentId, wire, verifySignature, nowMs);
349
+ // A refusal is a verdict the router contains and reports — never a silent drop.
350
+ if (!r.ok)
351
+ throw new Error(r.reason);
352
+ },
353
+ recordAmendment: (ownerAgentId, wire, nowMs) => {
354
+ // An amendment reaching an EXISTING holder. VALIDATE-BEFORE-APPEND (the AMEND-1 standing
355
+ // condition): the whole chain, including this arrival, must replay through the real policy
356
+ // before one byte lands in the table — a row in document_amendments is post-validation by
357
+ // invariant, and epoch stamping rests on that.
358
+ const env = decodeDocumentAmendment(wire);
359
+ const documentId = env.body.document_id;
360
+ if (!store.getDocument(ownerAgentId, documentId)) {
361
+ throw new Error(`document_unknown: no document ${documentId.slice(0, 16)}… for this agent`);
362
+ }
363
+ const record = handshake.get(ownerAgentId, documentId);
364
+ if (!record) {
365
+ throw new Error(`document_genesis_missing: ${documentId.slice(0, 16)}… has a row but no stored genesis ` +
366
+ `proposal to replay from`);
367
+ }
368
+ const derived = deriveArrangement(arrangementGenesisFromProposal(record.envelope), [...amendments.chain(ownerAgentId, documentId), env], documentGovernancePolicy, verifySignature);
369
+ if (!derived.ok)
370
+ throw new Error(derived.reason);
371
+ amendments.append(ownerAgentId, documentId, wire, nowMs);
372
+ // DOD-MP-REMOVE-1 — a removal NAMING THIS AGENT is applied and SURFACED, not just stored:
373
+ // the row flips to `removed` (publishes refuse locally, naming the condition; the copy,
374
+ // the file, the history all remain — forward-only by doctrine), and the event is the
375
+ // operator's notice. Everyone else's arrangement changes are visible through list/inbox
376
+ // derivation; being written out of one is the change an operator must not miss.
377
+ if (env.body.kind === "remove_holder" && env.body.subject_agent_id === ownerAgentId) {
378
+ // Applied by DERIVATION — the recorded chain IS the removal; publish gates and the list
379
+ // overlay read it. This warn is the operator's notice.
380
+ logger.warn("document.removed_from", {
381
+ documentId,
382
+ epochId: env.body.epoch_id,
383
+ removedBy: env.collection.required_signers.join(","),
384
+ });
385
+ }
185
386
  },
186
387
  // `_nowMs` unused: the received-rejection row takes its clock where it is written, and the
187
388
  // rejection's own SIGNED timestamp is inside the envelope. A second clock read here would put a
@@ -357,7 +558,212 @@ export function createDocumentLayer(deps) {
357
558
  });
358
559
  },
359
560
  });
561
+ /**
562
+ * M14B / DOD-MP-JOIN-1 — the invitee's ACCEPT: consent becomes a held document.
563
+ *
564
+ * VALIDATE EVERYTHING, THEN MUTATE. The stored offer is re-validated at the moment of
565
+ * consequence (validate-before-append, on the bytes that will be appended), and the whole
566
+ * envelope-log snapshot is verified — every signature, every document binding — before one row
567
+ * lands. A snapshot with one bad envelope refuses the accept naming it, because skipping it
568
+ * silently would hand the joiner a document that reads complete and diverges from every other
569
+ * holder (NO-SILENT-DROP).
570
+ *
571
+ * Historical log envelopes are accepted at the epoch their SIGNED bytes claim — the inbound
572
+ * epoch gate is for live arrivals; a snapshot legitimately spans epochs 0..N.
573
+ */
574
+ const acceptJoin = async (ownerAgentId, amendmentHash, nowMs) => {
575
+ const record = joins.get(ownerAgentId, amendmentHash);
576
+ if (!record || record.role !== "invitee") {
577
+ return {
578
+ ok: false,
579
+ reason: "join_unknown_offer",
580
+ detail: `no join offer for this agent settles on ${amendmentHash.slice(0, 16)}…`,
581
+ };
582
+ }
583
+ if (record.state !== "pending") {
584
+ return {
585
+ ok: false,
586
+ reason: "join_already_decided",
587
+ detail: `this offer was already ${record.state} — a consent decision is made once`,
588
+ };
589
+ }
590
+ const validation = validateDocumentJoinOffer(record.offer, documentGovernancePolicy, verifySignature);
591
+ if (!validation.ok) {
592
+ // Recorded, not just returned: an offer that no longer validates is a settled fact.
593
+ joins.decide(ownerAgentId, amendmentHash, false, validation.reason, nowMs);
594
+ return { ok: false, reason: "join_offer_invalid", detail: validation.reason };
595
+ }
596
+ const documentId = record.documentId;
597
+ // WHO MAY APPEAR IN THE SNAPSHOT: anyone who held the document at ANY epoch of the carried
598
+ // chain — the genesis pair plus every add_holder subject (a removed holder's history stays
599
+ // legal). Without this, a malicious inviter plants envelopes signed by keys they control
600
+ // under identities that were never holders, and the joiner materializes content no
601
+ // legitimate holder ever saw — silent divergence the live path's sender-is-peer check
602
+ // would have refused.
603
+ const everHeld = new Set([
604
+ validation.genesis.proposer_agent_id,
605
+ validation.genesis.peer_agent_id,
606
+ ]);
607
+ for (const amendment of validation.amendments) {
608
+ if (amendment.body.kind === "add_holder" && amendment.body.subject_agent_id !== null) {
609
+ everHeld.add(amendment.body.subject_agent_id);
610
+ }
611
+ }
612
+ // The WHOLE snapshot verified before any mutation.
613
+ const verified = [];
614
+ for (let i = 0; i < record.offer.envelope_log.length; i++) {
615
+ const bytes = record.offer.envelope_log[i];
616
+ let env;
617
+ try {
618
+ env = decodeDocumentUpdateEnvelope(bytes);
619
+ }
620
+ catch (err) {
621
+ return {
622
+ ok: false,
623
+ reason: "join_log_invalid",
624
+ detail: `snapshot envelope ${i} does not decode: ${err instanceof Error ? err.message : String(err)}`,
625
+ };
626
+ }
627
+ if (env.document_id !== documentId) {
628
+ return {
629
+ ok: false,
630
+ reason: "join_log_invalid",
631
+ detail: `snapshot envelope ${i} names document ${env.document_id.slice(0, 16)}…, not this one`,
632
+ };
633
+ }
634
+ if (!verifySignature(env.sender_agent_id, buildDocumentUpdateTbs(env), env.signature)) {
635
+ return {
636
+ ok: false,
637
+ reason: "join_log_invalid",
638
+ detail: `snapshot envelope ${i} does not verify against its sender ${env.sender_agent_id}`,
639
+ };
640
+ }
641
+ if (!everHeld.has(env.sender_agent_id)) {
642
+ return {
643
+ ok: false,
644
+ reason: "join_log_invalid",
645
+ detail: `snapshot envelope ${i} is signed by ${env.sender_agent_id}, who never held this ` +
646
+ `document at any epoch of the carried chain — refused before anything materializes`,
647
+ };
648
+ }
649
+ verified.push({
650
+ envelopeHash: documentEnvelopeHash(env),
651
+ documentId,
652
+ senderAgentId: env.sender_agent_id,
653
+ docPrevHash: env.doc_prev_hash,
654
+ epochId: env.epoch_id,
655
+ signature: env.signature,
656
+ stateVector: env.state_vector,
657
+ payload: env.update,
658
+ kind: "update",
659
+ referencesEnvelopeHash: null,
660
+ createdAtMs: nowMs,
661
+ });
662
+ }
663
+ // Mutations, in dependency order: genesis (LiveDocuments reads starting_content from it),
664
+ // the chain (idempotent on redelivery), the row, the log, the live rebuild, the file.
665
+ handshake.recordJoined(ownerAgentId, record.offer.genesis, nowMs);
666
+ try {
667
+ for (const bytes of record.offer.amendments) {
668
+ amendments.append(ownerAgentId, documentId, bytes, nowMs);
669
+ }
670
+ }
671
+ catch (err) {
672
+ // TWO ADMINS INVITED THE SAME AGENT INDEPENDENTLY: each offer's chain is self-consistent
673
+ // and both sat pending, but their admitting amendments rival at one epoch — the second
674
+ // accept hits the store's fork refusal mid-append. Settled as refused with the conflict's
675
+ // own reason rather than thrown: a raw exception left the row pending and every retry
676
+ // rethrowing, a wedge the operator could not see past.
677
+ const reason = err instanceof Error ? err.message : String(err);
678
+ joins.decide(ownerAgentId, amendmentHash, false, reason, nowMs);
679
+ return { ok: false, reason: "join_conflicting_admission", detail: reason };
680
+ }
681
+ if (!store.getDocument(ownerAgentId, documentId)) {
682
+ store.createDocument({
683
+ documentId,
684
+ ownerAgentId,
685
+ // The inviter is this holder's live counterpart until fan-out delivery (P2) — the
686
+ // participants that MATTER derive from the amendment chain (Entry 9's decision).
687
+ peerAgentId: record.inviterAgentId,
688
+ documentType: validation.genesis.document_type,
689
+ properties: validation.genesis.properties,
690
+ status: "active",
691
+ createdAtMs: nowMs,
692
+ });
693
+ }
694
+ for (const row of verified)
695
+ store.appendEnvelope(ownerAgentId, row);
696
+ const doc = live.get(ownerAgentId, documentId);
697
+ if (writePath) {
698
+ await writePath.materialize(ownerAgentId, documentId, validation.genesis.document_type, doc);
699
+ }
700
+ joins.decide(ownerAgentId, amendmentHash, true, null, nowMs);
701
+ const answer = {
702
+ type: "document_join_answer",
703
+ document_id: documentId,
704
+ amendment_hash: amendmentHash,
705
+ invitee_agent_id: ownerAgentId,
706
+ accepted: true,
707
+ refusal_reason: null,
708
+ answered_at_ms: nowMs,
709
+ signature: new Uint8Array(0),
710
+ };
711
+ answer.signature = await deps.sign(ownerAgentId, buildDocumentJoinAnswerTbs(answer));
712
+ logger.info("document.join.accepted", { documentId, amendmentHash, applied: verified.length });
713
+ return {
714
+ ok: true,
715
+ documentId,
716
+ inviterAgentId: record.inviterAgentId,
717
+ documentType: validation.genesis.document_type,
718
+ applied: verified.length,
719
+ answerBytes: encodeDocumentJoinAnswer(answer),
720
+ };
721
+ };
722
+ /** The invitee's REFUSE — local and final; the signed answer travels best-effort. */
723
+ const refuseJoin = async (ownerAgentId, amendmentHash, reason, nowMs) => {
724
+ const record = joins.get(ownerAgentId, amendmentHash);
725
+ if (!record || record.role !== "invitee") {
726
+ return {
727
+ ok: false,
728
+ reason: "join_unknown_offer",
729
+ detail: `no join offer for this agent settles on ${amendmentHash.slice(0, 16)}…`,
730
+ };
731
+ }
732
+ const decided = joins.decide(ownerAgentId, amendmentHash, false, reason, nowMs);
733
+ if (!decided.decided) {
734
+ return {
735
+ ok: false,
736
+ reason: "join_already_decided",
737
+ detail: `this offer was already ${decided.state} — a consent decision is made once`,
738
+ };
739
+ }
740
+ const answer = {
741
+ type: "document_join_answer",
742
+ document_id: record.documentId,
743
+ amendment_hash: amendmentHash,
744
+ invitee_agent_id: ownerAgentId,
745
+ accepted: false,
746
+ refusal_reason: reason,
747
+ answered_at_ms: nowMs,
748
+ signature: new Uint8Array(0),
749
+ };
750
+ answer.signature = await deps.sign(ownerAgentId, buildDocumentJoinAnswerTbs(answer));
751
+ logger.info("document.join.refused", { documentId: record.documentId, amendmentHash });
752
+ return {
753
+ ok: true,
754
+ documentId: record.documentId,
755
+ inviterAgentId: record.inviterAgentId,
756
+ answerBytes: encodeDocumentJoinAnswer(answer),
757
+ };
758
+ };
360
759
  return {
760
+ amendments,
761
+ joins,
762
+ verifySignature,
763
+ holdersFor,
764
+ isCurrentHolder,
765
+ acceptJoin,
766
+ refuseJoin,
361
767
  store,
362
768
  writePath,
363
769
  handshake,
@@ -1 +1 @@
1
- {"version":3,"file":"document-layer.js","sourceRoot":"","sources":["../src/document-layer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-layer.js","sourceRoot":"","sources":["../src/document-layer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"document-lifecycle.d.ts","sourceRoot":"","sources":["../src/document-lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-lifecycle.d.ts","sourceRoot":"","sources":["../src/document-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC,gGAAgG;AAChG,MAAM,WAAW,iBAAiB;IAChC,UAAU,CACR,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,GAAG,OAAO,GAIrB,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC3E;AA8CD,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,gGAAgG;IAChG,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,MAAM,CAAC;IAC1B,6EAA6E;IAC7E,WAAW,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,aAAa,EAAE,MAAM,CAAC;IACtB;;;;;;;;OAQG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAC5B,2CAA2C;IAC3C,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,MAAM,OAAO,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnF,qBAAa,iBAAiB;;gBAiB1B,KAAK,EAAE,aAAa,EACpB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,iBAAiB;IAC3B;;;;OAIG;IACH,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KACvE;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAC9C,aAAa,GAAE,CAAC,YAAY,EAAE,MAAM,KAAK,MAAmB;IAU9D,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,eAAe,EAAE;IA6C5D,4FAA4F;IACtF,KAAK,CACT,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,GACZ,OAAO,CACN,CAAC,OAAO,GAAG;QAAE,EAAE,EAAE,IAAI,CAAC;QAAC,YAAY,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GAC7F,CAAC,OAAO,GAAG;QAAE,EAAE,EAAE,KAAK,CAAA;KAAE,CAAC,CAC5B;IA+BD,kDAAkD;IAClD,eAAe,CACb,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,GACZ,OAAO;IAmCV;;;;;;;;;;OAUG;IACH,cAAc,CACZ,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,GACZ,OAAO;IAsCV;;;OAGG;IACG,IAAI,CACR,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,GACZ,OAAO,CACN;QAAE,EAAE,EAAE,IAAI,CAAC;QAAC,YAAY,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GAC/F;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAChD;IAkCD;;;;;OAKG;IACH,QAAQ,CACN,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,GACZ,OAAO;IA6EV,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAaxE,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAO1C,+EAA+E;IAC/E,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO;IA4D7D,4DAA4D;IAC5D,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO;IAgC3D,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAuCvC"}