@agentplat/mesh 0.3.0-alpha.1 → 0.3.0-alpha.2

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 (102) hide show
  1. package/README.md +247 -2
  2. package/dist/coordination-allocation-contracts.d.ts +598 -0
  3. package/dist/coordination-allocation-contracts.d.ts.map +1 -0
  4. package/dist/coordination-allocation-contracts.js +2 -0
  5. package/dist/coordination-allocation-contracts.js.map +1 -0
  6. package/dist/coordination-allocation-state.d.ts +19 -0
  7. package/dist/coordination-allocation-state.d.ts.map +1 -0
  8. package/dist/coordination-allocation-state.js +5496 -0
  9. package/dist/coordination-allocation-state.js.map +1 -0
  10. package/dist/coordination-allocation.d.ts +10 -0
  11. package/dist/coordination-allocation.d.ts.map +1 -0
  12. package/dist/coordination-allocation.js +2743 -0
  13. package/dist/coordination-allocation.js.map +1 -0
  14. package/dist/coordination-contracts.d.ts +78 -0
  15. package/dist/coordination-contracts.d.ts.map +1 -0
  16. package/dist/coordination-contracts.js +2 -0
  17. package/dist/coordination-contracts.js.map +1 -0
  18. package/dist/coordination-discovery-contracts.d.ts +150 -0
  19. package/dist/coordination-discovery-contracts.d.ts.map +1 -0
  20. package/dist/coordination-discovery-contracts.js +2 -0
  21. package/dist/coordination-discovery-contracts.js.map +1 -0
  22. package/dist/coordination-discovery-state.d.ts +12 -0
  23. package/dist/coordination-discovery-state.d.ts.map +1 -0
  24. package/dist/coordination-discovery-state.js +542 -0
  25. package/dist/coordination-discovery-state.js.map +1 -0
  26. package/dist/coordination-discovery.d.ts +19 -0
  27. package/dist/coordination-discovery.d.ts.map +1 -0
  28. package/dist/coordination-discovery.js +850 -0
  29. package/dist/coordination-discovery.js.map +1 -0
  30. package/dist/coordination-execution.d.ts +6 -0
  31. package/dist/coordination-execution.d.ts.map +1 -0
  32. package/dist/coordination-execution.js +854 -0
  33. package/dist/coordination-execution.js.map +1 -0
  34. package/dist/coordination-inbound-contracts.d.ts +150 -0
  35. package/dist/coordination-inbound-contracts.d.ts.map +1 -0
  36. package/dist/coordination-inbound-contracts.js +2 -0
  37. package/dist/coordination-inbound-contracts.js.map +1 -0
  38. package/dist/coordination-inbound-state.d.ts +26 -0
  39. package/dist/coordination-inbound-state.d.ts.map +1 -0
  40. package/dist/coordination-inbound-state.js +331 -0
  41. package/dist/coordination-inbound-state.js.map +1 -0
  42. package/dist/coordination-inbound.d.ts +16 -0
  43. package/dist/coordination-inbound.d.ts.map +1 -0
  44. package/dist/coordination-inbound.js +944 -0
  45. package/dist/coordination-inbound.js.map +1 -0
  46. package/dist/coordination-lease-renewal.d.ts +8 -0
  47. package/dist/coordination-lease-renewal.d.ts.map +1 -0
  48. package/dist/coordination-lease-renewal.js +518 -0
  49. package/dist/coordination-lease-renewal.js.map +1 -0
  50. package/dist/coordination-objective-topic-contracts.d.ts +70 -0
  51. package/dist/coordination-objective-topic-contracts.d.ts.map +1 -0
  52. package/dist/coordination-objective-topic-contracts.js +2 -0
  53. package/dist/coordination-objective-topic-contracts.js.map +1 -0
  54. package/dist/coordination-objective-topic.d.ts +6 -0
  55. package/dist/coordination-objective-topic.d.ts.map +1 -0
  56. package/dist/coordination-objective-topic.js +561 -0
  57. package/dist/coordination-objective-topic.js.map +1 -0
  58. package/dist/coordination-objective-work-contracts.d.ts +212 -0
  59. package/dist/coordination-objective-work-contracts.d.ts.map +1 -0
  60. package/dist/coordination-objective-work-contracts.js +2 -0
  61. package/dist/coordination-objective-work-contracts.js.map +1 -0
  62. package/dist/coordination-objective-work-state.d.ts +10 -0
  63. package/dist/coordination-objective-work-state.d.ts.map +1 -0
  64. package/dist/coordination-objective-work-state.js +1075 -0
  65. package/dist/coordination-objective-work-state.js.map +1 -0
  66. package/dist/coordination-objective-work-time.d.ts +9 -0
  67. package/dist/coordination-objective-work-time.d.ts.map +1 -0
  68. package/dist/coordination-objective-work-time.js +48 -0
  69. package/dist/coordination-objective-work-time.js.map +1 -0
  70. package/dist/coordination-objective-work.d.ts +11 -0
  71. package/dist/coordination-objective-work.d.ts.map +1 -0
  72. package/dist/coordination-objective-work.js +1090 -0
  73. package/dist/coordination-objective-work.js.map +1 -0
  74. package/dist/coordination-recovery.d.ts +13 -0
  75. package/dist/coordination-recovery.d.ts.map +1 -0
  76. package/dist/coordination-recovery.js +951 -0
  77. package/dist/coordination-recovery.js.map +1 -0
  78. package/dist/coordination-reducer.d.ts +8 -0
  79. package/dist/coordination-reducer.d.ts.map +1 -0
  80. package/dist/coordination-reducer.js +81 -0
  81. package/dist/coordination-reducer.js.map +1 -0
  82. package/dist/coordination-state.d.ts +13 -0
  83. package/dist/coordination-state.d.ts.map +1 -0
  84. package/dist/coordination-state.js +335 -0
  85. package/dist/coordination-state.js.map +1 -0
  86. package/dist/coordination-topic-contracts.d.ts +82 -0
  87. package/dist/coordination-topic-contracts.d.ts.map +1 -0
  88. package/dist/coordination-topic-contracts.js +2 -0
  89. package/dist/coordination-topic-contracts.js.map +1 -0
  90. package/dist/coordination-topic.d.ts +6 -0
  91. package/dist/coordination-topic.d.ts.map +1 -0
  92. package/dist/coordination-topic.js +561 -0
  93. package/dist/coordination-topic.js.map +1 -0
  94. package/dist/coordination.d.ts +21 -0
  95. package/dist/coordination.d.ts.map +1 -0
  96. package/dist/coordination.js +21 -0
  97. package/dist/coordination.js.map +1 -0
  98. package/dist/sha256.d.ts +3 -0
  99. package/dist/sha256.d.ts.map +1 -0
  100. package/dist/sha256.js +117 -0
  101. package/dist/sha256.js.map +1 -0
  102. package/package.json +7 -3
@@ -0,0 +1,598 @@
1
+ import type { SignedMeshEnvelope, VerifiedMeshEnvelope, WorkBidPayload, WorkAcceptPayload, WorkAwardPayload, WorkDeclinePayload, WorkOfferPayload, WorkProgressPayload, WorkCheckpointPayload, WorkResultPayload, WorkReleasePayload, WorkCancelPayload, LeaseRenewPayload, LeaseTakeoverProposalPayload, LeaseVotePayload, LeaseCertificatePayload } from "@agentplat/mesh-protocol";
2
+ import type { MeshLogicalTime, MeshPeerIdentity } from "./contracts.js";
3
+ import type { MeshCoordinationState, MeshCoordinationTimer, MeshCoordinationTimerFiredInput } from "./coordination-contracts.js";
4
+ import type { MeshDiscoveryState } from "./coordination-discovery-contracts.js";
5
+ import type { MeshObjectiveWorkState, MeshWorkItemProjection, MeshWorkObjectivePolicySnapshot } from "./coordination-objective-work-contracts.js";
6
+ /** The externally visible allocation status for one local Work Item. */
7
+ export type MeshWorkAllocationPhase = "ready" | "offered" | "award_pending" | "recovering" | "active" | "completed" | "released" | "cancelled";
8
+ /** Exact normalized Objective, policy, and Work revision used for allocation. */
9
+ export interface MeshAllocationWorkBinding {
10
+ readonly objectiveId: string;
11
+ readonly objectiveDocumentId: string;
12
+ readonly objectiveRevision: number;
13
+ readonly objectivePolicy: MeshWorkObjectivePolicySnapshot;
14
+ readonly work: MeshWorkItemProjection;
15
+ }
16
+ /** Operational allocation head for one local Work Item revision. */
17
+ export interface MeshWorkAllocationProjection extends MeshAllocationWorkBinding {
18
+ readonly workKey: string;
19
+ readonly phase: MeshWorkAllocationPhase;
20
+ readonly activeOfferId?: string;
21
+ readonly bidDeadlineAt?: MeshLogicalTime;
22
+ readonly reservationId?: string;
23
+ readonly activeAwardId?: string;
24
+ readonly activeAcceptanceId?: string;
25
+ readonly updatedAt: MeshLogicalTime;
26
+ }
27
+ /** One recipient-specific signed offer prepared by the local owner. */
28
+ export interface MeshPreparedOfferEnvelope {
29
+ readonly recipientPeerId: string;
30
+ /** Exact signed message ID used as the bid causationId. */
31
+ readonly messageId: string;
32
+ readonly preparedAt: MeshLogicalTime;
33
+ readonly envelope: SignedMeshEnvelope<WorkOfferPayload>;
34
+ }
35
+ /** One retained local offer attempt and its recipient-specific causal evidence. */
36
+ export interface MeshLocalOfferProjection extends MeshAllocationWorkBinding {
37
+ readonly offerId: string;
38
+ readonly offerAttempt: number;
39
+ readonly previousOfferId?: string;
40
+ readonly bidDeadline: string;
41
+ readonly bidDeadlineAt: MeshLogicalTime;
42
+ readonly bidDeadlineTimerId: string;
43
+ readonly bidDeadlineTimerGeneration: number;
44
+ readonly createdAt: MeshLogicalTime;
45
+ readonly validityVerifiedAt: string;
46
+ readonly reservationId: string;
47
+ readonly recipientOffers: Readonly<Record<string, MeshPreparedOfferEnvelope>>;
48
+ }
49
+ /** Accepted, signed bid evidence retained for audit and causal validation. */
50
+ export interface MeshAcceptedBidEvidence {
51
+ readonly bidId: string;
52
+ readonly offerId: string;
53
+ readonly bidderPeerId: string;
54
+ readonly bidRevision: number;
55
+ readonly previousBidId?: string;
56
+ readonly acceptedAt: MeshLogicalTime;
57
+ readonly validityVerifiedAt: string;
58
+ readonly supportedCriticalExtensions?: readonly string[];
59
+ readonly envelope: SignedMeshEnvelope<WorkBidPayload>;
60
+ }
61
+ /** One assignee-specific signed award prepared by the local owner. */
62
+ export interface MeshPreparedAwardEnvelope {
63
+ readonly recipientPeerId: string;
64
+ readonly messageId: string;
65
+ readonly preparedAt: MeshLogicalTime;
66
+ readonly envelope: SignedMeshEnvelope<WorkAwardPayload>;
67
+ }
68
+ /** A locally issued award and its causation-capable assignee evidence. */
69
+ export interface MeshLocalAwardProjection extends MeshAllocationWorkBinding {
70
+ readonly awardId: string;
71
+ readonly offerId: string;
72
+ readonly bidId: string;
73
+ readonly bidRevision: number;
74
+ readonly offerAttempt: number;
75
+ readonly assigneePeerId: string;
76
+ readonly assignmentEpoch: number;
77
+ readonly assignmentAuthorityId: string;
78
+ readonly fencingToken: string;
79
+ readonly budgetReservationUnits: number;
80
+ readonly workDeadline: string;
81
+ readonly leaseStartsAt: string;
82
+ readonly leaseExpiresAt: string;
83
+ readonly leaseExpiresAtLogical: MeshLogicalTime;
84
+ readonly acceptanceDeadline: string;
85
+ readonly acceptanceDeadlineAt: MeshLogicalTime;
86
+ readonly acceptanceDeadlineTimerId: string;
87
+ readonly acceptanceDeadlineTimerGeneration: number;
88
+ readonly createdAt: MeshLogicalTime;
89
+ readonly validityVerifiedAt: string;
90
+ readonly reservationId: string;
91
+ readonly status: "awaiting_acceptance" | "accepted" | "declined" | "timed_out" | "cancelled";
92
+ readonly recipientAward: MeshPreparedAwardEnvelope;
93
+ }
94
+ /** One accepted assignee response retained with its exact signed evidence. */
95
+ export interface MeshAcceptedAssignmentResponseEvidence {
96
+ readonly awardId: string;
97
+ readonly responseId: string;
98
+ readonly kind: "work.accept" | "work.decline";
99
+ readonly acceptedAt: MeshLogicalTime;
100
+ readonly validityVerifiedAt: string;
101
+ readonly supportedCriticalExtensions?: readonly string[];
102
+ readonly envelope: SignedMeshEnvelope<WorkAcceptPayload | WorkDeclinePayload>;
103
+ }
104
+ /** One verified direct offer received by the local potential assignee. */
105
+ export interface MeshReceivedOfferProjection {
106
+ readonly offerId: string;
107
+ readonly receivedAt: MeshLogicalTime;
108
+ readonly validityVerifiedAt: string;
109
+ readonly supportedCriticalExtensions?: readonly string[];
110
+ readonly bidDeadlineAt: MeshLogicalTime;
111
+ readonly workDeadlineAt: MeshLogicalTime;
112
+ readonly envelope: SignedMeshEnvelope<WorkOfferPayload>;
113
+ }
114
+ /** A locally prepared bid; its signed message is the only valid award cause. */
115
+ export interface MeshLocalBidProjection {
116
+ readonly bidId: string;
117
+ readonly offerId: string;
118
+ readonly bidRevision: number;
119
+ readonly previousBidId?: string;
120
+ readonly preparedAt: MeshLogicalTime;
121
+ readonly validityVerifiedAt: string;
122
+ readonly bidExpiresAt: string;
123
+ readonly bidExpiresAtLogical: MeshLogicalTime;
124
+ readonly envelope: SignedMeshEnvelope<WorkBidPayload>;
125
+ }
126
+ /** One verified award received by the local assignee. */
127
+ export interface MeshReceivedAwardProjection {
128
+ readonly awardId: string;
129
+ readonly offerId: string;
130
+ readonly bidId: string;
131
+ readonly bidRevision: number;
132
+ readonly receivedAt: MeshLogicalTime;
133
+ readonly validityVerifiedAt: string;
134
+ readonly supportedCriticalExtensions?: readonly string[];
135
+ readonly acceptanceDeadlineAt: MeshLogicalTime;
136
+ readonly acceptanceDeadlineTimerId: string;
137
+ readonly acceptanceDeadlineTimerGeneration: number;
138
+ readonly leaseExpiresAtLogical: MeshLogicalTime;
139
+ readonly status: "awaiting_response" | "accepted" | "declined" | "timed_out" | "cancelled";
140
+ readonly envelope: SignedMeshEnvelope<WorkAwardPayload>;
141
+ }
142
+ /** Exact local accept or decline evidence emitted in response to one award. */
143
+ export interface MeshLocalAssignmentResponseEvidence {
144
+ readonly awardId: string;
145
+ readonly responseId: string;
146
+ readonly kind: "work.accept" | "work.decline";
147
+ readonly preparedAt: MeshLogicalTime;
148
+ readonly validityVerifiedAt: string;
149
+ readonly envelope: SignedMeshEnvelope<WorkAcceptPayload | WorkDeclinePayload>;
150
+ }
151
+ /** Authority available locally only after an accepted assignment response. */
152
+ export interface MeshAssigneeAssignmentAuthorityProjection {
153
+ readonly awardId: string;
154
+ readonly acceptanceId: string;
155
+ readonly objectiveId: string;
156
+ readonly objectiveDocumentId: string;
157
+ readonly objectiveRevision: number;
158
+ readonly workItemId: string;
159
+ readonly workItemRevision: number;
160
+ readonly ownerPeerId: string;
161
+ readonly ownerEpoch: number;
162
+ readonly assigneePeerId: string;
163
+ readonly assignmentEpoch: number;
164
+ readonly assignmentAuthorityId: string;
165
+ readonly fencingToken: string;
166
+ readonly workDeadline: string;
167
+ readonly workDeadlineAt: MeshLogicalTime;
168
+ readonly leaseExpiresAt: string;
169
+ readonly leaseExpiresAtLogical: MeshLogicalTime;
170
+ readonly activatedAt: MeshLogicalTime;
171
+ }
172
+ /** Execution record families retained under a single assignment authority. */
173
+ export type MeshExecutionRecordType = "progress" | "checkpoint" | "result" | "release" | "cancel";
174
+ export type MeshExecutionPayload = WorkProgressPayload | WorkCheckpointPayload | WorkResultPayload | WorkReleasePayload | WorkCancelPayload;
175
+ /** Immutable signed execution evidence, keyed by its payload-specific record ID. */
176
+ export interface MeshExecutionRecordProjection {
177
+ readonly recordType: MeshExecutionRecordType;
178
+ readonly recordId: string;
179
+ readonly direction: "local" | "received";
180
+ readonly recordedAt: MeshLogicalTime;
181
+ readonly validityVerifiedAt: string;
182
+ readonly supportedCriticalExtensions?: readonly string[];
183
+ readonly envelope: SignedMeshEnvelope<MeshExecutionPayload>;
184
+ }
185
+ /** Immutable, signed evidence for one accepted extension of an assignment. */
186
+ export interface MeshLeaseRenewalEvidence {
187
+ readonly leaseRenewalId: string;
188
+ readonly executionScopeKey: string;
189
+ readonly leaseRenewalSequence: number;
190
+ readonly previousLeaseRenewalId?: string;
191
+ readonly acceptedAt: MeshLogicalTime;
192
+ readonly validityVerifiedAt: string;
193
+ readonly direction: "local" | "received";
194
+ readonly supportedCriticalExtensions?: readonly string[];
195
+ readonly renewedLeaseExpiresAtLogical: MeshLogicalTime;
196
+ readonly envelope: SignedMeshEnvelope<LeaseRenewPayload>;
197
+ }
198
+ /** Current, fenced lease lifecycle for one immutable accepted assignment. */
199
+ export interface MeshLeaseHeadProjection {
200
+ readonly executionScopeKey: string;
201
+ readonly objectiveId: string;
202
+ readonly objectiveDocumentId: string;
203
+ readonly objectiveRevision: number;
204
+ readonly workItemId: string;
205
+ readonly workItemRevision: number;
206
+ readonly ownerPeerId: string;
207
+ readonly ownerEpoch: number;
208
+ readonly assigneePeerId: string;
209
+ readonly awardId: string;
210
+ readonly assignmentEpoch: number;
211
+ readonly assignmentAuthorityId: string;
212
+ readonly fencingToken: string;
213
+ readonly acceptanceId: string;
214
+ readonly acceptanceMessageId: string;
215
+ /** The award lease is retained as immutable authority evidence. */
216
+ readonly originalLeaseExpiresAt: string;
217
+ readonly originalLeaseExpiresAtLogical: MeshLogicalTime;
218
+ readonly workDeadline: string;
219
+ readonly workDeadlineAt: MeshLogicalTime;
220
+ readonly leaseRenewalSequence: number;
221
+ readonly latestLeaseRenewalId?: string;
222
+ readonly currentLeaseExpiresAt: string;
223
+ readonly currentLeaseExpiresAtLogical: MeshLogicalTime;
224
+ readonly status: "active" | "expired" | "terminal";
225
+ readonly expiryTimerId?: string;
226
+ readonly expiryTimerGeneration?: number;
227
+ }
228
+ /** Stable high-water mark fencing every assignment epoch for one Work revision. */
229
+ export interface MeshAssignmentFenceHeadProjection {
230
+ /** Canonical scope key excluding award ID and assignment epoch. */
231
+ readonly assignmentFenceKey: string;
232
+ readonly objectiveId: string;
233
+ readonly objectiveRevision: number;
234
+ readonly workItemId: string;
235
+ readonly workItemRevision: number;
236
+ readonly ownerPeerId: string;
237
+ readonly ownerEpoch: number;
238
+ readonly assignmentEpoch: number;
239
+ readonly assignmentAuthorityId: string;
240
+ readonly fencingToken: string;
241
+ /** Current assignee, or certified candidate while recovery is incomplete. */
242
+ readonly assigneePeerId: string;
243
+ readonly activeAwardId?: string;
244
+ readonly recoveryCertificateId?: string;
245
+ readonly phase: "active" | "expired" | "recovering" | "award_pending" | "terminal";
246
+ }
247
+ /** Signed accepted-assignment evidence retained by one configured witness. */
248
+ export interface MeshWitnessAssignmentProjection {
249
+ readonly assignmentFenceKey: string;
250
+ readonly observedAt: MeshLogicalTime;
251
+ readonly awardValidityVerifiedAt: string;
252
+ readonly acceptanceValidityVerifiedAt?: string;
253
+ readonly supportedCriticalExtensions?: readonly string[];
254
+ readonly awardEnvelope: SignedMeshEnvelope<WorkAwardPayload>;
255
+ readonly acceptanceEnvelope?: SignedMeshEnvelope<WorkAcceptPayload>;
256
+ readonly leaseHead?: MeshLeaseHeadProjection;
257
+ readonly leaseRenewals: readonly MeshLeaseRenewalEvidence[];
258
+ /** Latest checkpoint known to this witness, if one has been accepted. */
259
+ readonly latestCheckpoint?: MeshExecutionRecordProjection;
260
+ }
261
+ /** One structurally verified recovery proposal retained by logical proposal ID. */
262
+ export interface MeshTakeoverProposalProjection {
263
+ readonly takeoverProposalId: string;
264
+ readonly direction: "local" | "received";
265
+ readonly acceptedAt: MeshLogicalTime;
266
+ readonly validityVerifiedAt: string;
267
+ readonly supportedCriticalExtensions?: readonly string[];
268
+ readonly envelope: SignedMeshEnvelope<LeaseTakeoverProposalPayload>;
269
+ /** Recipient-specific local fanout copies; absent for received evidence. */
270
+ readonly recipientEnvelopes?: Readonly<Record<string, SignedMeshEnvelope<LeaseTakeoverProposalPayload>>>;
271
+ }
272
+ /** One immutable witness endorsement retained by stable vote ID. */
273
+ export interface MeshLeaseVoteProjection {
274
+ readonly leaseVoteId: string;
275
+ readonly takeoverProposalId: string;
276
+ readonly witnessPeerId: string;
277
+ readonly direction: "local" | "received";
278
+ readonly acceptedAt: MeshLogicalTime;
279
+ readonly validityVerifiedAt: string;
280
+ readonly supportedCriticalExtensions?: readonly string[];
281
+ readonly envelope: SignedMeshEnvelope<LeaseVotePayload>;
282
+ readonly recipientEnvelopes?: Readonly<Record<string, SignedMeshEnvelope<LeaseVotePayload>>>;
283
+ }
284
+ /** One accepted quorum certificate retained by stable certificate ID. */
285
+ export interface MeshRecoveryCertificateProjection {
286
+ readonly certificateId: string;
287
+ readonly takeoverProposalId: string;
288
+ readonly direction: "local" | "received";
289
+ readonly acceptedAt: MeshLogicalTime;
290
+ readonly validityVerifiedAt: string;
291
+ readonly supportedCriticalExtensions?: readonly string[];
292
+ readonly envelope: SignedMeshEnvelope<LeaseCertificatePayload>;
293
+ readonly recipientEnvelopes?: Readonly<Record<string, SignedMeshEnvelope<LeaseCertificatePayload>>>;
294
+ }
295
+ /** Full accepted authority and current lifecycle heads for one assignment scope. */
296
+ export interface MeshExecutionHeadProjection {
297
+ readonly executionScopeKey: string;
298
+ readonly objectiveId: string;
299
+ readonly objectiveDocumentId: string;
300
+ readonly objectiveRevision: number;
301
+ readonly workItemId: string;
302
+ readonly workItemRevision: number;
303
+ readonly ownerPeerId: string;
304
+ readonly ownerEpoch: number;
305
+ readonly assigneePeerId: string;
306
+ readonly awardId: string;
307
+ readonly assignmentEpoch: number;
308
+ readonly assignmentAuthorityId: string;
309
+ readonly fencingToken: string;
310
+ readonly acceptanceId: string;
311
+ /** Signed message ID of the acceptance that activated this authority. */
312
+ readonly acceptanceMessageId: string;
313
+ readonly workDeadline: string;
314
+ readonly workDeadlineAt: MeshLogicalTime;
315
+ readonly leaseExpiresAt: string;
316
+ readonly leaseExpiresAtLogical: MeshLogicalTime;
317
+ readonly phase: "active" | "completed" | "released" | "cancelled";
318
+ readonly latestProgressId?: string;
319
+ readonly latestProgressSequence?: number;
320
+ readonly latestCheckpointId?: string;
321
+ readonly latestCheckpointSequence?: number;
322
+ readonly resultId?: string;
323
+ readonly terminalRecordId?: string;
324
+ readonly terminalAt?: MeshLogicalTime;
325
+ }
326
+ /** Current bid revision for exactly one [offerId, bidderPeerId] pair. */
327
+ export interface MeshBidHeadProjection {
328
+ readonly bidKey: string;
329
+ readonly offerId: string;
330
+ readonly bidderPeerId: string;
331
+ readonly bidId: string;
332
+ readonly bidRevision: number;
333
+ readonly previousBidId?: string;
334
+ readonly acceptedMessageId: string;
335
+ readonly acceptedAt: MeshLogicalTime;
336
+ readonly capacityReservationUnits: number;
337
+ readonly budgetUnits: number;
338
+ readonly expectedCompletionAt: string;
339
+ readonly bidExpiresAt: string;
340
+ readonly bidExpiresAtLogical: MeshLogicalTime;
341
+ }
342
+ /** Reservation opened by an offer and later committed or released exactly once. */
343
+ export interface MeshAllocationReservation {
344
+ readonly reservationId: string;
345
+ readonly workKey: string;
346
+ readonly offerId: string;
347
+ readonly objectiveId: string;
348
+ readonly objectiveDocumentId: string;
349
+ readonly objectiveRevision: number;
350
+ readonly workItemId: string;
351
+ readonly workItemRevision: number;
352
+ readonly budgetReservationUnits: number;
353
+ readonly reservedAt: MeshLogicalTime;
354
+ readonly status: "reserved" | "committed" | "released";
355
+ readonly committedAt?: MeshLogicalTime;
356
+ readonly releasedAt?: MeshLogicalTime;
357
+ }
358
+ /** Hard, non-evicting allocation projection ceilings. */
359
+ export interface MeshAllocationLimits {
360
+ readonly maximumOffers: number;
361
+ readonly maximumOffersPerWorkItem: number;
362
+ readonly maximumBidHeads: number;
363
+ readonly maximumBidsPerOffer: number;
364
+ readonly maximumRecipientsPerOffer: number;
365
+ readonly maximumProjectionBytes: number;
366
+ readonly maximumAwards: number;
367
+ readonly maximumAssignmentResponses: number;
368
+ readonly maximumReceivedOffers: number;
369
+ readonly maximumLocalBids: number;
370
+ readonly maximumReceivedAwards: number;
371
+ readonly maximumLocalAssignmentResponses: number;
372
+ readonly maximumAssignmentAuthorities: number;
373
+ readonly maximumExecutionRecords: number;
374
+ readonly maximumExecutionHeads: number;
375
+ readonly maximumExecutionRecordsPerAssignment: number;
376
+ readonly maximumLeaseRenewals: number;
377
+ readonly maximumAssignmentFenceHeads: number;
378
+ readonly maximumWitnessAssignments: number;
379
+ readonly maximumTakeoverProposals: number;
380
+ readonly maximumLeaseVotes: number;
381
+ readonly maximumRecoveryCertificates: number;
382
+ }
383
+ /** Independently restorable offer, bid, award and response projection. */
384
+ export interface MeshAllocationState {
385
+ readonly schemaVersion: 6;
386
+ readonly identity: MeshPeerIdentity;
387
+ readonly workAllocations: Readonly<Record<string, MeshWorkAllocationProjection>>;
388
+ readonly localOffers: Readonly<Record<string, MeshLocalOfferProjection>>;
389
+ /** Heads keyed by canonical `[offerId, bidderPeerId]` key. */
390
+ readonly bidHeads: Readonly<Record<string, MeshBidHeadProjection>>;
391
+ /** Accepted evidence keyed by bidId; every entry belongs to a retained head chain. */
392
+ readonly acceptedBidEvidence: Readonly<Record<string, MeshAcceptedBidEvidence>>;
393
+ readonly localAwards: Readonly<Record<string, MeshLocalAwardProjection>>;
394
+ /** One terminal response keyed by awardId. */
395
+ readonly assignmentResponses: Readonly<Record<string, MeshAcceptedAssignmentResponseEvidence>>;
396
+ /** Direct offers received by this peer, keyed by offerId. */
397
+ readonly receivedOffers: Readonly<Record<string, MeshReceivedOfferProjection>>;
398
+ /** Locally prepared direct bids, keyed by bidId. */
399
+ readonly localBids: Readonly<Record<string, MeshLocalBidProjection>>;
400
+ /** Direct awards received by this peer, keyed by awardId. */
401
+ readonly receivedAwards: Readonly<Record<string, MeshReceivedAwardProjection>>;
402
+ /** One locally emitted terminal response per received award. */
403
+ readonly localAssignmentResponses: Readonly<Record<string, MeshLocalAssignmentResponseEvidence>>;
404
+ /** Active execution authority keyed by awardId. */
405
+ readonly assigneeAuthorities: Readonly<Record<string, MeshAssigneeAssignmentAuthorityProjection>>;
406
+ /** Retained signed execution records keyed by their payload record ID. */
407
+ readonly executionRecords: Readonly<Record<string, MeshExecutionRecordProjection>>;
408
+ /** Active or terminal execution lifecycle head keyed by assignment scope. */
409
+ readonly executionHeads: Readonly<Record<string, MeshExecutionHeadProjection>>;
410
+ /** Immutable renewal evidence keyed by leaseRenewalId. */
411
+ readonly leaseRenewals: Readonly<Record<string, MeshLeaseRenewalEvidence>>;
412
+ /** Current lease lifecycle heads keyed by execution scope. */
413
+ readonly leaseHeads: Readonly<Record<string, MeshLeaseHeadProjection>>;
414
+ /** Stable fencing high-water marks keyed independently of award and epoch. */
415
+ readonly assignmentFenceHeads: Readonly<Record<string, MeshAssignmentFenceHeadProjection>>;
416
+ /** Accepted assignment evidence keyed by stable assignment fence scope. */
417
+ readonly witnessAssignments: Readonly<Record<string, MeshWitnessAssignmentProjection>>;
418
+ /** Recovery proposals keyed by takeoverProposalId. */
419
+ readonly takeoverProposals: Readonly<Record<string, MeshTakeoverProposalProjection>>;
420
+ /** Witness votes keyed by leaseVoteId. */
421
+ readonly leaseVotes: Readonly<Record<string, MeshLeaseVoteProjection>>;
422
+ /** Accepted recovery certificates keyed by certificateId. */
423
+ readonly recoveryCertificates: Readonly<Record<string, MeshRecoveryCertificateProjection>>;
424
+ readonly reservations: Readonly<Record<string, MeshAllocationReservation>>;
425
+ readonly limits: MeshAllocationLimits;
426
+ readonly lastLogicalTime: MeshLogicalTime;
427
+ }
428
+ export interface MeshAllocationStateOptions {
429
+ readonly identity: MeshPeerIdentity;
430
+ readonly limits?: Partial<MeshAllocationLimits>;
431
+ }
432
+ /** Composition of all projections required to evaluate allocation. */
433
+ export interface MeshAllocationRuntimeState {
434
+ readonly coordination: MeshCoordinationState;
435
+ readonly discovery: MeshDiscoveryState;
436
+ readonly objectives: MeshObjectiveWorkState;
437
+ readonly allocation: MeshAllocationState;
438
+ }
439
+ export type MeshAllocationPayload = WorkOfferPayload | WorkBidPayload | WorkAwardPayload | WorkAcceptPayload | WorkDeclinePayload | WorkProgressPayload | WorkCheckpointPayload | WorkResultPayload | WorkReleasePayload | WorkCancelPayload | LeaseRenewPayload | LeaseTakeoverProposalPayload | LeaseVotePayload | LeaseCertificatePayload;
440
+ /** A verified remote bid or assignment response with receiver-controlled time. */
441
+ export interface MeshVerifiedAllocationRequest {
442
+ readonly envelope: VerifiedMeshEnvelope<MeshAllocationPayload>;
443
+ readonly verifiedAt: string;
444
+ readonly receivedAt: MeshLogicalTime;
445
+ readonly supportedCriticalExtensions?: readonly string[];
446
+ }
447
+ /** Prepared recipient evidence supplied by a signer for one local offer command. */
448
+ export interface MeshLocalOfferPreparedRecipient {
449
+ readonly recipientPeerId: string;
450
+ readonly preparedAt: MeshLogicalTime;
451
+ readonly envelope: SignedMeshEnvelope<WorkOfferPayload>;
452
+ }
453
+ /** Local offer request. Each recipient needs its own signed envelope and message ID. */
454
+ export interface MeshLocalOfferCommand {
455
+ readonly kind: "allocation.offer";
456
+ readonly objectiveId: string;
457
+ readonly workItemId: string;
458
+ readonly expectedWorkItemRevision: number;
459
+ readonly recipients: readonly MeshLocalOfferPreparedRecipient[];
460
+ }
461
+ /** Local owner command; exactly one signed direct envelope addresses the assignee. */
462
+ export interface MeshLocalAwardCommand {
463
+ readonly kind: "allocation.award";
464
+ readonly offerId: string;
465
+ readonly bidId: string;
466
+ readonly bidRevision: number;
467
+ readonly recipient: MeshLocalAwardPreparedRecipient;
468
+ }
469
+ /** Local assignee command; the bid envelope is already signed and addressed. */
470
+ export interface MeshLocalBidCommand {
471
+ readonly kind: "allocation.bid";
472
+ readonly offerId: string;
473
+ readonly preparedAt: MeshLogicalTime;
474
+ readonly envelope: SignedMeshEnvelope<WorkBidPayload>;
475
+ }
476
+ /** Local assignee command; one already-signed direct accept or decline. */
477
+ export interface MeshLocalAssignmentResponseCommand {
478
+ readonly kind: "allocation.assignment_response";
479
+ readonly awardId: string;
480
+ readonly preparedAt: MeshLogicalTime;
481
+ readonly envelope: SignedMeshEnvelope<WorkAcceptPayload | WorkDeclinePayload>;
482
+ }
483
+ /** Local execution command; the supplied envelope is already signed and addressed. */
484
+ export interface MeshLocalExecutionCommand {
485
+ readonly kind: "allocation.execution";
486
+ readonly preparedAt: MeshLogicalTime;
487
+ readonly envelope: SignedMeshEnvelope<MeshExecutionPayload>;
488
+ }
489
+ /** Locally prepared lease extension; signing and delivery remain outside. */
490
+ export interface MeshLocalLeaseRenewalCommand {
491
+ readonly kind: "allocation.lease_renew";
492
+ readonly preparedAt: MeshLogicalTime;
493
+ readonly envelope: SignedMeshEnvelope<LeaseRenewPayload>;
494
+ }
495
+ /** Locally signed proposal, vote, or certificate for certified recovery. */
496
+ export interface MeshLocalRecoveryCommand {
497
+ readonly kind: "allocation.recovery";
498
+ readonly recipients: readonly MeshLocalRecoveryPreparedRecipient[];
499
+ }
500
+ export interface MeshLocalRecoveryPreparedRecipient {
501
+ readonly recipientPeerId: string;
502
+ readonly preparedAt: MeshLogicalTime;
503
+ readonly envelope: SignedMeshEnvelope<LeaseTakeoverProposalPayload | LeaseVotePayload | LeaseCertificatePayload>;
504
+ }
505
+ /** Owner-issued award that activates only a previously accepted certificate. */
506
+ export interface MeshLocalRecoveryAwardCommand {
507
+ readonly kind: "allocation.recovery_award";
508
+ readonly certificateId: string;
509
+ readonly recipient: MeshLocalAwardPreparedRecipient;
510
+ }
511
+ export interface MeshLocalAwardPreparedRecipient {
512
+ readonly recipientPeerId: string;
513
+ readonly preparedAt: MeshLogicalTime;
514
+ readonly envelope: SignedMeshEnvelope<WorkAwardPayload>;
515
+ }
516
+ /** Explicit bidder selection from a retained current bid head. */
517
+ export interface MeshAllocationSelectionInput {
518
+ readonly offerId: string;
519
+ readonly evaluatedAt: MeshLogicalTime;
520
+ }
521
+ export type MeshAllocationCommand = MeshLocalOfferCommand | MeshLocalAwardCommand | MeshLocalBidCommand | MeshLocalAssignmentResponseCommand | MeshLocalExecutionCommand | MeshLocalLeaseRenewalCommand | MeshLocalRecoveryCommand | MeshLocalRecoveryAwardCommand;
522
+ export type MeshAllocationBidSelectionReason = "offer_missing" | "offer_closed" | "bid_window_closed" | "no_eligible_bids" | "selected";
523
+ /** Read-only deterministic selection result; award/reservation mutation is deferred. */
524
+ export interface MeshAllocationBidSelection {
525
+ readonly offerId: string;
526
+ readonly evaluatedAt: MeshLogicalTime;
527
+ readonly reason: MeshAllocationBidSelectionReason;
528
+ readonly bid?: MeshBidHeadProjection;
529
+ }
530
+ /** Effect for dispatching one already-signed offer envelope. */
531
+ export type MeshAllocationEffect = {
532
+ readonly kind: "allocation.offer.dispatch";
533
+ readonly offerId: string;
534
+ readonly recipientPeerId: string;
535
+ readonly messageId: string;
536
+ readonly envelope: SignedMeshEnvelope<WorkOfferPayload>;
537
+ } | {
538
+ readonly kind: "allocation.award.dispatch";
539
+ readonly awardId: string;
540
+ readonly recipientPeerId: string;
541
+ readonly messageId: string;
542
+ readonly envelope: SignedMeshEnvelope<WorkAwardPayload>;
543
+ } | {
544
+ readonly kind: "allocation.bid.dispatch";
545
+ readonly bidId: string;
546
+ readonly recipientPeerId: string;
547
+ readonly messageId: string;
548
+ readonly envelope: SignedMeshEnvelope<WorkBidPayload>;
549
+ } | {
550
+ readonly kind: "allocation.assignment_response.dispatch";
551
+ readonly awardId: string;
552
+ readonly responseId: string;
553
+ readonly recipientPeerId: string;
554
+ readonly messageId: string;
555
+ readonly envelope: SignedMeshEnvelope<WorkAcceptPayload | WorkDeclinePayload>;
556
+ } | {
557
+ readonly kind: "allocation.execution.dispatch";
558
+ readonly recordId: string;
559
+ readonly recordType: MeshExecutionRecordType;
560
+ readonly recipientPeerId: string;
561
+ readonly messageId: string;
562
+ readonly envelope: SignedMeshEnvelope<MeshExecutionPayload>;
563
+ } | {
564
+ readonly kind: "allocation.lease_renewal.dispatch";
565
+ readonly leaseRenewalId: string;
566
+ readonly recipientPeerId: string;
567
+ readonly messageId: string;
568
+ readonly envelope: SignedMeshEnvelope<LeaseRenewPayload>;
569
+ } | {
570
+ readonly kind: "allocation.recovery.dispatch";
571
+ readonly recordId: string;
572
+ readonly recordType: "lease.takeover_proposal" | "lease.vote" | "lease.certificate";
573
+ readonly recipientPeerId: string;
574
+ readonly messageId: string;
575
+ readonly envelope: SignedMeshEnvelope<LeaseTakeoverProposalPayload | LeaseVotePayload | LeaseCertificatePayload>;
576
+ };
577
+ export type MeshAllocationRejectionCode = "invalid_verified_envelope" | "scope_mismatch" | "audience_mismatch" | "topic_not_subscribed" | "sender_not_admitted" | "sender_instance_not_admitted" | "sender_admission_expired" | "message_expired" | "message_from_future" | "unknown_critical_extension" | "work_missing" | "work_not_ready" | "work_revision_conflict" | "offer_invalid" | "offer_missing" | "offer_duplicate_conflict" | "offer_capacity_exceeded" | "award_missing" | "award_invalid" | "award_duplicate_conflict" | "award_capacity_exceeded" | "assignment_capacity_exceeded" | "assignment_response_invalid" | "assignment_response_deadline_elapsed" | "assignment_response_duplicate_conflict" | "assignment_response_capacity_exceeded" | "received_offer_invalid" | "received_offer_duplicate_conflict" | "received_offer_capacity_exceeded" | "local_bid_invalid" | "local_bid_duplicate_conflict" | "local_bid_capacity_exceeded" | "received_award_invalid" | "received_award_duplicate_conflict" | "received_award_capacity_exceeded" | "local_assignment_response_invalid" | "local_assignment_response_deadline_elapsed" | "local_assignment_response_duplicate_conflict" | "local_assignment_response_capacity_exceeded" | "assignment_authority_capacity_exceeded" | "execution_invalid" | "execution_duplicate_conflict" | "execution_capacity_exceeded" | "execution_head_capacity_exceeded" | "execution_records_per_assignment_exceeded" | "execution_authority_invalid" | "execution_deadline_elapsed" | "execution_phase_invalid" | "lease_renewal_invalid" | "lease_renewal_duplicate_conflict" | "lease_renewal_predecessor_invalid" | "lease_renewal_deadline_elapsed" | "lease_renewal_capacity_exceeded" | "lease_renewal_authority_invalid" | "witness_assignment_invalid" | "witness_assignment_duplicate_conflict" | "witness_assignment_capacity_exceeded" | "recovery_invalid" | "recovery_duplicate_conflict" | "recovery_grace_not_elapsed" | "recovery_vote_conflict" | "recovery_quorum_insufficient" | "recovery_authority_stale" | "recovery_checkpoint_invalid" | "recovery_capacity_exceeded" | "recipient_capacity_exceeded" | "bid_invalid" | "bid_duplicate_conflict" | "bid_predecessor_invalid" | "bid_capacity_exceeded" | "bidder_not_recipient" | "bid_causation_invalid" | "bid_deadline_elapsed" | "domain_record_conflict" | "domain_capacity_exceeded" | "journal_capacity_exceeded" | "timer_capacity_exceeded" | "timer_id_conflict" | "timer_generation_exhausted";
578
+ export type MeshAllocationDecision = {
579
+ readonly accepted: true;
580
+ readonly duplicate: boolean;
581
+ readonly state: MeshAllocationRuntimeState;
582
+ readonly effects: readonly MeshAllocationEffect[];
583
+ } | {
584
+ readonly accepted: false;
585
+ readonly code: MeshAllocationRejectionCode;
586
+ readonly state: MeshAllocationRuntimeState;
587
+ };
588
+ export type MeshAllocationTimerInput = MeshCoordinationTimerFiredInput;
589
+ export type MeshAllocationTimerDecision = {
590
+ readonly accepted: true;
591
+ readonly timer: MeshCoordinationTimer;
592
+ readonly state: MeshAllocationRuntimeState;
593
+ } | {
594
+ readonly accepted: false;
595
+ readonly code: "timer_unknown" | "timer_generation_stale" | "timer_not_due" | "journal_capacity_exceeded";
596
+ readonly state: MeshAllocationRuntimeState;
597
+ };
598
+ //# sourceMappingURL=coordination-allocation-contracts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coordination-allocation-contracts.d.ts","sourceRoot":"","sources":["../src/coordination-allocation-contracts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=coordination-allocation-contracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coordination-allocation-contracts.js","sourceRoot":"","sources":["../src/coordination-allocation-contracts.ts"],"names":[],"mappings":""}