@corenel/harness 0.5.0 → 0.5.1
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/dist/api/backend.d.ts +24 -0
- package/dist/api/backend.d.ts.map +1 -1
- package/dist/api/backend.js +32 -8
- package/dist/api/backend.js.map +1 -1
- package/dist/rooms/findings.d.ts +134 -0
- package/dist/rooms/findings.d.ts.map +1 -0
- package/dist/rooms/findings.js +262 -0
- package/dist/rooms/findings.js.map +1 -0
- package/dist/sidecar/host.d.ts +115 -4
- package/dist/sidecar/host.d.ts.map +1 -1
- package/dist/sidecar/host.js +239 -3
- package/dist/sidecar/host.js.map +1 -1
- package/dist/sidecar/server.d.ts +136 -2
- package/dist/sidecar/server.d.ts.map +1 -1
- package/dist/sidecar/server.js +313 -2
- package/dist/sidecar/server.js.map +1 -1
- package/dist/tools/builtins.d.ts.map +1 -1
- package/dist/tools/builtins.js +8 -0
- package/dist/tools/builtins.js.map +1 -1
- package/dist/tools/files.d.ts.map +1 -1
- package/dist/tools/files.js +8 -0
- package/dist/tools/files.js.map +1 -1
- package/dist/tools/roomTools.d.ts +68 -5
- package/dist/tools/roomTools.d.ts.map +1 -1
- package/dist/tools/roomTools.js +210 -19
- package/dist/tools/roomTools.js.map +1 -1
- package/dist/tools/sessions.d.ts.map +1 -1
- package/dist/tools/sessions.js +1 -0
- package/dist/tools/sessions.js.map +1 -1
- package/dist/tools/web.d.ts.map +1 -1
- package/dist/tools/web.js +3 -0
- package/dist/tools/web.js.map +1 -1
- package/package.json +6 -1
package/dist/sidecar/host.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { AgentTool, IMemoryProvider, IKeyValueStore, ISearchProvider, ISessionStore, PermissionRequest, AskQuestion, AskAnswers, AgentEvent, PermissionDecision, DaemonRunActivity, DaemonRegistration, ProcInfo, RunRecordInfo, SessionInfo, SessionRepoSpec, SessionSnapshotInfo, CrewMemoryInfo } from '@corenel/protocol';
|
|
1
|
+
import type { AgentTool, IMemoryProvider, IKeyValueStore, ISearchProvider, ISessionStore, PermissionRequest, AskQuestion, AskAnswers, AgentEvent, PermissionDecision, DaemonRunActivity, DaemonRegistration, AgentPause, HostSummary, ProcInfo, RunRecordInfo, SessionInfo, SessionRepoSpec, SessionSnapshotInfo, CrewMemoryInfo } from '@corenel/protocol';
|
|
2
2
|
import type { FileService } from '@corenel/protocol';
|
|
3
|
-
import { type SidecarChannel, type SidecarInfo, type AcpPromptPart, type AcpModeInfo, type AcpStartOptions, type RoomOpenRequest, type RoomSummary } from '@corenel/protocol';
|
|
3
|
+
import { type SidecarChannel, type SidecarInfo, type AcpPromptPart, type AcpModeInfo, type AcpStartOptions, type RoomOpenRequest, type RoomSummary, type RoomFinding, type RoomFindingEdit } from '@corenel/protocol';
|
|
4
4
|
/** The host's live capabilities a connected sidecar may proxy into. Only the ones
|
|
5
5
|
* provided are reachable; a proxy call to a missing one is rejected. */
|
|
6
6
|
export interface HostProviders {
|
|
@@ -120,15 +120,26 @@ export declare class SidecarHost {
|
|
|
120
120
|
private roomSeq;
|
|
121
121
|
private readonly roomOpenPending;
|
|
122
122
|
private readonly roomListPending;
|
|
123
|
+
private pauseSeq;
|
|
124
|
+
private readonly pausePending;
|
|
125
|
+
private hostsSeq;
|
|
126
|
+
private readonly hostsPending;
|
|
123
127
|
private readonly roomReadPending;
|
|
124
128
|
private readonly roomAnswerPending;
|
|
125
129
|
private readonly roomResumePending;
|
|
130
|
+
private readonly roomInterjectPending;
|
|
131
|
+
private readonly roomClosePending;
|
|
132
|
+
private readonly roomFindingsPending;
|
|
133
|
+
private readonly roomFindingEditPending;
|
|
126
134
|
private sessionSeq;
|
|
127
135
|
private readonly sessionPending;
|
|
128
136
|
/** Per-session stream handlers, keyed by session because a session outlives
|
|
129
137
|
* the request that started watching it. */
|
|
130
138
|
private readonly sessionWatchers;
|
|
131
139
|
private features;
|
|
140
|
+
/** The synced directory name the daemon echoed for THIS connection
|
|
141
|
+
* (`welcome.dirName`), or null against an older daemon that sends none. */
|
|
142
|
+
private dirName;
|
|
132
143
|
private info;
|
|
133
144
|
private readonly imported;
|
|
134
145
|
private welcome;
|
|
@@ -373,6 +384,56 @@ export declare class SidecarHost {
|
|
|
373
384
|
* and every room-* message is refused server-side; feature-detecting here means
|
|
374
385
|
* the browser never sends one it already knows will be refused. */
|
|
375
386
|
supportsRooms(): boolean;
|
|
387
|
+
/** True when the connected daemon HOLDS agent pauses. Feature-detected from
|
|
388
|
+
* the welcome, so a client offers "Pause" only where pausing would actually
|
|
389
|
+
* stop the agent rather than reporting a success the daemon ignores. */
|
|
390
|
+
supportsAgentPause(): boolean;
|
|
391
|
+
/** True when the connected daemon can report and reclaim its synced host
|
|
392
|
+
* directories. Feature-detected so a client offers a destructive control only
|
|
393
|
+
* where the daemon would actually honour it. */
|
|
394
|
+
supportsHostsAdmin(): boolean;
|
|
395
|
+
/** Every synced host directory this daemon holds. */
|
|
396
|
+
listHosts(): Promise<{
|
|
397
|
+
ok: true;
|
|
398
|
+
hosts: HostSummary[];
|
|
399
|
+
} | {
|
|
400
|
+
ok: false;
|
|
401
|
+
error: string;
|
|
402
|
+
}>;
|
|
403
|
+
/** Remove one synced tree AND its manifest entry. `ok: false` is the daemon's
|
|
404
|
+
* considered refusal -- a connected directory, this connection's own, or a
|
|
405
|
+
* removal that failed -- so it resolves rather than rejects; only a dropped
|
|
406
|
+
* connection rejects. Resolves with the COMPLETE set afterwards. */
|
|
407
|
+
forgetHost(dirName: string): Promise<{
|
|
408
|
+
ok: true;
|
|
409
|
+
hosts: HostSummary[];
|
|
410
|
+
} | {
|
|
411
|
+
ok: false;
|
|
412
|
+
error: string;
|
|
413
|
+
}>;
|
|
414
|
+
/** The synced directory name this daemon routes THIS connection's host sync
|
|
415
|
+
* into, or null against a daemon too old to say. Never a guess: a caller that
|
|
416
|
+
* gets null must fall back to deducing it, or offer nothing. */
|
|
417
|
+
syncDirName(): string | null;
|
|
418
|
+
/** Every pause this daemon is holding. */
|
|
419
|
+
listAgentPauses(): Promise<{
|
|
420
|
+
ok: true;
|
|
421
|
+
pauses: AgentPause[];
|
|
422
|
+
} | {
|
|
423
|
+
ok: false;
|
|
424
|
+
error: string;
|
|
425
|
+
}>;
|
|
426
|
+
/** Hold or release a pause on one owner's agent. `ok: false` is the daemon's
|
|
427
|
+
* considered refusal (it holds no pauses, or the ceiling is reached) -- a real
|
|
428
|
+
* answer, so it resolves rather than rejects; only a dropped connection
|
|
429
|
+
* rejects. Resolves with the COMPLETE set afterwards. */
|
|
430
|
+
setAgentPause(owner: string, agent: string, paused: boolean): Promise<{
|
|
431
|
+
ok: true;
|
|
432
|
+
pauses: AgentPause[];
|
|
433
|
+
} | {
|
|
434
|
+
ok: false;
|
|
435
|
+
error: string;
|
|
436
|
+
}>;
|
|
376
437
|
/** Ask the daemon to open a room. `ok: false` here is the daemon's CONSIDERED
|
|
377
438
|
* refusal (validation problems, or an unreachable participant) — a real answer,
|
|
378
439
|
* not a transport failure, so it resolves rather than rejects. Only a dropped
|
|
@@ -417,14 +478,64 @@ export declare class SidecarHost {
|
|
|
417
478
|
ok: false;
|
|
418
479
|
error: string;
|
|
419
480
|
}>;
|
|
420
|
-
/** The human's answer for one room turn.
|
|
421
|
-
|
|
481
|
+
/** The human's answer for one room turn.
|
|
482
|
+
*
|
|
483
|
+
* `addressed` is the participant this turn hands the floor to -- an id, already
|
|
484
|
+
* resolved against the room's membership by the caller. Omitted is an ordinary
|
|
485
|
+
* rotation turn, and is never sent as a field at all, so a daemon that predates
|
|
486
|
+
* the command sees exactly the message it always did. */
|
|
487
|
+
roomAnswer(roomId: string, participantId: string, text: string, addressed?: string): Promise<{
|
|
488
|
+
ok: true;
|
|
489
|
+
room: RoomSummary;
|
|
490
|
+
} | {
|
|
491
|
+
ok: false;
|
|
492
|
+
error: string;
|
|
493
|
+
}>;
|
|
494
|
+
/** Say something in a room whose floor is someone ELSE's.
|
|
495
|
+
*
|
|
496
|
+
* Not an answer: it appends to the transcript and moves nothing -- no turn is
|
|
497
|
+
* taken, the floor does not rotate, an outstanding hand-over is untouched.
|
|
498
|
+
* The next participant to speak reads it, which is the whole point. */
|
|
499
|
+
roomInterject(roomId: string, participantId: string, text: string): Promise<{
|
|
500
|
+
ok: true;
|
|
501
|
+
room: RoomSummary;
|
|
502
|
+
} | {
|
|
503
|
+
ok: false;
|
|
504
|
+
error: string;
|
|
505
|
+
}>;
|
|
506
|
+
/** End the room, on this person's word, whatever the rotation is doing.
|
|
507
|
+
*
|
|
508
|
+
* Idempotent: a room that is already closed answers with the close it already
|
|
509
|
+
* carries rather than recording a second one. */
|
|
510
|
+
roomClose(roomId: string, participantId: string, reason: string): Promise<{
|
|
422
511
|
ok: true;
|
|
423
512
|
room: RoomSummary;
|
|
424
513
|
} | {
|
|
425
514
|
ok: false;
|
|
426
515
|
error: string;
|
|
427
516
|
}>;
|
|
517
|
+
/** The room's living findings document -- what it has decided, as opposed to
|
|
518
|
+
* what was said (that is `roomRead`). A room that has recorded nothing answers
|
|
519
|
+
* with an empty document, which is a real answer, not an absence. */
|
|
520
|
+
roomFindings(roomId: string): Promise<{
|
|
521
|
+
ok: true;
|
|
522
|
+
findings: RoomFinding[];
|
|
523
|
+
} | {
|
|
524
|
+
ok: false;
|
|
525
|
+
error: string;
|
|
526
|
+
}>;
|
|
527
|
+
/** The person in the room recording, correcting or withdrawing ONE finding.
|
|
528
|
+
*
|
|
529
|
+
* Per-finding, never a whole-document write: a client that could replace the
|
|
530
|
+
* document would silently overwrite whatever an agent recorded between its
|
|
531
|
+
* read and its write. Answers with the document as it then stands. */
|
|
532
|
+
roomEditFinding(roomId: string, participantId: string, edit: RoomFindingEdit): Promise<{
|
|
533
|
+
ok: true;
|
|
534
|
+
findings: RoomFinding[];
|
|
535
|
+
} | {
|
|
536
|
+
ok: false;
|
|
537
|
+
error: string;
|
|
538
|
+
}>;
|
|
428
539
|
/** Directory NAMES under `path`, or the declared areas themselves when `path` is
|
|
429
540
|
* omitted. Names only: never files, contents or stats. Rejects with the sidecar's
|
|
430
541
|
* message (e.g. outside every allowed area). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../sidecar/host.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../sidecar/host.ts"],"names":[],"mappings":"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"}
|
package/dist/sidecar/host.js
CHANGED
|
@@ -132,6 +132,30 @@ export class SidecarHost {
|
|
|
132
132
|
writable: true,
|
|
133
133
|
value: new Map()
|
|
134
134
|
});
|
|
135
|
+
Object.defineProperty(this, "pauseSeq", {
|
|
136
|
+
enumerable: true,
|
|
137
|
+
configurable: true,
|
|
138
|
+
writable: true,
|
|
139
|
+
value: 0
|
|
140
|
+
});
|
|
141
|
+
Object.defineProperty(this, "pausePending", {
|
|
142
|
+
enumerable: true,
|
|
143
|
+
configurable: true,
|
|
144
|
+
writable: true,
|
|
145
|
+
value: new Map()
|
|
146
|
+
});
|
|
147
|
+
Object.defineProperty(this, "hostsSeq", {
|
|
148
|
+
enumerable: true,
|
|
149
|
+
configurable: true,
|
|
150
|
+
writable: true,
|
|
151
|
+
value: 0
|
|
152
|
+
});
|
|
153
|
+
Object.defineProperty(this, "hostsPending", {
|
|
154
|
+
enumerable: true,
|
|
155
|
+
configurable: true,
|
|
156
|
+
writable: true,
|
|
157
|
+
value: new Map()
|
|
158
|
+
});
|
|
135
159
|
Object.defineProperty(this, "roomReadPending", {
|
|
136
160
|
enumerable: true,
|
|
137
161
|
configurable: true,
|
|
@@ -150,6 +174,30 @@ export class SidecarHost {
|
|
|
150
174
|
writable: true,
|
|
151
175
|
value: new Map()
|
|
152
176
|
});
|
|
177
|
+
Object.defineProperty(this, "roomInterjectPending", {
|
|
178
|
+
enumerable: true,
|
|
179
|
+
configurable: true,
|
|
180
|
+
writable: true,
|
|
181
|
+
value: new Map()
|
|
182
|
+
});
|
|
183
|
+
Object.defineProperty(this, "roomClosePending", {
|
|
184
|
+
enumerable: true,
|
|
185
|
+
configurable: true,
|
|
186
|
+
writable: true,
|
|
187
|
+
value: new Map()
|
|
188
|
+
});
|
|
189
|
+
Object.defineProperty(this, "roomFindingsPending", {
|
|
190
|
+
enumerable: true,
|
|
191
|
+
configurable: true,
|
|
192
|
+
writable: true,
|
|
193
|
+
value: new Map()
|
|
194
|
+
});
|
|
195
|
+
Object.defineProperty(this, "roomFindingEditPending", {
|
|
196
|
+
enumerable: true,
|
|
197
|
+
configurable: true,
|
|
198
|
+
writable: true,
|
|
199
|
+
value: new Map()
|
|
200
|
+
});
|
|
153
201
|
Object.defineProperty(this, "sessionSeq", {
|
|
154
202
|
enumerable: true,
|
|
155
203
|
configurable: true,
|
|
@@ -176,6 +224,14 @@ export class SidecarHost {
|
|
|
176
224
|
writable: true,
|
|
177
225
|
value: []
|
|
178
226
|
});
|
|
227
|
+
/** The synced directory name the daemon echoed for THIS connection
|
|
228
|
+
* (`welcome.dirName`), or null against an older daemon that sends none. */
|
|
229
|
+
Object.defineProperty(this, "dirName", {
|
|
230
|
+
enumerable: true,
|
|
231
|
+
configurable: true,
|
|
232
|
+
writable: true,
|
|
233
|
+
value: null
|
|
234
|
+
});
|
|
179
235
|
Object.defineProperty(this, "info", {
|
|
180
236
|
enumerable: true,
|
|
181
237
|
configurable: true,
|
|
@@ -274,6 +330,12 @@ export class SidecarHost {
|
|
|
274
330
|
for (const p of this.roomListPending.values())
|
|
275
331
|
p.reject(new Error(reason));
|
|
276
332
|
this.roomListPending.clear();
|
|
333
|
+
for (const p of this.pausePending.values())
|
|
334
|
+
p.reject(new Error(reason));
|
|
335
|
+
this.pausePending.clear();
|
|
336
|
+
for (const p of this.hostsPending.values())
|
|
337
|
+
p.reject(new Error(reason));
|
|
338
|
+
this.hostsPending.clear();
|
|
277
339
|
for (const p of this.roomReadPending.values())
|
|
278
340
|
p.reject(new Error(reason));
|
|
279
341
|
this.roomReadPending.clear();
|
|
@@ -283,6 +345,18 @@ export class SidecarHost {
|
|
|
283
345
|
for (const p of this.roomResumePending.values())
|
|
284
346
|
p.reject(new Error(reason));
|
|
285
347
|
this.roomResumePending.clear();
|
|
348
|
+
for (const p of this.roomInterjectPending.values())
|
|
349
|
+
p.reject(new Error(reason));
|
|
350
|
+
this.roomInterjectPending.clear();
|
|
351
|
+
for (const p of this.roomClosePending.values())
|
|
352
|
+
p.reject(new Error(reason));
|
|
353
|
+
this.roomClosePending.clear();
|
|
354
|
+
for (const p of this.roomFindingsPending.values())
|
|
355
|
+
p.reject(new Error(reason));
|
|
356
|
+
this.roomFindingsPending.clear();
|
|
357
|
+
for (const p of this.roomFindingEditPending.values())
|
|
358
|
+
p.reject(new Error(reason));
|
|
359
|
+
this.roomFindingEditPending.clear();
|
|
286
360
|
this.welcome?.reject(new Error(reason));
|
|
287
361
|
this.welcome = null;
|
|
288
362
|
this.ch.close();
|
|
@@ -291,6 +365,12 @@ export class SidecarHost {
|
|
|
291
365
|
switch (m.t) {
|
|
292
366
|
case 'welcome': {
|
|
293
367
|
this.features = m.features ?? [];
|
|
368
|
+
// Runtime-validated like `info.id`/`info.name` next door: the welcome
|
|
369
|
+
// crossed the wire as `JSON.parse(...) as SidecarMsg`, so the declared
|
|
370
|
+
// `string` guarantees nothing, and this value decides which
|
|
371
|
+
// registrations a management surface treats as this browser's own.
|
|
372
|
+
// Anything malformed is dropped to "not told", never coerced.
|
|
373
|
+
this.dirName = typeof m.dirName === 'string' && m.dirName ? m.dirName : null;
|
|
294
374
|
this.info = m.info ?? {};
|
|
295
375
|
for (const decl of m.tools) {
|
|
296
376
|
const tool = { ...decl, run: (args) => this.invoke(decl.name, args) };
|
|
@@ -606,6 +686,30 @@ export class SidecarHost {
|
|
|
606
686
|
p.resolve(m.ok ? { ok: true, room: m.room } : { ok: false, problems: m.problems });
|
|
607
687
|
return;
|
|
608
688
|
}
|
|
689
|
+
case 'hosts-list-result':
|
|
690
|
+
case 'hosts-forget-result': {
|
|
691
|
+
// One pending map for both, for the same reason as the pause results
|
|
692
|
+
// below: each carries the COMPLETE set afterwards, so list and forget
|
|
693
|
+
// answer the same question.
|
|
694
|
+
const p = this.hostsPending.get(m.id);
|
|
695
|
+
if (!p)
|
|
696
|
+
return;
|
|
697
|
+
this.hostsPending.delete(m.id);
|
|
698
|
+
p.resolve(m.ok ? { ok: true, hosts: m.hosts } : { ok: false, error: m.error });
|
|
699
|
+
return;
|
|
700
|
+
}
|
|
701
|
+
case 'agent-pause-list-result':
|
|
702
|
+
case 'agent-pause-set-result': {
|
|
703
|
+
// One pending map for both: each result carries the COMPLETE set, so
|
|
704
|
+
// list and set answer the same question and a caller never has to know
|
|
705
|
+
// which one it asked.
|
|
706
|
+
const p = this.pausePending.get(m.id);
|
|
707
|
+
if (!p)
|
|
708
|
+
return;
|
|
709
|
+
this.pausePending.delete(m.id);
|
|
710
|
+
p.resolve(m.ok ? { ok: true, pauses: m.pauses } : { ok: false, error: m.error });
|
|
711
|
+
return;
|
|
712
|
+
}
|
|
609
713
|
case 'room-list-result': {
|
|
610
714
|
const p = this.roomListPending.get(m.id);
|
|
611
715
|
if (!p)
|
|
@@ -638,6 +742,38 @@ export class SidecarHost {
|
|
|
638
742
|
p.resolve(m.ok ? { ok: true, room: m.room } : { ok: false, error: m.error });
|
|
639
743
|
return;
|
|
640
744
|
}
|
|
745
|
+
case 'room-interject-result': {
|
|
746
|
+
const p = this.roomInterjectPending.get(m.id);
|
|
747
|
+
if (!p)
|
|
748
|
+
return;
|
|
749
|
+
this.roomInterjectPending.delete(m.id);
|
|
750
|
+
p.resolve(m.ok ? { ok: true, room: m.room } : { ok: false, error: m.error });
|
|
751
|
+
return;
|
|
752
|
+
}
|
|
753
|
+
case 'room-close-result': {
|
|
754
|
+
const p = this.roomClosePending.get(m.id);
|
|
755
|
+
if (!p)
|
|
756
|
+
return;
|
|
757
|
+
this.roomClosePending.delete(m.id);
|
|
758
|
+
p.resolve(m.ok ? { ok: true, room: m.room } : { ok: false, error: m.error });
|
|
759
|
+
return;
|
|
760
|
+
}
|
|
761
|
+
case 'room-findings-result': {
|
|
762
|
+
const p = this.roomFindingsPending.get(m.id);
|
|
763
|
+
if (!p)
|
|
764
|
+
return;
|
|
765
|
+
this.roomFindingsPending.delete(m.id);
|
|
766
|
+
p.resolve(m.ok ? { ok: true, findings: m.findings } : { ok: false, error: m.error });
|
|
767
|
+
return;
|
|
768
|
+
}
|
|
769
|
+
case 'room-finding-edit-result': {
|
|
770
|
+
const p = this.roomFindingEditPending.get(m.id);
|
|
771
|
+
if (!p)
|
|
772
|
+
return;
|
|
773
|
+
this.roomFindingEditPending.delete(m.id);
|
|
774
|
+
p.resolve(m.ok ? { ok: true, findings: m.findings } : { ok: false, error: m.error });
|
|
775
|
+
return;
|
|
776
|
+
}
|
|
641
777
|
case 'room-progress': {
|
|
642
778
|
this.opts.onRoomProgress?.(m.room);
|
|
643
779
|
return;
|
|
@@ -1041,6 +1177,56 @@ export class SidecarHost {
|
|
|
1041
1177
|
* and every room-* message is refused server-side; feature-detecting here means
|
|
1042
1178
|
* the browser never sends one it already knows will be refused. */
|
|
1043
1179
|
supportsRooms() { return this.features.includes('rooms'); }
|
|
1180
|
+
/** True when the connected daemon HOLDS agent pauses. Feature-detected from
|
|
1181
|
+
* the welcome, so a client offers "Pause" only where pausing would actually
|
|
1182
|
+
* stop the agent rather than reporting a success the daemon ignores. */
|
|
1183
|
+
supportsAgentPause() { return this.features.includes('agent-pause'); }
|
|
1184
|
+
/** True when the connected daemon can report and reclaim its synced host
|
|
1185
|
+
* directories. Feature-detected so a client offers a destructive control only
|
|
1186
|
+
* where the daemon would actually honour it. */
|
|
1187
|
+
supportsHostsAdmin() { return this.features.includes('hosts-admin'); }
|
|
1188
|
+
/** Every synced host directory this daemon holds. */
|
|
1189
|
+
listHosts() {
|
|
1190
|
+
const id = ++this.hostsSeq;
|
|
1191
|
+
return new Promise((resolve, reject) => {
|
|
1192
|
+
this.hostsPending.set(id, { resolve, reject });
|
|
1193
|
+
this.ch.send({ t: 'hosts-list', id });
|
|
1194
|
+
});
|
|
1195
|
+
}
|
|
1196
|
+
/** Remove one synced tree AND its manifest entry. `ok: false` is the daemon's
|
|
1197
|
+
* considered refusal -- a connected directory, this connection's own, or a
|
|
1198
|
+
* removal that failed -- so it resolves rather than rejects; only a dropped
|
|
1199
|
+
* connection rejects. Resolves with the COMPLETE set afterwards. */
|
|
1200
|
+
forgetHost(dirName) {
|
|
1201
|
+
const id = ++this.hostsSeq;
|
|
1202
|
+
return new Promise((resolve, reject) => {
|
|
1203
|
+
this.hostsPending.set(id, { resolve, reject });
|
|
1204
|
+
this.ch.send({ t: 'hosts-forget', id, dirName });
|
|
1205
|
+
});
|
|
1206
|
+
}
|
|
1207
|
+
/** The synced directory name this daemon routes THIS connection's host sync
|
|
1208
|
+
* into, or null against a daemon too old to say. Never a guess: a caller that
|
|
1209
|
+
* gets null must fall back to deducing it, or offer nothing. */
|
|
1210
|
+
syncDirName() { return this.dirName; }
|
|
1211
|
+
/** Every pause this daemon is holding. */
|
|
1212
|
+
listAgentPauses() {
|
|
1213
|
+
const id = ++this.pauseSeq;
|
|
1214
|
+
return new Promise((resolve, reject) => {
|
|
1215
|
+
this.pausePending.set(id, { resolve, reject });
|
|
1216
|
+
this.ch.send({ t: 'agent-pause-list', id });
|
|
1217
|
+
});
|
|
1218
|
+
}
|
|
1219
|
+
/** Hold or release a pause on one owner's agent. `ok: false` is the daemon's
|
|
1220
|
+
* considered refusal (it holds no pauses, or the ceiling is reached) -- a real
|
|
1221
|
+
* answer, so it resolves rather than rejects; only a dropped connection
|
|
1222
|
+
* rejects. Resolves with the COMPLETE set afterwards. */
|
|
1223
|
+
setAgentPause(owner, agent, paused) {
|
|
1224
|
+
const id = ++this.pauseSeq;
|
|
1225
|
+
return new Promise((resolve, reject) => {
|
|
1226
|
+
this.pausePending.set(id, { resolve, reject });
|
|
1227
|
+
this.ch.send({ t: 'agent-pause-set', id, owner, agent, paused });
|
|
1228
|
+
});
|
|
1229
|
+
}
|
|
1044
1230
|
/** Ask the daemon to open a room. `ok: false` here is the daemon's CONSIDERED
|
|
1045
1231
|
* refusal (validation problems, or an unreachable participant) — a real answer,
|
|
1046
1232
|
* not a transport failure, so it resolves rather than rejects. Only a dropped
|
|
@@ -1083,12 +1269,62 @@ export class SidecarHost {
|
|
|
1083
1269
|
this.ch.send({ t: 'room-resume', id, roomId });
|
|
1084
1270
|
});
|
|
1085
1271
|
}
|
|
1086
|
-
/** The human's answer for one room turn.
|
|
1087
|
-
|
|
1272
|
+
/** The human's answer for one room turn.
|
|
1273
|
+
*
|
|
1274
|
+
* `addressed` is the participant this turn hands the floor to -- an id, already
|
|
1275
|
+
* resolved against the room's membership by the caller. Omitted is an ordinary
|
|
1276
|
+
* rotation turn, and is never sent as a field at all, so a daemon that predates
|
|
1277
|
+
* the command sees exactly the message it always did. */
|
|
1278
|
+
roomAnswer(roomId, participantId, text, addressed) {
|
|
1088
1279
|
const id = ++this.roomSeq;
|
|
1089
1280
|
return new Promise((resolve, reject) => {
|
|
1090
1281
|
this.roomAnswerPending.set(id, { resolve, reject });
|
|
1091
|
-
this.ch.send({ t: 'room-answer', id, roomId, participantId, text });
|
|
1282
|
+
this.ch.send({ t: 'room-answer', id, roomId, participantId, text, ...(addressed ? { addressed } : {}) });
|
|
1283
|
+
});
|
|
1284
|
+
}
|
|
1285
|
+
/** Say something in a room whose floor is someone ELSE's.
|
|
1286
|
+
*
|
|
1287
|
+
* Not an answer: it appends to the transcript and moves nothing -- no turn is
|
|
1288
|
+
* taken, the floor does not rotate, an outstanding hand-over is untouched.
|
|
1289
|
+
* The next participant to speak reads it, which is the whole point. */
|
|
1290
|
+
roomInterject(roomId, participantId, text) {
|
|
1291
|
+
const id = ++this.roomSeq;
|
|
1292
|
+
return new Promise((resolve, reject) => {
|
|
1293
|
+
this.roomInterjectPending.set(id, { resolve, reject });
|
|
1294
|
+
this.ch.send({ t: 'room-interject', id, roomId, participantId, text });
|
|
1295
|
+
});
|
|
1296
|
+
}
|
|
1297
|
+
/** End the room, on this person's word, whatever the rotation is doing.
|
|
1298
|
+
*
|
|
1299
|
+
* Idempotent: a room that is already closed answers with the close it already
|
|
1300
|
+
* carries rather than recording a second one. */
|
|
1301
|
+
roomClose(roomId, participantId, reason) {
|
|
1302
|
+
const id = ++this.roomSeq;
|
|
1303
|
+
return new Promise((resolve, reject) => {
|
|
1304
|
+
this.roomClosePending.set(id, { resolve, reject });
|
|
1305
|
+
this.ch.send({ t: 'room-close', id, roomId, participantId, reason });
|
|
1306
|
+
});
|
|
1307
|
+
}
|
|
1308
|
+
/** The room's living findings document -- what it has decided, as opposed to
|
|
1309
|
+
* what was said (that is `roomRead`). A room that has recorded nothing answers
|
|
1310
|
+
* with an empty document, which is a real answer, not an absence. */
|
|
1311
|
+
roomFindings(roomId) {
|
|
1312
|
+
const id = ++this.roomSeq;
|
|
1313
|
+
return new Promise((resolve, reject) => {
|
|
1314
|
+
this.roomFindingsPending.set(id, { resolve, reject });
|
|
1315
|
+
this.ch.send({ t: 'room-findings', id, roomId });
|
|
1316
|
+
});
|
|
1317
|
+
}
|
|
1318
|
+
/** The person in the room recording, correcting or withdrawing ONE finding.
|
|
1319
|
+
*
|
|
1320
|
+
* Per-finding, never a whole-document write: a client that could replace the
|
|
1321
|
+
* document would silently overwrite whatever an agent recorded between its
|
|
1322
|
+
* read and its write. Answers with the document as it then stands. */
|
|
1323
|
+
roomEditFinding(roomId, participantId, edit) {
|
|
1324
|
+
const id = ++this.roomSeq;
|
|
1325
|
+
return new Promise((resolve, reject) => {
|
|
1326
|
+
this.roomFindingEditPending.set(id, { resolve, reject });
|
|
1327
|
+
this.ch.send({ t: 'room-finding-edit', id, roomId, participantId, edit });
|
|
1092
1328
|
});
|
|
1093
1329
|
}
|
|
1094
1330
|
/** Directory NAMES under `path`, or the declared areas themselves when `path` is
|