@gtc6244/immediacy-daemon 0.1.1 → 0.1.3
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 +58 -25
- package/dist/src/agent/agent.d.ts +19 -6
- package/dist/src/agent/agent.js +3 -1
- package/dist/src/agent/agent.js.map +1 -1
- package/dist/src/agent/anthropic-probe.d.ts +24 -0
- package/dist/src/agent/anthropic-probe.js +81 -0
- package/dist/src/agent/anthropic-probe.js.map +1 -0
- package/dist/src/agent/claude.d.ts +4 -2
- package/dist/src/agent/claude.js +32 -4
- package/dist/src/agent/claude.js.map +1 -1
- package/dist/src/agent/codex.d.ts +1 -1
- package/dist/src/agent/codex.js +26 -3
- package/dist/src/agent/codex.js.map +1 -1
- package/dist/src/agent/images.d.ts +21 -0
- package/dist/src/agent/images.js +54 -0
- package/dist/src/agent/images.js.map +1 -0
- package/dist/src/agent/mock.d.ts +1 -1
- package/dist/src/agent/mock.js +28 -3
- package/dist/src/agent/mock.js.map +1 -1
- package/dist/src/agent/ollama-probe.d.ts +28 -0
- package/dist/src/agent/ollama-probe.js +76 -0
- package/dist/src/agent/ollama-probe.js.map +1 -0
- package/dist/src/agent/ollama.d.ts +42 -0
- package/dist/src/agent/ollama.js +64 -0
- package/dist/src/agent/ollama.js.map +1 -0
- package/dist/src/agent/openai-probe.d.ts +18 -0
- package/dist/src/agent/openai-probe.js +83 -0
- package/dist/src/agent/openai-probe.js.map +1 -0
- package/dist/src/agent/openrouter-probe.d.ts +21 -0
- package/dist/src/agent/openrouter-probe.js +77 -0
- package/dist/src/agent/openrouter-probe.js.map +1 -0
- package/dist/src/cli/paths.d.ts +2 -0
- package/dist/src/cli/paths.js +14 -7
- package/dist/src/cli/paths.js.map +1 -1
- package/dist/src/cli.js +40 -0
- package/dist/src/cli.js.map +1 -1
- package/dist/src/crypto.js +7 -2
- package/dist/src/crypto.js.map +1 -1
- package/dist/src/hub.d.ts +7 -0
- package/dist/src/hub.js +14 -0
- package/dist/src/hub.js.map +1 -1
- package/dist/src/index.d.ts +3 -0
- package/dist/src/index.js +35 -3
- package/dist/src/index.js.map +1 -1
- package/dist/src/jobs/scheduler.d.ts +1 -0
- package/dist/src/jobs/scheduler.js +1 -0
- package/dist/src/jobs/scheduler.js.map +1 -1
- package/dist/src/media-watch.d.ts +29 -0
- package/dist/src/media-watch.js +108 -0
- package/dist/src/media-watch.js.map +1 -0
- package/dist/src/media.d.ts +54 -0
- package/dist/src/media.js +156 -0
- package/dist/src/media.js.map +1 -0
- package/dist/src/model-efforts.d.ts +49 -0
- package/dist/src/model-efforts.js +107 -0
- package/dist/src/model-efforts.js.map +1 -0
- package/dist/src/models.d.ts +50 -17
- package/dist/src/models.js +119 -21
- package/dist/src/models.js.map +1 -1
- package/dist/src/projects.d.ts +7 -0
- package/dist/src/projects.js +14 -0
- package/dist/src/projects.js.map +1 -1
- package/dist/src/protocol.d.ts +163 -9
- package/dist/src/protocol.js +1 -1
- package/dist/src/server.js +141 -5
- package/dist/src/server.js.map +1 -1
- package/dist/src/types.d.ts +9 -0
- package/dist/src/updater.d.ts +78 -0
- package/dist/src/updater.js +240 -0
- package/dist/src/updater.js.map +1 -0
- package/dist/src/workspace.d.ts +25 -0
- package/dist/src/workspace.js +159 -6
- package/dist/src/workspace.js.map +1 -1
- package/package.json +4 -2
- package/dist/src/migrate-state-dir.d.ts +0 -1
- package/dist/src/migrate-state-dir.js +0 -47
- package/dist/src/migrate-state-dir.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../../src/cli/paths.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,yEAAyE;AACzE,MAAM,CAAC,MAAM,aAAa,GAAG,oCAAoC,CAAC;AAClE,gEAAgE;AAChE,MAAM,CAAC,MAAM,YAAY,GAAG,kBAAkB,CAAC;AAE/C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAEnF,8EAA8E;AAC9E,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,YAAY,CAAC,CAAC;AAEvD;;;;;GAKG;AACH,MAAM,UAAU,QAAQ;IACtB,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAChD,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,0BAA0B,CAAC;YAC3C,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,0BAA0B,CAAC;SAC5C,CAAC;IACJ,CAAC;IACD,OAAO;QACL,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC;QACtC,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC;KACvC,CAAC;AACJ,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../../src/cli/paths.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,yEAAyE;AACzE,MAAM,CAAC,MAAM,aAAa,GAAG,oCAAoC,CAAC;AAClE,gEAAgE;AAChE,MAAM,CAAC,MAAM,YAAY,GAAG,kBAAkB,CAAC;AAE/C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAEnF,8EAA8E;AAC9E,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,YAAY,CAAC,CAAC;AAEvD;;;;;GAKG;AACH,MAAM,UAAU,QAAQ;IACtB,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAChD,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,0BAA0B,CAAC;YAC3C,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,0BAA0B,CAAC;SAC5C,CAAC;IACJ,CAAC;IACD,OAAO;QACL,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC;QACtC,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC;KACvC,CAAC;AACJ,CAAC;AAED,gEAAgE;AAChE,SAAS,eAAe;IACtB,yEAAyE;IACzE,sEAAsE;IACtE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,uBAAuB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAG7C,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,cAAc;IAC5B,OAAO,eAAe,EAAE,CAAC,OAAO,IAAI,OAAO,CAAC;AAC9C,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,WAAW;IACzB,OAAO,eAAe,EAAE,CAAC,IAAI,IAAI,2BAA2B,CAAC;AAC/D,CAAC;AAUD,MAAM,CAAC,MAAM,WAAW,GAAe;IACrC,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,WAAW;IACjB,SAAS,EAAE,QAAQ;IACnB,GAAG,EAAE,KAAK;CACX,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,WAAW;IACzB,MAAM,IAAI,GACR,OAAO,CAAC,QAAQ,KAAK,QAAQ;QAC3B,CAAC,CAAC,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,CAAC;QAC7D,CAAC,CAAC,CAAC,gBAAgB,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC"}
|
package/dist/src/cli.js
CHANGED
|
@@ -37,6 +37,8 @@ Commands:
|
|
|
37
37
|
status Show service state and probe http://127.0.0.1:<port>/healthz.
|
|
38
38
|
logs [-f|--follow] Print the daemon's stdout/stderr logs (‑f to tail).
|
|
39
39
|
doctor Check node/git/gh on PATH and whether the daemon responds.
|
|
40
|
+
update [--check] Update to the latest npm release and restart the service.
|
|
41
|
+
--check only reports whether a newer version exists.
|
|
40
42
|
help Show this help.
|
|
41
43
|
|
|
42
44
|
Install/run options (also read from the environment):
|
|
@@ -188,6 +190,42 @@ async function cmdDoctor(env) {
|
|
|
188
190
|
if (!gitOk)
|
|
189
191
|
process.exitCode = 1;
|
|
190
192
|
}
|
|
193
|
+
/**
|
|
194
|
+
* Check for (and optionally install) a newer daemon from npm. Lazily imports
|
|
195
|
+
* the updater so `--help`/`--version` stay instant. `--check` is read-only.
|
|
196
|
+
*/
|
|
197
|
+
async function cmdUpdate(checkOnly) {
|
|
198
|
+
const { checkForUpdate, performUpdate, scheduleRestart } = await import("./updater.js");
|
|
199
|
+
const status = await checkForUpdate();
|
|
200
|
+
if (status.error) {
|
|
201
|
+
console.error(`✗ update check failed: ${status.error}`);
|
|
202
|
+
process.exitCode = 1;
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
console.log(`current: ${status.currentVersion} latest: ${status.latestVersion ?? "?"}`);
|
|
206
|
+
if (!status.updateAvailable) {
|
|
207
|
+
console.log("✓ already up to date");
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
210
|
+
if (checkOnly) {
|
|
211
|
+
console.log(`↑ update available → ${status.latestVersion}`);
|
|
212
|
+
console.log(` run \`immediacy-daemon update\` to install it`);
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
console.log(`installing ${status.latestVersion}…`);
|
|
216
|
+
const result = await performUpdate();
|
|
217
|
+
if (!result.ok) {
|
|
218
|
+
console.error(`✗ update failed: ${result.error ?? "unknown error"}`);
|
|
219
|
+
if (result.log)
|
|
220
|
+
console.error(result.log);
|
|
221
|
+
process.exitCode = 1;
|
|
222
|
+
return;
|
|
223
|
+
}
|
|
224
|
+
const restarting = result.canRestart ? scheduleRestart() : false;
|
|
225
|
+
console.log(`✓ installed. ${restarting
|
|
226
|
+
? "service restart scheduled to load it."
|
|
227
|
+
: "restart the daemon to load it."}`);
|
|
228
|
+
}
|
|
191
229
|
// ------------------------------------------------------------------- main ----
|
|
192
230
|
async function main() {
|
|
193
231
|
const { command, flags } = parseArgs(process.argv.slice(2));
|
|
@@ -214,6 +252,8 @@ async function main() {
|
|
|
214
252
|
return cmdLogs(flags.f === true || flags.follow === true);
|
|
215
253
|
case "doctor":
|
|
216
254
|
return cmdDoctor(resolveEnv(flags));
|
|
255
|
+
case "update":
|
|
256
|
+
return cmdUpdate(flags.check === true);
|
|
217
257
|
default:
|
|
218
258
|
console.error(`unknown command '${command}'\n`);
|
|
219
259
|
console.log(HELP);
|
package/dist/src/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EACL,WAAW,EACX,QAAQ,EACR,cAAc,EACd,SAAS,GAEV,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,GACX,MAAM,kBAAkB,CAAC;AAE1B,MAAM,IAAI,GAAG,qBAAqB,cAAc,EAAE
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/src/crypto.js
CHANGED
|
@@ -16,7 +16,6 @@ import { existsSync } from "node:fs";
|
|
|
16
16
|
import { mkdir, readFile, writeFile, chmod } from "node:fs/promises";
|
|
17
17
|
import { homedir } from "node:os";
|
|
18
18
|
import { dirname, join } from "node:path";
|
|
19
|
-
import { PROTOCOL_VERSION } from "./protocol.js";
|
|
20
19
|
import { ProtocolError } from "./envelope.js";
|
|
21
20
|
const KEYS_FILE = process.env.KEYS_FILE ?? join(homedir(), ".immediacy", "keys.json");
|
|
22
21
|
const PEER_FILE = process.env.PEER_FILE ?? join(homedir(), ".immediacy", "peer.json");
|
|
@@ -183,7 +182,13 @@ function parseEnvelope(raw, allowSealed = false) {
|
|
|
183
182
|
throw new ProtocolError("bad_envelope", "frame was not an object");
|
|
184
183
|
}
|
|
185
184
|
const e = parsed;
|
|
186
|
-
|
|
185
|
+
// `v` is informational (routing + skew detection), NOT a hard compatibility
|
|
186
|
+
// gate. Version skew is surfaced as a non-fatal heads-up by the client.hello
|
|
187
|
+
// handshake (server.ts) and the client-side banners, and the field stays clear
|
|
188
|
+
// for routing (see this module's header). Additive-only bumps like v1→v2 stay
|
|
189
|
+
// wire-compatible, so decoding must tolerate any numeric version. A missing or
|
|
190
|
+
// non-numeric `v` is still a malformed frame and is rejected.
|
|
191
|
+
if (typeof e.v !== "number") {
|
|
187
192
|
throw new ProtocolError("bad_version", `unsupported version ${String(e.v)}`);
|
|
188
193
|
}
|
|
189
194
|
if (typeof e.id !== "string")
|
package/dist/src/crypto.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../src/crypto.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,MAAM,MAAM,eAAe,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../src/crypto.ts"],"names":[],"mappings":"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"}
|
package/dist/src/hub.d.ts
CHANGED
|
@@ -43,6 +43,13 @@ export declare class Hub {
|
|
|
43
43
|
setCodec(socket: WebSocket, codec: Codec): void;
|
|
44
44
|
/** Send to one socket, sealed with that socket's own codec. */
|
|
45
45
|
send(socket: WebSocket, env: Envelope): void;
|
|
46
|
+
/**
|
|
47
|
+
* Like `send`, but invoke `after` once the frame has been handed to the OS
|
|
48
|
+
* socket buffer (or immediately if the socket is already closed). Lets a
|
|
49
|
+
* caller run a side effect — e.g. a self-restart — only after the client has
|
|
50
|
+
* actually been told the outcome, instead of racing a fixed timer.
|
|
51
|
+
*/
|
|
52
|
+
sendThen(socket: WebSocket, env: Envelope, after: () => void): void;
|
|
46
53
|
/** Build + send a daemon→client message to ONE socket (per-device streams). */
|
|
47
54
|
sendTo<T extends MessageType>(socket: WebSocket, type: T, ws: string | null, payload: PayloadFor<T>): void;
|
|
48
55
|
/** Build + broadcast a daemon→client message to every attached socket. */
|
package/dist/src/hub.js
CHANGED
|
@@ -75,6 +75,20 @@ export class Hub {
|
|
|
75
75
|
if (socket.readyState === WebSocket.OPEN)
|
|
76
76
|
socket.send(this.codecFor(socket).encode(env));
|
|
77
77
|
}
|
|
78
|
+
/**
|
|
79
|
+
* Like `send`, but invoke `after` once the frame has been handed to the OS
|
|
80
|
+
* socket buffer (or immediately if the socket is already closed). Lets a
|
|
81
|
+
* caller run a side effect — e.g. a self-restart — only after the client has
|
|
82
|
+
* actually been told the outcome, instead of racing a fixed timer.
|
|
83
|
+
*/
|
|
84
|
+
sendThen(socket, env, after) {
|
|
85
|
+
if (socket.readyState === WebSocket.OPEN) {
|
|
86
|
+
socket.send(this.codecFor(socket).encode(env), () => after());
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
after();
|
|
90
|
+
}
|
|
91
|
+
}
|
|
78
92
|
/** Build + send a daemon→client message to ONE socket (per-device streams). */
|
|
79
93
|
sendTo(socket, type, ws, payload) {
|
|
80
94
|
this.send(socket, make(type, ws, payload));
|
package/dist/src/hub.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hub.js","sourceRoot":"","sources":["../../src/hub.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hub.js","sourceRoot":"","sources":["../../src/hub.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -15,6 +15,9 @@
|
|
|
15
15
|
* OPENROUTER_BASE_URL overrides that endpoint
|
|
16
16
|
* (default https://openrouter.ai/api). CREDENTIALS_FILE
|
|
17
17
|
* overrides the store path.
|
|
18
|
+
* OLLAMA_BASE_URL default http://localhost:11434 — local Ollama endpoint for
|
|
19
|
+
* the Ollama backend (keyless; OLLAMA_API_KEY only for a
|
|
20
|
+
* protected/remote instance).
|
|
18
21
|
* E2E 1 to enable the NaCl box layer (needs a paired peer key)
|
|
19
22
|
* PEER_PUBLIC_KEY base64 of the client's public key (dev pairing shortcut)
|
|
20
23
|
* WORKTREE_ROOT, STATE_FILE, KEYS_FILE, PEER_FILE — storage overrides
|
package/dist/src/index.js
CHANGED
|
@@ -15,15 +15,16 @@
|
|
|
15
15
|
* OPENROUTER_BASE_URL overrides that endpoint
|
|
16
16
|
* (default https://openrouter.ai/api). CREDENTIALS_FILE
|
|
17
17
|
* overrides the store path.
|
|
18
|
+
* OLLAMA_BASE_URL default http://localhost:11434 — local Ollama endpoint for
|
|
19
|
+
* the Ollama backend (keyless; OLLAMA_API_KEY only for a
|
|
20
|
+
* protected/remote instance).
|
|
18
21
|
* E2E 1 to enable the NaCl box layer (needs a paired peer key)
|
|
19
22
|
* PEER_PUBLIC_KEY base64 of the client's public key (dev pairing shortcut)
|
|
20
23
|
* WORKTREE_ROOT, STATE_FILE, KEYS_FILE, PEER_FILE — storage overrides
|
|
21
24
|
*/
|
|
22
25
|
import { startServer } from "./server.js";
|
|
23
26
|
import { loadOrCreateKeypair, loadPeers } from "./crypto.js";
|
|
24
|
-
import {
|
|
25
|
-
// Rename legacy ~/.agent-tether → ~/.immediacy before any state path is read.
|
|
26
|
-
migrateStateDir();
|
|
27
|
+
import { OLLAMA_BASE_URL, refreshOllamaModels } from "./agent/ollama-probe.js";
|
|
27
28
|
const port = Number(process.env.DAEMON_PORT ?? 8787);
|
|
28
29
|
const host = process.env.DAEMON_HOST ?? "127.0.0.1";
|
|
29
30
|
const agentMode = (process.env.AGENT_MODE ?? "claude").toLowerCase();
|
|
@@ -42,8 +43,39 @@ async function resolveCrypto() {
|
|
|
42
43
|
const crypto = await resolveCrypto();
|
|
43
44
|
const daemon = await startServer({ port, host, crypto });
|
|
44
45
|
console.log(`[daemon] agent mode: ${agentMode}`);
|
|
46
|
+
// Probe for a local Ollama and, if present, load the models it serves so they
|
|
47
|
+
// show up in the picker. Best-effort: an unreachable Ollama just yields none.
|
|
48
|
+
const ollamaModelList = await refreshOllamaModels(true);
|
|
49
|
+
if (ollamaModelList.length) {
|
|
50
|
+
console.log(`[daemon] Ollama: ${ollamaModelList.length} local model(s) at ${OLLAMA_BASE_URL} — ${ollamaModelList
|
|
51
|
+
.map((m) => m.id)
|
|
52
|
+
.join(", ")}`);
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
console.log(`[daemon] Ollama: none detected at ${OLLAMA_BASE_URL} (set OLLAMA_BASE_URL to change; no local models offered)`);
|
|
56
|
+
}
|
|
57
|
+
// Tier-2 media cleanup: periodically drop stored images whose workspace no
|
|
58
|
+
// longer exists (e.g. a workspace deleted while a client was offline, or a
|
|
59
|
+
// crash between worktree removal and its media teardown). Runs shortly after
|
|
60
|
+
// startup and every ~2 days; best-effort and unref'd so it never holds the
|
|
61
|
+
// process open. Event-driven Tier-1 cleanup (on delete/archive) is in workspace.ts.
|
|
62
|
+
const MEDIA_SWEEP_MS = 2 * 24 * 60 * 60 * 1000;
|
|
63
|
+
async function sweepMedia() {
|
|
64
|
+
try {
|
|
65
|
+
await daemon.workspaces
|
|
66
|
+
.mediaStore()
|
|
67
|
+
.sweepOrphans(daemon.workspaces.liveWorkspaceIds());
|
|
68
|
+
}
|
|
69
|
+
catch {
|
|
70
|
+
/* best-effort */
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
setTimeout(() => void sweepMedia(), 30_000).unref();
|
|
74
|
+
const mediaSweepTimer = setInterval(() => void sweepMedia(), MEDIA_SWEEP_MS);
|
|
75
|
+
mediaSweepTimer.unref();
|
|
45
76
|
function shutdown(signal) {
|
|
46
77
|
console.log(`\n[daemon] ${signal} received, closing…`);
|
|
78
|
+
clearInterval(mediaSweepTimer);
|
|
47
79
|
daemon.jobs.stop(); // cancel cron timers so nothing fires mid-teardown
|
|
48
80
|
void daemon.workspaces.shutdown().finally(() => {
|
|
49
81
|
daemon.wss.close();
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../../src/jobs/scheduler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAU9B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AA2BnC,gFAAgF;AAChF,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAWnC,MAAM,OAAO,YAAY;IAUb;IACA;IACA;IACA;IAZF,KAAK,GAAG,IAAI,GAAG,EAAgB,CAAC;IACxC,8EAA8E;IACtE,MAAM,GAAG,IAAI,GAAG,EAA8C,CAAC;IACvE,iFAAiF;IACzE,OAAO,GAAG,IAAI,GAAG,EAAwB,CAAC;IAC1C,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC3C,OAAO,GAAG,KAAK,CAAC;IAExB,YACU,KAAe,EACf,IAAmB,EACnB,MAAoB,EACpB,SAAyB;QAHzB,UAAK,GAAL,KAAK,CAAU;QACf,SAAI,GAAJ,IAAI,CAAe;QACnB,WAAM,GAAN,MAAM,CAAc;QACpB,cAAS,GAAT,SAAS,CAAgB;IAChC,CAAC;IAEJ,uEAAuE;IACvE,KAAK;QACH,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrD,CAAC;IAED,IAAI;QACF,+EAA+E;QAC/E,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACjC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,KAAc,EAAE,KAAc;QACpC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAe;QAC1B,aAAa,CAAC,KAAK,CAAC,CAAC;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,GAAG,GAAc;YACrB,EAAE,EAAE,UAAU,EAAE;YAChB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK;YAChC,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI;YAC9B,SAAS,EAAE,GAAG;YACd,SAAS,EAAE,GAAG;SACf,CAAC;QACF,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,KAAwB;QAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QACrD,MAAM,IAAI,GAAc;YACtB,GAAG,QAAQ;YACX,GAAG,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5F,GAAG,CAAC,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpF,GAAG,CAAC,SAAS,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,GAAG,CAAC,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,GAAG,CAAC,SAAS,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC;QACF,aAAa,CAAC,IAAI,CAAC,CAAC;QACpB,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,sCAAsC;QACtD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,oEAAoE;IACpE,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/B,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QAChD,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACnC,CAAC;IAED,gEAAgE;IAChE,IAAI;QACF,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YAAE,KAAK,MAAM,CAAC,IAAI,GAAG;gBAAE,YAAY,CAAC,CAAC,CAAC,CAAC;QAC7E,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED,2EAA2E;IAE3E,iFAAiF;IACzE,GAAG,CAAC,GAAc;QACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpB,IAAI,CAAC,GAAG,CAAC,OAAO;YAAE,OAAO;QACzB,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACpC,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,IAAI,IAAI,CACnB,GAAG,CAAC,OAAO,CAAC,IAAI,EAChB,EAAE,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,EAChD,GAAG,EAAE;oBACH,KAAK,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;oBAClC,mEAAmE;oBACnE,oEAAoE;oBACpE,mDAAmD;oBACnD,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;wBAC9C,KAAK,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBACxC,CAAC;gBACH,CAAC,CACF,CAAC;gBACF,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBAC7B,0EAA0E;gBAC1E,uEAAuE;gBACvE,qEAAqE;gBACrE,gEAAgE;gBAChE,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;oBAC3B,IAAI,CAAC,OAAO,CACV,GAAG,EACH,UAAU,EACV,SAAS,EACT,uCAAuC,EACvC,SAAS,CACV,CAAC;oBACF,KAAK,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACxC,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,gCAAgC,EAAE;oBACtD,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;iBACnF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,0EAA0E;QAC1E,sEAAsE;IACxE,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,mBAAmB,CAAC,KAAa;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO;QACvC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAEO,MAAM,CAAC,KAAa;QAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,GAAG,EAAE,CAAC;YACR,KAAK,MAAM,CAAC,IAAI,GAAG;gBAAE,YAAY,CAAC,CAAC,CAAC,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAEO,UAAU,CAAC,KAAa,EAAE,CAAgC;QAChE,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,GAAG;YAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;QACpD,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACb,CAAC;IAED,2EAA2E;IAEnE,aAAa,CAAC,CAAc;QAClC,8EAA8E;QAC9E,6EAA6E;QAC7E,8EAA8E;QAC9E,0EAA0E;QAC1E,4EAA4E;QAC5E,IAAI,aAAiC,CAAC;QACtC,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACxD,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC3F,CAAC;QAED,6EAA6E;QAC7E,2EAA2E;QAC3E,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,OAAO;gBAAE,SAAS;YAC3D,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,CAAC,IAAI;gBAAE,SAAS;YAC3C,IAAI,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE;gBAAE,SAAS;YACxD,IAAI,GAAG,CAAC,EAAE,KAAK,aAAa;gBAAE,SAAS;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC;YAC3E,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE;gBACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;gBACnC,KAAK,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7D,CAAC,EAAE,OAAO,CAAC,CAAC;YACZ,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,qEAAqE;IAC7D,mBAAmB,CAAC,EAAU,EAAE,OAAmB;QACzD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QACnD,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;QACzB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAChD,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;QACtC,OAAO,CAAC,CAAC,KAAK,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,CAAa,EAAE,EAAU,EAAE,OAAmB;QACtE,MAAM,MAAM,GAAiB,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;QAClE,IAAI,OAAO,GAAG,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,WAAW,CAAC;QAC5E,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBACzC,IAAI,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,OAAO,IAAI,gCAAgC,EAAE,CAAC,OAAO,CAAC,MAAM,sBAAsB,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;gBAC1H,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBAC3B,OAAO,IAAI,iCAAiC,CAAC;gBAC/C,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,sEAAsE;gBACtE,OAAO,IAAI,uBAAuB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YACpD,CAAC;QACH,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,2EAA2E;IAEnE,KAAK,CAAC,MAAM,CAClB,GAAc,EACd,OAA0B,EAC1B,OAAgC;QAEhC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,GAAG,GAAG,IAAI,GAAG,mBAAmB,EAAE,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,SAAS,CAAC,CAAC;YAC7E,OAAO;QACT,CAAC;QAED,kCAAkC;QAClC,IAAI,EAAU,CAAC;QACf,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YACxD,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC;YACjB,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;QACjC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC;YAC/D,OAAO;QACT,CAAC;QAED,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;QAEpE,2DAA2D;QAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QACzC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAE5B,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAE7B,2CAA2C;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC;YACvB,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC;YAC9B,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CACzB,GAAc,EACd,OAAgC;QAEhC,MAAM,MAAM,GAAc,GAAG,CAAC,MAAM,CAAC;QACrC,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAChC,uEAAuE;YACvE,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,IAAI,OAAO,EAAE,EAAE,CAAC;YACpC,IAAI,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;YACjE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;YAC5E,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC;YAC7C,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YACjC,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,OAAO,GAAG,CAAC,IAAI,EAAE;YACtC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC,CAAC;QACH,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IACzC,CAAC;IAED,2EAA2E;IAEnE,OAAO,CACb,GAAc,EACd,OAA0B,EAC1B,MAAoB,EACpB,OAAe,EACf,EAAsB;QAEtB,MAAM,GAAG,GAAW;YAClB,EAAE,EAAE,UAAU,EAAE;YAChB,KAAK,EAAE,GAAG,CAAC,EAAE;YACb,OAAO,EAAE,GAAG,CAAC,IAAI;YACjB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,MAAM;YACN,EAAE;YACF,OAAO;YACP,OAAO;SACR,CAAC;QACF,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACpB,OAAO,GAAG,CAAC;IACb,CAAC;IAEO,WAAW,CAAC,OAAe,EAAE,MAAoB,EAAE,OAAe;QACxE,MAAM,GAAG,GAAW,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;QACtF,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC;YAC3B,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;CACF;AAED,8EAA8E;AAE9E,4EAA4E;AAC5E,SAAS,YAAY,CAAC,QAAgB,EAAE,GAA2B;IACjE,OAAO,QAAQ,CAAC,OAAO,CAAC,yBAAyB,EAAE,CAAC,EAAE,EAAE,GAAW,EAAE,EAAE,CACrE,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CACtC,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,SAAS,aAAa,CAAC,KAAe;IACpC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAClF,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC1B,YAAY,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;SAAM,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC;QAC5E,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC/D,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,SAAS,YAAY,CAAC,CAAkB;IACtC,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACnE,CAAC,CAAC,IAAI,EAAE,CAAC;IACX,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,4BAA4B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9D,CAAC;AACH,CAAC;AAED,SAAS,OAAO,CAAC,GAAY;IAC3B,OAAO,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAC1E,CAAC"}
|
|
1
|
+
{"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../../src/jobs/scheduler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAU9B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AA4BnC,gFAAgF;AAChF,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAWnC,MAAM,OAAO,YAAY;IAUb;IACA;IACA;IACA;IAZF,KAAK,GAAG,IAAI,GAAG,EAAgB,CAAC;IACxC,8EAA8E;IACtE,MAAM,GAAG,IAAI,GAAG,EAA8C,CAAC;IACvE,iFAAiF;IACzE,OAAO,GAAG,IAAI,GAAG,EAAwB,CAAC;IAC1C,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC3C,OAAO,GAAG,KAAK,CAAC;IAExB,YACU,KAAe,EACf,IAAmB,EACnB,MAAoB,EACpB,SAAyB;QAHzB,UAAK,GAAL,KAAK,CAAU;QACf,SAAI,GAAJ,IAAI,CAAe;QACnB,WAAM,GAAN,MAAM,CAAc;QACpB,cAAS,GAAT,SAAS,CAAgB;IAChC,CAAC;IAEJ,uEAAuE;IACvE,KAAK;QACH,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrD,CAAC;IAED,IAAI;QACF,+EAA+E;QAC/E,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACjC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,KAAc,EAAE,KAAc;QACpC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAe;QAC1B,aAAa,CAAC,KAAK,CAAC,CAAC;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,GAAG,GAAc;YACrB,EAAE,EAAE,UAAU,EAAE;YAChB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK;YAChC,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI;YAC9B,SAAS,EAAE,GAAG;YACd,SAAS,EAAE,GAAG;SACf,CAAC;QACF,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,KAAwB;QAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QACrD,MAAM,IAAI,GAAc;YACtB,GAAG,QAAQ;YACX,GAAG,CAAC,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5F,GAAG,CAAC,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpF,GAAG,CAAC,SAAS,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,GAAG,CAAC,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,GAAG,CAAC,SAAS,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC;QACF,aAAa,CAAC,IAAI,CAAC,CAAC;QACpB,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,sCAAsC;QACtD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,oEAAoE;IACpE,KAAK,CAAC,MAAM,CAAC,EAAU;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/B,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QAChD,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACnC,CAAC;IAED,gEAAgE;IAChE,IAAI;QACF,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YAAE,KAAK,MAAM,CAAC,IAAI,GAAG;gBAAE,YAAY,CAAC,CAAC,CAAC,CAAC;QAC7E,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED,2EAA2E;IAE3E,iFAAiF;IACzE,GAAG,CAAC,GAAc;QACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpB,IAAI,CAAC,GAAG,CAAC,OAAO;YAAE,OAAO;QACzB,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACpC,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,IAAI,IAAI,CACnB,GAAG,CAAC,OAAO,CAAC,IAAI,EAChB,EAAE,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,EAChD,GAAG,EAAE;oBACH,KAAK,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;oBAClC,mEAAmE;oBACnE,oEAAoE;oBACpE,mDAAmD;oBACnD,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;wBAC9C,KAAK,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBACxC,CAAC;gBACH,CAAC,CACF,CAAC;gBACF,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBAC7B,0EAA0E;gBAC1E,uEAAuE;gBACvE,qEAAqE;gBACrE,gEAAgE;gBAChE,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;oBAC3B,IAAI,CAAC,OAAO,CACV,GAAG,EACH,UAAU,EACV,SAAS,EACT,uCAAuC,EACvC,SAAS,CACV,CAAC;oBACF,KAAK,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACxC,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,gCAAgC,EAAE;oBACtD,IAAI,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;iBACnF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,0EAA0E;QAC1E,sEAAsE;IACxE,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,mBAAmB,CAAC,KAAa;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO;QACvC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAEO,MAAM,CAAC,KAAa;QAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,GAAG,EAAE,CAAC;YACR,KAAK,MAAM,CAAC,IAAI,GAAG;gBAAE,YAAY,CAAC,CAAC,CAAC,CAAC;YACrC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAEO,UAAU,CAAC,KAAa,EAAE,CAAgC;QAChE,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,GAAG;YAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;QACpD,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACb,CAAC;IAED,2EAA2E;IAEnE,aAAa,CAAC,CAAc;QAClC,8EAA8E;QAC9E,6EAA6E;QAC7E,8EAA8E;QAC9E,0EAA0E;QAC1E,4EAA4E;QAC5E,IAAI,aAAiC,CAAC;QACtC,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACxD,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC3F,CAAC;QAED,6EAA6E;QAC7E,2EAA2E;QAC3E,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,OAAO;gBAAE,SAAS;YAC3D,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,CAAC,IAAI;gBAAE,SAAS;YAC3C,IAAI,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE;gBAAE,SAAS;YACxD,IAAI,GAAG,CAAC,EAAE,KAAK,aAAa;gBAAE,SAAS;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC;YAC3E,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE;gBACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;gBACnC,KAAK,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7D,CAAC,EAAE,OAAO,CAAC,CAAC;YACZ,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,qEAAqE;IAC7D,mBAAmB,CAAC,EAAU,EAAE,OAAmB;QACzD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QACnD,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;QACzB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAChD,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;QACtC,OAAO,CAAC,CAAC,KAAK,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,CAAa,EAAE,EAAU,EAAE,OAAmB;QACtE,MAAM,MAAM,GAAiB,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;QAClE,IAAI,OAAO,GAAG,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,WAAW,CAAC;QAC5E,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBACzC,IAAI,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,OAAO,IAAI,gCAAgC,EAAE,CAAC,OAAO,CAAC,MAAM,sBAAsB,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;gBAC1H,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBAC3B,OAAO,IAAI,iCAAiC,CAAC;gBAC/C,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,sEAAsE;gBACtE,OAAO,IAAI,uBAAuB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;YACpD,CAAC;QACH,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,2EAA2E;IAEnE,KAAK,CAAC,MAAM,CAClB,GAAc,EACd,OAA0B,EAC1B,OAAgC;QAEhC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,GAAG,GAAG,IAAI,GAAG,mBAAmB,EAAE,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,SAAS,CAAC,CAAC;YAC7E,OAAO;QACT,CAAC;QAED,kCAAkC;QAClC,IAAI,EAAU,CAAC;QACf,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YACxD,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC;YACjB,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;QACjC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC;YAC/D,OAAO;QACT,CAAC;QAED,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;QAEpE,2DAA2D;QAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QACzC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAE5B,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAE7B,2CAA2C;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC;YACvB,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC;YAC9B,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CACzB,GAAc,EACd,OAAgC;QAEhC,MAAM,MAAM,GAAc,GAAG,CAAC,MAAM,CAAC;QACrC,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YAChC,uEAAuE;YACvE,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,IAAI,OAAO,EAAE,EAAE,CAAC;YACpC,IAAI,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;YACjE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;YAC5E,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC;YAC7C,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YACjC,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,OAAO,GAAG,CAAC,IAAI,EAAE;YACtC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC,CAAC;QACH,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IACzC,CAAC;IAED,2EAA2E;IAEnE,OAAO,CACb,GAAc,EACd,OAA0B,EAC1B,MAAoB,EACpB,OAAe,EACf,EAAsB;QAEtB,MAAM,GAAG,GAAW;YAClB,EAAE,EAAE,UAAU,EAAE;YAChB,KAAK,EAAE,GAAG,CAAC,EAAE;YACb,OAAO,EAAE,GAAG,CAAC,IAAI;YACjB,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;YACd,MAAM;YACN,EAAE;YACF,OAAO;YACP,OAAO;SACR,CAAC;QACF,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACpB,OAAO,GAAG,CAAC;IACb,CAAC;IAEO,WAAW,CAAC,OAAe,EAAE,MAAoB,EAAE,OAAe;QACxE,MAAM,GAAG,GAAW,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;QACtF,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC;YAC3B,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;CACF;AAED,8EAA8E;AAE9E,4EAA4E;AAC5E,SAAS,YAAY,CAAC,QAAgB,EAAE,GAA2B;IACjE,OAAO,QAAQ,CAAC,OAAO,CAAC,yBAAyB,EAAE,CAAC,EAAE,EAAE,GAAW,EAAE,EAAE,CACrE,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CACtC,CAAC;AACJ,CAAC;AAED,0EAA0E;AAC1E,SAAS,aAAa,CAAC,KAAe;IACpC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAClF,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC1B,YAAY,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;SAAM,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC;QAC5E,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC/D,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,SAAS,YAAY,CAAC,CAAkB;IACtC,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACnE,CAAC,CAAC,IAAI,EAAE,CAAC;IACX,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,4BAA4B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9D,CAAC;AACH,CAAC;AAED,SAAS,OAAO,CAAC,GAAY;IAC3B,OAAO,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAC1E,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Worktree image scanner — the backend-agnostic half of screenshot capture.
|
|
3
|
+
*
|
|
4
|
+
* Some agents "take a screenshot" by shelling out (`screencapture out.png`) and
|
|
5
|
+
* writing a file into the worktree, producing no image content block at all. No
|
|
6
|
+
* per-backend extraction can catch that. This module instead observes the
|
|
7
|
+
* *filesystem*: `scanWorktreeImages` snapshots the image files in a directory,
|
|
8
|
+
* and the workspace manager diffs a pre-turn snapshot against a post-turn one —
|
|
9
|
+
* so any image touched during the agent's turn surfaces, regardless of how (or
|
|
10
|
+
* which backend) produced it.
|
|
11
|
+
*
|
|
12
|
+
* The walk is bounded (ignore heavy dirs, depth + count caps) so a pathological
|
|
13
|
+
* repo can't stall a turn, and cross-platform (no fs.watch — recursive watch is
|
|
14
|
+
* unsupported on Linux, where the daemon also runs).
|
|
15
|
+
*/
|
|
16
|
+
/** relPath (posix, worktree-relative) → file stat we diff on. */
|
|
17
|
+
export type ImageSnapshot = Map<string, {
|
|
18
|
+
mtimeMs: number;
|
|
19
|
+
size: number;
|
|
20
|
+
}>;
|
|
21
|
+
/** Snapshot image files under `root` (worktree-relative keys). */
|
|
22
|
+
export declare function scanWorktreeImages(root: string): Promise<ImageSnapshot>;
|
|
23
|
+
/**
|
|
24
|
+
* Image files that are new or modified between `before` and `after` — i.e.
|
|
25
|
+
* written/touched during the turn. Returns their worktree-relative paths.
|
|
26
|
+
*/
|
|
27
|
+
export declare function diffSnapshots(before: ImageSnapshot, after: ImageSnapshot): string[];
|
|
28
|
+
/** Image MIME type for a path by extension, or null if not a supported image. */
|
|
29
|
+
export declare function imageMimeFor(path: string): string | null;
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Worktree image scanner — the backend-agnostic half of screenshot capture.
|
|
3
|
+
*
|
|
4
|
+
* Some agents "take a screenshot" by shelling out (`screencapture out.png`) and
|
|
5
|
+
* writing a file into the worktree, producing no image content block at all. No
|
|
6
|
+
* per-backend extraction can catch that. This module instead observes the
|
|
7
|
+
* *filesystem*: `scanWorktreeImages` snapshots the image files in a directory,
|
|
8
|
+
* and the workspace manager diffs a pre-turn snapshot against a post-turn one —
|
|
9
|
+
* so any image touched during the agent's turn surfaces, regardless of how (or
|
|
10
|
+
* which backend) produced it.
|
|
11
|
+
*
|
|
12
|
+
* The walk is bounded (ignore heavy dirs, depth + count caps) so a pathological
|
|
13
|
+
* repo can't stall a turn, and cross-platform (no fs.watch — recursive watch is
|
|
14
|
+
* unsupported on Linux, where the daemon also runs).
|
|
15
|
+
*/
|
|
16
|
+
import { readdir, stat } from "node:fs/promises";
|
|
17
|
+
import { join, relative } from "node:path";
|
|
18
|
+
const IMAGE_EXTS = new Set(["png", "jpg", "jpeg", "gif", "webp", "bmp"]);
|
|
19
|
+
/** Dirs never worth scanning for agent screenshots (noise / huge). */
|
|
20
|
+
const IGNORE_DIRS = new Set([
|
|
21
|
+
".git",
|
|
22
|
+
"node_modules",
|
|
23
|
+
"dist",
|
|
24
|
+
"build",
|
|
25
|
+
".next",
|
|
26
|
+
"out",
|
|
27
|
+
"target",
|
|
28
|
+
"vendor",
|
|
29
|
+
".venv",
|
|
30
|
+
"venv",
|
|
31
|
+
"__pycache__",
|
|
32
|
+
".cache",
|
|
33
|
+
"coverage",
|
|
34
|
+
]);
|
|
35
|
+
const MAX_DEPTH = 8;
|
|
36
|
+
const MAX_FILES = 5000;
|
|
37
|
+
/** Snapshot image files under `root` (worktree-relative keys). */
|
|
38
|
+
export async function scanWorktreeImages(root) {
|
|
39
|
+
const out = new Map();
|
|
40
|
+
await walk(root, root, 0, out);
|
|
41
|
+
return out;
|
|
42
|
+
}
|
|
43
|
+
async function walk(root, dir, depth, out) {
|
|
44
|
+
if (depth > MAX_DEPTH || out.size >= MAX_FILES)
|
|
45
|
+
return;
|
|
46
|
+
let entries;
|
|
47
|
+
try {
|
|
48
|
+
entries = await readdir(dir, { withFileTypes: true });
|
|
49
|
+
}
|
|
50
|
+
catch {
|
|
51
|
+
return; // unreadable dir — skip
|
|
52
|
+
}
|
|
53
|
+
for (const entry of entries) {
|
|
54
|
+
if (out.size >= MAX_FILES)
|
|
55
|
+
return;
|
|
56
|
+
const name = entry.name;
|
|
57
|
+
const full = join(dir, name);
|
|
58
|
+
if (entry.isDirectory()) {
|
|
59
|
+
if (IGNORE_DIRS.has(name) || name.startsWith("."))
|
|
60
|
+
continue;
|
|
61
|
+
await walk(root, full, depth + 1, out);
|
|
62
|
+
continue;
|
|
63
|
+
}
|
|
64
|
+
if (!entry.isFile())
|
|
65
|
+
continue;
|
|
66
|
+
const ext = name.split(".").pop()?.toLowerCase() ?? "";
|
|
67
|
+
if (!IMAGE_EXTS.has(ext))
|
|
68
|
+
continue;
|
|
69
|
+
try {
|
|
70
|
+
const st = await stat(full);
|
|
71
|
+
out.set(toPosix(relative(root, full)), { mtimeMs: st.mtimeMs, size: st.size });
|
|
72
|
+
}
|
|
73
|
+
catch {
|
|
74
|
+
/* vanished between readdir and stat — ignore */
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Image files that are new or modified between `before` and `after` — i.e.
|
|
80
|
+
* written/touched during the turn. Returns their worktree-relative paths.
|
|
81
|
+
*/
|
|
82
|
+
export function diffSnapshots(before, after) {
|
|
83
|
+
const changed = [];
|
|
84
|
+
for (const [path, cur] of after) {
|
|
85
|
+
const prev = before.get(path);
|
|
86
|
+
if (!prev || prev.mtimeMs !== cur.mtimeMs || prev.size !== cur.size) {
|
|
87
|
+
changed.push(path);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return changed;
|
|
91
|
+
}
|
|
92
|
+
function toPosix(p) {
|
|
93
|
+
return p.split("\\").join("/");
|
|
94
|
+
}
|
|
95
|
+
const EXT_MIME = {
|
|
96
|
+
png: "image/png",
|
|
97
|
+
jpg: "image/jpeg",
|
|
98
|
+
jpeg: "image/jpeg",
|
|
99
|
+
gif: "image/gif",
|
|
100
|
+
webp: "image/webp",
|
|
101
|
+
bmp: "image/bmp",
|
|
102
|
+
};
|
|
103
|
+
/** Image MIME type for a path by extension, or null if not a supported image. */
|
|
104
|
+
export function imageMimeFor(path) {
|
|
105
|
+
const ext = path.split(".").pop()?.toLowerCase() ?? "";
|
|
106
|
+
return EXT_MIME[ext] ?? null;
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=media-watch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media-watch.js","sourceRoot":"","sources":["../../src/media-watch.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MediaStore — durable, content-addressed store for agent-produced images.
|
|
3
|
+
*
|
|
4
|
+
* When an agent surfaces an image (a screenshot returned by a tool, or a PNG it
|
|
5
|
+
* wrote into the worktree), the daemon persists the bytes here and broadcasts a
|
|
6
|
+
* lightweight `event.assistant_image` carrying only metadata (id + mediaType +
|
|
7
|
+
* size). Clients fetch the bytes on demand (`media.get`, or the web app's
|
|
8
|
+
* immutable `/media/<ws>/<id>` HTTP endpoint), so multi-MB screenshots never
|
|
9
|
+
* bloat event frames, the chatlog, or the E2E-sealed channel.
|
|
10
|
+
*
|
|
11
|
+
* Files live under `~/.immediacy/media/<wsId>/<id>.<ext>` (override via
|
|
12
|
+
* MEDIA_DIR), mirroring the per-workspace partitioning of the chatlog — so
|
|
13
|
+
* removing a workspace's media is a single directory delete, and the orphan
|
|
14
|
+
* sweep can reconcile against the live workspace set.
|
|
15
|
+
*
|
|
16
|
+
* The id is the sha256 of the bytes, so identical images collapse to one file
|
|
17
|
+
* and the id is a stable, immutable cache key clients can persist forever.
|
|
18
|
+
*/
|
|
19
|
+
/** Metadata for one stored image (no bytes) — what the wire event carries. */
|
|
20
|
+
export interface MediaMeta {
|
|
21
|
+
id: string;
|
|
22
|
+
name: string;
|
|
23
|
+
mediaType: string;
|
|
24
|
+
size: number;
|
|
25
|
+
}
|
|
26
|
+
/** Bytes for one stored image, as returned by a `media.get` fetch. */
|
|
27
|
+
export interface MediaBytes {
|
|
28
|
+
mediaType: string;
|
|
29
|
+
/** base64-encoded, no data: URI prefix. */
|
|
30
|
+
data: string;
|
|
31
|
+
}
|
|
32
|
+
export declare class MediaStore {
|
|
33
|
+
private dir;
|
|
34
|
+
constructor(dir?: string);
|
|
35
|
+
private wsDir;
|
|
36
|
+
/**
|
|
37
|
+
* Persist an image for a workspace and return its metadata. Idempotent: the
|
|
38
|
+
* same bytes hash to the same id, so a re-emitted screenshot is written once.
|
|
39
|
+
* `name` is a display hint (e.g. a relative worktree path for a file-sourced
|
|
40
|
+
* image); a default is synthesized from the id + type otherwise.
|
|
41
|
+
*/
|
|
42
|
+
put(ws: string, mediaType: string, base64: string, name?: string): Promise<MediaMeta>;
|
|
43
|
+
/** Fetch stored bytes by id (base64), or null if absent. */
|
|
44
|
+
get(ws: string, id: string): Promise<MediaBytes | null>;
|
|
45
|
+
/** Drop all media for a workspace (Tier-1 cleanup on workspace removal). */
|
|
46
|
+
remove(ws: string): Promise<void>;
|
|
47
|
+
/** Workspace ids that currently have a media directory (for the orphan sweep). */
|
|
48
|
+
listWorkspaces(): Promise<string[]>;
|
|
49
|
+
/**
|
|
50
|
+
* Tier-2 orphan sweep: delete media dirs whose workspace id is not in `live`.
|
|
51
|
+
* Returns the number of workspace dirs removed. Best-effort; never throws.
|
|
52
|
+
*/
|
|
53
|
+
sweepOrphans(live: Set<string>): Promise<number>;
|
|
54
|
+
}
|