@av-pi-studio/server 0.0.43 → 0.0.44
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/.tsbuildinfo +1 -1
- package/dist/daemon/bootstrap.d.ts.map +1 -1
- package/dist/daemon/bootstrap.js +30 -10
- package/dist/daemon/bootstrap.js.map +1 -1
- package/dist/daemon/dev-bootstrap.d.ts.map +1 -1
- package/dist/daemon/dev-bootstrap.js +19 -9
- package/dist/daemon/dev-bootstrap.js.map +1 -1
- package/dist/files/file-watch-rpc.d.ts +29 -0
- package/dist/files/file-watch-rpc.d.ts.map +1 -0
- package/dist/files/file-watch-rpc.js +54 -0
- package/dist/files/file-watch-rpc.js.map +1 -0
- package/dist/files/file-watch-service.d.ts +47 -0
- package/dist/files/file-watch-service.d.ts.map +1 -0
- package/dist/files/file-watch-service.js +169 -0
- package/dist/files/file-watch-service.js.map +1 -0
- package/dist/files/index.d.ts +1 -0
- package/dist/files/index.d.ts.map +1 -1
- package/dist/files/index.js +1 -0
- package/dist/files/index.js.map +1 -1
- package/dist/files/limits.d.ts +13 -0
- package/dist/files/limits.d.ts.map +1 -0
- package/dist/files/limits.js +13 -0
- package/dist/files/limits.js.map +1 -0
- package/dist/projects/git-checkout-rpc.d.ts +4 -0
- package/dist/projects/git-checkout-rpc.d.ts.map +1 -1
- package/dist/projects/git-checkout-rpc.js +3 -12
- package/dist/projects/git-checkout-rpc.js.map +1 -1
- package/dist/projects/workspace-git-service.d.ts +7 -2
- package/dist/projects/workspace-git-service.d.ts.map +1 -1
- package/dist/projects/workspace-git-service.js.map +1 -1
- package/dist/ws/session-subscriptions.d.ts +33 -0
- package/dist/ws/session-subscriptions.d.ts.map +1 -0
- package/dist/ws/session-subscriptions.js +69 -0
- package/dist/ws/session-subscriptions.js.map +1 -0
- package/dist/ws/ws-server.d.ts +5 -0
- package/dist/ws/ws-server.d.ts.map +1 -1
- package/dist/ws/ws-server.js +6 -0
- package/dist/ws/ws-server.js.map +1 -1
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../src/daemon/bootstrap.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../src/daemon/bootstrap.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,WAAW,CAAC;AAatD,OAAO,EAAsB,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAgDvE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,+DAA+D;IAC/D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oEAAoE;IACpE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAqED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,OAAO,GACf;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAIjD;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,aAAa,GAAG,YAAY,CAmnB7D"}
|
package/dist/daemon/bootstrap.js
CHANGED
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
*/
|
|
10
10
|
import { randomUUID } from "node:crypto";
|
|
11
11
|
import { execFile } from "node:child_process";
|
|
12
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync
|
|
12
|
+
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
13
|
+
import { readFile, stat } from "node:fs/promises";
|
|
13
14
|
import { homedir } from "node:os";
|
|
14
15
|
import { join } from "node:path";
|
|
15
16
|
import nacl from "tweetnacl";
|
|
@@ -18,6 +19,7 @@ import { createWebSocketServer } from "../ws/ws-server.js";
|
|
|
18
19
|
import { HandlerRegistry, routeTextFrame, routeBinaryFrame } from "../ws/router.js";
|
|
19
20
|
import { Session } from "../ws/session.js";
|
|
20
21
|
import { createInMemoryCapabilityStore } from "../ws/capability-store.js";
|
|
22
|
+
import { SessionSubscriptions } from "../ws/session-subscriptions.js";
|
|
21
23
|
import { createHostChecker } from "../http/host-allowlist.js";
|
|
22
24
|
import { createPasswordAuth, resolvePasswordHash } from "../auth/password-auth.js";
|
|
23
25
|
import { loadConfig } from "../config/daemon-config.js";
|
|
@@ -32,6 +34,9 @@ import { ProviderRegistry, resolveProviderClient } from "../agent/provider-regis
|
|
|
32
34
|
import { saveAgent, loadAllAgents } from "../persistence/entity-stores.js";
|
|
33
35
|
import { FileExplorerService } from "../files/file-explorer.js";
|
|
34
36
|
import { FileTransferService } from "../files/file-transfer.js";
|
|
37
|
+
import { FileWatchService } from "../files/file-watch-service.js";
|
|
38
|
+
import { registerFileWatchHandlers } from "../files/file-watch-rpc.js";
|
|
39
|
+
import { MAX_INLINE_FILE_READ_BYTES } from "../files/limits.js";
|
|
35
40
|
import { OpenProjectService } from "../projects/open-project.js";
|
|
36
41
|
import { WorkspaceRegistryService } from "../projects/workspace-registry.js";
|
|
37
42
|
import { GitOperationsService } from "../projects/git-operations.js";
|
|
@@ -338,12 +343,14 @@ export function startDaemon(opts) {
|
|
|
338
343
|
})),
|
|
339
344
|
}));
|
|
340
345
|
// ── Git: status/diff streaming, operations, GitHub PRs, worktrees ─────────────
|
|
346
|
+
const subscriptions = new SessionSubscriptions();
|
|
341
347
|
const gitService = new WorkspaceGitService();
|
|
342
348
|
const diffManager = new CheckoutDiffManager();
|
|
343
349
|
registerGitCheckoutHandlers(registry, {
|
|
344
350
|
gitService,
|
|
345
351
|
diffManager,
|
|
346
352
|
checkoutRefreshEnabled: true,
|
|
353
|
+
subscriptions,
|
|
347
354
|
});
|
|
348
355
|
new GitOperationsService({ gitService }).registerHandlers(registry);
|
|
349
356
|
new GitHubService({
|
|
@@ -358,11 +365,13 @@ export function startDaemon(opts) {
|
|
|
358
365
|
broadcast,
|
|
359
366
|
getActiveSessions,
|
|
360
367
|
}).registerHandlers(registry, getActiveSessions);
|
|
361
|
-
// ── Files: explorer (with download tokens) + transfer
|
|
368
|
+
// ── Files: explorer (with download tokens) + transfer + filesystem watch ──────
|
|
362
369
|
const fileTransfer = new FileTransferService();
|
|
363
370
|
new FileExplorerService({ issueDownloadToken: fileTransfer.issueDownloadToken }).registerHandlers(registry);
|
|
364
371
|
fileTransfer.registerHandlers(registry);
|
|
365
372
|
const fileTransferBinary = fileTransfer.binaryHandler();
|
|
373
|
+
const fileWatchService = new FileWatchService({ logger });
|
|
374
|
+
registerFileWatchHandlers(registry, { fileWatchService, subscriptions, logger });
|
|
366
375
|
// Simple file diff RPC for the POC UI (returns unified diff for a single file). Untracked
|
|
367
376
|
// (brand-new) files have no git-tracked "before" state, so a plain `git diff` against them is
|
|
368
377
|
// always empty — git only diffs a path once it's in the index or committed. Fall back to
|
|
@@ -389,18 +398,27 @@ export function startDaemon(opts) {
|
|
|
389
398
|
}
|
|
390
399
|
return { type: "file_diff_response", ok: true, path: filePath, patch };
|
|
391
400
|
});
|
|
392
|
-
// Simple text file read RPC for the POC UI (returns up to
|
|
393
|
-
|
|
401
|
+
// Simple text file read RPC for the POC UI (returns up to `MAX_INLINE_FILE_READ_BYTES` of
|
|
402
|
+
// UTF-8 text; larger files must use the chunked binary download path instead). Async so a
|
|
403
|
+
// multi-MB read/decode never blocks the event loop — every other session (agent streams,
|
|
404
|
+
// terminal output, heartbeats) shares this thread.
|
|
405
|
+
registry.register("file_read_request", async (ctx) => {
|
|
394
406
|
const filePath = String(ctx.message.path ?? "");
|
|
395
407
|
const resolved = filePath.startsWith("~") ? join(homedir(), filePath.slice(1)) : filePath;
|
|
396
408
|
try {
|
|
397
|
-
const
|
|
398
|
-
if (
|
|
409
|
+
const st = await stat(resolved);
|
|
410
|
+
if (st.isDirectory())
|
|
399
411
|
return { type: "file_read_response", ok: false, error: "is_directory" };
|
|
400
|
-
if (
|
|
401
|
-
return {
|
|
402
|
-
|
|
403
|
-
|
|
412
|
+
if (st.size > MAX_INLINE_FILE_READ_BYTES)
|
|
413
|
+
return {
|
|
414
|
+
type: "file_read_response",
|
|
415
|
+
ok: false,
|
|
416
|
+
error: "file_too_large",
|
|
417
|
+
size: st.size,
|
|
418
|
+
maxBytes: MAX_INLINE_FILE_READ_BYTES,
|
|
419
|
+
};
|
|
420
|
+
const content = await readFile(resolved, "utf8");
|
|
421
|
+
return { type: "file_read_response", ok: true, path: resolved, content, size: st.size };
|
|
404
422
|
}
|
|
405
423
|
catch (e) {
|
|
406
424
|
return {
|
|
@@ -514,6 +532,7 @@ export function startDaemon(opts) {
|
|
|
514
532
|
onSession: (session) => {
|
|
515
533
|
logger.info({ clientId: session.clientId, clientType: session.clientType }, "ws client connected");
|
|
516
534
|
},
|
|
535
|
+
onSessionClose: (session) => subscriptions.disposeSession(session),
|
|
517
536
|
onMessage: (session, frame) => {
|
|
518
537
|
if ("text" in frame) {
|
|
519
538
|
void routeTextFrame(session, frame.text, registry);
|
|
@@ -675,6 +694,7 @@ export function startDaemon(opts) {
|
|
|
675
694
|
logger,
|
|
676
695
|
close: async () => {
|
|
677
696
|
logger.info("daemon shutting down");
|
|
697
|
+
fileWatchService.close();
|
|
678
698
|
relayHandle?.close();
|
|
679
699
|
await wsHandle.close();
|
|
680
700
|
await new Promise((resolve) => httpServer.close(() => resolve()));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/daemon/bootstrap.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/daemon/bootstrap.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev-bootstrap.d.ts","sourceRoot":"","sources":["../../src/daemon/dev-bootstrap.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"dev-bootstrap.d.ts","sourceRoot":"","sources":["../../src/daemon/dev-bootstrap.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,WAAW,CAAC;AAiBtD,OAAO,EAAsB,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGvE,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,IAAI,GAAG,MAAM,EAAE,CAAC;IAC5B,oGAAoG;IACpG,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,mBAAmB,GAAG,kBAAkB,CAyS5E"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* bootstrap module.
|
|
8
8
|
*/
|
|
9
9
|
import { randomUUID } from "node:crypto";
|
|
10
|
-
import {
|
|
10
|
+
import { readFile, stat } from "node:fs/promises";
|
|
11
11
|
import { execFile } from "node:child_process";
|
|
12
12
|
import { homedir } from "node:os";
|
|
13
13
|
import { join } from "node:path";
|
|
@@ -23,6 +23,7 @@ import { PermissionService } from "../agent/permissions.js";
|
|
|
23
23
|
import { createMockClient } from "../agent/providers/mock/mock-provider.js";
|
|
24
24
|
import { ProviderRegistry } from "../agent/provider-registry.js";
|
|
25
25
|
import { FileExplorerService } from "../files/file-explorer.js";
|
|
26
|
+
import { MAX_INLINE_FILE_READ_BYTES } from "../files/limits.js";
|
|
26
27
|
import { createDaemonLogger } from "../logging/logger.js";
|
|
27
28
|
import { wrapSessionEnvelope } from "./bootstrap.js";
|
|
28
29
|
export function startDevDaemon(opts) {
|
|
@@ -229,18 +230,27 @@ export function startDevDaemon(opts) {
|
|
|
229
230
|
}
|
|
230
231
|
return { type: "file_diff_response", ok: true, path: filePath, patch };
|
|
231
232
|
});
|
|
232
|
-
// Simple text file read RPC for the POC UI
|
|
233
|
-
|
|
233
|
+
// Simple text file read RPC for the POC UI (returns up to `MAX_INLINE_FILE_READ_BYTES` of
|
|
234
|
+
// UTF-8 text; larger files must use the chunked binary download path instead — note
|
|
235
|
+
// download-token RPCs are not registered in this dev bootstrap; see AGENTS.md). Async so a
|
|
236
|
+
// multi-MB read/decode never blocks the event loop.
|
|
237
|
+
registry.register("file_read_request", async (ctx) => {
|
|
234
238
|
const filePath = String(ctx.message.path ?? "");
|
|
235
239
|
const resolved = filePath.startsWith("~") ? join(homedir(), filePath.slice(1)) : filePath;
|
|
236
240
|
try {
|
|
237
|
-
const
|
|
238
|
-
if (
|
|
241
|
+
const st = await stat(resolved);
|
|
242
|
+
if (st.isDirectory())
|
|
239
243
|
return { type: "file_read_response", ok: false, error: "is_directory" };
|
|
240
|
-
if (
|
|
241
|
-
return {
|
|
242
|
-
|
|
243
|
-
|
|
244
|
+
if (st.size > MAX_INLINE_FILE_READ_BYTES)
|
|
245
|
+
return {
|
|
246
|
+
type: "file_read_response",
|
|
247
|
+
ok: false,
|
|
248
|
+
error: "file_too_large",
|
|
249
|
+
size: st.size,
|
|
250
|
+
maxBytes: MAX_INLINE_FILE_READ_BYTES,
|
|
251
|
+
};
|
|
252
|
+
const content = await readFile(resolved, "utf8");
|
|
253
|
+
return { type: "file_read_response", ok: true, path: resolved, content, size: st.size };
|
|
244
254
|
}
|
|
245
255
|
catch (e) {
|
|
246
256
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev-bootstrap.js","sourceRoot":"","sources":["../../src/daemon/dev-bootstrap.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dev-bootstrap.js","sourceRoot":"","sources":["../../src/daemon/dev-bootstrap.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { Logger } from "../logging/logger.js";
|
|
2
|
+
import type { HandlerRegistry } from "../ws/router.js";
|
|
3
|
+
import type { SessionSubscriptions } from "../ws/session-subscriptions.js";
|
|
4
|
+
import type { FileWatchService } from "./file-watch-service.js";
|
|
5
|
+
/**
|
|
6
|
+
* `file_watch_subscribe`/`file_watch_unsubscribe` (architecture/websocket-protocol.md § push/
|
|
7
|
+
* subscription families, § passthrough fallback). Modelled directly on
|
|
8
|
+
* `registerGitCheckoutHandlers`: the push carries only `{ type: "file_changed", path }` — no
|
|
9
|
+
* content, since a watched file may be a multi-MB trajectory and the client already has the
|
|
10
|
+
* chunked binary download path for the bytes. `path` is the *resolved* path the client subscribed
|
|
11
|
+
* with, so client-side matching is a plain string compare.
|
|
12
|
+
*
|
|
13
|
+
* Deliberately outside `messages.ts`'s discriminated union, like the sibling `checkout_*` family —
|
|
14
|
+
* both validate through `sessionMessageBaseSchema`'s passthrough fallback.
|
|
15
|
+
*/
|
|
16
|
+
/** Per-session cap on live `file_watch_subscribe` RPCs. `fs.watch` consumes an inotify handle per
|
|
17
|
+
* directory and the kernel enforces a global `fs.inotify.max_user_watches`; a client that
|
|
18
|
+
* subscribes in a loop (a bug in a tree-expansion effect is the realistic case, not an attacker)
|
|
19
|
+
* would otherwise exhaust it and break watching for the whole machine, not just this daemon. */
|
|
20
|
+
export declare const MAX_FILE_WATCHES_PER_SESSION = 128;
|
|
21
|
+
export interface FileWatchRpcDeps {
|
|
22
|
+
fileWatchService: FileWatchService;
|
|
23
|
+
/** Per-session subscription registry (task-005) — disposes a subscription's `fs.watch` when the
|
|
24
|
+
* session's socket closes, not just on an explicit unsubscribe. */
|
|
25
|
+
subscriptions: SessionSubscriptions;
|
|
26
|
+
logger?: Logger;
|
|
27
|
+
}
|
|
28
|
+
export declare function registerFileWatchHandlers(registry: HandlerRegistry, deps: FileWatchRpcDeps): void;
|
|
29
|
+
//# sourceMappingURL=file-watch-rpc.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-watch-rpc.d.ts","sourceRoot":"","sources":["../../src/files/file-watch-rpc.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;;;;;;GAUG;AAEH;;;iGAGiG;AACjG,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAIhD,MAAM,WAAW,gBAAgB;IAC/B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC;wEACoE;IACpE,aAAa,EAAE,oBAAoB,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAwCjG"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { homedir } from "node:os";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
/**
|
|
4
|
+
* `file_watch_subscribe`/`file_watch_unsubscribe` (architecture/websocket-protocol.md § push/
|
|
5
|
+
* subscription families, § passthrough fallback). Modelled directly on
|
|
6
|
+
* `registerGitCheckoutHandlers`: the push carries only `{ type: "file_changed", path }` — no
|
|
7
|
+
* content, since a watched file may be a multi-MB trajectory and the client already has the
|
|
8
|
+
* chunked binary download path for the bytes. `path` is the *resolved* path the client subscribed
|
|
9
|
+
* with, so client-side matching is a plain string compare.
|
|
10
|
+
*
|
|
11
|
+
* Deliberately outside `messages.ts`'s discriminated union, like the sibling `checkout_*` family —
|
|
12
|
+
* both validate through `sessionMessageBaseSchema`'s passthrough fallback.
|
|
13
|
+
*/
|
|
14
|
+
/** Per-session cap on live `file_watch_subscribe` RPCs. `fs.watch` consumes an inotify handle per
|
|
15
|
+
* directory and the kernel enforces a global `fs.inotify.max_user_watches`; a client that
|
|
16
|
+
* subscribes in a loop (a bug in a tree-expansion effect is the realistic case, not an attacker)
|
|
17
|
+
* would otherwise exhaust it and break watching for the whole machine, not just this daemon. */
|
|
18
|
+
export const MAX_FILE_WATCHES_PER_SESSION = 128;
|
|
19
|
+
const FILE_WATCH_KEY_PREFIX = "file_watch:";
|
|
20
|
+
export function registerFileWatchHandlers(registry, deps) {
|
|
21
|
+
const { fileWatchService, subscriptions, logger } = deps;
|
|
22
|
+
registry.register("file_watch_subscribe", (ctx) => {
|
|
23
|
+
const rawPath = String(ctx.message.path ?? "");
|
|
24
|
+
const resolved = rawPath.startsWith("~") ? join(homedir(), rawPath.slice(1)) : rawPath;
|
|
25
|
+
const session = ctx.session;
|
|
26
|
+
const key = `${FILE_WATCH_KEY_PREFIX}${resolved}`;
|
|
27
|
+
const activeWatchKeys = subscriptions
|
|
28
|
+
.keysOf(session)
|
|
29
|
+
.filter((k) => k.startsWith(FILE_WATCH_KEY_PREFIX));
|
|
30
|
+
// A resubscribe of an already-watched path replaces in place (SessionSubscriptions.add's own
|
|
31
|
+
// contract) rather than adding a new watch, so it must never count against the cap.
|
|
32
|
+
if (!activeWatchKeys.includes(key) && activeWatchKeys.length >= MAX_FILE_WATCHES_PER_SESSION) {
|
|
33
|
+
logger?.warn({ path: resolved, count: activeWatchKeys.length }, "file-watch: session hit MAX_FILE_WATCHES_PER_SESSION, refusing new subscription");
|
|
34
|
+
return {
|
|
35
|
+
type: "file_watch_subscribe_response",
|
|
36
|
+
path: resolved,
|
|
37
|
+
ok: false,
|
|
38
|
+
error: "too_many_watches",
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
const unsub = fileWatchService.subscribe(resolved, () => {
|
|
42
|
+
session.send({ type: "session", message: { type: "file_changed", path: resolved } });
|
|
43
|
+
});
|
|
44
|
+
subscriptions.add(session, key, unsub);
|
|
45
|
+
return { type: "file_watch_subscribe_response", path: resolved, ok: true };
|
|
46
|
+
});
|
|
47
|
+
registry.register("file_watch_unsubscribe", (ctx) => {
|
|
48
|
+
const rawPath = String(ctx.message.path ?? "");
|
|
49
|
+
const resolved = rawPath.startsWith("~") ? join(homedir(), rawPath.slice(1)) : rawPath;
|
|
50
|
+
subscriptions.remove(ctx.session, `${FILE_WATCH_KEY_PREFIX}${resolved}`);
|
|
51
|
+
return { type: "file_watch_unsubscribe_response", path: resolved, ok: true };
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=file-watch-rpc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-watch-rpc.js","sourceRoot":"","sources":["../../src/files/file-watch-rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAOjC;;;;;;;;;;GAUG;AAEH;;;iGAGiG;AACjG,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,CAAC;AAEhD,MAAM,qBAAqB,GAAG,aAAa,CAAC;AAU5C,MAAM,UAAU,yBAAyB,CAAC,QAAyB,EAAE,IAAsB;IACzF,MAAM,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAEzD,QAAQ,CAAC,QAAQ,CAAC,sBAAsB,EAAE,CAAC,GAAG,EAAE,EAAE;QAChD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAC/C,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QACvF,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAC5B,MAAM,GAAG,GAAG,GAAG,qBAAqB,GAAG,QAAQ,EAAE,CAAC;QAElD,MAAM,eAAe,GAAG,aAAa;aAClC,MAAM,CAAC,OAAO,CAAC;aACf,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC,CAAC;QACtD,6FAA6F;QAC7F,oFAAoF;QACpF,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,eAAe,CAAC,MAAM,IAAI,4BAA4B,EAAE,CAAC;YAC7F,MAAM,EAAE,IAAI,CACV,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,CAAC,MAAM,EAAE,EACjD,iFAAiF,CAClF,CAAC;YACF,OAAO;gBACL,IAAI,EAAE,+BAA+B;gBACrC,IAAI,EAAE,QAAQ;gBACd,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,kBAAkB;aAC1B,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,gBAAgB,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG,EAAE;YACtD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;QACvF,CAAC,CAAC,CAAC;QACH,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QACvC,OAAO,EAAE,IAAI,EAAE,+BAA+B,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,CAAC,wBAAwB,EAAE,CAAC,GAAG,EAAE,EAAE;QAClD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAC/C,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QACvF,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,qBAAqB,GAAG,QAAQ,EAAE,CAAC,CAAC;QACzE,OAAO,EAAE,IAAI,EAAE,iCAAiC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;IAC/E,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { Logger } from "../logging/logger.js";
|
|
2
|
+
/**
|
|
3
|
+
* The daemon's first real filesystem watcher (architecture/websocket-protocol.md § push/
|
|
4
|
+
* subscription families; features/file-explorer-transfer.md § listings, § file preview). Backs
|
|
5
|
+
* both the molecule viewer's live reload (task-007) and the live file tree (task-008) via a single
|
|
6
|
+
* `subscribe(path, listener)` primitive that watches one file OR one directory.
|
|
7
|
+
*
|
|
8
|
+
* Every daemon-*initiated* mutation already refreshes and pushes correctly today (every mutating
|
|
9
|
+
* git RPC calls `WorkspaceGitService.refresh(cwd)` itself, and `checkout_refresh_request` covers
|
|
10
|
+
* the client's own post-tool guess). What was missing — and what this class exists for — is a
|
|
11
|
+
* change the daemon did **not** itself perform: an external editor, a shell command, a build step,
|
|
12
|
+
* or `git` run inside a pi-studio terminal. Those produce no `refresh()` call and, before this,
|
|
13
|
+
* no push at all.
|
|
14
|
+
*/
|
|
15
|
+
/** Per-subscription debounce: collapses a write+rename burst into one push (chosen above
|
|
16
|
+
* `TerminalManager`'s latency-driven 4 ms and safely below `files-changed.ts`'s 500 ms client
|
|
17
|
+
* debounce so daemon pushes never race the client's own post-tool invalidation). */
|
|
18
|
+
export declare const FILE_WATCH_COALESCE_MS = 150;
|
|
19
|
+
export interface FileWatchServiceOptions {
|
|
20
|
+
/** Per-subscription debounce window. Overridable for tests; defaults to `FILE_WATCH_COALESCE_MS`. */
|
|
21
|
+
coalesceMs?: number;
|
|
22
|
+
logger?: Logger;
|
|
23
|
+
}
|
|
24
|
+
export declare class FileWatchService {
|
|
25
|
+
private readonly coalesceMs;
|
|
26
|
+
private readonly logger?;
|
|
27
|
+
private readonly dirs;
|
|
28
|
+
constructor(options?: FileWatchServiceOptions);
|
|
29
|
+
/**
|
|
30
|
+
* Watch one file OR one directory. Fires whenever the target changes; for a directory that
|
|
31
|
+
* includes children being created, deleted, renamed, or modified. Returns an unsubscribe
|
|
32
|
+
* function that is always safe to call, even for a path that could not be watched.
|
|
33
|
+
*/
|
|
34
|
+
subscribe(rawPath: string, listener: () => void): () => void;
|
|
35
|
+
/** Stop every watcher (daemon shutdown). */
|
|
36
|
+
close(): void;
|
|
37
|
+
/** Test-only observability seam: number of distinct directories currently holding a live
|
|
38
|
+
* `fs.watch` handle. Not part of the public contract — exists so tests can assert a handle is
|
|
39
|
+
* actually released once its last subscriber leaves, not merely that pushes stop. */
|
|
40
|
+
get watchedDirectoryCount(): number;
|
|
41
|
+
private ensureDirWatch;
|
|
42
|
+
private releaseDirWatch;
|
|
43
|
+
private teardownDirWatch;
|
|
44
|
+
private onEvent;
|
|
45
|
+
private scheduleFire;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=file-watch-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-watch-service.d.ts","sourceRoot":"","sources":["../../src/files/file-watch-service.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEnD;;;;;;;;;;;;GAYG;AAEH;;qFAEqF;AACrF,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAE1C,MAAM,WAAW,uBAAuB;IACtC,qGAAqG;IACrG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAgBD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA+B;IAEpD,YAAY,OAAO,GAAE,uBAA4B,EAGhD;IAED;;;;OAIG;IACH,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CA4B3D;IAED,4CAA4C;IAC5C,KAAK,IAAI,IAAI,CAEZ;IAED;;0FAEsF;IACtF,IAAI,qBAAqB,IAAI,MAAM,CAElC;IAID,OAAO,CAAC,cAAc;IAmCtB,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,OAAO;IAaf,OAAO,CAAC,YAAY;CAOrB"}
|