@real-life/trust-protocol 0.4.0 → 0.6.0

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 (91) hide show
  1. package/CHANGELOG.md +137 -0
  2. package/README.md +91 -24
  3. package/dist/adapters/vti-mediator.d.ts +36 -8
  4. package/dist/adapters/vti-mediator.d.ts.map +1 -1
  5. package/dist/adapters/vti-mediator.js +193 -29
  6. package/dist/adapters/vti-mediator.js.map +1 -1
  7. package/dist/codec.d.ts +2 -1
  8. package/dist/codec.d.ts.map +1 -1
  9. package/dist/codec.js +75 -26
  10. package/dist/codec.js.map +1 -1
  11. package/dist/engine.d.ts +77 -4
  12. package/dist/engine.d.ts.map +1 -1
  13. package/dist/engine.js +419 -31
  14. package/dist/engine.js.map +1 -1
  15. package/dist/entropy.d.ts +1 -1
  16. package/dist/entropy.d.ts.map +1 -1
  17. package/dist/entropy.js +1 -1
  18. package/dist/entropy.js.map +1 -1
  19. package/dist/events.d.ts +21 -0
  20. package/dist/events.d.ts.map +1 -1
  21. package/dist/events.js.map +1 -1
  22. package/dist/holder-api.d.ts +44 -2
  23. package/dist/holder-api.d.ts.map +1 -1
  24. package/dist/holder-api.js +40 -5
  25. package/dist/holder-api.js.map +1 -1
  26. package/dist/{holder-state-v1.d.ts → holder-state-v3.d.ts} +261 -201
  27. package/dist/holder-state-v3.d.ts.map +1 -0
  28. package/dist/holder-state-v3.js +2 -0
  29. package/dist/holder-state-v3.js.map +1 -0
  30. package/dist/index.d.ts +3 -2
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +10 -6
  33. package/dist/index.js.map +1 -1
  34. package/dist/internal.d.ts +2 -2
  35. package/dist/internal.d.ts.map +1 -1
  36. package/dist/internal.js +1 -1
  37. package/dist/internal.js.map +1 -1
  38. package/dist/introduction/holder.d.ts.map +1 -1
  39. package/dist/introduction/holder.js +7 -0
  40. package/dist/introduction/holder.js.map +1 -1
  41. package/dist/invariants.d.ts.map +1 -1
  42. package/dist/invariants.js +70 -0
  43. package/dist/invariants.js.map +1 -1
  44. package/dist/membership/holder.d.ts +3 -5
  45. package/dist/membership/holder.d.ts.map +1 -1
  46. package/dist/membership/holder.js +165 -88
  47. package/dist/membership/holder.js.map +1 -1
  48. package/dist/membership.d.ts +31 -0
  49. package/dist/membership.d.ts.map +1 -1
  50. package/dist/membership.js +25 -2
  51. package/dist/membership.js.map +1 -1
  52. package/dist/message/holder.d.ts +49 -0
  53. package/dist/message/holder.d.ts.map +1 -0
  54. package/dist/message/holder.js +290 -0
  55. package/dist/message/holder.js.map +1 -0
  56. package/dist/message.d.ts +43 -0
  57. package/dist/message.d.ts.map +1 -0
  58. package/dist/message.js +51 -0
  59. package/dist/message.js.map +1 -0
  60. package/dist/receive.d.ts +4 -3
  61. package/dist/receive.d.ts.map +1 -1
  62. package/dist/receive.js +23 -4
  63. package/dist/receive.js.map +1 -1
  64. package/dist/results.d.ts +22 -3
  65. package/dist/results.d.ts.map +1 -1
  66. package/dist/results.js.map +1 -1
  67. package/dist/schemas.d.ts.map +1 -1
  68. package/dist/schemas.js +9 -6
  69. package/dist/schemas.js.map +1 -1
  70. package/dist/state.d.ts +88 -14
  71. package/dist/state.d.ts.map +1 -1
  72. package/dist/state.js +2 -1
  73. package/dist/state.js.map +1 -1
  74. package/dist/trust/continuity.d.ts.map +1 -1
  75. package/dist/trust/continuity.js +7 -1
  76. package/dist/trust/continuity.js.map +1 -1
  77. package/dist/trust/entries.d.ts.map +1 -1
  78. package/dist/trust/entries.js +103 -2
  79. package/dist/trust/entries.js.map +1 -1
  80. package/dist/views.d.ts +34 -2
  81. package/dist/views.d.ts.map +1 -1
  82. package/dist/views.js +19 -1
  83. package/dist/views.js.map +1 -1
  84. package/dist/wire.d.ts +47 -6
  85. package/dist/wire.d.ts.map +1 -1
  86. package/dist/wire.js.map +1 -1
  87. package/package.json +6 -4
  88. package/schemas/{holder-state-v1.schema.json → holder-state-v3.schema.json} +300 -12
  89. package/dist/holder-state-v1.d.ts.map +0 -1
  90. package/dist/holder-state-v1.js +0 -2
  91. package/dist/holder-state-v1.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"holder-state-v3.d.ts","sourceRoot":"","sources":["../src/holder-state-v3.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=holder-state-v3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"holder-state-v3.js","sourceRoot":"","sources":["../src/holder-state-v3.ts"],"names":[],"mappings":"","sourcesContent":["// GENERATED by scripts/build-holder-state-types.mjs — DO NOT EDIT.\n// Source: lib/schemas/holder-state-v3.schema.json (NON-NORMATIVE: the\n// library's storage format at codec 3, not a protocol artifact). The\n// structural projection only; the codec's validator (codec.ts) and the\n// schema carry what a type cannot. holder-state-check.ts holds this type\n// and state.ts's HolderState against each other.\nimport type { Json } from './core.js'\n\n/** NON-NORMATIVE. The stored state of an @real-life/trust-protocol holder at codec 3 (lib/src/codec.ts): the library's storage format, not a protocol artifact. lib/src/holder-state-v3.ts is generated from it (scripts/build-holder-state-types.mjs). Not expressible here and checked by the codec alone: a record's id equals its key (contacts, relationships, groups, duties, rotations, prompts, acts, roster, invitations, records, introductions, offers, challenges, the inbox), an envelope's rkid equals its recipient's keyAgreement, and a set of strings (joining.surfaced, joining.declined, messages.blocked, messages.ready) is sorted. A stored acknowledgement counts as sent exactly when it names why (sentBy), and only an unsent one may be held by the adapter (held); the schema states both, and that a due answer (answerDue) comes with its number (answers). */\nexport type HolderStateV3 = {\n codec: 3\n commitSeq: DecV3\n lastWhen: MillisV3\n register: {\n labels: string[]\n pairNonces: Record<string, string>\n carriers: Record<string, {\n nonce: string\n generation: DecV3\n }[]>\n devices: {\n names: string[]\n revoked: string[]\n }\n community: ({\n genesis: string\n head: DecV3\n }) | (null)\n lineage: { [k: string]: Json }[]\n }\n addresses: {\n keys: Record<string, {\n label: string\n lastShown: MillisV3\n retiredAt?: MillisV3\n }>\n tombstones: string[]\n }\n contacts: Record<string, ContactV3>\n relationships: Record<string, RelationshipV3>\n entryOrder: {\n nextPos: DecV3\n heads: string[]\n }\n groups: Record<string, GroupV3>\n profile: {\n body: Json\n revision: DecV3\n }\n effects: Record<string, {\n ack: (StoredAckV3) | (null)\n expiresAt: MillisV3\n }>\n outbox: Record<string, OutboxItemV3>\n duties: Record<string, DutyV3>\n rotations: Record<string, RotationV3>\n prompts: Record<string, PromptV3>\n acts: Record<string, ActRecordV3>\n encounter: {\n challenges: Record<string, {\n value: string\n tCh: MillisV3\n label: string\n card: { [k: string]: Json }\n }>\n records: Record<string, EnactmentRecordV3>\n introductions: Record<string, IntroActV3>\n offers: Record<string, {\n id: string\n mediatorContactId: string\n pin: string\n target: string\n at: MillisV3\n label?: string\n }>\n designators: Record<string, string>\n declarations: Record<string, {\n issuer: string\n role: string\n revision: DecV3\n constants: Record<string, string>\n at: MillisV3\n }>\n }\n joining: {\n preludes: Record<string, {\n group: string\n inviter: string\n contactId: string\n rkid: string\n memberLabel: string\n at: MillisV3\n }>\n invites: Record<string, {\n credDigest: string\n group: string\n name: string\n /** the contact of the relationship its prelude binding attributed it to (RLTP-MT-3100); absent for an invitation attributed to none */\n contactId?: string\n rkid?: string\n memberLabel: string\n invite: { [k: string]: Json }\n promptId: string\n validUntil: MillisV3\n status: \"open\" | \"accepted\" | \"declined\" | \"joined\"\n at: MillisV3\n acceptDigest?: string\n }>\n /** the credential digest of every invitation surfaced, for the life of the holder (RLTP-MT-3130); sorted */\n surfaced: string[]\n /** the register of declined invitations (Message Tasks 6.4): credential digests, holder-wide, for the life of the holder; sorted */\n declined: string[]\n }\n /** Message Tasks 0.1 on the holder (message/holder.ts); the time mark of RLTP-MSG-4060 is lastWhen */\n messages: {\n /** the relationships under a block (Message Tasks 6.1), by relationship id; sorted */\n blocked: string[]\n /** per relationship id: acceptance times inside the last 24 hours (Message Tasks 4.2) */\n rates: Record<string, {\n invites: MillisV3[]\n messages: MillisV3[]\n }>\n /** the own pair labels of the ready tuples (Message Tasks 5.1); sorted */\n ready: string[]\n /** the completion record (Message Tasks 4.4), per own pair label: mid → bodyDigest and sentAt */\n records: Record<string, Record<string, {\n bodyDigest: string\n sentAt: MillisV3\n }>>\n /** the inbox (Message Tasks 4.5), by the accepted document digest */\n inbox: Record<string, {\n id: string\n tuple: string\n mid: string\n body: { [k: string]: Json }\n receivedAt: MillisV3\n displayAt: MillisV3\n }>\n }\n}\n\n/** a counter as a canonical decimal string */\nexport type DecV3 = string\n\n/** milliseconds since the epoch, a safe non-negative integer */\nexport type MillisV3 = number\n\nexport type SettingV3 = \"default\" | \"on\" | \"off\"\n\nexport type TrustClassV3 = \"star\" | \"groupStar\" | \"anchorMapping\" | \"sealedGroupStar\" | \"profile\"\n\nexport type RecipientV3 = {\n contactId: string\n rkid: string\n keyAgreement: string\n anchor?: string\n via?: string\n}\n\nexport type EnvelopeV3 = {\n rkid: string\n epk: string\n nonce: string\n ciphertext: string\n}\n\nexport type AssemblyV3 = {\n salt: DecV3\n chunks: { [k: string]: Json }\n}\n\nexport type StarPairV3 = {\n member: string\n head: string\n}\n\nexport type GroupStarItemV3 = ({\n group: string\n mode: \"digest\"\n}) | ({\n group: string\n mode: \"sealed\"\n member: string\n memberOp: string\n})\n\nexport type StarOutInflightV3 = {\n view: StarPairV3[]\n viewDigest: string\n digests: string[]\n acked: string[]\n}\n\n/** the sender side of one reconciled sequence (5.4); snapshot and snapshotDigest are null together */\nexport type StarOutV3 = {\n lastSalt: DecV3\n exhausted: boolean\n hwm: DecV3\n snapshot: (StarPairV3[]) | (null)\n snapshotDigest: (string) | (null)\n inflight: Record<string, StarOutInflightV3>\n}\n\nexport type StarInV3 = {\n hwm: DecV3\n lowerBound: DecV3\n assembly: (AssemblyV3) | (null)\n accepted: ({\n salt: DecV3\n blinded: string[]\n matches: string[]\n }) | (null)\n}\n\nexport type GroupStarOutInflightV3 = {\n view: GroupStarItemV3[]\n viewDigest: string\n digests: string[]\n acked: string[]\n}\n\n/** the sender side of one reconciled sequence (5.4); snapshot and snapshotDigest are null together */\nexport type GroupStarOutV3 = {\n lastSalt: DecV3\n exhausted: boolean\n hwm: DecV3\n snapshot: (GroupStarItemV3[]) | (null)\n snapshotDigest: (string) | (null)\n inflight: Record<string, GroupStarOutInflightV3>\n}\n\nexport type GroupStarInV3 = {\n hwm: DecV3\n lowerBound: DecV3\n assembly: (AssemblyV3) | (null)\n accepted: ({\n salt: DecV3\n entries: {\n d: string\n c: string\n }[]\n groups: string[]\n }) | (null)\n}\n\nexport type ContinuityDueV3 = ({\n kind: \"choice\"\n prior: string\n alts: string[]\n}) | ({\n kind: \"report\" | \"align\"\n prior: string\n})\n\nexport type LogHeadV3 = ({\n genesis: string\n empty: true\n}) | ({\n genesis: string\n entryId: string\n gen: number\n next: string\n commit: string\n})\n\n/** one enactment's tuple of a relationship (Trust 6.4) */\nexport type TupleV3 = {\n ownPairLabel: string\n counterpartAnchor: string\n counterpartKeyAgreement: string\n rkid: string\n entryId: string\n priorCandidates: {\n ownPairLabel: string\n counterpartAnchor: string\n replaces?: string[]\n }[]\n starOut: StarOutV3\n starIn: StarInV3\n groupStarOut: GroupStarOutV3\n groupStarIn: GroupStarInV3\n probeOut: {\n seq: DecV3\n inflight: Record<string, {\n digests: string[]\n acked: string[]\n }>\n done: boolean\n }\n probeIn: {\n hwm: DecV3\n lowerBound: DecV3\n assembly: (AssemblyV3) | (null)\n }\n continuityOut: {\n rev: DecV3\n body: Json\n proof: Json\n sent: string[]\n align: boolean\n chosen: (string) | (null)\n reported: (string) | (null)\n aligned: boolean\n due: (ContinuityDueV3) | (null)\n }\n continuityIn: {\n rev: DecV3\n body: Json\n recordPrior: (string) | (null)\n }\n mappingOut: {\n rev: DecV3\n body: Json\n underAnchor: (string) | (null)\n }\n mappingIn: {\n rev: DecV3\n body: Json\n self: (string) | (null)\n card: Json\n }\n profileOut: {\n rev: DecV3\n }\n profileIn: {\n rev: DecV3\n body: Json\n verifiedSeq: DecV3\n }\n deactivated: boolean\n}\n\nexport type RelationshipV3 = {\n id: string\n contactId: string\n tuples: TupleV3[]\n activeHead: string\n earliestAnchor: (string) | (null)\n links: {\n prev: string\n next: string\n }[]\n bindings: Record<string, string[]>\n heldCounterpartHead: (string) | (null)\n memory: { [k: string]: Json }\n provenance: {\n kind: \"ceremony\" | \"introduced\"\n at: MillisV3\n via?: string\n viaPin?: string\n }\n chainedInto: (string) | (null)\n firstVerified: (DecV3) | (null)\n}\n\n/** one entry of the deliverable set (Trust 2120, 2140); its id equals its key */\nexport type ContactV3 = {\n id: string\n pos: (DecV3) | (null)\n status: \"none\" | \"admitted\" | \"pending\"\n aliases: string[]\n relIds: string[]\n anchorHead: (string) | (null)\n settings: {\n star: SettingV3\n groupStar: SettingV3\n anchorMapping: SettingV3\n sealedGroupStar: SettingV3\n profile: SettingV3\n }\n groupSettings: Record<string, SettingV3>\n}\n\nexport type OutboxStepV3 = ({\n status: \"submitted\"\n at: MillisV3\n attempt: number\n}) | ({\n status: \"awaiting-transport\"\n at: MillisV3\n reason: \"offline\" | \"transport-unreachable\" | \"carrier-refused-retriable\"\n}) | ({\n status: \"accepted\"\n at: MillisV3\n}) | ({\n status: \"delivered\"\n at: MillisV3\n late: boolean\n}) | ({\n status: \"failed\"\n at: MillisV3\n reason: \"unroutable\" | \"oversize\" | \"expired-by-adapter-policy\" | \"task-expired\"\n}) | ({\n status: \"failed\"\n at: MillisV3\n reason: \"rejected-by-receiver\"\n code: \"malformedRequest\" | \"unsupportedType\" | \"proofRequired\" | \"proofInvalid\" | \"wrongRecipient\" | \"identityMismatch\"\n})\n\n/** an issued document; its envelope's rkid equals recipient.keyAgreement (not expressible here, checked by the codec) */\nexport type OutboxItemV3 = {\n type: string\n threadId: string\n recipient: RecipientV3\n envelope: EnvelopeV3\n attempt: number\n history: OutboxStepV3[]\n nextAttemptAt?: MillisV3\n /** the sender lifetime its type declares (Delivery RLTP-DEL-7020) */\n expiresAt?: MillisV3\n}\n\nexport type StoredAckV3 = {\n digest: string\n envelope: EnvelopeV3\n threadId: string\n recipient: RecipientV3\n at: MillisV3\n attempt: number\n sent: boolean\n nextAttemptAt?: MillisV3\n sentBy?: \"accepted\" | \"failed\" | \"horizon\"\n held?: \"offline\" | \"transport-unreachable\" | \"carrier-refused-retriable\"\n answers?: number\n answerDue?: true\n}\n\nexport type ReissueMappingDutyV3 = {\n kind: \"reissue-mapping\"\n v: 1\n id: string\n contactId: string\n relId: string\n awaitHead: (string) | (null)\n dueAt?: MillisV3\n}\n\nexport type ClassOnDutyV3 = {\n kind: \"class-on\"\n v: 1\n id: string\n contactId: string\n relId: string\n cls: TrustClassV3\n dueAt?: MillisV3\n}\n\nexport type ProfileDutyV3 = {\n kind: \"profile\"\n v: 1\n id: string\n contactId: string\n relId: string\n rev: DecV3\n dueAt?: MillisV3\n}\n\nexport type ContinuityDutyV3 = {\n kind: \"continuity\"\n v: 1\n id: string\n relId: string\n tuple: string\n step: \"probe\" | \"mapping\"\n dueAt?: MillisV3\n attempt?: number\n lastAt?: MillisV3\n}\n\nexport type MergeDutyV3 = {\n kind: \"merge\"\n v: 1\n id: string\n entryIds: string[]\n relId: string\n witness: {\n heads: Record<string, string>\n superseded: Record<string, string[]>\n }\n dueAt?: MillisV3\n}\n\nexport type RotationDutyV3 = {\n kind: \"rotation\"\n v: 1\n id: string\n rotationId: string\n dueAt?: MillisV3\n attempt?: number\n lastAt?: MillisV3\n}\n\nexport type IntroAckDutyV3 = {\n kind: \"intro-ack\"\n v: 1\n id: string\n act: string\n dueAt?: MillisV3\n}\n\n/** a duty of a kind or version this library does not handle: kept as it is */\nexport type UnknownDutyV3 = {\n kind: string\n v: number\n id: string\n [k: string]: Json\n}\n\nexport type DutyV3 = (ReissueMappingDutyV3) | (ClassOnDutyV3) | (ProfileDutyV3) | (ContinuityDutyV3) | (MergeDutyV3) | (RotationDutyV3) | (IntroAckDutyV3) | (UnknownDutyV3)\n\n/** a journaled event (events.ts) */\nexport type EventV3 = ({\n type: \"contact.added\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n actId?: string\n}) | ({\n type: \"contact.verified\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n relationshipId: string\n actId?: string\n}) | ({\n type: \"contact.chained\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n from: string\n into: string\n actId?: string\n}) | ({\n type: \"contact.merged\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n merged: string[]\n actId?: string\n}) | ({\n type: \"contact.split\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n leaver: string\n relationshipId: string\n actId?: string\n}) | ({\n type: \"contact.departed\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n relationshipIds: string[]\n removed: boolean\n actId?: string\n}) | ({\n type: \"trust.given\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n actId?: string\n}) | ({\n type: \"trust.received\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n actId?: string\n}) | ({\n type: \"trust.paused\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n paused: boolean\n actId?: string\n}) | ({\n type: \"group.joined\"\n eventId: string\n commitSeq: DecV3\n groupId: string\n actId?: string\n}) | ({\n type: \"prompt.opened\"\n eventId: string\n commitSeq: DecV3\n promptId: string\n kind: \"encounter-confirm\" | \"group-invite\" | \"introduction\"\n actId?: string\n}) | ({\n type: \"prompt.decided\"\n eventId: string\n commitSeq: DecV3\n promptId: string\n kind: \"encounter-confirm\" | \"group-invite\" | \"introduction\"\n choice: \"accept\" | \"decline\"\n actId?: string\n}) | ({\n type: \"delivery.status\"\n eventId: string\n commitSeq: DecV3\n digest: string\n threadId: string\n status: \"submitted\" | \"accepted\" | \"delivered\" | \"failed\"\n actId?: string\n late?: boolean\n}) | ({\n type: \"profile.updated\"\n eventId: string\n commitSeq: DecV3\n contactId: (string) | (null)\n actId?: string\n}) | ({\n type: \"anchor.rotated\"\n eventId: string\n commitSeq: DecV3\n generation: DecV3\n actId?: string\n}) | ({\n type: \"device.added\"\n eventId: string\n commitSeq: DecV3\n name: string\n actId?: string\n}) | ({\n type: \"device.revoked\"\n eventId: string\n commitSeq: DecV3\n name: string\n actId?: string\n}) | ({\n type: \"duty.unsupported\"\n eventId: string\n commitSeq: DecV3\n dutyId: string\n kind: string\n v: number\n actId?: string\n}) | ({\n type: \"star.accepted\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n relationshipId: string\n salt: DecV3\n actId?: string\n}) | ({\n type: \"groupStar.accepted\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n relationshipId: string\n salt: DecV3\n actId?: string\n}) | ({\n type: \"encounter.shown\"\n eventId: string\n commitSeq: DecV3\n challenge: string\n card: { [k: string]: Json }\n actId?: string\n}) | ({\n type: \"encounter.scanned\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n card: { [k: string]: Json }\n actId?: string\n}) | ({\n type: \"encounter.recorded\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n relationshipId: string\n role: \"scanner\" | \"displayer\"\n actId?: string\n}) | ({\n type: \"encounter.accepted\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n relationshipId: string\n mutual: boolean\n actId?: string\n}) | ({\n type: \"group.founded\"\n eventId: string\n commitSeq: DecV3\n groupId: string\n actId?: string\n}) | ({\n type: \"group.admitted\"\n eventId: string\n commitSeq: DecV3\n groupId: string\n member: string\n actId?: string\n}) | ({\n type: \"group.vouched\"\n eventId: string\n commitSeq: DecV3\n groupId: string\n member: string\n actId?: string\n}) | ({\n type: \"contact.blocked\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n blocked: boolean\n actId?: string\n}) | ({\n type: \"message.sent\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n mid: string\n digest: string\n actId?: string\n}) | ({\n type: \"message.received\"\n eventId: string\n commitSeq: DecV3\n contactId: string\n inboxId: string\n actId?: string\n})\n\nexport type RosterEntryV3 = {\n anchor: string\n op: string\n keyAgreement: string\n addedAt: MillisV3\n name?: string\n contactId?: string\n rkid?: string\n}\n\nexport type OpenInvitationV3 = {\n invitee: string\n keyAgreement: string\n contactId: string\n rkid: string\n threadId: string\n credDigest: string\n invite: { [k: string]: Json }\n validUntil: MillisV3\n}\n\nexport type EvidenceV3 = {\n invite: { [k: string]: Json }\n accept: { [k: string]: Json }\n vouches: { [k: string]: Json }[]\n at: MillisV3\n}\n\n/** a group the holder is in; a listed group carries memberAnchor and memberOp (Trust 5400) */\nexport type GroupV3 = {\n id: string\n name: string\n memberLabel: string\n rules: {\n vouchThreshold: DecV3\n }\n listed: boolean\n roster: Record<string, RosterEntryV3>\n invitations: Record<string, OpenInvitationV3>\n evidence: Record<string, EvidenceV3>\n preludes: Record<string, {\n contactId: string\n rkid: string\n at: MillisV3\n }>\n did?: string\n genesis?: { [k: string]: Json }\n memberAnchor?: string\n memberOp?: string\n acceptDigest?: string\n}\n\nexport type HeldCredentialV3 = {\n digest: string\n credential: { [k: string]: Json }\n}\n\nexport type EnactmentRecordV3 = {\n ceremony: string\n own: string\n tCh: MillisV3\n peer: string\n counterpart: string\n card: { [k: string]: Json }\n bind: string\n at: MillisV3\n label: string\n relId: string\n role: \"scanner\" | \"displayer\"\n out: (HeldCredentialV3) | (null)\n in: (HeldCredentialV3) | (null)\n thread: (string) | (null)\n bundleDigest: (string) | (null)\n threads: Record<string, string>\n sentCard: ({ [k: string]: Json }) | (null)\n counterPending: boolean\n}\n\nexport type IntroActV3 = {\n key: string\n act: string\n role: \"requester\" | \"mediator\" | \"target\"\n status: \"sent\" | \"acked\" | \"completed\" | \"failed\" | \"received\" | \"forwarded\" | \"consented\" | \"refused\"\n issuedAt: MillisV3\n request: { [k: string]: Json }\n requestCard: { [k: string]: Json }\n reply: ({ [k: string]: Json }) | (null)\n replyCard: ({ [k: string]: Json }) | (null)\n pins: {\n requester?: string\n target?: string\n mediator?: string\n }\n threads: {\n request: string\n forward?: string\n }\n at: MillisV3\n ackDelayMs: number\n ownLabel: (string) | (null)\n ack: ({ [k: string]: Json }) | (null)\n replyForwarded: boolean\n vouchersSent: boolean\n pendingVoucher: ({ [k: string]: Json }) | (null)\n voucher: ({ [k: string]: Json }) | (null)\n vouched: boolean\n promptId: (string) | (null)\n peerName?: string\n}\n\nexport type RotationV3 = {\n id: string\n from: DecV3\n to: DecV3\n step: \"register\" | \"log\" | \"duties\"\n startedAt: MillisV3\n entry: Json\n overHead: LogHeadV3\n awaitHead: Record<string, (string) | (null)>\n}\n\nexport type PromptV3 = {\n id: string\n kind: \"encounter-confirm\" | \"group-invite\" | \"introduction\"\n openedAt: MillisV3\n contactId?: string\n groupId?: string\n expiresAt?: MillisV3\n}\n\nexport type ActRecordV3 = {\n actId: string\n inputHash: string\n commitSeq: DecV3\n outboundDigests: string[]\n events: EventV3[]\n at: MillisV3\n}\n"]}
package/dist/index.d.ts CHANGED
@@ -3,6 +3,7 @@ export * from './crypto.js';
3
3
  export * from './identity.js';
4
4
  export * from './encounter.js';
5
5
  export * from './membership.js';
6
+ export * from './message.js';
6
7
  export * from './introduction.js';
7
8
  export * from './delivery.js';
8
9
  export * from './carrier-identity.js';
@@ -30,7 +31,7 @@ export { seedKeys } from './keys-seed.js';
30
31
  export { createHolder } from './holder-api.js';
31
32
  export type { Holder, HolderOptions, HolderSnapshot, HumanActOptions } from './holder-api.js';
32
33
  export type { DeviceKeyResult } from './identity-state.js';
33
- export type { ContactView, RelationshipView, ClassView, SealedClassView, ClassesView, ContactProfileView, GroupView, ProfileView, PromptView, DeliveryItemView, DeliveryStatusView } from './views.js';
34
- export type { EnginePorts, CommitListener, CryptoHandle } from './engine.js';
34
+ export type { ContactView, RelationshipView, ClassView, SealedClassView, ClassesView, ContactProfileView, GroupView, ProfileView, PromptView, InboxMessageView, DeliveryItemView, DeliveryStatusView } from './views.js';
35
+ export type { EnginePorts, CommitListener, CryptoHandle, TransportEntry, TransportView, TransportRefusal } from './engine.js';
35
36
  export type { ContractHarness } from './store-contract.js';
36
37
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAqEA,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA;AACnC,OAAO,EACL,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAC1H,eAAe,EAAE,YAAY,GAC9B,MAAM,cAAc,CAAA;AACrB,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC7G,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACnD,YAAY,EAAE,iBAAiB,IAAI,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAClJ,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AACrD;4DAC4D;AAC5D,wBAAgB,WAAW,CAAE,GAAG,EAAE,OAAO,GAAG,iBAAiB,CAE5D;AACD,mBAAmB,YAAY,CAAA;AAC/B,mBAAmB,aAAa,CAAA;AAChC,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAA;AACjE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AACpI,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5E,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7F,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAC7F,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,kBAAkB,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACtM,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC5E,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAwEA,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA;AACnC,OAAO,EACL,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAC1H,eAAe,EAAE,YAAY,GAC9B,MAAM,cAAc,CAAA;AACrB,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC7G,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACnD,YAAY,EAAE,iBAAiB,IAAI,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAClJ,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AACrD;4DAC4D;AAC5D,wBAAgB,WAAW,CAAE,GAAG,EAAE,OAAO,GAAG,iBAAiB,CAE5D;AACD,mBAAmB,YAAY,CAAA;AAC/B,mBAAmB,aAAa,CAAA;AAChC,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAA;AACjE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AACpI,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5E,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7F,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAC7F,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,kBAAkB,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACxN,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC7H,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA"}
package/dist/index.js CHANGED
@@ -16,8 +16,9 @@
16
16
  // the picture's header read before any decoding
17
17
  // encounter the ceremony's wire forms: challenges, cards, credentials,
18
18
  // and its pure checks (5.6 acceptance, the bundle's forms)
19
- // membership Membership 0.19's forms and checks: invite, accept,
20
- // evidence, vouch@2, the member label, oids
19
+ // membership Membership 0.20's forms and checks: the prelude,
20
+ // invite, accept, evidence, vouch@2, the member label, oids
21
+ // message Message Tasks 0.1's forms: message@1, k_msg, the MAC
21
22
  // introduction Trust §8's artifacts and checks, the act window, the
22
23
  // registry declaration's ack-delay
23
24
  // delivery the sealed envelope and the generic receive stages 1–4
@@ -36,13 +37,15 @@
36
37
  // The holder (holder-api.ts): the typed human acts (trust, untrust,
37
38
  // pauseTrust, setClass, setGroupClass, merge, depart, decide, rotateAnchor,
38
39
  // setProfile, addDevice, revokeDevice, show, scan, captureSentCard,
39
- // counter, foundGroup, invite, vouchFor, introduce; {when, actId}), recover,
40
- // act, receive, tick, resume, report, subscribe, snapshot, deviceKey and the
41
- // views contacts, contact, groups, profile, prompts, deliveryStatus;
40
+ // counter, foundGroup, invite, vouchFor, introduce, sendMessage, block,
41
+ // unblock; {when, actId}), recover, takeMessages, act, receive, tick,
42
+ // resume, report, subscribe, snapshot, deviceKey and the views contacts,
43
+ // contact, groups, profile, prompts, inbox, deliveryStatus;
42
44
  // `invariants: true` checks invariants.ts on every commit (testing mode).
43
45
  // Its modules: identity (Identity §2, §5.4, §5.5), trust (Trust 2, 2a,
44
46
  // 5.2–5.4, 6.1–6.5, 6a, 6b), encounter (Encounter 0.31 §5–§7), membership
45
- // (Membership 0.19 with an in-library Access) and introduction (Trust §8).
47
+ // (Membership 0.20 with an in-library Access), introduction (Trust §8) and
48
+ // message (Message Tasks 0.1: messages, the inbox, the block).
46
49
  //
47
50
  // views the view types (ContactView, …)
48
51
  // keys-seed seedKeys — the default KeyProvider over a root seed
@@ -71,6 +74,7 @@ export * from './crypto.js';
71
74
  export * from './identity.js';
72
75
  export * from './encounter.js';
73
76
  export * from './membership.js';
77
+ export * from './message.js';
74
78
  export * from './introduction.js';
75
79
  export * from './delivery.js';
76
80
  export * from './carrier-identity.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,EAAE;AACF,0EAA0E;AAC1E,wEAAwE;AACxE,yEAAyE;AACzE,uEAAuE;AACvE,uEAAuE;AACvE,0EAA0E;AAC1E,WAAW;AACX,EAAE;AACF,4EAA4E;AAC5E,mEAAmE;AACnE,gFAAgF;AAChF,0DAA0D;AAC1D,2EAA2E;AAC3E,oEAAoE;AACpE,iFAAiF;AACjF,+EAA+E;AAC/E,0EAA0E;AAC1E,gEAAgE;AAChE,2EAA2E;AAC3E,uDAAuD;AACvD,6EAA6E;AAC7E,wEAAwE;AACxE,yEAAyE;AACzE,6EAA6E;AAC7E,2CAA2C;AAC3C,+EAA+E;AAC/E,oEAAoE;AACpE,2DAA2D;AAC3D,6DAA6D;AAC7D,0EAA0E;AAC1E,0EAA0E;AAC1E,2EAA2E;AAC3E,EAAE;AACF,oEAAoE;AACpE,4EAA4E;AAC5E,oEAAoE;AACpE,6EAA6E;AAC7E,6EAA6E;AAC7E,qEAAqE;AACrE,0EAA0E;AAC1E,uEAAuE;AACvE,0EAA0E;AAC1E,2EAA2E;AAC3E,EAAE;AACF,sDAAsD;AACtD,0EAA0E;AAC1E,4EAA4E;AAC5E,sDAAsD;AACtD,gFAAgF;AAChF,gFAAgF;AAChF,wEAAwE;AACxE,yDAAyD;AACzD,4EAA4E;AAC5E,EAAE;AACF,sBAAsB;AACtB,gFAAgF;AAChF,yEAAyE;AACzE,8EAA8E;AAC9E,mDAAmD;AACnD,6EAA6E;AAC7E,8EAA8E;AAC9E,4EAA4E;AAC5E,6DAA6D;AAC7D,2EAA2E;AAC3E,EAAE;AACF,2EAA2E;AAE3E,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA;AACnC,OAAO,EACL,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAC1H,eAAe,EAAE,YAAY,GAC9B,MAAM,cAAc,CAAA;AAErB,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAG5D,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAEnD;4DAC4D;AAC5D,MAAM,UAAU,WAAW,CAAE,GAAY;IACvC,OAAO,gBAAgB,CAAC,GAAG,CAAiC,CAAA;AAC9D,CAAC;AAGD,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAA;AAEjE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAE5E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA","sourcesContent":["// @real-life/trust-protocol — the reference library of RLTP.\n//\n// The holder: createHolder({store, keys, entropy?, log?, access?, retry?,\n// crypto?}) — one person's device state behind the human acts, receive,\n// report, resume and tick, and the views an app reads. The ports (Store,\n// KeyProvider, Entropy, Log, Access, DeliveryReport, Outbound) are the\n// app's; seedKeys is the default KeyProvider. Beside it, the pure wire\n// builders and verifiers of every layer, byte-compatible with the shipped\n// vectors.\n//\n// core the form every artifact obeys (JCS, digests, schemas)\n// crypto the primitives, and the Data Integrity proof\n// identity context derivation under the closed registry (§6.1/§6.2),\n// device labels device/<n>/<c> (§5.5)\n// profile profile@1 (Trust §6b): k_pr, the MAC, the bounds and\n// the picture's header read before any decoding\n// encounter the ceremony's wire forms: challenges, cards, credentials,\n// and its pure checks (5.6 acceptance, the bundle's forms)\n// membership Membership 0.19's forms and checks: invite, accept,\n// evidence, vouch@2, the member label, oids\n// introduction Trust §8's artifacts and checks, the act window, the\n// registry declaration's ack-delay\n// delivery the sealed envelope and the generic receive stages 1–4\n// carrier-identity the carrier-relationship principal (Identity §7a)\n// carrier the carrier side of the port (Delivery §4.4 + §5a)\n// carrier-holder the holder side of the carrier port: proofs, verdicts,\n// recovery (§5a, §9.3)\n// visibility the Trust Layer's wire forms, pure: anchor (self-card@2,\n// anchor-rotation@2, anchor-mapping@4), star@2,\n// group-star@1, continuity-probe@1 and\n// continuity-mapping@1, delivery-ack/0.1\n// ceremony the encounter's, the group's and the introduction's\n// wire forms, pure (the same as the root's encounter,\n// membership and introduction modules, under one name)\n//\n// The holder (holder-api.ts): the typed human acts (trust, untrust,\n// pauseTrust, setClass, setGroupClass, merge, depart, decide, rotateAnchor,\n// setProfile, addDevice, revokeDevice, show, scan, captureSentCard,\n// counter, foundGroup, invite, vouchFor, introduce; {when, actId}), recover,\n// act, receive, tick, resume, report, subscribe, snapshot, deviceKey and the\n// views contacts, contact, groups, profile, prompts, deliveryStatus;\n// `invariants: true` checks invariants.ts on every commit (testing mode).\n// Its modules: identity (Identity §2, §5.4, §5.5), trust (Trust 2, 2a,\n// 5.2–5.4, 6.1–6.5, 6a, 6b), encounter (Encounter 0.31 §5–§7), membership\n// (Membership 0.19 with an in-library Access) and introduction (Trust §8).\n//\n// views the view types (ContactView, …)\n// keys-seed seedKeys — the default KeyProvider over a root seed\n// state HolderState — opaque here (note §4.5): store adapters\n// persist it, apps read the views\n// codec decodeState (to the opaque state), CODEC, StateCodecError\n// ports Store, KeyProvider, Log, Access, DeliveryReport, Outbound\n// results, events ActResult, ReceiveResult, InfraError, HolderEvent\n// entropy the Entropy port by closed purpose\n// store-contract storeContract — the test suite a Store adapter passes\n//\n// Other entry points:\n// ./testing InMemoryStore, memoryLog, scriptedEntropy, storeContract,\n// emptyState, stateBuilder, freezeDeep, sampleState,\n// openPromptModule, the invariants, forgeMapping, SCHEMAS\n// and the generated wire types\n// ./internal the structural state, encodeState and the codec chain,\n// the engine's module types, the pure view functions, the\n// modules' factories and pure reads — for the library's\n// modules and tests, not an app contract\n// ./adapters/vti-mediator the VTI mediator's reports as DeliveryReport\n//\n// Specification, schemas and vectors: https://trust-protocol.real-life.org\n\nexport * from './core.js'\nexport * from './crypto.js'\nexport * from './identity.js'\nexport * from './encounter.js'\nexport * from './membership.js'\nexport * from './introduction.js'\nexport * from './delivery.js'\nexport * from './carrier-identity.js'\nexport * from './carrier.js'\nexport * from './carrier-holder.js'\nexport {\n PROFILE_TYPE, PROFILE_LIMITS, profileSchemaOk, imageDimensions, imageWithinBounds, profileProblem, profileInfo, profileKey,\n assembleProfile, profileMacOk,\n} from './profile.js'\nexport type { ProfileContent, ProfileBody, ProfileArtifact, Dimensions, ImageDimensions } from './profile.js'\nexport * as visibility from './visibility.js'\nexport * as ceremony from './ceremony.js'\nimport { decodeState as decodeStructural } from './codec.js'\nimport type { OpaqueHolderState } from './state.js'\nexport type { OpaqueHolderState as HolderState, Dec, Millis, B64u, TrustClass, Setting, PromptKind, PromptChoice, OutboxStatus } from './state.js'\nexport { CODEC, StateCodecError } from './codec.js'\nexport type { StateCodecErrorCode } from './codec.js'\n/** Load a stored state (a JSON string or a parsed value): an independent,\n * opaque copy at the current codec, or StateCodecError. */\nexport function decodeState (raw: unknown): OpaqueHolderState {\n return decodeStructural(raw) as unknown as OpaqueHolderState\n}\nexport type * from './ports.js'\nexport type * from './events.js'\nexport { InfraError, CryptoUnavailableError } from './results.js'\nexport type { ActError, ActResult, ReceiveFailure, ReceiveStageNo, ReceiveResult, ResumeResult, InfraErrorCode } from './results.js'\nexport { ENTROPY_PURPOSES, EntropyError, randomEntropy } from './entropy.js'\nexport type { Entropy, EntropyPurpose, EntropyErrorCode, PlatformRandom } from './entropy.js'\nexport { storeContract } from './store-contract.js'\nexport { seedKeys } from './keys-seed.js'\nexport { createHolder } from './holder-api.js'\nexport type { Holder, HolderOptions, HolderSnapshot, HumanActOptions } from './holder-api.js'\nexport type { DeviceKeyResult } from './identity-state.js'\nexport type { ContactView, RelationshipView, ClassView, SealedClassView, ClassesView, ContactProfileView, GroupView, ProfileView, PromptView, DeliveryItemView, DeliveryStatusView } from './views.js'\nexport type { EnginePorts, CommitListener, CryptoHandle } from './engine.js'\nexport type { ContractHarness } from './store-contract.js'\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,EAAE;AACF,0EAA0E;AAC1E,wEAAwE;AACxE,yEAAyE;AACzE,uEAAuE;AACvE,uEAAuE;AACvE,0EAA0E;AAC1E,WAAW;AACX,EAAE;AACF,4EAA4E;AAC5E,mEAAmE;AACnE,gFAAgF;AAChF,0DAA0D;AAC1D,2EAA2E;AAC3E,oEAAoE;AACpE,iFAAiF;AACjF,+EAA+E;AAC/E,uEAAuE;AACvE,gFAAgF;AAChF,2EAA2E;AAC3E,2EAA2E;AAC3E,uDAAuD;AACvD,6EAA6E;AAC7E,wEAAwE;AACxE,yEAAyE;AACzE,6EAA6E;AAC7E,2CAA2C;AAC3C,+EAA+E;AAC/E,oEAAoE;AACpE,2DAA2D;AAC3D,6DAA6D;AAC7D,0EAA0E;AAC1E,0EAA0E;AAC1E,2EAA2E;AAC3E,EAAE;AACF,oEAAoE;AACpE,4EAA4E;AAC5E,oEAAoE;AACpE,wEAAwE;AACxE,sEAAsE;AACtE,yEAAyE;AACzE,4DAA4D;AAC5D,0EAA0E;AAC1E,uEAAuE;AACvE,0EAA0E;AAC1E,2EAA2E;AAC3E,+DAA+D;AAC/D,EAAE;AACF,sDAAsD;AACtD,0EAA0E;AAC1E,4EAA4E;AAC5E,sDAAsD;AACtD,gFAAgF;AAChF,gFAAgF;AAChF,wEAAwE;AACxE,yDAAyD;AACzD,4EAA4E;AAC5E,EAAE;AACF,sBAAsB;AACtB,gFAAgF;AAChF,yEAAyE;AACzE,8EAA8E;AAC9E,mDAAmD;AACnD,6EAA6E;AAC7E,8EAA8E;AAC9E,4EAA4E;AAC5E,6DAA6D;AAC7D,2EAA2E;AAC3E,EAAE;AACF,2EAA2E;AAE3E,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,mBAAmB,CAAA;AACjC,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA;AACnC,OAAO,EACL,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAC1H,eAAe,EAAE,YAAY,GAC9B,MAAM,cAAc,CAAA;AAErB,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAG5D,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAEnD;4DAC4D;AAC5D,MAAM,UAAU,WAAW,CAAE,GAAY;IACvC,OAAO,gBAAgB,CAAC,GAAG,CAAiC,CAAA;AAC9D,CAAC;AAGD,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAA;AAEjE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAE5E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA","sourcesContent":["// @real-life/trust-protocol — the reference library of RLTP.\n//\n// The holder: createHolder({store, keys, entropy?, log?, access?, retry?,\n// crypto?}) — one person's device state behind the human acts, receive,\n// report, resume and tick, and the views an app reads. The ports (Store,\n// KeyProvider, Entropy, Log, Access, DeliveryReport, Outbound) are the\n// app's; seedKeys is the default KeyProvider. Beside it, the pure wire\n// builders and verifiers of every layer, byte-compatible with the shipped\n// vectors.\n//\n// core the form every artifact obeys (JCS, digests, schemas)\n// crypto the primitives, and the Data Integrity proof\n// identity context derivation under the closed registry (§6.1/§6.2),\n// device labels device/<n>/<c> (§5.5)\n// profile profile@1 (Trust §6b): k_pr, the MAC, the bounds and\n// the picture's header read before any decoding\n// encounter the ceremony's wire forms: challenges, cards, credentials,\n// and its pure checks (5.6 acceptance, the bundle's forms)\n// membership Membership 0.20's forms and checks: the prelude,\n// invite, accept, evidence, vouch@2, the member label, oids\n// message Message Tasks 0.1's forms: message@1, k_msg, the MAC\n// introduction Trust §8's artifacts and checks, the act window, the\n// registry declaration's ack-delay\n// delivery the sealed envelope and the generic receive stages 1–4\n// carrier-identity the carrier-relationship principal (Identity §7a)\n// carrier the carrier side of the port (Delivery §4.4 + §5a)\n// carrier-holder the holder side of the carrier port: proofs, verdicts,\n// recovery (§5a, §9.3)\n// visibility the Trust Layer's wire forms, pure: anchor (self-card@2,\n// anchor-rotation@2, anchor-mapping@4), star@2,\n// group-star@1, continuity-probe@1 and\n// continuity-mapping@1, delivery-ack/0.1\n// ceremony the encounter's, the group's and the introduction's\n// wire forms, pure (the same as the root's encounter,\n// membership and introduction modules, under one name)\n//\n// The holder (holder-api.ts): the typed human acts (trust, untrust,\n// pauseTrust, setClass, setGroupClass, merge, depart, decide, rotateAnchor,\n// setProfile, addDevice, revokeDevice, show, scan, captureSentCard,\n// counter, foundGroup, invite, vouchFor, introduce, sendMessage, block,\n// unblock; {when, actId}), recover, takeMessages, act, receive, tick,\n// resume, report, subscribe, snapshot, deviceKey and the views contacts,\n// contact, groups, profile, prompts, inbox, deliveryStatus;\n// `invariants: true` checks invariants.ts on every commit (testing mode).\n// Its modules: identity (Identity §2, §5.4, §5.5), trust (Trust 2, 2a,\n// 5.2–5.4, 6.1–6.5, 6a, 6b), encounter (Encounter 0.31 §5–§7), membership\n// (Membership 0.20 with an in-library Access), introduction (Trust §8) and\n// message (Message Tasks 0.1: messages, the inbox, the block).\n//\n// views the view types (ContactView, …)\n// keys-seed seedKeys — the default KeyProvider over a root seed\n// state HolderState — opaque here (note §4.5): store adapters\n// persist it, apps read the views\n// codec decodeState (to the opaque state), CODEC, StateCodecError\n// ports Store, KeyProvider, Log, Access, DeliveryReport, Outbound\n// results, events ActResult, ReceiveResult, InfraError, HolderEvent\n// entropy the Entropy port by closed purpose\n// store-contract storeContract — the test suite a Store adapter passes\n//\n// Other entry points:\n// ./testing InMemoryStore, memoryLog, scriptedEntropy, storeContract,\n// emptyState, stateBuilder, freezeDeep, sampleState,\n// openPromptModule, the invariants, forgeMapping, SCHEMAS\n// and the generated wire types\n// ./internal the structural state, encodeState and the codec chain,\n// the engine's module types, the pure view functions, the\n// modules' factories and pure reads — for the library's\n// modules and tests, not an app contract\n// ./adapters/vti-mediator the VTI mediator's reports as DeliveryReport\n//\n// Specification, schemas and vectors: https://trust-protocol.real-life.org\n\nexport * from './core.js'\nexport * from './crypto.js'\nexport * from './identity.js'\nexport * from './encounter.js'\nexport * from './membership.js'\nexport * from './message.js'\nexport * from './introduction.js'\nexport * from './delivery.js'\nexport * from './carrier-identity.js'\nexport * from './carrier.js'\nexport * from './carrier-holder.js'\nexport {\n PROFILE_TYPE, PROFILE_LIMITS, profileSchemaOk, imageDimensions, imageWithinBounds, profileProblem, profileInfo, profileKey,\n assembleProfile, profileMacOk,\n} from './profile.js'\nexport type { ProfileContent, ProfileBody, ProfileArtifact, Dimensions, ImageDimensions } from './profile.js'\nexport * as visibility from './visibility.js'\nexport * as ceremony from './ceremony.js'\nimport { decodeState as decodeStructural } from './codec.js'\nimport type { OpaqueHolderState } from './state.js'\nexport type { OpaqueHolderState as HolderState, Dec, Millis, B64u, TrustClass, Setting, PromptKind, PromptChoice, OutboxStatus } from './state.js'\nexport { CODEC, StateCodecError } from './codec.js'\nexport type { StateCodecErrorCode } from './codec.js'\n/** Load a stored state (a JSON string or a parsed value): an independent,\n * opaque copy at the current codec, or StateCodecError. */\nexport function decodeState (raw: unknown): OpaqueHolderState {\n return decodeStructural(raw) as unknown as OpaqueHolderState\n}\nexport type * from './ports.js'\nexport type * from './events.js'\nexport { InfraError, CryptoUnavailableError } from './results.js'\nexport type { ActError, ActResult, ReceiveFailure, ReceiveStageNo, ReceiveResult, ResumeResult, InfraErrorCode } from './results.js'\nexport { ENTROPY_PURPOSES, EntropyError, randomEntropy } from './entropy.js'\nexport type { Entropy, EntropyPurpose, EntropyErrorCode, PlatformRandom } from './entropy.js'\nexport { storeContract } from './store-contract.js'\nexport { seedKeys } from './keys-seed.js'\nexport { createHolder } from './holder-api.js'\nexport type { Holder, HolderOptions, HolderSnapshot, HumanActOptions } from './holder-api.js'\nexport type { DeviceKeyResult } from './identity-state.js'\nexport type { ContactView, RelationshipView, ClassView, SealedClassView, ClassesView, ContactProfileView, GroupView, ProfileView, PromptView, InboxMessageView, DeliveryItemView, DeliveryStatusView } from './views.js'\nexport type { EnginePorts, CommitListener, CryptoHandle, TransportEntry, TransportView, TransportRefusal } from './engine.js'\nexport type { ContractHarness } from './store-contract.js'\n"]}
@@ -1,12 +1,12 @@
1
1
  export type * from './state.js';
2
- export type { HolderStateV1 } from './holder-state-v1.js';
2
+ export type { HolderStateV3 } from './holder-state-v3.js';
3
3
  export { emptyState, triasOf, toOpaque } from './state.js';
4
4
  export { CODEC, MIGRATIONS, VALIDATORS, decodeState, encodeState, sameState, isKnownDuty, StateCodecError } from './codec.js';
5
5
  export type { StateCodecErrorCode, StateValidator } from './codec.js';
6
6
  export type { HolderModule, CommandDef, PrepareCtx, Prepared, Applied, Refusal, TaskHandler, DutyHandler, DutyCtx, SweepHandler, AckHandler, DecisionHandler, DecisionDef, DecisionFn, EventDraft, OutboundDraft, EngineSnapshot } from './engine.js';
7
7
  export type { Arrival, Channel, ReceivedDocument, TaskDiscarded, DiscardReason, TaskFailure, TaskRefusal } from './receive.js';
8
8
  export { SIGNATURE_CLASS } from './receive.js';
9
- export { contactsView, contactView, groupsView, profileView, promptsView, deliveryStatusView } from './views.js';
9
+ export { contactsView, contactView, groupsView, profileView, promptsView, inboxView, deliveryStatusView } from './views.js';
10
10
  export { DECIDE } from './prompts.js';
11
11
  export type { DecideInput } from './prompts.js';
12
12
  export { freezeDeep } from './util-freeze.js';
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"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"}
package/dist/internal.js CHANGED
@@ -1,7 +1,7 @@
1
1
  export { emptyState, triasOf, toOpaque } from './state.js';
2
2
  export { CODEC, MIGRATIONS, VALIDATORS, decodeState, encodeState, sameState, isKnownDuty, StateCodecError } from './codec.js';
3
3
  export { SIGNATURE_CLASS } from './receive.js';
4
- export { contactsView, contactView, groupsView, profileView, promptsView, deliveryStatusView } from './views.js';
4
+ export { contactsView, contactView, groupsView, profileView, promptsView, inboxView, deliveryStatusView } from './views.js';
5
5
  export { DECIDE } from './prompts.js';
6
6
  export { freezeDeep } from './util-freeze.js';
7
7
  export { trustModule, ANCHOR_MAPPING_TYPE, TRUST_COMMANDS, lineageSegment, recommitEntries } from './trust/mapping.js';
@@ -1 +1 @@
1
- {"version":3,"file":"internal.js","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAiCA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1D,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAI7H,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAChH,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAErC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAEtH,OAAO,EACL,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,kBAAkB,EAAE,WAAW,EAAE,WAAW,EACpI,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,GACnF,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAC/I,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChF,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEzI,OAAO,EACL,cAAc,EAAE,YAAY,EAAE,gBAAgB,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,GACpJ,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EACL,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAC5J,cAAc,GACf,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC9D,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAC7F,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,eAAe,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE1J,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEpG,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,OAAO,IAAI,gBAAgB,EAAE,KAAK,IAAI,cAAc,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAEpJ,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAEnJ,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA","sourcesContent":["// @real-life/trust-protocol/internal — what the library's own modules and\n// its tests build on, not an app contract (lib Stage 2, note §4.5, §4.6).\n//\n// The structural HolderState and its parts change with every codec until\n// 0.4.0 and beyond; apps read the views through createHolder, and store\n// adapters see the state only as the opaque root type. Here:\n//\n// state the structural HolderState and its parts, emptyState, triasOf\n// codec decodeState (structural), encodeState, sameState, the chain\n// (CODEC, MIGRATIONS, VALIDATORS), isKnownDuty\n// engine the module surface: HolderModule, CommandDef, PrepareCtx,\n// Prepared, Applied, Refusal, TaskHandler, DutyHandler, DutyCtx,\n// SweepHandler, AckHandler, FailureHandler, IdentityRename, DecisionHandler, EventDraft,\n// OutboundDraft, EngineSnapshot; receive's Arrival,\n// ReceivedDocument, TaskRefusal, TaskDiscarded, TaskFailure\n// views the pure projections state → view\n// prompts DECIDE, DecideInput\n// trust the trust module's factory (trustModule, for tests with another\n// admission bound or assembly limit), its task types and command\n// names, the pure reads of trust/state.ts (trusted, lags,\n// classOn, …), the 2240 re-commit (recommitEntries), the views\n// of 5.4 (starView, groupStarView, sealedOn), heldAnchors,\n// ASSEMBLY_LIMIT and discardAssemblies (5360); the entries\n// (trust/entries.ts: merge, split, departure, the identity\n// rewrite) and continuity (trust/continuity.ts: openTuple,\n// chainTuple, substitutePrior, the task types); the class\n// duties (trust/duties.ts: onFor, the follow rule, the move at\n// a chaining, the handlers)\n// freeze freezeDeep\n// invariants the predicates of invariants.ts over a state and a commit\nexport type * from './state.js'\n// the projection of the non-normative lib/schemas/holder-state-v1.schema.json\nexport type { HolderStateV1 } from './holder-state-v1.js'\nexport { emptyState, triasOf, toOpaque } from './state.js'\nexport { CODEC, MIGRATIONS, VALIDATORS, decodeState, encodeState, sameState, isKnownDuty, StateCodecError } from './codec.js'\nexport type { StateCodecErrorCode, StateValidator } from './codec.js'\nexport type { HolderModule, CommandDef, PrepareCtx, Prepared, Applied, Refusal, TaskHandler, DutyHandler, DutyCtx, SweepHandler, AckHandler, DecisionHandler, DecisionDef, DecisionFn, EventDraft, OutboundDraft, EngineSnapshot } from './engine.js'\nexport type { Arrival, Channel, ReceivedDocument, TaskDiscarded, DiscardReason, TaskFailure, TaskRefusal } from './receive.js'\nexport { SIGNATURE_CLASS } from './receive.js'\nexport { contactsView, contactView, groupsView, profileView, promptsView, deliveryStatusView } from './views.js'\nexport { DECIDE } from './prompts.js'\nexport type { DecideInput } from './prompts.js'\nexport { freezeDeep } from './util-freeze.js'\nexport { trustModule, ANCHOR_MAPPING_TYPE, TRUST_COMMANDS, lineageSegment, recommitEntries } from './trust/mapping.js'\nexport type { TrustModuleOptions, TrustSetInput, TrustSetClassInput, TrustSetGroupClassInput, TrustPauseInput } from './trust/mapping.js'\nexport {\n ADMISSION_BOUND, CLASSES, classOn, classOnToward, trusted, lags, newestHeads, newestOf, entryRelationships, activeTuple, findContact,\n entryOf, feeding, conflicts, joins, supersededIn, anchorSet, tupleByLabel, liveRel,\n} from './trust/state.js'\nexport { STAR_TYPE, ASSEMBLY_LIMIT, starView, viewDigest, heldAnchors, discardAssemblies, rematchStars, retainInflight } from './trust/star.js'\nexport { GROUP_STAR_TYPE, groupStarView, sealedOn } from './trust/group-star.js'\nexport { CONTINUITY_PROBE_TYPE, CONTINUITY_MAPPING_TYPE, NEW_TUPLE, openTuple, chainTuple, substitutePrior } from './trust/continuity.js'\nexport type { NewTupleInput } from './trust/continuity.js'\nexport {\n ENTRY_COMMANDS, mergeEntries, mergeDutiesAfter, mergeable, mergeSettings, rewriteIdentity, splitOff, depart, chainAliases, settleHead, admitPending,\n} from './trust/entries.js'\nexport type { TrustMergeInput, TrustDepartInput } from './trust/entries.js'\nexport {\n DUTY_CLASSES, RECONCILED, classOnId, profileDutyId, classOfDuty, owedOn, onFor, onRelationships, classOnDuty, dropOff, followClasses, moveDuties, afterChain,\n classOnHandler,\n} from './trust/duties.js'\nexport { promptsModule, collectDecisions } from './prompts.js'\nexport { PROFILE_SET, profileIssueDuty, profileTask, profileParts } from './trust/profile.js'\nexport { identityModule, IDENTITY_COMMANDS, GENERATION_LAST, withLabel, withPairNonce, deviceKeyOf, rotationDutyId, reissueId } from './identity-state.js'\nexport type { DeviceInput, DeviceKeyResult } from './identity-state.js'\nexport { stateViolations, transitionViolations, commitViolations, dutyDrops } from './invariants.js'\nexport type { CommitOp, Violation } from './invariants.js'\nexport { createEngine } from './engine.js'\nexport { encounterModule, ENCOUNTER_COMMANDS, resolve as resolveChallenge, idsOf as encounterIdsOf, confirmPromptId } from './encounter/ceremony.js'\nexport type { ShowInput, ScanInput, CaptureInput, CounterInput } from './encounter/ceremony.js'\nexport { membershipModule, localAccess, MEMBERSHIP_COMMANDS, PRELUDE_REQUEST_TYPE, PRELUDE_REPLY_TYPE, WELCOME_TYPE } from './membership/holder.js'\nexport type { FoundInput, InviteInput, VouchInput } from './membership/holder.js'\nexport { introductionModule, INTRODUCTION_COMMANDS, OFFER_TYPE, ACK_DELAY } from './introduction/holder.js'\nexport type { IntroduceInput } from './introduction/holder.js'\n"]}
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAiCA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1D,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAI7H,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC3H,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAErC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAEtH,OAAO,EACL,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,kBAAkB,EAAE,WAAW,EAAE,WAAW,EACpI,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,GACnF,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAC/I,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChF,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEzI,OAAO,EACL,cAAc,EAAE,YAAY,EAAE,gBAAgB,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,GACpJ,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EACL,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAC5J,cAAc,GACf,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC9D,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAC7F,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,eAAe,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE1J,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEpG,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,OAAO,IAAI,gBAAgB,EAAE,KAAK,IAAI,cAAc,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAEpJ,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAEnJ,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA","sourcesContent":["// @real-life/trust-protocol/internal — what the library's own modules and\n// its tests build on, not an app contract (lib Stage 2, note §4.5, §4.6).\n//\n// The structural HolderState and its parts change with every codec until\n// 0.4.0 and beyond; apps read the views through createHolder, and store\n// adapters see the state only as the opaque root type. Here:\n//\n// state the structural HolderState and its parts, emptyState, triasOf\n// codec decodeState (structural), encodeState, sameState, the chain\n// (CODEC, MIGRATIONS, VALIDATORS), isKnownDuty\n// engine the module surface: HolderModule, CommandDef, PrepareCtx,\n// Prepared, Applied, Refusal, TaskHandler, DutyHandler, DutyCtx,\n// SweepHandler, AckHandler, FailureHandler, IdentityRename, DecisionHandler, EventDraft,\n// OutboundDraft, EngineSnapshot; receive's Arrival,\n// ReceivedDocument, TaskRefusal, TaskDiscarded, TaskFailure\n// views the pure projections state → view\n// prompts DECIDE, DecideInput\n// trust the trust module's factory (trustModule, for tests with another\n// admission bound or assembly limit), its task types and command\n// names, the pure reads of trust/state.ts (trusted, lags,\n// classOn, …), the 2240 re-commit (recommitEntries), the views\n// of 5.4 (starView, groupStarView, sealedOn), heldAnchors,\n// ASSEMBLY_LIMIT and discardAssemblies (5360); the entries\n// (trust/entries.ts: merge, split, departure, the identity\n// rewrite) and continuity (trust/continuity.ts: openTuple,\n// chainTuple, substitutePrior, the task types); the class\n// duties (trust/duties.ts: onFor, the follow rule, the move at\n// a chaining, the handlers)\n// freeze freezeDeep\n// invariants the predicates of invariants.ts over a state and a commit\nexport type * from './state.js'\n// the projections of the non-normative lib/schemas/holder-state-v<n>.schema.json\nexport type { HolderStateV3 } from './holder-state-v3.js'\nexport { emptyState, triasOf, toOpaque } from './state.js'\nexport { CODEC, MIGRATIONS, VALIDATORS, decodeState, encodeState, sameState, isKnownDuty, StateCodecError } from './codec.js'\nexport type { StateCodecErrorCode, StateValidator } from './codec.js'\nexport type { HolderModule, CommandDef, PrepareCtx, Prepared, Applied, Refusal, TaskHandler, DutyHandler, DutyCtx, SweepHandler, AckHandler, DecisionHandler, DecisionDef, DecisionFn, EventDraft, OutboundDraft, EngineSnapshot } from './engine.js'\nexport type { Arrival, Channel, ReceivedDocument, TaskDiscarded, DiscardReason, TaskFailure, TaskRefusal } from './receive.js'\nexport { SIGNATURE_CLASS } from './receive.js'\nexport { contactsView, contactView, groupsView, profileView, promptsView, inboxView, deliveryStatusView } from './views.js'\nexport { DECIDE } from './prompts.js'\nexport type { DecideInput } from './prompts.js'\nexport { freezeDeep } from './util-freeze.js'\nexport { trustModule, ANCHOR_MAPPING_TYPE, TRUST_COMMANDS, lineageSegment, recommitEntries } from './trust/mapping.js'\nexport type { TrustModuleOptions, TrustSetInput, TrustSetClassInput, TrustSetGroupClassInput, TrustPauseInput } from './trust/mapping.js'\nexport {\n ADMISSION_BOUND, CLASSES, classOn, classOnToward, trusted, lags, newestHeads, newestOf, entryRelationships, activeTuple, findContact,\n entryOf, feeding, conflicts, joins, supersededIn, anchorSet, tupleByLabel, liveRel,\n} from './trust/state.js'\nexport { STAR_TYPE, ASSEMBLY_LIMIT, starView, viewDigest, heldAnchors, discardAssemblies, rematchStars, retainInflight } from './trust/star.js'\nexport { GROUP_STAR_TYPE, groupStarView, sealedOn } from './trust/group-star.js'\nexport { CONTINUITY_PROBE_TYPE, CONTINUITY_MAPPING_TYPE, NEW_TUPLE, openTuple, chainTuple, substitutePrior } from './trust/continuity.js'\nexport type { NewTupleInput } from './trust/continuity.js'\nexport {\n ENTRY_COMMANDS, mergeEntries, mergeDutiesAfter, mergeable, mergeSettings, rewriteIdentity, splitOff, depart, chainAliases, settleHead, admitPending,\n} from './trust/entries.js'\nexport type { TrustMergeInput, TrustDepartInput } from './trust/entries.js'\nexport {\n DUTY_CLASSES, RECONCILED, classOnId, profileDutyId, classOfDuty, owedOn, onFor, onRelationships, classOnDuty, dropOff, followClasses, moveDuties, afterChain,\n classOnHandler,\n} from './trust/duties.js'\nexport { promptsModule, collectDecisions } from './prompts.js'\nexport { PROFILE_SET, profileIssueDuty, profileTask, profileParts } from './trust/profile.js'\nexport { identityModule, IDENTITY_COMMANDS, GENERATION_LAST, withLabel, withPairNonce, deviceKeyOf, rotationDutyId, reissueId } from './identity-state.js'\nexport type { DeviceInput, DeviceKeyResult } from './identity-state.js'\nexport { stateViolations, transitionViolations, commitViolations, dutyDrops } from './invariants.js'\nexport type { CommitOp, Violation } from './invariants.js'\nexport { createEngine } from './engine.js'\nexport { encounterModule, ENCOUNTER_COMMANDS, resolve as resolveChallenge, idsOf as encounterIdsOf, confirmPromptId } from './encounter/ceremony.js'\nexport type { ShowInput, ScanInput, CaptureInput, CounterInput } from './encounter/ceremony.js'\nexport { membershipModule, localAccess, MEMBERSHIP_COMMANDS, PRELUDE_REQUEST_TYPE, PRELUDE_REPLY_TYPE, WELCOME_TYPE } from './membership/holder.js'\nexport type { FoundInput, InviteInput, VouchInput } from './membership/holder.js'\nexport { introductionModule, INTRODUCTION_COMMANDS, OFFER_TYPE, ACK_DELAY } from './introduction/holder.js'\nexport type { IntroduceInput } from './introduction/holder.js'\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"holder.d.ts","sourceRoot":"","sources":["../../src/introduction/holder.ts"],"names":[],"mappings":"AAgGA,OAAO,EACiB,gBAAgB,EAAE,kBAAkB,EAG3D,MAAM,oBAAoB,CAAA;AAK3B,OAAO,KAAK,EAA6D,YAAY,EAAmD,MAAM,cAAc,CAAA;AAU5J,eAAO,MAAM,UAAU,QAAkC,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,CAAA;AAE/C,oEAAoE;AACpE,eAAO,MAAM,SAAS,UAAU,CAAA;AAChC,eAAO,MAAM,YAAY,QAAS,CAAA;AAElC,eAAO,MAAM,qBAAqB;;EAAyD,CAAA;AAC3F,MAAM,WAAW,cAAc;IAAG,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE;AA2mBzF,sDAAsD;AACtD,wBAAgB,kBAAkB,IAAK,YAAY,CAmBlD"}
1
+ {"version":3,"file":"holder.d.ts","sourceRoot":"","sources":["../../src/introduction/holder.ts"],"names":[],"mappings":"AAiGA,OAAO,EACiB,gBAAgB,EAAE,kBAAkB,EAG3D,MAAM,oBAAoB,CAAA;AAK3B,OAAO,KAAK,EAA6D,YAAY,EAAmD,MAAM,cAAc,CAAA;AAU5J,eAAO,MAAM,UAAU,QAAkC,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,CAAA;AAE/C,oEAAoE;AACpE,eAAO,MAAM,SAAS,UAAU,CAAA;AAChC,eAAO,MAAM,YAAY,QAAS,CAAA;AAElC,eAAO,MAAM,qBAAqB;;EAAyD,CAAA;AAC3F,MAAM,WAAW,cAAc;IAAG,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE;AA+mBzF,sDAAsD;AACtD,wBAAgB,kBAAkB,IAAK,YAAY,CAmBlD"}
@@ -89,6 +89,7 @@
89
89
  // displayName, at the requester the offer's label; kept in the
90
90
  // relationship's memory as `introducedName`, which the views read until
91
91
  // a profile arrives (self-declared, Encounter 6120)
92
+ import { blockedRel } from '../message/holder.js';
92
93
  import { iso, jcs } from '../core.js';
93
94
  import { diSignWith, diVerify, digestBytes, digestDoc, xRawOfMk } from '../crypto.js';
94
95
  import { seal } from '../delivery.js';
@@ -210,6 +211,9 @@ const introduceDef = {
210
211
  return no('no-own-channel', 'RLTP-TRU-8020');
211
212
  if (r.contact.id === t.contact.id)
212
213
  return no('unknown-contact');
214
+ // no act whose requester or target relationship is blocked (Message Tasks 6410)
215
+ if (blockedRel(s, r.rel.id) || blockedRel(s, t.rel.id))
216
+ return no('blocked', 'RLTP-MSG-6410');
213
217
  const held = Object.entries(s.encounter.designators).find(([, c]) => c === t.contact.id)?.[0];
214
218
  const designator = held ?? designatorOf(ctx.entropy.bytes('intro.target', 32));
215
219
  const label = input.label;
@@ -290,6 +294,9 @@ async function prepareRequest(ctx, o) {
290
294
  const pin = tupleByLabel(ctx.snapshot, o.pin);
291
295
  if (!pin || pin.tuple.deactivated)
292
296
  return no('no-own-channel', 'RLTP-TRU-8270');
297
+ // no act whose mediator relationship is blocked (Message Tasks 6410)
298
+ if (blockedRel(ctx.snapshot, pin.rel.id))
299
+ return no('blocked', 'RLTP-MSG-6410');
293
300
  // Delivery §4.4: never a request to a mediator whose declaration is not held
294
301
  const dec = ctx.snapshot.encounter.declarations[`${pin.tuple.counterpartAnchor} ${MEDIATOR_ROLE}`];
295
302
  const c = dec ? mediatorConstants(dec.constants) : null;