@assemblyline-agents/postgres 2.0.0 → 3.1.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 (82) hide show
  1. package/LICENSE +1 -1
  2. package/dist/adapter-agent-state.d.ts.map +1 -1
  3. package/dist/adapter-agent-state.js +51 -39
  4. package/dist/adapter-agent-state.js.map +1 -1
  5. package/dist/adapter-checkpoints.d.ts +1 -1
  6. package/dist/adapter-checkpoints.d.ts.map +1 -1
  7. package/dist/adapter-checkpoints.js +47 -27
  8. package/dist/adapter-checkpoints.js.map +1 -1
  9. package/dist/adapter-connection-events.d.ts +26 -0
  10. package/dist/adapter-connection-events.d.ts.map +1 -0
  11. package/dist/adapter-connection-events.js +126 -0
  12. package/dist/adapter-connection-events.js.map +1 -0
  13. package/dist/adapter-conversation-turns.d.ts +3 -1
  14. package/dist/adapter-conversation-turns.d.ts.map +1 -1
  15. package/dist/adapter-conversation-turns.js +99 -17
  16. package/dist/adapter-conversation-turns.js.map +1 -1
  17. package/dist/adapter-conversations.d.ts +11 -1
  18. package/dist/adapter-conversations.d.ts.map +1 -1
  19. package/dist/adapter-conversations.js +82 -15
  20. package/dist/adapter-conversations.js.map +1 -1
  21. package/dist/adapter-delivery.d.ts.map +1 -1
  22. package/dist/adapter-delivery.js +20 -12
  23. package/dist/adapter-delivery.js.map +1 -1
  24. package/dist/adapter-grants.d.ts +1 -0
  25. package/dist/adapter-grants.d.ts.map +1 -1
  26. package/dist/adapter-grants.js +15 -9
  27. package/dist/adapter-grants.js.map +1 -1
  28. package/dist/adapter-memory.d.ts +2 -0
  29. package/dist/adapter-memory.d.ts.map +1 -1
  30. package/dist/adapter-memory.js +23 -13
  31. package/dist/adapter-memory.js.map +1 -1
  32. package/dist/adapter-misc.d.ts +8 -0
  33. package/dist/adapter-misc.d.ts.map +1 -1
  34. package/dist/adapter-misc.js +80 -33
  35. package/dist/adapter-misc.js.map +1 -1
  36. package/dist/adapter-runs.d.ts.map +1 -1
  37. package/dist/adapter-runs.js +37 -23
  38. package/dist/adapter-runs.js.map +1 -1
  39. package/dist/adapter-sandbox.d.ts +2 -1
  40. package/dist/adapter-sandbox.d.ts.map +1 -1
  41. package/dist/adapter-sandbox.js +91 -19
  42. package/dist/adapter-sandbox.js.map +1 -1
  43. package/dist/adapter-settings.js +4 -4
  44. package/dist/adapter-settings.js.map +1 -1
  45. package/dist/adapter-timeline.d.ts +5 -0
  46. package/dist/adapter-timeline.d.ts.map +1 -0
  47. package/dist/adapter-timeline.js +86 -0
  48. package/dist/adapter-timeline.js.map +1 -0
  49. package/dist/adapter-usage.d.ts.map +1 -1
  50. package/dist/adapter-usage.js +7 -7
  51. package/dist/adapter-usage.js.map +1 -1
  52. package/dist/adapter-workspaces.d.ts +25 -0
  53. package/dist/adapter-workspaces.d.ts.map +1 -0
  54. package/dist/adapter-workspaces.js +486 -0
  55. package/dist/adapter-workspaces.js.map +1 -0
  56. package/dist/index.d.ts +76 -2
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/index.js +127 -6
  59. package/dist/index.js.map +1 -1
  60. package/dist/learning-store.js +16 -16
  61. package/dist/learning-store.js.map +1 -1
  62. package/dist/migrations.d.ts +7 -1
  63. package/dist/migrations.d.ts.map +1 -1
  64. package/dist/migrations.js +537 -168
  65. package/dist/migrations.js.map +1 -1
  66. package/dist/presets.d.ts +1 -1
  67. package/dist/presets.d.ts.map +1 -1
  68. package/dist/provider.d.ts +1 -1
  69. package/dist/provider.js +7 -7
  70. package/dist/provider.js.map +1 -1
  71. package/dist/row-mappers.d.ts.map +1 -1
  72. package/dist/row-mappers.js +8 -0
  73. package/dist/row-mappers.js.map +1 -1
  74. package/dist/sql-helpers.d.ts +0 -1
  75. package/dist/sql-helpers.d.ts.map +1 -1
  76. package/dist/sql-helpers.js +11 -6
  77. package/dist/sql-helpers.js.map +1 -1
  78. package/dist/stores.d.ts +3 -1
  79. package/dist/stores.d.ts.map +1 -1
  80. package/dist/stores.js +62 -20
  81. package/dist/stores.js.map +1 -1
  82. package/package.json +3 -3
@@ -1,4 +1,5 @@
1
1
  import { randomUUID } from "node:crypto";
2
+ import { QUEUED_CHANNEL_TURN_COALESCING_KEY, QUEUED_CHANNEL_TURN_KEY, QUEUED_CHANNEL_TURN_MERGED_INTO_KEY, QUEUED_CHANNEL_TURN_PARTS_KEY } from "@assemblyline-agents/runtime";
2
3
  import { normalizeJsonObject, timestamp, toIso } from "./sql-helpers.js";
3
4
  function mapConversationTurn(row) {
4
5
  const record = {
@@ -30,11 +31,11 @@ function mapConversationTurn(row) {
30
31
  export async function enqueueConversationTurn(client, input) {
31
32
  const now = timestamp();
32
33
  const id = randomUUID();
33
- const result = await client.query(`insert into openeve_conversation_turns
34
+ const result = await client.query(`insert into assembly_line_conversation_turns
34
35
  (id, agent_scope, conversation_id, channel, event_id, payload,
35
36
  idempotency_scope, idempotency_key, status, attempt_count, max_attempts,
36
37
  next_attempt_at, created_at, updated_at)
37
- values ($1,$2,$3,$4,$5,$6::jsonb,$7,$8,'pending',0,$9,$10,$10,$10)
38
+ values ($1,$2,$3,$4,$5,$6::jsonb,$7,$8,'pending',0,$9,$10,$11,$11)
38
39
  on conflict (agent_scope, idempotency_scope, idempotency_key) do nothing
39
40
  returning *`, [
40
41
  id,
@@ -46,18 +47,94 @@ export async function enqueueConversationTurn(client, input) {
46
47
  input.idempotencyScope,
47
48
  input.idempotencyKey,
48
49
  Math.max(1, Math.floor(input.maxAttempts ?? 5)),
50
+ input.notBeforeAt ?? now,
49
51
  now
50
52
  ]);
51
53
  const inserted = result.rows[0];
52
54
  if (inserted)
53
55
  return { turn: mapConversationTurn(inserted), inserted: true };
54
- const existing = await client.query(`select * from openeve_conversation_turns
56
+ const existing = await client.query(`select * from assembly_line_conversation_turns
55
57
  where agent_scope=$1 and idempotency_scope=$2 and idempotency_key=$3`, [input.agentScope, input.idempotencyScope, input.idempotencyKey]);
56
58
  const row = existing.rows[0];
57
59
  if (!row)
58
60
  throw new Error("Conversation turn idempotency conflict could not be reloaded.");
59
61
  return { turn: mapConversationTurn(row), inserted: false };
60
62
  }
63
+ export async function mergePendingConversationTurns(client, id, leaseToken) {
64
+ const now = timestamp();
65
+ const result = await client.query(`with head as (
66
+ select turn.*
67
+ from assembly_line_conversation_turns turn
68
+ where turn.id=$1 and turn.status='running' and turn.lease_token=$2
69
+ and jsonb_typeof(turn.payload->'${QUEUED_CHANNEL_TURN_COALESCING_KEY}')='object'
70
+ for update
71
+ ),
72
+ siblings as (
73
+ select sibling.*
74
+ from assembly_line_conversation_turns sibling
75
+ cross join head
76
+ where sibling.id <> head.id
77
+ and sibling.agent_scope=head.agent_scope
78
+ and sibling.conversation_id=head.conversation_id
79
+ and sibling.channel=head.channel
80
+ and sibling.status='pending'
81
+ and sibling.payload->'${QUEUED_CHANNEL_TURN_COALESCING_KEY}'->>'key' =
82
+ head.payload->'${QUEUED_CHANNEL_TURN_COALESCING_KEY}'->>'key'
83
+ and sibling.created_at <=
84
+ (head.payload->'${QUEUED_CHANNEL_TURN_COALESCING_KEY}'->>'deadlineAt')::timestamptz
85
+ order by sibling.enqueue_sequence asc
86
+ for update
87
+ ),
88
+ updated_head as (
89
+ update assembly_line_conversation_turns turn
90
+ set payload=jsonb_build_object(
91
+ '${QUEUED_CHANNEL_TURN_PARTS_KEY}',
92
+ case
93
+ when jsonb_typeof(head.payload->'${QUEUED_CHANNEL_TURN_PARTS_KEY}')='array'
94
+ then head.payload->'${QUEUED_CHANNEL_TURN_PARTS_KEY}'
95
+ else jsonb_build_array(coalesce(head.payload->'${QUEUED_CHANNEL_TURN_KEY}', head.payload))
96
+ end || coalesce(
97
+ (select jsonb_agg(coalesce(sibling.payload->'${QUEUED_CHANNEL_TURN_KEY}', sibling.payload)
98
+ order by sibling.enqueue_sequence)
99
+ from siblings sibling),
100
+ '[]'::jsonb
101
+ ),
102
+ '${QUEUED_CHANNEL_TURN_COALESCING_KEY}',
103
+ head.payload->'${QUEUED_CHANNEL_TURN_COALESCING_KEY}'
104
+ ),
105
+ updated_at=$3
106
+ from head
107
+ where turn.id=head.id and exists (select 1 from siblings)
108
+ returning turn.*, 0 as merge_order
109
+ ),
110
+ updated_siblings as (
111
+ update assembly_line_conversation_turns turn
112
+ set status='coalesced',
113
+ payload=jsonb_set(
114
+ turn.payload,
115
+ '{${QUEUED_CHANNEL_TURN_MERGED_INTO_KEY}}',
116
+ to_jsonb($1::text),
117
+ true
118
+ ),
119
+ updated_at=$3
120
+ from siblings sibling
121
+ where turn.id=sibling.id and exists (select 1 from updated_head)
122
+ returning turn.*, 1 as merge_order
123
+ )
124
+ select * from updated_head
125
+ union all
126
+ select * from updated_siblings
127
+ order by merge_order asc, created_at asc`, [id, leaseToken, now]);
128
+ const head = result.rows.find((row) => Number(row.merge_order) === 0);
129
+ if (!head)
130
+ return undefined;
131
+ return {
132
+ turn: mapConversationTurn(head),
133
+ merged: result.rows
134
+ .filter((row) => Number(row.merge_order) === 1)
135
+ .map(mapConversationTurn)
136
+ };
137
+ }
61
138
  export async function leaseNextConversationTurn(client, options) {
62
139
  const now = options.now ?? new Date();
63
140
  const leaseToken = randomUUID();
@@ -65,18 +142,18 @@ export async function leaseNextConversationTurn(client, options) {
65
142
  try {
66
143
  const result = await client.query(`with candidate as (
67
144
  select turn.id
68
- from openeve_conversation_turns turn
145
+ from assembly_line_conversation_turns turn
69
146
  where turn.agent_scope=$1
70
147
  and turn.status='pending'
71
148
  and turn.next_attempt_at <= $2
72
149
  and not exists (
73
- select 1 from openeve_conversation_turns active
150
+ select 1 from assembly_line_conversation_turns active
74
151
  where active.agent_scope=turn.agent_scope
75
152
  and active.conversation_id=turn.conversation_id
76
153
  and active.status in ('running','blocked')
77
154
  )
78
155
  and not exists (
79
- select 1 from openeve_conversation_turns earlier
156
+ select 1 from assembly_line_conversation_turns earlier
80
157
  where earlier.agent_scope=turn.agent_scope
81
158
  and earlier.conversation_id=turn.conversation_id
82
159
  and earlier.status='pending'
@@ -86,7 +163,7 @@ export async function leaseNextConversationTurn(client, options) {
86
163
  for update skip locked
87
164
  limit 1
88
165
  )
89
- update openeve_conversation_turns turn
166
+ update assembly_line_conversation_turns turn
90
167
  set status='running',
91
168
  attempt_count=turn.attempt_count + 1,
92
169
  lease_token=$3,
@@ -107,7 +184,7 @@ export async function leaseNextConversationTurn(client, options) {
107
184
  }
108
185
  }
109
186
  export async function attachConversationTurnRun(client, id, leaseToken, runId) {
110
- const result = await client.query(`update openeve_conversation_turns
187
+ const result = await client.query(`update assembly_line_conversation_turns
111
188
  set run_id=$3, updated_at=$4
112
189
  where id=$1 and status='running' and lease_token=$2
113
190
  returning *`, [id, leaseToken, runId, timestamp()]);
@@ -117,7 +194,7 @@ export async function attachConversationTurnRun(client, id, leaseToken, runId) {
117
194
  return mapConversationTurn(row);
118
195
  }
119
196
  export async function settleConversationTurn(client, id, leaseToken, status, options = {}) {
120
- const result = await client.query(`update openeve_conversation_turns
197
+ const result = await client.query(`update assembly_line_conversation_turns
121
198
  set status=$3,
122
199
  run_id=coalesce($4, run_id),
123
200
  last_error=coalesce($5, last_error),
@@ -132,20 +209,25 @@ export async function settleConversationTurn(client, id, leaseToken, status, opt
132
209
  return mapConversationTurn(row);
133
210
  }
134
211
  export async function settleConversationTurnByRunId(client, runId, status, options = {}) {
135
- const result = await client.query(`update openeve_conversation_turns
212
+ const result = await client.query(`update assembly_line_conversation_turns
136
213
  set status=$2,
137
214
  last_error=coalesce($3, last_error),
138
215
  lease_token=null,
139
216
  lease_expires_at=null,
140
217
  updated_at=$4
141
- where run_id=$1 and status in ('running','blocked')
142
- returning *`, [runId, status, options.error ?? null, timestamp()]);
218
+ where run_id=$1 and (
219
+ status='blocked' or (
220
+ status='running' and $5::timestamptz is not null and
221
+ (lease_expires_at is null or lease_expires_at <= $5::timestamptz)
222
+ )
223
+ )
224
+ returning *`, [runId, status, options.error ?? null, timestamp(), options.expiredBefore ?? null]);
143
225
  const row = result.rows[0];
144
226
  return row ? mapConversationTurn(row) : undefined;
145
227
  }
146
228
  export async function retryConversationTurn(client, id, leaseToken, error) {
147
229
  const now = new Date();
148
- const result = await client.query(`update openeve_conversation_turns
230
+ const result = await client.query(`update assembly_line_conversation_turns
149
231
  set status=case when attempt_count >= max_attempts then 'failed' else 'pending' end,
150
232
  next_attempt_at=case
151
233
  when attempt_count >= max_attempts then $4::timestamptz
@@ -163,7 +245,7 @@ export async function retryConversationTurn(client, id, leaseToken, error) {
163
245
  return mapConversationTurn(row);
164
246
  }
165
247
  export async function recoverExpiredConversationTurns(client, now = new Date()) {
166
- const result = await client.query(`update openeve_conversation_turns turn
248
+ const result = await client.query(`update assembly_line_conversation_turns turn
167
249
  set status=case
168
250
  when turn.run_id is null and turn.attempt_count >= turn.max_attempts then 'failed'
169
251
  when turn.run_id is null then 'pending'
@@ -185,8 +267,8 @@ export async function recoverExpiredConversationTurns(client, now = new Date())
185
267
  else turn.last_error
186
268
  end,
187
269
  updated_at=$1
188
- from openeve_conversation_turns source
189
- left join openeve_runs run on run.id=source.run_id
270
+ from assembly_line_conversation_turns source
271
+ left join assembly_line_runs run on run.id=source.run_id
190
272
  where turn.id=source.id
191
273
  and turn.status='running'
192
274
  and turn.lease_expires_at <= $1
@@ -210,7 +292,7 @@ export async function listConversationTurns(client, options = {}) {
210
292
  clauses.push(`status=$${values.length}`);
211
293
  }
212
294
  const where = clauses.length > 0 ? `where ${clauses.join(" and ")}` : "";
213
- const result = await client.query(`select * from openeve_conversation_turns ${where} order by enqueue_sequence asc`, values);
295
+ const result = await client.query(`select * from assembly_line_conversation_turns ${where} order by enqueue_sequence asc`, values);
214
296
  return result.rows.map(mapConversationTurn);
215
297
  }
216
298
  //# sourceMappingURL=adapter-conversation-turns.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-conversation-turns.js","sourceRoot":"","sources":["../src/adapter-conversation-turns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAOzC,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAIzE,SAAS,mBAAmB,CAAC,GAAQ;IACnC,MAAM,MAAM,GAA2B;QACrC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC;QACnC,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;QAC3C,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;QAC5B,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAC7B,OAAO,EAAE,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC;QACzC,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAC/C,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;QAC3C,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAA2B;QACpD,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,CAAC;QAC5C,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,CAAC;QAC1C,aAAa,EAAE,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC;QACzC,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC;QAChC,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC;KACjC,CAAC;IACF,IAAI,GAAG,CAAC,MAAM;QAAE,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAClD,IAAI,GAAG,CAAC,WAAW;QAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACjE,IAAI,GAAG,CAAC,gBAAgB;QAAE,MAAM,CAAC,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC9E,IAAI,GAAG,CAAC,UAAU;QAAE,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC9D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,MAAmB,EACnB,KAAsE;IAEtE,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;IACxB,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;IACxB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B;;;;;;iBAMa,EACb;QACE,EAAE;QACF,KAAK,CAAC,UAAU;QAChB,KAAK,CAAC,cAAc;QACpB,KAAK,CAAC,OAAO;QACb,KAAK,CAAC,OAAO;QACb,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC;QAC7B,KAAK,CAAC,gBAAgB;QACtB,KAAK,CAAC,cAAc;QACpB,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;QAC/C,GAAG;KACJ,CACF,CAAC;IACF,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,mBAAmB,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC7E,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CACjC;0EACsE,EACtE,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC,cAAc,CAAC,CACjE,CAAC;IACF,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IAC3F,OAAO,EAAE,IAAI,EAAE,mBAAmB,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAC7D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,MAAmB,EACnB,OAA0E;IAE1E,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;IACtC,MAAM,UAAU,GAAG,UAAU,EAAE,CAAC;IAChC,MAAM,cAAc,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC/F,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBA+BkB,EAClB,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,cAAc,CAAC,CACpE,CAAC;QACF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC3B,OAAO,GAAG,CAAC,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,+DAA+D;QAC/D,+DAA+D;QAC/D,IAAK,KAA2B,CAAC,IAAI,KAAK,OAAO;YAAE,OAAO,SAAS,CAAC;QACpE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,MAAmB,EACnB,EAAU,EACV,UAAkB,EAClB,KAAa;IAEb,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B;;;iBAGa,EACb,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CACrC,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,EAAE,EAAE,CAAC,CAAC;IACrE,OAAO,mBAAmB,CAAC,GAAG,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,MAAmB,EACnB,EAAU,EACV,UAAkB,EAClB,MAAwD,EACxD,UAA8C,EAAE;IAEhD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B;;;;;;;;iBAQa,EACb,CAAC,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,EAAE,SAAS,EAAE,CAAC,CACpF,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,EAAE,EAAE,CAAC,CAAC;IACrE,OAAO,mBAAmB,CAAC,GAAG,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,MAAmB,EACnB,KAAa,EACb,MAAwD,EACxD,UAA8B,EAAE;IAEhC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B;;;;;;;iBAOa,EACb,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,EAAE,SAAS,EAAE,CAAC,CACpD,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,OAAO,GAAG,CAAC,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACpD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAmB,EACnB,EAAU,EACV,UAAkB,EAClB,KAAa;IAEb,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B;;;;;;;;;;;iBAWa,EACb,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAC3C,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,EAAE,EAAE,CAAC,CAAC;IACrE,OAAO,mBAAmB,CAAC,GAAG,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,MAAmB,EACnB,GAAG,GAAG,IAAI,IAAI,EAAE;IAEhB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBA4BkB,EAClB,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CACpB,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAmB,EACnB,UAII,EAAE;IAEN,MAAM,MAAM,GAAc,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QACvB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAChC,OAAO,CAAC,IAAI,CAAC,gBAAgB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QAC3B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACpC,OAAO,CAAC,IAAI,CAAC,oBAAoB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC5B,OAAO,CAAC,IAAI,CAAC,WAAW,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3C,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B,4CAA4C,KAAK,gCAAgC,EACjF,MAAM,CACP,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"adapter-conversation-turns.js","sourceRoot":"","sources":["../src/adapter-conversation-turns.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { JsonObject } from "@assemblyline-agents/core";
2
- import type { ConversationCursor, ConversationRecord, MessageCursor, MessageRecord } from "@assemblyline-agents/runtime";
2
+ import type { ConversationCursor, ConversationRecord, MessageCursor, MessageRecord, MessageSearchInput, MessageSearchResult } from "@assemblyline-agents/runtime";
3
3
  import type { QueryClient } from "./client-types.js";
4
4
  export declare function upsertConversation(client: QueryClient, input: {
5
5
  id: string;
@@ -25,6 +25,7 @@ export declare function updateConversation(client: QueryClient, id: string, patc
25
25
  metadata?: JsonObject;
26
26
  }): Promise<ConversationRecord | undefined>;
27
27
  export declare function listRecentConversationsBySubject(client: QueryClient, input: {
28
+ agentScope: string;
28
29
  channel: string;
29
30
  subject: string;
30
31
  since?: string;
@@ -37,10 +38,19 @@ export declare function appendMessage(client: QueryClient, input: {
37
38
  role: MessageRecord["role"];
38
39
  content: JsonObject;
39
40
  }): Promise<MessageRecord>;
41
+ export declare function upsertMessage(client: QueryClient, input: {
42
+ id: string;
43
+ conversationId: string;
44
+ runId?: string;
45
+ role: MessageRecord["role"];
46
+ content: JsonObject;
47
+ createdAt?: string;
48
+ }): Promise<MessageRecord>;
40
49
  export declare function listRecentMessages(client: QueryClient, conversationId: string, limit?: number): Promise<MessageRecord[]>;
41
50
  export declare function listMessages(client: QueryClient, input: {
42
51
  conversationId: string;
43
52
  before?: MessageCursor;
44
53
  limit?: number;
45
54
  }): Promise<MessageRecord[]>;
55
+ export declare function searchMessages(client: QueryClient, input: MessageSearchInput): Promise<MessageSearchResult[]>;
46
56
  //# sourceMappingURL=adapter-conversations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-conversations.d.ts","sourceRoot":"","sources":["../src/adapter-conversations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AACzH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIrD,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE;IACnE,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,UAAU,CAAC;CACvB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA4B9B;AAED,wBAAsB,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAI9G;AAED,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE;IAClE,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAyBhC;AAED,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;IAC/E,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,EAAE,UAAU,CAAC;CACvB,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAsB1C;AAED,wBAAsB,gCAAgC,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE;IACjF,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAoBhC;AAED,wBAAsB,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE;IAC9D,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO,EAAE,UAAU,CAAC;CACrB,GAAG,OAAO,CAAC,aAAa,CAAC,CAezB;AAED,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAM1H;AAED,wBAAsB,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE;IAC7D,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAgB3B"}
1
+ {"version":3,"file":"adapter-conversations.d.ts","sourceRoot":"","sources":["../src/adapter-conversations.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,18 @@
1
1
  import { randomUUID } from "node:crypto";
2
2
  import { mapConversation, mapMessage } from "./row-mappers.js";
3
- import { timestamp } from "./sql-helpers.js";
3
+ import { normalizeJsonObject, timestamp } from "./sql-helpers.js";
4
4
  export async function upsertConversation(client, input) {
5
5
  const now = timestamp();
6
- const result = await client.query(`insert into openeve_conversations
6
+ const result = await client.query(`insert into assembly_line_conversations
7
7
  (id, agent_id, agent_scope, agent_revision, channel, subject, title, metadata, created_at, updated_at)
8
8
  values ($1, null, $2, $3, $4, $5, $6, $7::jsonb, $8, $9)
9
9
  on conflict (id) do update set
10
- agent_scope=coalesce(excluded.agent_scope, openeve_conversations.agent_scope),
10
+ agent_scope=coalesce(excluded.agent_scope, assembly_line_conversations.agent_scope),
11
11
  agent_revision=excluded.agent_revision,
12
12
  channel=excluded.channel,
13
- subject=coalesce(excluded.subject, openeve_conversations.subject),
14
- title=coalesce(excluded.title, openeve_conversations.title),
15
- metadata=openeve_conversations.metadata || excluded.metadata,
13
+ subject=coalesce(excluded.subject, assembly_line_conversations.subject),
14
+ title=coalesce(excluded.title, assembly_line_conversations.title),
15
+ metadata=assembly_line_conversations.metadata || excluded.metadata,
16
16
  updated_at=excluded.updated_at
17
17
  returning *`, [
18
18
  input.id,
@@ -28,7 +28,7 @@ export async function upsertConversation(client, input) {
28
28
  return mapConversation(result.rows[0]);
29
29
  }
30
30
  export async function getConversation(client, id) {
31
- const result = await client.query("select * from openeve_conversations where id=$1", [id]);
31
+ const result = await client.query("select * from assembly_line_conversations where id=$1", [id]);
32
32
  const row = result.rows[0];
33
33
  return row ? mapConversation(row) : undefined;
34
34
  }
@@ -50,7 +50,7 @@ export async function listConversations(client, input) {
50
50
  clauses.push(`(updated_at, id) < ($${values.length - 1}, $${values.length})`);
51
51
  }
52
52
  values.push(Math.max(0, input.limit ?? 50));
53
- const result = await client.query(`select * from openeve_conversations
53
+ const result = await client.query(`select * from assembly_line_conversations
54
54
  where ${clauses.join(" and ")}
55
55
  order by updated_at desc, id desc
56
56
  limit $${values.length}`, values);
@@ -58,7 +58,7 @@ export async function listConversations(client, input) {
58
58
  }
59
59
  export async function updateConversation(client, id, patch) {
60
60
  const now = timestamp();
61
- const result = await client.query(`update openeve_conversations set
61
+ const result = await client.query(`update assembly_line_conversations set
62
62
  title=case when $2::boolean then $3 else title end,
63
63
  archived_at=case when $4::boolean then $5::timestamptz else archived_at end,
64
64
  metadata=metadata || $6::jsonb,
@@ -77,8 +77,8 @@ export async function updateConversation(client, id, patch) {
77
77
  return row ? mapConversation(row) : undefined;
78
78
  }
79
79
  export async function listRecentConversationsBySubject(client, input) {
80
- const clauses = ["channel=$1", "subject=$2"];
81
- const values = [input.channel, input.subject];
80
+ const clauses = ["coalesce(agent_scope, agent_revision)=$1", "channel=$2", "subject=$3"];
81
+ const values = [input.agentScope, input.channel, input.subject];
82
82
  if (input.since) {
83
83
  values.push(input.since);
84
84
  clauses.push(`updated_at >= $${values.length}`);
@@ -88,7 +88,7 @@ export async function listRecentConversationsBySubject(client, input) {
88
88
  clauses.push(`id <> $${values.length}`);
89
89
  }
90
90
  values.push(Math.max(0, input.limit ?? 10));
91
- const result = await client.query(`select * from openeve_conversations
91
+ const result = await client.query(`select * from assembly_line_conversations
92
92
  where ${clauses.join(" and ")}
93
93
  order by updated_at desc
94
94
  limit $${values.length}`, values);
@@ -104,12 +104,23 @@ export async function appendMessage(client, input) {
104
104
  };
105
105
  if (input.runId)
106
106
  record.runId = input.runId;
107
- await client.query(`insert into openeve_messages (id, conversation_id, run_id, role, content, created_at)
107
+ await client.query(`insert into assembly_line_messages (id, conversation_id, run_id, role, content, created_at)
108
108
  values ($1,$2,$3,$4,$5::jsonb,$6)`, [record.id, record.conversationId, record.runId ?? null, record.role, JSON.stringify(record.content), record.createdAt]);
109
109
  return record;
110
110
  }
111
+ export async function upsertMessage(client, input) {
112
+ const result = await client.query(`insert into assembly_line_messages (id, conversation_id, run_id, role, content, created_at)
113
+ values ($1,$2,$3,$4,$5::jsonb,$6)
114
+ on conflict (id) do update set
115
+ conversation_id=excluded.conversation_id,
116
+ run_id=coalesce(excluded.run_id, assembly_line_messages.run_id),
117
+ role=excluded.role,
118
+ content=excluded.content
119
+ returning *`, [input.id, input.conversationId, input.runId ?? null, input.role, JSON.stringify(input.content), input.createdAt ?? timestamp()]);
120
+ return mapMessage(result.rows[0]);
121
+ }
111
122
  export async function listRecentMessages(client, conversationId, limit = 20) {
112
- const result = await client.query("select * from openeve_messages where conversation_id=$1 order by created_at desc limit $2", [conversationId, limit]);
123
+ const result = await client.query("select * from assembly_line_messages where conversation_id=$1 order by created_at desc limit $2", [conversationId, limit]);
113
124
  return result.rows.map(mapMessage).reverse();
114
125
  }
115
126
  export async function listMessages(client, input) {
@@ -120,10 +131,66 @@ export async function listMessages(client, input) {
120
131
  clauses.push(`(created_at, id) < ($${values.length - 1}, $${values.length})`);
121
132
  }
122
133
  values.push(Math.max(0, input.limit ?? 50));
123
- const result = await client.query(`select * from openeve_messages
134
+ const result = await client.query(`select * from assembly_line_messages
124
135
  where ${clauses.join(" and ")}
125
136
  order by created_at desc, id desc
126
137
  limit $${values.length}`, values);
127
138
  return result.rows.map(mapMessage).reverse();
128
139
  }
140
+ export async function searchMessages(client, input) {
141
+ const values = [input.agentScope];
142
+ const clauses = ["coalesce(conversation.agent_scope, conversation.agent_revision, conversation.agent_id)=$1"];
143
+ if (input.channel) {
144
+ values.push(input.channel);
145
+ clauses.push(`conversation.channel=$${values.length}`);
146
+ }
147
+ if (input.conversationId) {
148
+ values.push(input.conversationId);
149
+ clauses.push(`message.conversation_id=$${values.length}`);
150
+ }
151
+ if (input.excludeConversationId) {
152
+ values.push(input.excludeConversationId);
153
+ clauses.push(`message.conversation_id<>$${values.length}`);
154
+ }
155
+ if (input.subject) {
156
+ values.push(input.subject);
157
+ clauses.push(`conversation.subject=$${values.length}`);
158
+ }
159
+ if (input.source) {
160
+ for (const [key, value] of [
161
+ ["provider", input.source.provider],
162
+ ["workspaceId", input.source.workspaceId],
163
+ ["channelId", input.source.channelId],
164
+ ...(input.source.threadId ? [["threadId", input.source.threadId]] : [])
165
+ ]) {
166
+ values.push(value);
167
+ clauses.push(`conversation.metadata->'source'->>'${key}'=$${values.length}`);
168
+ }
169
+ }
170
+ clauses.push("message.content->>'deleted' is distinct from 'true'");
171
+ const tsQuery = messageSearchTsQuery(input.query);
172
+ let scoreSql = "0::real";
173
+ if (tsQuery) {
174
+ values.push(tsQuery);
175
+ const queryParameter = `$${values.length}`;
176
+ clauses.push(`message.search_vector @@ to_tsquery('simple', ${queryParameter})`);
177
+ scoreSql = `ts_rank_cd(message.search_vector, to_tsquery('simple', ${queryParameter}))`;
178
+ }
179
+ values.push(Math.max(0, input.limit ?? 20));
180
+ const result = await client.query(`select message.*, conversation.metadata as conversation_metadata, ${scoreSql} as search_score
181
+ from assembly_line_messages message
182
+ join assembly_line_conversations conversation on conversation.id=message.conversation_id
183
+ where ${clauses.join(" and ")}
184
+ order by search_score desc, message.created_at desc, message.id desc
185
+ limit $${values.length}`, values);
186
+ return result.rows.map((row) => ({
187
+ message: mapMessage(row),
188
+ conversationMetadata: normalizeJsonObject(row.conversation_metadata),
189
+ score: Number(row.search_score ?? 0)
190
+ }));
191
+ }
192
+ function messageSearchTsQuery(query) {
193
+ const terms = [...new Set((query?.toLowerCase().match(/[a-z0-9_]{2,}/g) ?? []).slice(0, 12))];
194
+ return terms.length > 0 ? terms.map((term) => `${term}:*`).join(" | ") : undefined;
195
+ }
129
196
  //# sourceMappingURL=adapter-conversations.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-conversations.js","sourceRoot":"","sources":["../src/adapter-conversations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter-conversations.js","sourceRoot":"","sources":["../src/adapter-conversations.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-delivery.d.ts","sourceRoot":"","sources":["../src/adapter-delivery.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EACV,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIrD,wBAAsB,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAoCrH;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAMjI;AAyBD,wBAAsB,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAGtG;AAED,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAyB/H;AAED,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,GAAE;IAAE,OAAO,CAAC,EAAE,UAAU,CAAA;CAAO,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAsBjK;AAED,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA+BtJ;AAED,wBAAsB,wBAAwB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,GAAE,IAAiB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAWzH"}
1
+ {"version":3,"file":"adapter-delivery.d.ts","sourceRoot":"","sources":["../src/adapter-delivery.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EACV,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIrD,wBAAsB,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAoCrH;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAMjI;AAyBD,wBAAsB,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAGtG;AAED,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAyB/H;AAED,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,GAAE;IAAE,OAAO,CAAC,EAAE,UAAU,CAAA;CAAO,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAsBjK;AAED,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA+BtJ;AAED,wBAAsB,wBAAwB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,GAAE,IAAiB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAmBzH"}
@@ -12,7 +12,7 @@ export async function createDelivery(client, input) {
12
12
  createdAt: now,
13
13
  updatedAt: now
14
14
  };
15
- await client.query(`insert into openeve_delivery_obligations
15
+ await client.query(`insert into assembly_line_delivery_obligations
16
16
  (id, run_id, channel, payload, idempotency_key, status, attempt_count, max_attempts, next_attempt_at,
17
17
  lease_token, lease_expires_at, last_error, sent_at, failed_at, created_at, updated_at)
18
18
  values ($1,$2,$3,$4::jsonb,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16)`, [
@@ -36,7 +36,7 @@ export async function createDelivery(client, input) {
36
36
  return delivery;
37
37
  }
38
38
  export async function updateDelivery(client, id, patch) {
39
- const current = (await client.query("select * from openeve_delivery_obligations where id=$1", [id])).rows[0];
39
+ const current = (await client.query("select * from assembly_line_delivery_obligations where id=$1", [id])).rows[0];
40
40
  if (!current)
41
41
  throw new Error(`Delivery not found: ${id}`);
42
42
  const updated = applyDeliveryPatchForPostgres(mapDelivery(current), patch);
@@ -44,7 +44,7 @@ export async function updateDelivery(client, id, patch) {
44
44
  return updated;
45
45
  }
46
46
  async function persistDelivery(client, updated) {
47
- await client.query(`update openeve_delivery_obligations
47
+ await client.query(`update assembly_line_delivery_obligations
48
48
  set status=$2, payload=$3::jsonb, attempt_count=$4, max_attempts=$5, next_attempt_at=$6,
49
49
  lease_token=$7, lease_expires_at=$8, last_error=$9, sent_at=$10, failed_at=$11, updated_at=$12
50
50
  where id=$1`, [
@@ -63,7 +63,7 @@ async function persistDelivery(client, updated) {
63
63
  ]);
64
64
  }
65
65
  export async function listDeliveries(client, runId) {
66
- const result = await client.query("select * from openeve_delivery_obligations where run_id=$1 order by created_at asc", [runId]);
66
+ const result = await client.query("select * from assembly_line_delivery_obligations where run_id=$1 order by created_at asc", [runId]);
67
67
  return result.rows.map(mapDelivery);
68
68
  }
69
69
  export async function leaseDueDeliveries(client, options = {}) {
@@ -71,14 +71,14 @@ export async function leaseDueDeliveries(client, options = {}) {
71
71
  const leaseToken = randomUUID();
72
72
  const leaseForMs = positiveLimit(options.leaseForMs, 60_000);
73
73
  const leaseExpiresAt = new Date(now.getTime() + leaseForMs).toISOString();
74
- const result = await client.query(`update openeve_delivery_obligations
74
+ const result = await client.query(`update assembly_line_delivery_obligations
75
75
  set status='sending',
76
76
  lease_token=$1,
77
77
  lease_expires_at=$2,
78
78
  attempt_count=attempt_count + 1,
79
79
  updated_at=$3
80
80
  where id in (
81
- select id from openeve_delivery_obligations
81
+ select id from assembly_line_delivery_obligations
82
82
  where status='pending'
83
83
  and next_attempt_at <= $3
84
84
  and attempt_count < max_attempts
@@ -90,7 +90,7 @@ export async function leaseDueDeliveries(client, options = {}) {
90
90
  return result.rows.map(mapDelivery);
91
91
  }
92
92
  export async function completeDeliverySend(client, id, leaseToken, patch = {}) {
93
- const current = (await client.query("select * from openeve_delivery_obligations where id=$1", [id])).rows[0];
93
+ const current = (await client.query("select * from assembly_line_delivery_obligations where id=$1", [id])).rows[0];
94
94
  if (!current)
95
95
  throw new Error(`Delivery not found: ${id}`);
96
96
  const delivery = mapDelivery(current);
@@ -103,7 +103,7 @@ export async function completeDeliverySend(client, id, leaseToken, patch = {}) {
103
103
  // expired mid-send and a worker re-leased the row between the SELECT above
104
104
  // and this UPDATE, 0 rows match and we throw rather than clobbering the new
105
105
  // holder's lease (which would re-open the double-send window).
106
- const result = await client.query(`update openeve_delivery_obligations
106
+ const result = await client.query(`update assembly_line_delivery_obligations
107
107
  set status='sent', payload=$2::jsonb, lease_token=null, lease_expires_at=null,
108
108
  last_error=null, sent_at=$3, updated_at=$3
109
109
  where id=$1 and lease_token=$4
@@ -114,7 +114,7 @@ export async function completeDeliverySend(client, id, leaseToken, patch = {}) {
114
114
  return mapDelivery(row);
115
115
  }
116
116
  export async function failDeliverySend(client, id, leaseToken, failure) {
117
- const current = (await client.query("select * from openeve_delivery_obligations where id=$1", [id])).rows[0];
117
+ const current = (await client.query("select * from assembly_line_delivery_obligations where id=$1", [id])).rows[0];
118
118
  if (!current)
119
119
  throw new Error(`Delivery not found: ${id}`);
120
120
  const delivery = mapDelivery(current);
@@ -125,7 +125,7 @@ export async function failDeliverySend(client, id, leaseToken, failure) {
125
125
  const nextAttemptAt = permanent
126
126
  ? delivery.nextAttemptAt
127
127
  : new Date(now.getTime() + positiveLimit(failure.retryDelayMs, postgresSandboxSyncRetryDelayMs(delivery.attemptCount))).toISOString();
128
- const result = await client.query(`update openeve_delivery_obligations
128
+ const result = await client.query(`update assembly_line_delivery_obligations
129
129
  set status=$2, next_attempt_at=$3, lease_token=null, lease_expires_at=null,
130
130
  failed_at=$4, last_error=$5, updated_at=$6
131
131
  where id=$1 and lease_token=$7
@@ -146,8 +146,16 @@ export async function failDeliverySend(client, id, leaseToken, failure) {
146
146
  return mapDelivery(row);
147
147
  }
148
148
  export async function recoverExpiredDeliveries(client, now = new Date()) {
149
- const result = await client.query(`update openeve_delivery_obligations
150
- set status='pending', next_attempt_at=$1, lease_token=null, lease_expires_at=null, updated_at=$1
149
+ // Rows whose attempts are exhausted go terminal instead of back to
150
+ // 'pending' a pending row with attempt_count >= max_attempts is never due
151
+ // again and would otherwise sit as an unreported zombie forever. Recovered
152
+ // rows are returned either way so the runtime can emit terminal events.
153
+ const result = await client.query(`update assembly_line_delivery_obligations
154
+ set status=case when attempt_count >= max_attempts then 'failed' else 'pending' end,
155
+ next_attempt_at=case when attempt_count >= max_attempts then next_attempt_at else $1::timestamptz end,
156
+ failed_at=case when attempt_count >= max_attempts then $1::timestamptz else failed_at end,
157
+ last_error=case when attempt_count >= max_attempts then 'lease expired after final attempt' else last_error end,
158
+ lease_token=null, lease_expires_at=null, updated_at=$1
151
159
  where status='sending'
152
160
  and lease_expires_at is not null
153
161
  and lease_expires_at <= $1
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-delivery.js","sourceRoot":"","sources":["../src/adapter-delivery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter-delivery.js","sourceRoot":"","sources":["../src/adapter-delivery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAUzC,OAAO,EAAE,WAAW,EAAY,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,6BAA6B,EAAE,aAAa,EAAE,+BAA+B,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE5H,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAmB,EAAE,KAA8B;IACtF,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;IACxB,MAAM,QAAQ,GAAuB;QACnC,GAAG,KAAK;QACR,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,CAAC;QACrC,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,CAAC;QACnC,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,GAAG;QACzC,EAAE,EAAE,UAAU,EAAE;QAChB,SAAS,EAAE,GAAG;QACd,SAAS,EAAE,GAAG;KACf,CAAC;IACF,MAAM,MAAM,CAAC,KAAK,CAChB;;;8EAG0E,EAC1E;QACE,QAAQ,CAAC,EAAE;QACX,QAAQ,CAAC,KAAK;QACd,QAAQ,CAAC,OAAO;QAChB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC;QAChC,QAAQ,CAAC,cAAc;QACvB,QAAQ,CAAC,MAAM;QACf,QAAQ,CAAC,YAAY;QACrB,QAAQ,CAAC,WAAW;QACpB,QAAQ,CAAC,aAAa;QACtB,QAAQ,CAAC,UAAU,IAAI,IAAI;QAC3B,QAAQ,CAAC,cAAc,IAAI,IAAI;QAC/B,QAAQ,CAAC,SAAS,IAAI,IAAI;QAC1B,QAAQ,CAAC,MAAM,IAAI,IAAI;QACvB,QAAQ,CAAC,QAAQ,IAAI,IAAI;QACzB,QAAQ,CAAC,SAAS;QAClB,QAAQ,CAAC,SAAS;KACnB,CACF,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAmB,EAAE,EAAU,EAAE,KAA8B;IAClG,MAAM,OAAO,GAAG,CAAC,MAAM,MAAM,CAAC,KAAK,CAAM,8DAA8D,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACxH,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,6BAA6B,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;IAC3E,MAAM,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,MAAmB,EAAE,OAA2B;IAC7E,MAAM,MAAM,CAAC,KAAK,CAChB;;;mBAGe,EACf;QACE,OAAO,CAAC,EAAE;QACV,OAAO,CAAC,MAAM;QACd,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;QAC/B,OAAO,CAAC,YAAY;QACpB,OAAO,CAAC,WAAW;QACnB,OAAO,CAAC,aAAa;QACrB,OAAO,CAAC,UAAU,IAAI,IAAI;QAC1B,OAAO,CAAC,cAAc,IAAI,IAAI;QAC9B,OAAO,CAAC,SAAS,IAAI,IAAI;QACzB,OAAO,CAAC,MAAM,IAAI,IAAI;QACtB,OAAO,CAAC,QAAQ,IAAI,IAAI;QACxB,OAAO,CAAC,SAAS;KAClB,CACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAmB,EAAE,KAAa;IACrE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAM,0FAA0F,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5I,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,MAAmB,EAAE,UAAgC,EAAE;IAC9F,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;IACtC,MAAM,UAAU,GAAG,UAAU,EAAE,CAAC;IAChC,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC7D,MAAM,cAAc,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1E,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B;;;;;;;;;;;;;;;mBAee,EACf,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAClF,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,MAAmB,EAAE,EAAU,EAAE,UAAkB,EAAE,QAAkC,EAAE;IAClI,MAAM,OAAO,GAAG,CAAC,MAAM,MAAM,CAAC,KAAK,CAAM,8DAA8D,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACxH,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;IAC3D,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,QAAQ,CAAC,MAAM,KAAK,MAAM;QAAE,OAAO,QAAQ,CAAC;IAChD,IAAI,QAAQ,CAAC,UAAU,KAAK,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;IAC1F,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,2EAA2E;IAC3E,2EAA2E;IAC3E,4EAA4E;IAC5E,+DAA+D;IAC/D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B;;;;mBAIe,EACf,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,CAC5E,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;IAC5D,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,MAAmB,EAAE,EAAU,EAAE,UAAkB,EAAE,OAA6B;IACvH,MAAM,OAAO,GAAG,CAAC,MAAM,MAAM,CAAC,KAAK,CAAM,8DAA8D,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACxH,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;IAC3D,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,QAAQ,CAAC,UAAU,KAAK,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;IAC1F,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;IACtC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,KAAK,IAAI,IAAI,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,WAAW,CAAC;IAC9F,MAAM,aAAa,GAAG,SAAS;QAC7B,CAAC,CAAC,QAAQ,CAAC,aAAa;QACxB,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,aAAa,CAAC,OAAO,CAAC,YAAY,EAAE,+BAA+B,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACxI,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B;;;;mBAIe,EACf;QACE,EAAE;QACF,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QAChC,aAAa;QACb,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,IAAI,IAAI;QACzD,OAAO,CAAC,KAAK;QACb,SAAS,EAAE;QACX,UAAU;KACX,CACF,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,uEAAuE;IACvE,+CAA+C;IAC/C,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;IAC5D,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,MAAmB,EAAE,MAAY,IAAI,IAAI,EAAE;IACxF,mEAAmE;IACnE,4EAA4E;IAC5E,2EAA2E;IAC3E,wEAAwE;IACxE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAC/B;;;;;;;;;mBASe,EACf,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CACpB,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AACtC,CAAC"}