@agentshouse/mdruntime 0.1.0-cd26b960b7262 → 0.1.0-cd30853a1b15e
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.
- package/README.md +21 -19
- package/dist/acceptance.d.ts +0 -3
- package/dist/acceptance.d.ts.map +1 -1
- package/dist/acceptance.js +72 -158
- package/dist/act-lanes.d.ts +30 -0
- package/dist/act-lanes.d.ts.map +1 -0
- package/dist/act-lanes.js +225 -0
- package/dist/actions.d.ts +8 -2
- package/dist/actions.d.ts.map +1 -1
- package/dist/actions.js +118 -67
- package/dist/adapter.d.ts +81 -56
- package/dist/adapter.d.ts.map +1 -1
- package/dist/attached-model.d.ts +0 -1
- package/dist/attached-model.d.ts.map +1 -1
- package/dist/attached-model.js +0 -5
- package/dist/authored.d.ts +88 -0
- package/dist/authored.d.ts.map +1 -0
- package/dist/authored.js +345 -0
- package/dist/bootstrap.d.ts +1 -1
- package/dist/bootstrap.d.ts.map +1 -1
- package/dist/bootstrap.js +6 -19
- package/dist/change-set.d.ts +4 -0
- package/dist/change-set.d.ts.map +1 -1
- package/dist/change-set.js +6 -0
- package/dist/change.d.ts +4 -0
- package/dist/change.d.ts.map +1 -1
- package/dist/change.js +3 -0
- package/dist/chat-types.d.ts +0 -2
- package/dist/chat-types.d.ts.map +1 -1
- package/dist/chat-types.js +0 -2
- package/dist/client.d.ts +10 -19
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +30 -18
- package/dist/collection.d.ts +25 -4
- package/dist/collection.d.ts.map +1 -1
- package/dist/collection.js +19 -2
- package/dist/column.d.ts +5 -0
- package/dist/column.d.ts.map +1 -0
- package/dist/column.js +9 -0
- package/dist/compile.d.ts +2 -0
- package/dist/compile.d.ts.map +1 -1
- package/dist/compile.js +17 -5
- package/dist/connection.d.ts.map +1 -1
- package/dist/connection.js +31 -24
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +1 -1
- package/dist/conversation-live.d.ts +26 -12
- package/dist/conversation-live.d.ts.map +1 -1
- package/dist/conversation-live.js +23 -12
- package/dist/conversation-row.d.ts +8 -1
- package/dist/conversation-row.d.ts.map +1 -1
- package/dist/conversation-row.js +20 -7
- package/dist/conversation.d.ts +32 -10
- package/dist/conversation.d.ts.map +1 -1
- package/dist/conversation.js +317 -232
- package/dist/declaration.d.ts +10 -0
- package/dist/declaration.d.ts.map +1 -0
- package/dist/declaration.js +24 -0
- package/dist/discovery.d.ts.map +1 -1
- package/dist/discovery.js +19 -44
- package/dist/durability.d.ts +4 -0
- package/dist/durability.d.ts.map +1 -1
- package/dist/durability.js +4 -0
- package/dist/entry.js +1 -1
- package/dist/expectation.d.ts +25 -14
- package/dist/expectation.d.ts.map +1 -1
- package/dist/expectation.js +51 -20
- package/dist/failure.d.ts +3 -0
- package/dist/failure.d.ts.map +1 -1
- package/dist/failure.js +6 -0
- package/dist/figures.d.ts.map +1 -1
- package/dist/figures.js +4 -2
- package/dist/file.d.ts.map +1 -1
- package/dist/file.js +2 -1
- package/dist/host.d.ts +18 -2
- package/dist/host.d.ts.map +1 -1
- package/dist/host.js +55 -15
- package/dist/index.d.ts +15 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -7
- package/dist/install.d.ts +10 -6
- package/dist/install.d.ts.map +1 -1
- package/dist/install.js +92 -109
- package/dist/lifecycle.d.ts +1 -1
- package/dist/lifecycle.d.ts.map +1 -1
- package/dist/lifecycle.js +54 -40
- package/dist/listing.d.ts +11 -12
- package/dist/listing.d.ts.map +1 -1
- package/dist/listing.js +48 -72
- package/dist/live.d.ts +5 -3
- package/dist/live.d.ts.map +1 -1
- package/dist/live.js +74 -31
- package/dist/loaded.d.ts +5 -0
- package/dist/loaded.d.ts.map +1 -0
- package/dist/loaded.js +40 -0
- package/dist/locks.d.ts +2 -4
- package/dist/locks.d.ts.map +1 -1
- package/dist/locks.js +10 -39
- package/dist/lost.d.ts.map +1 -1
- package/dist/lost.js +11 -23
- package/dist/media.d.ts +5 -0
- package/dist/media.d.ts.map +1 -1
- package/dist/media.js +65 -14
- package/dist/memory.d.ts +7 -3
- package/dist/memory.d.ts.map +1 -1
- package/dist/memory.js +56 -26
- package/dist/messages.d.ts +12 -6
- package/dist/messages.d.ts.map +1 -1
- package/dist/messages.js +25 -27
- package/dist/model.d.ts +0 -1
- package/dist/model.d.ts.map +1 -1
- package/dist/model.js +0 -5
- package/dist/models.d.ts +4 -8
- package/dist/models.d.ts.map +1 -1
- package/dist/models.js +97 -139
- package/dist/observation.d.ts +27 -12
- package/dist/observation.d.ts.map +1 -1
- package/dist/observation.js +173 -69
- package/dist/opened.d.ts +1 -1
- package/dist/opened.d.ts.map +1 -1
- package/dist/opened.js +2 -2
- package/dist/opening.d.ts.map +1 -1
- package/dist/opening.js +5 -9
- package/dist/outcome.d.ts +7 -0
- package/dist/outcome.d.ts.map +1 -1
- package/dist/outcome.js +23 -2
- package/dist/overlay.d.ts +6 -2
- package/dist/overlay.d.ts.map +1 -1
- package/dist/overlay.js +37 -24
- package/dist/page-metadata.d.ts +8 -0
- package/dist/page-metadata.d.ts.map +1 -0
- package/dist/page-metadata.js +19 -0
- package/dist/parts.d.ts +3 -59
- package/dist/parts.d.ts.map +1 -1
- package/dist/parts.js +10 -123
- package/dist/preparation.d.ts +27 -6
- package/dist/preparation.d.ts.map +1 -1
- package/dist/preparation.js +154 -66
- package/dist/presence.d.ts +58 -0
- package/dist/presence.d.ts.map +1 -0
- package/dist/presence.js +231 -0
- package/dist/queries.d.ts +2 -2
- package/dist/queries.d.ts.map +1 -1
- package/dist/queries.js +66 -30
- package/dist/questions.d.ts +1 -5
- package/dist/questions.d.ts.map +1 -1
- package/dist/questions.js +1 -7
- package/dist/queue.d.ts +40 -0
- package/dist/queue.d.ts.map +1 -0
- package/dist/queue.js +480 -0
- package/dist/reach.d.ts +2 -3
- package/dist/reach.d.ts.map +1 -1
- package/dist/reach.js +83 -25
- package/dist/react.d.ts +8 -5
- package/dist/react.d.ts.map +1 -1
- package/dist/react.js +28 -5
- package/dist/readiness.d.ts +9 -3
- package/dist/readiness.d.ts.map +1 -1
- package/dist/readiness.js +3 -5
- package/dist/reads.d.ts +4 -2
- package/dist/reads.d.ts.map +1 -1
- package/dist/reads.js +11 -4
- package/dist/recovery.d.ts +3 -1
- package/dist/recovery.d.ts.map +1 -1
- package/dist/recovery.js +29 -7
- package/dist/refresh.js +2 -2
- package/dist/refusal.d.ts.map +1 -1
- package/dist/refusal.js +5 -5
- package/dist/replica.d.ts +5 -11
- package/dist/replica.d.ts.map +1 -1
- package/dist/replica.js +14 -16
- package/dist/retried.d.ts +30 -0
- package/dist/retried.d.ts.map +1 -0
- package/dist/retried.js +72 -0
- package/dist/room-draft.d.ts +30 -5
- package/dist/room-draft.d.ts.map +1 -1
- package/dist/room-draft.js +270 -63
- package/dist/room-drafts.d.ts.map +1 -1
- package/dist/room-drafts.js +8 -5
- package/dist/room-list.d.ts +10 -0
- package/dist/room-list.d.ts.map +1 -0
- package/dist/room-list.js +45 -0
- package/dist/rows.d.ts +2 -1
- package/dist/rows.d.ts.map +1 -1
- package/dist/rows.js +9 -10
- package/dist/runtime.d.ts +9 -18
- package/dist/runtime.d.ts.map +1 -1
- package/dist/save.d.ts +42 -90
- package/dist/save.d.ts.map +1 -1
- package/dist/save.js +314 -223
- package/dist/saves.d.ts +2 -40
- package/dist/saves.d.ts.map +1 -1
- package/dist/saves.js +124 -703
- package/dist/seed.d.ts.map +1 -1
- package/dist/seed.js +4 -4
- package/dist/shown.d.ts +7 -5
- package/dist/shown.d.ts.map +1 -1
- package/dist/shown.js +75 -58
- package/dist/socket/lanes.d.ts +12 -4
- package/dist/socket/lanes.d.ts.map +1 -1
- package/dist/socket/lanes.js +34 -8
- package/dist/socket.d.ts +3 -6
- package/dist/socket.d.ts.map +1 -1
- package/dist/socket.js +3 -14
- package/dist/source.d.ts +5 -7
- package/dist/source.d.ts.map +1 -1
- package/dist/source.js +13 -2
- package/dist/store/installs.d.ts +2 -2
- package/dist/store/installs.d.ts.map +1 -1
- package/dist/store/installs.js +10 -4
- package/dist/store/readiness.d.ts +5 -4
- package/dist/store/readiness.d.ts.map +1 -1
- package/dist/store/readiness.js +28 -12
- package/dist/store/records.d.ts +17 -6
- package/dist/store/records.d.ts.map +1 -1
- package/dist/store/records.js +56 -22
- package/dist/store/rooms-shown.d.ts +8 -0
- package/dist/store/rooms-shown.d.ts.map +1 -0
- package/dist/store/rooms-shown.js +13 -0
- package/dist/store.d.ts +23 -14
- package/dist/store.d.ts.map +1 -1
- package/dist/store.js +46 -17
- package/dist/stored.d.ts +24 -13
- package/dist/stored.d.ts.map +1 -1
- package/dist/stored.js +80 -29
- package/dist/surface.d.ts +5 -3
- package/dist/surface.d.ts.map +1 -1
- package/dist/surface.js +23 -21
- package/dist/sync.d.ts +1 -1
- package/dist/sync.d.ts.map +1 -1
- package/dist/sync.js +89 -85
- package/dist/tables.d.ts +16 -56
- package/dist/tables.d.ts.map +1 -1
- package/dist/tables.js +86 -327
- package/dist/tallies.d.ts.map +1 -1
- package/dist/tallies.js +1 -2
- package/dist/validation.d.ts.map +1 -1
- package/dist/validation.js +4 -10
- package/dist/wire.d.ts +45 -7
- package/dist/wire.d.ts.map +1 -1
- package/dist/wire.js +15 -4
- package/package.json +3 -2
- package/dist/attempt.d.ts +0 -16
- package/dist/attempt.d.ts.map +0 -1
- package/dist/attempt.js +0 -70
- package/dist/job.d.ts +0 -33
- package/dist/job.d.ts.map +0 -1
- package/dist/job.js +0 -54
- package/dist/log.d.ts +0 -6
- package/dist/log.d.ts.map +0 -1
- package/dist/log.js +0 -14
- package/dist/socket/rooms.d.ts +0 -44
- package/dist/socket/rooms.d.ts.map +0 -1
- package/dist/socket/rooms.js +0 -90
- package/dist/store/fences.d.ts +0 -16
- package/dist/store/fences.d.ts.map +0 -1
- package/dist/store/fences.js +0 -26
|
@@ -6,8 +6,9 @@ export const QUIET = {
|
|
|
6
6
|
commands: [],
|
|
7
7
|
options: [],
|
|
8
8
|
starting: null,
|
|
9
|
-
|
|
9
|
+
state: null,
|
|
10
10
|
link: null,
|
|
11
|
+
deliveryWaiting: [],
|
|
11
12
|
deliveryUnknown: [],
|
|
12
13
|
};
|
|
13
14
|
export const FACTS = [
|
|
@@ -16,8 +17,9 @@ export const FACTS = [
|
|
|
16
17
|
'commands',
|
|
17
18
|
'options',
|
|
18
19
|
'starting',
|
|
19
|
-
'
|
|
20
|
+
'state',
|
|
20
21
|
'link',
|
|
22
|
+
'deliveryWaiting',
|
|
21
23
|
'deliveryUnknown',
|
|
22
24
|
];
|
|
23
25
|
// A row is read at a glance and each telling clones the list to every observing tab, while a running line changes at each Kit flush.
|
|
@@ -61,7 +63,8 @@ function sharedView(conversation, asked) {
|
|
|
61
63
|
window: null,
|
|
62
64
|
draft: null,
|
|
63
65
|
ended: null,
|
|
64
|
-
|
|
66
|
+
dismissed: null,
|
|
67
|
+
pins: [],
|
|
65
68
|
more: false,
|
|
66
69
|
total: null,
|
|
67
70
|
}),
|
|
@@ -92,13 +95,15 @@ export function createLiveConversations(deps) {
|
|
|
92
95
|
const closing = new AbortController();
|
|
93
96
|
const listeners = createAudience();
|
|
94
97
|
const agentListeners = createAudience();
|
|
98
|
+
const listedListeners = createAudience();
|
|
95
99
|
const held = createCell({
|
|
96
100
|
listKnown: false,
|
|
101
|
+
openingRead: false,
|
|
102
|
+
openingListed: false,
|
|
97
103
|
listOwed: false,
|
|
98
104
|
listTelling: false,
|
|
99
105
|
agentsShown: null,
|
|
100
|
-
|
|
101
|
-
agentsReading: false,
|
|
106
|
+
listedShown: null,
|
|
102
107
|
replicated: new Set(),
|
|
103
108
|
handedReplicated: undefined,
|
|
104
109
|
});
|
|
@@ -111,6 +116,7 @@ export function createLiveConversations(deps) {
|
|
|
111
116
|
closing: closing.signal,
|
|
112
117
|
listeners,
|
|
113
118
|
agentListeners,
|
|
119
|
+
listedListeners,
|
|
114
120
|
views: () => views.values(),
|
|
115
121
|
viewJoined(key, conversation, asked, notify) {
|
|
116
122
|
const view = views.get(key) ?? sharedView(conversation, asked);
|
|
@@ -159,10 +165,10 @@ export function createLiveConversations(deps) {
|
|
|
159
165
|
behind.add(conversation);
|
|
160
166
|
},
|
|
161
167
|
generation: (conversation) => gaps.get(conversation) ?? 0,
|
|
162
|
-
heardAt(conversation,
|
|
168
|
+
heardAt(conversation, change) {
|
|
163
169
|
const heard = heardNewest.get(conversation);
|
|
164
|
-
if (heard === undefined ||
|
|
165
|
-
heardNewest.set(conversation,
|
|
170
|
+
if (heard === undefined || change > heard)
|
|
171
|
+
heardNewest.set(conversation, change);
|
|
166
172
|
},
|
|
167
173
|
newestHeard: (conversation) => heardNewest.get(conversation),
|
|
168
174
|
catching: (conversation) => catching.get(conversation),
|
|
@@ -182,14 +188,16 @@ export function createLiveConversations(deps) {
|
|
|
182
188
|
isCreating: (conversation) => creations.has(conversation),
|
|
183
189
|
relisting: () => relisting !== null,
|
|
184
190
|
relistBegun() {
|
|
185
|
-
relisting ??= new Map();
|
|
191
|
+
relisting ??= { conversations: new Map(), agents: new Map() };
|
|
186
192
|
},
|
|
187
|
-
relistHeard(entries) {
|
|
193
|
+
relistHeard(entries, agents) {
|
|
188
194
|
for (const entry of entries)
|
|
189
|
-
relisting?.set(entry.conversation, { ...entry });
|
|
195
|
+
relisting?.conversations.set(entry.conversation, { ...entry });
|
|
196
|
+
for (const agent of agents)
|
|
197
|
+
relisting?.agents.set(agent.id, { ...agent });
|
|
190
198
|
},
|
|
191
199
|
relistDropped(conversation) {
|
|
192
|
-
relisting?.delete(conversation);
|
|
200
|
+
relisting?.conversations.delete(conversation);
|
|
193
201
|
},
|
|
194
202
|
relistTaken() {
|
|
195
203
|
const whole = relisting;
|
|
@@ -224,8 +232,10 @@ export function createLiveConversations(deps) {
|
|
|
224
232
|
},
|
|
225
233
|
current: () => behind.size === 0,
|
|
226
234
|
known: () => held.now().listKnown,
|
|
235
|
+
listed: () => deps.stream() === undefined || held.now().openingListed,
|
|
227
236
|
reopened() {
|
|
228
237
|
relisting = null;
|
|
238
|
+
held.set({ openingRead: false, openingListed: false });
|
|
229
239
|
for (const [operation, dispatch] of sending)
|
|
230
240
|
if (!dispatch.now().answered)
|
|
231
241
|
sending.delete(operation);
|
|
@@ -243,6 +253,7 @@ export function createLiveConversations(deps) {
|
|
|
243
253
|
unsent.clear();
|
|
244
254
|
listeners.clear();
|
|
245
255
|
agentListeners.clear();
|
|
256
|
+
listedListeners.clear();
|
|
246
257
|
},
|
|
247
258
|
};
|
|
248
259
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { HeldRow } from './messages.js';
|
|
2
|
-
import { type HouseSource } from './source.js';
|
|
2
|
+
import { type HouseSource, type RequestAnswer } from './source.js';
|
|
3
3
|
export type ConversationLast = {
|
|
4
4
|
readonly text: string;
|
|
5
5
|
readonly by: 'owner' | 'agent' | 'house';
|
|
@@ -10,18 +10,25 @@ export type ConversationStart = Extract<HouseSource, {
|
|
|
10
10
|
}>;
|
|
11
11
|
export type ConversationAsk = {
|
|
12
12
|
readonly who: string;
|
|
13
|
+
readonly fromRoom: boolean;
|
|
13
14
|
readonly agent: string | null;
|
|
14
15
|
readonly room: {
|
|
15
16
|
readonly ref: string;
|
|
17
|
+
readonly handle: string;
|
|
16
18
|
readonly name: string;
|
|
17
19
|
};
|
|
18
20
|
readonly prompt: string;
|
|
21
|
+
readonly agentFunction: string | null;
|
|
22
|
+
readonly answer: RequestAnswer | null;
|
|
23
|
+
readonly instruction: string | null;
|
|
19
24
|
readonly at: string;
|
|
20
25
|
readonly request: string;
|
|
21
26
|
readonly message?: string;
|
|
22
27
|
};
|
|
23
28
|
export type ConversationHeld = {
|
|
24
29
|
readonly last: ConversationLast | null;
|
|
30
|
+
readonly answered: string | null;
|
|
31
|
+
readonly opened: string | null;
|
|
25
32
|
readonly failure: string | null;
|
|
26
33
|
readonly startedBy: ConversationStart | null;
|
|
27
34
|
readonly asks: ConversationAsk | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation-row.d.ts","sourceRoot":"","sources":["../src/conversation-row.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAY,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"conversation-row.d.ts","sourceRoot":"","sources":["../src/conversation-row.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAY,KAAK,WAAW,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAE7E,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;IACzC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC,WAAW,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,CAAA;CAAE,CAAC,CAAC;AAE/F,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACxF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAC7C,QAAQ,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,CAAC;CACvC,CAAC;AA8DF,wBAAgB,SAAS,CACvB,IAAI,EAAE,OAAO,GAAG,SAAS,EACzB,MAAM,EAAE;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GACrE,gBAAgB,CAUlB"}
|
package/dist/conversation-row.js
CHANGED
|
@@ -12,19 +12,26 @@ function startOf(opened) {
|
|
|
12
12
|
const source = opened === null ? null : sourceOf(opened.source, opened.sender);
|
|
13
13
|
return source?.kind === 'request' || source?.kind === 'trigger' ? source : null;
|
|
14
14
|
}
|
|
15
|
-
const HOUSE_OPENING = 3;
|
|
16
|
-
function requested(text) {
|
|
17
|
-
return text.split('\n\n').slice(HOUSE_OPENING).join('\n\n');
|
|
18
|
-
}
|
|
19
15
|
function asksOf(asking, started, waiting) {
|
|
20
16
|
if (asking?.at == null)
|
|
21
17
|
return null;
|
|
22
18
|
const { at, text: prompt, identity } = asking;
|
|
23
19
|
const source = sourceOf(asking.source, asking.sender);
|
|
24
20
|
if (source?.kind === 'request') {
|
|
25
|
-
const { requester, room, request } = source;
|
|
21
|
+
const { requester, room, request, sent, agentFunction, answer, instruction } = source;
|
|
26
22
|
return waiting
|
|
27
|
-
? {
|
|
23
|
+
? {
|
|
24
|
+
who: requester.name,
|
|
25
|
+
fromRoom: requester.room,
|
|
26
|
+
agent: null,
|
|
27
|
+
room,
|
|
28
|
+
prompt: sent,
|
|
29
|
+
agentFunction: agentFunction?.name ?? null,
|
|
30
|
+
answer,
|
|
31
|
+
instruction,
|
|
32
|
+
at,
|
|
33
|
+
request,
|
|
34
|
+
}
|
|
28
35
|
: null;
|
|
29
36
|
}
|
|
30
37
|
if (source?.kind !== 'mail' || started?.kind !== 'request')
|
|
@@ -33,9 +40,13 @@ function asksOf(asking, started, waiting) {
|
|
|
33
40
|
return started.request === request
|
|
34
41
|
? {
|
|
35
42
|
who: owner,
|
|
43
|
+
fromRoom: false,
|
|
36
44
|
agent,
|
|
37
|
-
room: { ref: room, name: started.room.name },
|
|
45
|
+
room: { ref: room, handle: started.room.handle, name: started.room.name },
|
|
38
46
|
prompt,
|
|
47
|
+
agentFunction: null,
|
|
48
|
+
answer: null,
|
|
49
|
+
instruction: null,
|
|
39
50
|
at,
|
|
40
51
|
request,
|
|
41
52
|
message: identity,
|
|
@@ -46,6 +57,8 @@ export function heldFacts(held, listed) {
|
|
|
46
57
|
const startedBy = startOf(held?.opened ?? null);
|
|
47
58
|
return {
|
|
48
59
|
last: lastOf(held?.said ?? null),
|
|
60
|
+
answered: held?.answered ?? null,
|
|
61
|
+
opened: held?.openedTurn ?? null,
|
|
49
62
|
failure: listed.outcome === 'failed' ? (held?.failure ?? null) : null,
|
|
50
63
|
startedBy,
|
|
51
64
|
asks: asksOf(held?.asking ?? null, startedBy, listed.waiting),
|
package/dist/conversation.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { type Part, type SessionState } from '@agentshouse/session-content';
|
|
2
|
+
import type { AgentEnvironment, ConversationEvent, ConversationMessage, ListedAgent, ProcessCommand, SessionOption } from './adapter.js';
|
|
2
3
|
import { type ChangeSet } from './change-set.js';
|
|
3
4
|
import { type LiveConversations } from './conversation-live.js';
|
|
4
5
|
import { type ConversationHeld } from './conversation-row.js';
|
|
5
|
-
import type { OpenJob } from './job.js';
|
|
6
6
|
import type { Open } from './open.js';
|
|
7
7
|
import { type CallResult, type Offline } from './outcome.js';
|
|
8
|
+
import type { ChatRequest } from './source.js';
|
|
8
9
|
import type { CycleProgress } from './status.js';
|
|
9
10
|
import type { RuntimeStore } from './store.js';
|
|
10
11
|
export type ConversationState = Open<'working' | 'asking' | 'idle'>;
|
|
@@ -20,6 +21,7 @@ export type ConversationEntry = ConversationHeld & {
|
|
|
20
21
|
finished: string | null;
|
|
21
22
|
outcome: string | null;
|
|
22
23
|
waiting: boolean;
|
|
24
|
+
subject: string | null;
|
|
23
25
|
state: ConversationState;
|
|
24
26
|
started: string | null;
|
|
25
27
|
line: string | null;
|
|
@@ -29,12 +31,15 @@ export type ConversationEntry = ConversationHeld & {
|
|
|
29
31
|
export type ConversationAgent = {
|
|
30
32
|
identity: string;
|
|
31
33
|
name: string;
|
|
34
|
+
cli: string;
|
|
35
|
+
model: string | null;
|
|
36
|
+
effort: string | null;
|
|
37
|
+
environment: AgentEnvironment;
|
|
32
38
|
};
|
|
33
39
|
export type RunningTurn = {
|
|
34
40
|
turn: string;
|
|
35
41
|
started: string | null;
|
|
36
|
-
parts: readonly
|
|
37
|
-
context: TurnContext | null;
|
|
42
|
+
parts: readonly Part[];
|
|
38
43
|
};
|
|
39
44
|
export type ChatDraft = {
|
|
40
45
|
text: string;
|
|
@@ -61,25 +66,36 @@ export type ConversationView = {
|
|
|
61
66
|
commands: readonly ProcessCommand[];
|
|
62
67
|
options: readonly SessionOption[];
|
|
63
68
|
starting: string | null;
|
|
64
|
-
|
|
69
|
+
state: SessionState | null;
|
|
65
70
|
link: {
|
|
66
71
|
connected: boolean;
|
|
67
72
|
} | null;
|
|
73
|
+
deliveryWaiting: readonly string[];
|
|
68
74
|
deliveryUnknown: readonly string[];
|
|
69
75
|
chatDraft: (ChatDraft & {
|
|
70
76
|
readonly revision: string;
|
|
71
77
|
}) | null;
|
|
72
|
-
|
|
78
|
+
dismissedSuggestion: string | null;
|
|
79
|
+
pins: readonly string[];
|
|
73
80
|
};
|
|
81
|
+
export type RequestDecision = 'approve' | 'decline';
|
|
74
82
|
export type ConversationSurface = {
|
|
75
83
|
list(): Promise<readonly ConversationEntry[]>;
|
|
76
84
|
read(conversation: string, options?: ConversationRead): Promise<ConversationView>;
|
|
77
85
|
create(input: unknown): Promise<CallResult>;
|
|
78
86
|
send(conversation: string, operation?: string, draft?: ChatDraft): Promise<CallResult | Offline>;
|
|
79
|
-
answer(conversation: string, answer: ConversationAnswer): Promise<CallResult>;
|
|
80
|
-
interrupt(conversation: string): Promise<CallResult>;
|
|
81
|
-
kill(conversation: string): Promise<CallResult>;
|
|
82
|
-
delete(conversation: string): Promise<CallResult>;
|
|
87
|
+
answer(conversation: string, answer: ConversationAnswer, operation: string): Promise<CallResult>;
|
|
88
|
+
interrupt(conversation: string, operation: string): Promise<CallResult>;
|
|
89
|
+
kill(conversation: string, operation: string): Promise<CallResult>;
|
|
90
|
+
delete(conversation: string, operation: string): Promise<CallResult>;
|
|
91
|
+
takeOut(conversation: string, message: string, operation: string): Promise<CallResult>;
|
|
92
|
+
decide(request: ChatRequest, decision: RequestDecision, operation: string): Promise<CallResult>;
|
|
93
|
+
rename(conversation: string, name: string, operation: string): Promise<CallResult>;
|
|
94
|
+
option(conversation: string, option: string, value: string | boolean, operation: string): Promise<CallResult>;
|
|
95
|
+
retry(conversation: string, message: string, operation: string): Promise<CallResult>;
|
|
96
|
+
pin(figures: readonly string[]): Promise<void>;
|
|
97
|
+
openTurn(conversation: string, turn: string): Promise<void>;
|
|
98
|
+
dismissSuggestion(conversation: string, suggestion: string): Promise<void>;
|
|
83
99
|
};
|
|
84
100
|
export type ConversationAnswer = {
|
|
85
101
|
interaction_id: string;
|
|
@@ -88,10 +104,12 @@ export type ConversationAnswer = {
|
|
|
88
104
|
export type ChatDraftSurface = {
|
|
89
105
|
write(conversation: string, draft: ChatDraft, revision?: string): Promise<void>;
|
|
90
106
|
prepend(conversation: string, draft: ChatDraft): Promise<void>;
|
|
107
|
+
append(conversation: string, draft: ChatDraft): Promise<void>;
|
|
91
108
|
discard(conversation: string): Promise<void>;
|
|
92
109
|
};
|
|
93
110
|
export declare function unheldView(conversation: string): ConversationView;
|
|
94
111
|
export declare const SESSION_STARTED = "Session started";
|
|
112
|
+
export declare const CATCHING_UP = "catching-up";
|
|
95
113
|
export declare const HISTORY_CONVERSATIONS = 64;
|
|
96
114
|
export declare function newChat(agent: string): string;
|
|
97
115
|
export type Asked = {
|
|
@@ -100,16 +118,20 @@ export type Asked = {
|
|
|
100
118
|
before: readonly [string, string] | null;
|
|
101
119
|
total: boolean;
|
|
102
120
|
};
|
|
121
|
+
export declare function joinedDraft(first: string, second: string): string;
|
|
103
122
|
export declare function conversationsLearned(alive: LiveConversations): void;
|
|
104
123
|
export declare function conversationSurface(alive: LiveConversations): ConversationSurface;
|
|
105
124
|
export declare function chatDraftSurface(alive: LiveConversations): ChatDraftSurface;
|
|
106
125
|
export declare function conversationsOpened(alive: LiveConversations, local: RuntimeStore): Promise<void>;
|
|
126
|
+
export declare function reconcileOpening(alive: LiveConversations): Promise<void>;
|
|
107
127
|
export declare function reconcileConversations(alive: LiveConversations): Promise<void>;
|
|
108
128
|
export declare function catchUpConversations(alive: LiveConversations, progress: CycleProgress): Promise<void>;
|
|
129
|
+
export declare function holdsSubmission(alive: LiveConversations, operation: string): Promise<boolean>;
|
|
109
130
|
export declare function resendConversations(alive: LiveConversations, progress: CycleProgress): Promise<void>;
|
|
110
131
|
export declare function watchConversation(alive: LiveConversations, conversation: string, options: ConversationOptions, deliver: (view: ConversationView) => void): () => void;
|
|
111
132
|
export declare function watchConversationList(alive: LiveConversations, deliver: (entries: readonly ConversationEntry[]) => void): () => void;
|
|
112
133
|
export declare function watchConversationAgents(alive: LiveConversations, deliver: (agents: readonly ConversationAgent[]) => void): () => void;
|
|
134
|
+
export declare function watchListedAgents(alive: LiveConversations, deliver: (agents: readonly ListedAgent[]) => void): () => void;
|
|
113
135
|
export declare function conversationsChanged(alive: LiveConversations, set: ChangeSet): void;
|
|
114
136
|
export declare function receiveConversationEvent(alive: LiveConversations, event: ConversationEvent): void;
|
|
115
137
|
//# sourceMappingURL=conversation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../src/conversation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../src/conversation.ts"],"names":[],"mappings":"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"}
|