@agentshouse/mdruntime 0.1.0-ccbb89b0ca151 → 0.1.0-ccc0e3407f107

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 (138) hide show
  1. package/README.md +1 -1
  2. package/dist/adapter.d.ts +74 -57
  3. package/dist/adapter.d.ts.map +1 -1
  4. package/dist/attached-model.d.ts +3 -10
  5. package/dist/attached-model.d.ts.map +1 -1
  6. package/dist/attached-model.js +29 -47
  7. package/dist/bootstrap.d.ts +11 -18
  8. package/dist/bootstrap.d.ts.map +1 -1
  9. package/dist/bootstrap.js +85 -108
  10. package/dist/chain.d.ts +2 -1
  11. package/dist/chain.d.ts.map +1 -1
  12. package/dist/client.d.ts +9 -5
  13. package/dist/client.d.ts.map +1 -1
  14. package/dist/client.js +2 -1
  15. package/dist/collection.d.ts +7 -4
  16. package/dist/collection.d.ts.map +1 -1
  17. package/dist/collection.js +23 -17
  18. package/dist/compile.d.ts +1 -6
  19. package/dist/compile.d.ts.map +1 -1
  20. package/dist/compile.js +91 -270
  21. package/dist/connection.d.ts +10 -9
  22. package/dist/connection.d.ts.map +1 -1
  23. package/dist/connection.js +1009 -1063
  24. package/dist/context.d.ts +2 -0
  25. package/dist/context.d.ts.map +1 -0
  26. package/dist/context.js +7 -0
  27. package/dist/conversation.d.ts +16 -13
  28. package/dist/conversation.d.ts.map +1 -1
  29. package/dist/conversation.js +229 -155
  30. package/dist/durability.d.ts +6 -1
  31. package/dist/durability.d.ts.map +1 -1
  32. package/dist/entry.d.ts +3 -2
  33. package/dist/entry.d.ts.map +1 -1
  34. package/dist/entry.js +17 -8
  35. package/dist/host.d.ts +3 -7
  36. package/dist/host.d.ts.map +1 -1
  37. package/dist/host.js +22 -27
  38. package/dist/identity.d.ts +0 -1
  39. package/dist/identity.d.ts.map +1 -1
  40. package/dist/identity.js +0 -3
  41. package/dist/index.d.ts +11 -7
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +4 -1
  44. package/dist/job.d.ts +14 -0
  45. package/dist/job.d.ts.map +1 -0
  46. package/dist/job.js +28 -0
  47. package/dist/live.d.ts +2 -1
  48. package/dist/live.d.ts.map +1 -1
  49. package/dist/live.js +10 -7
  50. package/dist/media.d.ts +1 -1
  51. package/dist/media.d.ts.map +1 -1
  52. package/dist/media.js +27 -4
  53. package/dist/memory.d.ts +11 -5
  54. package/dist/memory.d.ts.map +1 -1
  55. package/dist/memory.js +167 -84
  56. package/dist/messages.d.ts +2 -2
  57. package/dist/messages.d.ts.map +1 -1
  58. package/dist/messages.js +15 -16
  59. package/dist/model.d.ts +8 -8
  60. package/dist/model.d.ts.map +1 -1
  61. package/dist/model.js +6 -12
  62. package/dist/observation.d.ts +3 -2
  63. package/dist/observation.d.ts.map +1 -1
  64. package/dist/observation.js +8 -3
  65. package/dist/outcome.d.ts +0 -3
  66. package/dist/outcome.d.ts.map +1 -1
  67. package/dist/outcome.js +3 -1
  68. package/dist/paths.d.ts +1 -0
  69. package/dist/paths.d.ts.map +1 -1
  70. package/dist/paths.js +4 -0
  71. package/dist/query.d.ts +4 -209
  72. package/dist/query.d.ts.map +1 -1
  73. package/dist/query.js +3 -505
  74. package/dist/reach.d.ts +9 -8
  75. package/dist/reach.d.ts.map +1 -1
  76. package/dist/reach.js +37 -48
  77. package/dist/react.d.ts +3 -1
  78. package/dist/react.d.ts.map +1 -1
  79. package/dist/readiness.d.ts +3 -17
  80. package/dist/readiness.d.ts.map +1 -1
  81. package/dist/readiness.js +4 -10
  82. package/dist/recovery.d.ts +1 -0
  83. package/dist/recovery.d.ts.map +1 -1
  84. package/dist/recovery.js +26 -0
  85. package/dist/refresh.d.ts +7 -5
  86. package/dist/refresh.d.ts.map +1 -1
  87. package/dist/refresh.js +29 -5
  88. package/dist/replica.d.ts +10 -8
  89. package/dist/replica.d.ts.map +1 -1
  90. package/dist/replica.js +29 -14
  91. package/dist/room-draft.d.ts +21 -5
  92. package/dist/room-draft.d.ts.map +1 -1
  93. package/dist/room-draft.js +98 -51
  94. package/dist/rows.d.ts +14 -21
  95. package/dist/rows.d.ts.map +1 -1
  96. package/dist/rows.js +48 -184
  97. package/dist/save.d.ts +2 -0
  98. package/dist/save.d.ts.map +1 -1
  99. package/dist/save.js +20 -12
  100. package/dist/search.d.ts +12 -63
  101. package/dist/search.d.ts.map +1 -1
  102. package/dist/search.js +9 -52
  103. package/dist/shared.d.ts +0 -1
  104. package/dist/shared.d.ts.map +1 -1
  105. package/dist/shared.js +0 -10
  106. package/dist/status.d.ts +4 -3
  107. package/dist/status.d.ts.map +1 -1
  108. package/dist/status.js +3 -1
  109. package/dist/store.d.ts +21 -34
  110. package/dist/store.d.ts.map +1 -1
  111. package/dist/store.js +34 -77
  112. package/dist/stored.d.ts +11 -34
  113. package/dist/stored.d.ts.map +1 -1
  114. package/dist/stored.js +158 -241
  115. package/dist/tables.d.ts +23 -48
  116. package/dist/tables.d.ts.map +1 -1
  117. package/dist/tables.js +29 -66
  118. package/dist/transfer.d.ts +0 -5
  119. package/dist/transfer.d.ts.map +1 -1
  120. package/dist/validation.d.ts +3 -4
  121. package/dist/validation.d.ts.map +1 -1
  122. package/dist/validation.js +42 -100
  123. package/dist/windows.d.ts +1 -12
  124. package/dist/windows.d.ts.map +1 -1
  125. package/dist/windows.js +2 -75
  126. package/dist/wire.d.ts +9 -4
  127. package/dist/wire.d.ts.map +1 -1
  128. package/dist/wire.js +3 -1
  129. package/package.json +2 -2
  130. package/dist/fulltext.d.ts +0 -27
  131. package/dist/fulltext.d.ts.map +0 -1
  132. package/dist/fulltext.js +0 -368
  133. package/dist/reads.d.ts +0 -11
  134. package/dist/reads.d.ts.map +0 -1
  135. package/dist/reads.js +0 -100
  136. package/dist/words.d.ts +0 -19
  137. package/dist/words.d.ts.map +0 -1
  138. package/dist/words.js +0 -150
package/dist/tables.d.ts CHANGED
@@ -1,14 +1,11 @@
1
1
  import { type QueryAnswer, type QueryRoom } from './compile.js';
2
- import type { KeptReceipt } from './adapter.js';
3
- import type { Composition } from './collection.js';
4
- import { type SearchAsk } from './fulltext.js';
2
+ import type { Composed } from './collection.js';
3
+ import type { UnsentWork } from './durability.js';
5
4
  import { type ConversationWrite, type HeldConversation, type MessageWindow } from './messages.js';
6
5
  import type { Plan } from './query.js';
7
- import type { SearchWindow } from './search.js';
8
- import { type Committed, type CountedRoom, type HeldEntry, type KeptPart, type ReplicaOpened, type Referrer, type RoomCommit, type StoredEntry, type TypedEntry, type View, type Walked } from './stored.js';
9
- export type { Committed, CountedRoom, HeldEntry, KeptPart, OverlayEntry, ReplicaOpened, Referrer, RoomCommit, StoredEntry, TypedEntry, View, Walked, } from './stored.js';
6
+ import { type Committed, type CountedRoom, type HeldEntry, type ReplicaOpened, type Referrer, type RoomCommit, type StoredEntry, type TypedEntry, type View } from './stored.js';
7
+ export type { Committed, CountedRoom, HeldEntry, OverlayEntry, ReplicaOpened, Referrer, RoomCommit, StoredEntry, TypedEntry, View, } from './stored.js';
10
8
  export type { QueryAnswer, QueryRoom } from './compile.js';
11
- export type { SearchAsk } from './fulltext.js';
12
9
  export type { ConversationWrite, HeldConversation, MessageWindow } from './messages.js';
13
10
  export type Value = string | number | bigint | Uint8Array | null;
14
11
  export type Row = Readonly<Record<string, Value>>;
@@ -37,6 +34,10 @@ export interface SqliteStatement {
37
34
  }
38
35
  export interface SqliteDatabase {
39
36
  readonly pointer: number;
37
+ createFunction(name: string, run: (context: number, ...values: Value[]) => Value, options: {
38
+ readonly arity: number;
39
+ readonly deterministic: true;
40
+ }): unknown;
40
41
  exec(options: {
41
42
  readonly sql: string;
42
43
  readonly bind: readonly Value[];
@@ -78,10 +79,6 @@ export type AuthoredRows = {
78
79
  readonly path: string;
79
80
  })[];
80
81
  readonly consumedRoomDrafts?: readonly string[];
81
- readonly amendments?: readonly {
82
- readonly id: string;
83
- readonly amendment: string;
84
- }[];
85
82
  };
86
83
  export type HeldQueues = {
87
84
  readonly queues: readonly {
@@ -112,7 +109,6 @@ export type AuthoredWrite = {
112
109
  readonly writes: readonly AuthoredRows[];
113
110
  readonly files: readonly StoredFile[];
114
111
  readonly whole: boolean;
115
- readonly discards?: readonly string[];
116
112
  };
117
113
  export interface RuntimeRequests {
118
114
  readonly 'authored.queues': Asked<Nothing, HeldQueues>;
@@ -120,6 +116,7 @@ export interface RuntimeRequests {
120
116
  readonly 'authored.chatDrafts': Asked<Nothing, readonly string[]>;
121
117
  readonly 'authored.calls': Asked<Nothing, readonly string[]>;
122
118
  readonly 'authored.fences': Asked<Nothing, readonly string[]>;
119
+ readonly 'authored.unsent': Asked<Nothing, readonly UnsentWork[]>;
123
120
  readonly 'authored.fact': Asked<{
124
121
  readonly name: AuthoredFact;
125
122
  }, string | null>;
@@ -180,14 +177,7 @@ export interface RuntimeRequests {
180
177
  readonly key: number;
181
178
  readonly view: View;
182
179
  readonly targets: readonly string[];
183
- readonly kinds: readonly string[];
184
180
  }, readonly Referrer[]>;
185
- readonly 'replica.walk': Asked<{
186
- readonly key: number;
187
- readonly view: View;
188
- readonly after: string | null;
189
- readonly bytes: number;
190
- }, Walked>;
191
181
  readonly 'replica.files': Asked<{
192
182
  readonly key: number;
193
183
  readonly view: View;
@@ -197,6 +187,11 @@ export interface RuntimeRequests {
197
187
  readonly path: string;
198
188
  readonly revision: string;
199
189
  }[]>;
190
+ readonly 'replica.folders': Asked<{
191
+ readonly key: number;
192
+ readonly view: View;
193
+ readonly paths: readonly string[];
194
+ }, readonly string[]>;
200
195
  readonly 'replica.typedWithin': Asked<{
201
196
  readonly key: number;
202
197
  readonly view: View;
@@ -206,31 +201,17 @@ export interface RuntimeRequests {
206
201
  readonly 'replica.counts': Asked<{
207
202
  readonly rooms: readonly CountedRoom[];
208
203
  }, readonly number[]>;
209
- readonly 'replica.search': Asked<SearchAsk, SearchWindow>;
210
- readonly 'replica.received': Asked<Nothing, readonly KeptReceipt[]>;
211
- readonly 'replica.receivedParts': Asked<{
212
- readonly key: string;
213
- readonly count: number;
214
- }, readonly unknown[]>;
215
204
  readonly 'replica.stage': Asked<{
216
205
  readonly locator: string;
217
206
  readonly transfer: string;
218
- readonly record: string;
219
207
  readonly key: number | null;
220
- readonly composition: Composition;
208
+ readonly fingerprint: string;
221
209
  readonly entries: readonly StoredEntry[];
222
210
  readonly folders: readonly string[];
223
- readonly written?: string;
224
211
  }, number | null>;
225
- readonly 'replica.transferPart': Asked<{
226
- readonly locator: string;
227
- readonly token: string;
228
- }, Uint8Array | null>;
229
- readonly 'replica.keepParts': Asked<{
230
- readonly parts: readonly KeptPart[];
231
- }, null>;
232
212
  readonly 'replica.refresh': Asked<{
233
213
  readonly key: number;
214
+ readonly composed: Composed;
234
215
  readonly entries: readonly StoredEntry[];
235
216
  readonly removals: readonly string[];
236
217
  readonly folders: readonly string[];
@@ -254,16 +235,19 @@ export interface RuntimeRequests {
254
235
  }>;
255
236
  readonly 'replica.abandon': Asked<{
256
237
  readonly locator: string;
257
- readonly kept: boolean;
258
- }, number | null>;
238
+ }, null>;
259
239
  readonly 'replica.release': Asked<{
260
240
  readonly key: number;
261
241
  }, null>;
262
242
  readonly 'replica.rederive': Asked<{
263
243
  readonly key: number;
244
+ readonly composed: Composed;
264
245
  readonly bytes: number;
246
+ readonly ms: number;
247
+ readonly floor: number;
265
248
  }, {
266
249
  readonly done: boolean;
250
+ readonly text: number;
267
251
  }>;
268
252
  readonly 'replica.fact': Asked<{
269
253
  readonly name: string;
@@ -273,17 +257,6 @@ export interface RuntimeRequests {
273
257
  readonly app: string;
274
258
  readonly value: string;
275
259
  }, null>;
276
- readonly 'replica.receive': Asked<{
277
- readonly key: string;
278
- readonly head: string;
279
- readonly part?: {
280
- readonly index: number;
281
- readonly value: string;
282
- };
283
- }, null>;
284
- readonly 'replica.unreceive': Asked<{
285
- readonly keys: readonly string[];
286
- }, null>;
287
260
  readonly 'opened.find': Asked<{
288
261
  readonly locator: string;
289
262
  readonly path: string;
@@ -321,9 +294,11 @@ export interface RuntimeRequests {
321
294
  readonly conversation: string;
322
295
  readonly limit: number;
323
296
  readonly before: readonly [string, string] | null;
297
+ readonly phrase: string | null;
324
298
  }, MessageWindow>;
325
299
  readonly 'conversation.count': Asked<{
326
300
  readonly conversation: string;
301
+ readonly phrase: string | null;
327
302
  }, number>;
328
303
  readonly 'conversation.turn': Asked<{
329
304
  readonly conversation: string;
@@ -1 +1 @@
1
- {"version":3,"file":"tables.d.ts","sourceRoot":"","sources":["../src/tables.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tables.d.ts","sourceRoot":"","sources":["../src/tables.ts"],"names":[],"mappings":"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"}
package/dist/tables.js CHANGED
@@ -1,11 +1,15 @@
1
+ import { sql } from '@agentshouse/mdmodel';
1
2
  import { answerQuery } from './compile.js';
2
- import { searched, SEARCH_TABLES } from './fulltext.js';
3
3
  import { droppedMessages, forgottenMessages, heldConversations, keptMessages, messageCount, messageWindow, MESSAGE_TABLES, turnArrived, } from './messages.js';
4
- import { abandon, release, commit, counts, ended, entries, erase, fenceRooms, files, opened, rederive, referrers, refreshing, REPLICA_TABLES, keepParts, stage, transferPart, typed, typedWithin, unrefresh, walk, } from './stored.js';
4
+ import { abandon, release, commit, counts, ended, entries, erase, fenceRooms, files, folders, opened, rederive, referrers, refreshing, REPLICA_TABLES, stage, typed, typedWithin, unrefresh, } from './stored.js';
5
5
  const STATEMENTS_HELD = 256;
6
6
  export function sqliteConnection(engine, database) {
7
7
  const decoder = new TextDecoder();
8
8
  const held = new Map();
9
+ database.createFunction(sql.HOLDS_PHRASE, sql.holdsPhrase, {
10
+ arity: 2,
11
+ deterministic: true,
12
+ });
9
13
  function prepared(sql) {
10
14
  if (sql.includes(';'))
11
15
  return null;
@@ -89,7 +93,6 @@ export const RUNTIME_TABLES = [
89
93
  'CREATE INDEX opened_files_name ON opened_files (locator, path, revision)',
90
94
  ...REPLICA_TABLES,
91
95
  ...MESSAGE_TABLES,
92
- ...SEARCH_TABLES,
93
96
  ];
94
97
  const OWNERS = ['authored_pending', 'authored_room_drafts', 'authored_calls'];
95
98
  const AUTHORED_KEYS = OWNERS.map((table) => `SELECT value FROM ${table}, json_each(${table}.files)`).join(' UNION ');
@@ -100,6 +103,7 @@ const READS = new Set([
100
103
  'authored.chatDrafts',
101
104
  'authored.calls',
102
105
  'authored.fences',
106
+ 'authored.unsent',
103
107
  'authored.fact',
104
108
  'authored.file',
105
109
  'replica.open',
@@ -107,14 +111,10 @@ const READS = new Set([
107
111
  'replica.entries',
108
112
  'replica.typed',
109
113
  'replica.referrers',
110
- 'replica.walk',
111
114
  'replica.files',
115
+ 'replica.folders',
112
116
  'replica.typedWithin',
113
117
  'replica.counts',
114
- 'replica.search',
115
- 'replica.received',
116
- 'replica.receivedParts',
117
- 'replica.transferPart',
118
118
  'opened.find',
119
119
  'file.part',
120
120
  'conversation.held',
@@ -132,7 +132,6 @@ const KINDS = new Set([
132
132
  'authored.claim',
133
133
  'authored.end',
134
134
  'replica.stage',
135
- 'replica.keepParts',
136
135
  'replica.refresh',
137
136
  'replica.unrefresh',
138
137
  'replica.commit',
@@ -143,8 +142,6 @@ const KINDS = new Set([
143
142
  'replica.rederive',
144
143
  'replica.fact',
145
144
  'replica.present',
146
- 'replica.receive',
147
- 'replica.unreceive',
148
145
  'opened.begin',
149
146
  'opened.part',
150
147
  'opened.keep',
@@ -244,10 +241,7 @@ function heldOrder(connection, locator) {
244
241
  const [held] = connection.rows('SELECT ids FROM authored_queues WHERE locator = ?', [locator]);
245
242
  return held === undefined ? [] : JSON.parse(text(held.ids));
246
243
  }
247
- function keptRows(connection, { locator, order, added, founded, roomDrafts, consumedRoomDrafts, amendments }) {
248
- for (const { id, amendment } of amendments ?? []) {
249
- amended(connection, { kind: 'authored.amend', locator, id, amendment });
250
- }
244
+ function keptRows(connection, { locator, order, added, founded, roomDrafts, consumedRoomDrafts }) {
251
245
  for (const path of consumedRoomDrafts ?? []) {
252
246
  connection.run('DELETE FROM authored_room_drafts WHERE locator = ? AND path = ?', [
253
247
  locator,
@@ -286,7 +280,7 @@ function keptRows(connection, { locator, order, added, founded, roomDrafts, cons
286
280
  connection.run('UPDATE authored_pending SET batch = ?, files = ? WHERE locator = ? AND id = ?', [batch, owned([...JSON.parse(text(held.files)), ...files]), locator, id]);
287
281
  }
288
282
  }
289
- async function kept(connection, { writes, files, whole, discards }) {
283
+ async function kept(connection, { writes, files, whole }) {
290
284
  const refused = writes.find(({ locator }) => fenced(connection, locator));
291
285
  if (refused !== undefined && whole)
292
286
  return refused.locator;
@@ -295,8 +289,6 @@ async function kept(connection, { writes, files, whole, discards }) {
295
289
  if (!fenced(connection, write.locator))
296
290
  keptRows(connection, write);
297
291
  }
298
- for (const locator of discards ?? [])
299
- roomWork(connection, locator);
300
292
  unowned(connection);
301
293
  return refused?.locator ?? null;
302
294
  }
@@ -449,6 +441,16 @@ function keptOpened(connection, { key, sha256, byteLength, parts }) {
449
441
  unowned(connection);
450
442
  return true;
451
443
  }
444
+ const UNSENT = [
445
+ ['pending-change', 'authored_pending'],
446
+ ['call', 'authored_calls'],
447
+ ['room-draft', 'authored_room_drafts'],
448
+ ['chat-draft', 'authored_chat_drafts'],
449
+ ];
450
+ function unsent(connection) {
451
+ const [held] = connection.rows(`SELECT ${UNSENT.map(([kind, table]) => `(SELECT count(*) FROM ${table}) AS "${kind}"`).join(', ')}`);
452
+ return UNSENT.map(([kind]) => ({ kind, count: count(held?.[kind]) })).filter((work) => work.count > 0);
453
+ }
452
454
  function cleaned(connection) {
453
455
  connection.run('DELETE FROM opened_files');
454
456
  const [freed] = connection.rows(`SELECT coalesce(sum(length(bytes)), 0) AS bytes FROM file_parts WHERE key NOT IN (${AUTHORED_KEYS})`);
@@ -465,28 +467,6 @@ async function committed(connection, { authored, rooms }) {
465
467
  ...commit(connection, rooms.filter(({ locator }) => !fenced(connection, locator))),
466
468
  };
467
469
  }
468
- function receivedParts(connection, key, count) {
469
- return connection
470
- .rows('SELECT value FROM replica_received_parts WHERE key = ? AND part < ? ORDER BY part', [
471
- key,
472
- count,
473
- ])
474
- .map((row) => JSON.parse(text(row.value)));
475
- }
476
- function receive(connection, { key, head, part }) {
477
- connection.run('INSERT OR REPLACE INTO replica_received (key, head) VALUES (?, ?)', [key, head]);
478
- if (part !== undefined) {
479
- connection.run('INSERT OR REPLACE INTO replica_received_parts (key, part, value) VALUES (?, ?, ?)', [key, part.index, part.value]);
480
- }
481
- return null;
482
- }
483
- function unreceive(connection, keys) {
484
- for (const key of keys) {
485
- connection.run('DELETE FROM replica_received WHERE key = ?', [key]);
486
- connection.run('DELETE FROM replica_received_parts WHERE key = ?', [key]);
487
- }
488
- return null;
489
- }
490
470
  export function answerRuntime(connection, request, spool) {
491
471
  switch (request.kind) {
492
472
  case 'authored.queues':
@@ -499,6 +479,8 @@ export function answerRuntime(connection, request, spool) {
499
479
  return texts(connection.rows('SELECT record FROM authored_calls'), 'record');
500
480
  case 'authored.fences':
501
481
  return texts(connection.rows('SELECT locator FROM authored_fences'), 'locator');
482
+ case 'authored.unsent':
483
+ return unsent(connection);
502
484
  case 'authored.fact':
503
485
  return fact(connection, request.name);
504
486
  case 'authored.file':
@@ -526,32 +508,17 @@ export function answerRuntime(connection, request, spool) {
526
508
  case 'replica.typed':
527
509
  return typed(connection, request.key, request.view, request.paths);
528
510
  case 'replica.referrers':
529
- return referrers(connection, request.key, request.view, request.targets, request.kinds);
530
- case 'replica.walk':
531
- return walk(connection, request.key, request.view, request.after, request.bytes);
511
+ return referrers(connection, request.key, request.view, request.targets);
532
512
  case 'replica.files':
533
513
  return files(connection, request.key, request.view, request.after, request.limit);
514
+ case 'replica.folders':
515
+ return folders(connection, request.key, request.view, request.paths);
534
516
  case 'replica.typedWithin':
535
517
  return typedWithin(connection, request.key, request.view, request.roots, request.within);
536
518
  case 'replica.counts':
537
519
  return counts(connection, request.rooms);
538
- case 'replica.search': {
539
- const { kind: _kind, ...ask } = request;
540
- return searched(connection, ask);
541
- }
542
- case 'replica.received':
543
- return connection.rows('SELECT key, head FROM replica_received').map((row) => ({
544
- key: text(row.key),
545
- head: JSON.parse(text(row.head)),
546
- }));
547
- case 'replica.receivedParts':
548
- return receivedParts(connection, request.key, request.count);
549
520
  case 'replica.stage':
550
521
  return fenced(connection, request.locator) ? null : stage(connection, request);
551
- case 'replica.transferPart':
552
- return transferPart(connection, request.locator, request.token);
553
- case 'replica.keepParts':
554
- return keepParts(connection, request.parts.filter(({ locator }) => !fenced(connection, locator)));
555
522
  case 'replica.refresh':
556
523
  return refreshing(connection, request);
557
524
  case 'replica.unrefresh':
@@ -563,11 +530,11 @@ export function answerRuntime(connection, request, spool) {
563
530
  case 'replica.erase':
564
531
  return erased(connection, request);
565
532
  case 'replica.abandon':
566
- return abandon(connection, request.locator, request.kept);
533
+ return abandon(connection, request.locator);
567
534
  case 'replica.release':
568
535
  return release(connection, request.key);
569
536
  case 'replica.rederive':
570
- return rederive(connection, request.key, request.bytes);
537
+ return rederive(connection, request.key, request.composed, request.bytes, request.ms, request.floor);
571
538
  case 'replica.fact':
572
539
  connection.run('INSERT OR REPLACE INTO replica_facts (name, value) VALUES (?, ?)', [
573
540
  request.name,
@@ -580,10 +547,6 @@ export function answerRuntime(connection, request, spool) {
580
547
  request.value,
581
548
  ]);
582
549
  return null;
583
- case 'replica.receive':
584
- return receive(connection, request);
585
- case 'replica.unreceive':
586
- return unreceive(connection, request.keys);
587
550
  case 'opened.find':
588
551
  return openedFile(connection, request);
589
552
  case 'opened.begin':
@@ -605,9 +568,9 @@ export function answerRuntime(connection, request, spool) {
605
568
  return keptMessages(connection, write);
606
569
  }
607
570
  case 'conversation.window':
608
- return messageWindow(connection, request.conversation, request.limit, request.before);
571
+ return messageWindow(connection, request.conversation, request.limit, request.before, request.phrase);
609
572
  case 'conversation.count':
610
- return messageCount(connection, request.conversation);
573
+ return messageCount(connection, request.conversation, request.phrase);
611
574
  case 'conversation.turn':
612
575
  return turnArrived(connection, request.conversation, request.turn);
613
576
  case 'conversation.drop':
@@ -1,10 +1,5 @@
1
- import type { Refusal } from '@agentshouse/mdmodel';
2
1
  export type Unconfirmed = {
3
2
  kind: 'unconfirmed';
4
3
  };
5
- export type Refused = {
6
- kind: 'refused';
7
- refusal: Refusal;
8
- };
9
4
  export declare const unconfirmed: Unconfirmed;
10
5
  //# sourceMappingURL=transfer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transfer.d.ts","sourceRoot":"","sources":["../src/transfer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD,MAAM,MAAM,WAAW,GAAG;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,CAAC;AAElD,MAAM,MAAM,OAAO,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AAE5D,eAAO,MAAM,WAAW,EAAE,WAAqC,CAAC"}
1
+ {"version":3,"file":"transfer.d.ts","sourceRoot":"","sources":["../src/transfer.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,CAAC;AAElD,eAAO,MAAM,WAAW,EAAE,WAAqC,CAAC"}
@@ -19,12 +19,11 @@ export type Changed = {
19
19
  readonly was: string | null | undefined;
20
20
  readonly now: string | null | undefined;
21
21
  };
22
- type CleanSource = {
22
+ type Neighbourhood = {
23
23
  readonly lookup: Lookup;
24
24
  readonly texts: (paths: readonly string[]) => Promise<ReadonlyMap<string, string | null>>;
25
- readonly referrers: ((targets: readonly string[]) => Promise<readonly string[]>) | null;
25
+ readonly referrers: (targets: readonly string[]) => Promise<readonly string[]>;
26
26
  };
27
- export declare function sameComposition(left: Composition, right: Composition): boolean;
28
- export declare function changedCleanly(changes: readonly Changed[], previous: Composition, composition: Composition, source: CleanSource): Promise<boolean>;
27
+ export declare function validatedNeighbourhood(changes: readonly Changed[], composition: Composition, source: Neighbourhood): Promise<Validation>;
29
28
  export {};
30
29
  //# sourceMappingURL=validation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EASL,KAAK,UAAU,EAGhB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAMxE,KAAK,QAAQ,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AAE3E,MAAM,MAAM,KAAK,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC;AAEpF,MAAM,MAAM,IAAI,GAAG,CACjB,KAAK,EAAE,MAAM,GAAG,IAAI,KACjB,OAAO,CAAC;IAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,QAAQ,EAAE,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAAC;AAEtF,MAAM,MAAM,MAAM,GAAG,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;AAyBvF,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,UAAU,CAAC,CAyCrB;AAED,MAAM,MAAM,OAAO,GAAG;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CACzC,CAAC;AAEF,KAAK,WAAW,GAAG;IACjB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;IAC1F,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;CACzF,CAAC;AAaF,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAQ9E;AAqCD,wBAAsB,cAAc,CAClC,OAAO,EAAE,SAAS,OAAO,EAAE,EAC3B,QAAQ,EAAE,WAAW,EACrB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,OAAO,CAAC,CAsDlB"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,UAAU,EAGhB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAY,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAM7D,KAAK,QAAQ,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AAE3E,MAAM,MAAM,KAAK,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC;AAEpF,MAAM,MAAM,IAAI,GAAG,CACjB,KAAK,EAAE,MAAM,GAAG,IAAI,KACjB,OAAO,CAAC;IAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,QAAQ,EAAE,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAAC;AAEtF,MAAM,MAAM,MAAM,GAAG,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;AAwBvF,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,UAAU,CAAC,CA6CrB;AAED,MAAM,MAAM,OAAO,GAAG;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CACzC,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;IAC1F,QAAQ,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC;CAChF,CAAC;AAkBF,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,SAAS,OAAO,EAAE,EAC3B,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,UAAU,CAAC,CAgCrB"}