@dorokuma/herdsman 0.9.0 → 0.11.5
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.ja.md +4 -2
- package/README.md +5 -3
- package/dist/src/agent-history/antigravity-proto.js +1 -1
- package/dist/src/agent-history/antigravity-proto.js.map +1 -1
- package/dist/src/agent-history/antigravity-reader.d.ts +13 -1
- package/dist/src/agent-history/antigravity-reader.d.ts.map +1 -1
- package/dist/src/agent-history/antigravity-reader.js +22 -1
- package/dist/src/agent-history/antigravity-reader.js.map +1 -1
- package/dist/src/agent-history/discovery.d.ts +8 -2
- package/dist/src/agent-history/discovery.d.ts.map +1 -1
- package/dist/src/agent-history/discovery.js +89 -9
- package/dist/src/agent-history/discovery.js.map +1 -1
- package/dist/src/agent-history/readers.d.ts +15 -1
- package/dist/src/agent-history/readers.d.ts.map +1 -1
- package/dist/src/agent-history/readers.js +77 -31
- package/dist/src/agent-history/readers.js.map +1 -1
- package/dist/src/agent-history/service.d.ts +4 -2
- package/dist/src/agent-history/service.d.ts.map +1 -1
- package/dist/src/agent-history/service.js +22 -22
- package/dist/src/agent-history/service.js.map +1 -1
- package/dist/src/agent-history/source-fingerprint.d.ts +7 -0
- package/dist/src/agent-history/source-fingerprint.d.ts.map +1 -0
- package/dist/src/agent-history/source-fingerprint.js +26 -0
- package/dist/src/agent-history/source-fingerprint.js.map +1 -0
- package/dist/src/agent-history/text.d.ts.map +1 -1
- package/dist/src/agent-history/text.js +5 -0
- package/dist/src/agent-history/text.js.map +1 -1
- package/dist/src/cli/herdsman.d.ts.map +1 -1
- package/dist/src/cli/herdsman.js +31 -9
- package/dist/src/cli/herdsman.js.map +1 -1
- package/dist/src/daemon/agent-event-reconciler.d.ts +25 -4
- package/dist/src/daemon/agent-event-reconciler.d.ts.map +1 -1
- package/dist/src/daemon/agent-event-reconciler.js +84 -6
- package/dist/src/daemon/agent-event-reconciler.js.map +1 -1
- package/dist/src/daemon/herdr-session-watch-manager.d.ts +1 -0
- package/dist/src/daemon/herdr-session-watch-manager.d.ts.map +1 -1
- package/dist/src/daemon/herdr-session-watch-manager.js +176 -55
- package/dist/src/daemon/herdr-session-watch-manager.js.map +1 -1
- package/dist/src/daemon/observability-server.d.ts +3 -0
- package/dist/src/daemon/observability-server.d.ts.map +1 -1
- package/dist/src/daemon/observability-server.js +73 -24
- package/dist/src/daemon/observability-server.js.map +1 -1
- package/dist/src/daemon/process-manager.d.ts +41 -2
- package/dist/src/daemon/process-manager.d.ts.map +1 -1
- package/dist/src/daemon/process-manager.js +340 -19
- package/dist/src/daemon/process-manager.js.map +1 -1
- package/dist/src/daemon/service.d.ts +46 -0
- package/dist/src/daemon/service.d.ts.map +1 -1
- package/dist/src/daemon/service.js +172 -12
- package/dist/src/daemon/service.js.map +1 -1
- package/dist/src/db/agent-events.d.ts +34 -1
- package/dist/src/db/agent-events.d.ts.map +1 -1
- package/dist/src/db/agent-events.js +168 -28
- package/dist/src/db/agent-events.js.map +1 -1
- package/dist/src/db/agent-history-cache.d.ts +4 -0
- package/dist/src/db/agent-history-cache.d.ts.map +1 -1
- package/dist/src/db/agent-history-cache.js +27 -0
- package/dist/src/db/agent-history-cache.js.map +1 -1
- package/dist/src/db/agent-orchestrator-scopes.d.ts +8 -0
- package/dist/src/db/agent-orchestrator-scopes.d.ts.map +1 -1
- package/dist/src/db/agent-orchestrator-scopes.js +13 -0
- package/dist/src/db/agent-orchestrator-scopes.js.map +1 -1
- package/dist/src/db/agents.d.ts +44 -0
- package/dist/src/db/agents.d.ts.map +1 -1
- package/dist/src/db/agents.js +91 -5
- package/dist/src/db/agents.js.map +1 -1
- package/dist/src/db/client.d.ts +1 -0
- package/dist/src/db/client.d.ts.map +1 -1
- package/dist/src/db/client.js +12 -0
- package/dist/src/db/client.js.map +1 -1
- package/dist/src/db/schema.d.ts +391 -0
- package/dist/src/db/schema.d.ts.map +1 -1
- package/dist/src/db/schema.js +34 -0
- package/dist/src/db/schema.js.map +1 -1
- package/dist/src/db/status-event-plans.d.ts +62 -0
- package/dist/src/db/status-event-plans.d.ts.map +1 -0
- package/dist/src/db/status-event-plans.js +147 -0
- package/dist/src/db/status-event-plans.js.map +1 -0
- package/dist/src/herdr/pane-identity-resolver.d.ts +4 -0
- package/dist/src/herdr/pane-identity-resolver.d.ts.map +1 -1
- package/dist/src/herdr/pane-identity-resolver.js +13 -1
- package/dist/src/herdr/pane-identity-resolver.js.map +1 -1
- package/dist/src/herdr/socket-client.d.ts +2 -0
- package/dist/src/herdr/socket-client.d.ts.map +1 -1
- package/dist/src/herdr/socket-client.js +64 -20
- package/dist/src/herdr/socket-client.js.map +1 -1
- package/dist/src/observability/agent-context-service.d.ts +17 -1
- package/dist/src/observability/agent-context-service.d.ts.map +1 -1
- package/dist/src/observability/agent-context-service.js +85 -21
- package/dist/src/observability/agent-context-service.js.map +1 -1
- package/dist/src/observability/agent-index-service.d.ts +47 -2
- package/dist/src/observability/agent-index-service.d.ts.map +1 -1
- package/dist/src/observability/agent-index-service.js +1125 -115
- package/dist/src/observability/agent-index-service.js.map +1 -1
- package/dist/src/observability/agent-orchestrator-service.d.ts.map +1 -1
- package/dist/src/observability/agent-orchestrator-service.js +34 -12
- package/dist/src/observability/agent-orchestrator-service.js.map +1 -1
- package/dist/src/observability/contracts.d.ts +2 -1
- package/dist/src/observability/contracts.d.ts.map +1 -1
- package/dist/src/observability/contracts.js.map +1 -1
- package/dist/src/observability/interactive-pi.d.ts +1 -1
- package/dist/src/observability/interactive-pi.d.ts.map +1 -1
- package/dist/src/observability/interactive-pi.js +1 -1
- package/dist/src/observability/interactive-pi.js.map +1 -1
- package/dist/src/observability/schemas.d.ts +1 -0
- package/dist/src/observability/schemas.d.ts.map +1 -1
- package/dist/src/observability/schemas.js +1 -0
- package/dist/src/observability/schemas.js.map +1 -1
- package/dist/src/observability/turn-completion.d.ts +2 -1
- package/dist/src/observability/turn-completion.d.ts.map +1 -1
- package/dist/src/observability/turn-completion.js +10 -1
- package/dist/src/observability/turn-completion.js.map +1 -1
- package/dist/src/shared/unix-peercred.d.ts +14 -0
- package/dist/src/shared/unix-peercred.d.ts.map +1 -0
- package/dist/src/shared/unix-peercred.js +144 -0
- package/dist/src/shared/unix-peercred.js.map +1 -0
- package/drizzle/0008_pane_tombstones.sql +9 -0
- package/drizzle/0009_high_lake.sql +24 -0
- package/drizzle/meta/0008_snapshot.json +823 -0
- package/drizzle/meta/0009_snapshot.json +975 -0
- package/drizzle/meta/_journal.json +14 -0
- package/package.json +24 -22
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readers.js","sourceRoot":"","sources":["../../../src/agent-history/readers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"readers.js","sourceRoot":"","sources":["../../../src/agent-history/readers.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import type { AgentHistoryCacheStore } from "../db/agent-history-cache.js";
|
|
|
2
2
|
import type { AgentHistoryMessage, AgentHistoryRef, AgentHistorySourceFingerprint, CompactAgentHistory } from "../observability/contracts.js";
|
|
3
3
|
import { type AgentHistoryLookupInput } from "./discovery.js";
|
|
4
4
|
import type { AgentHistoryReader } from "./readers.js";
|
|
5
|
-
export declare const agentHistoryFormatterVersion = "agent-history-
|
|
5
|
+
export declare const agentHistoryFormatterVersion = "agent-history-v3";
|
|
6
6
|
type CacheLike = Pick<AgentHistoryCacheStore, "getFresh" | "put">;
|
|
7
7
|
type Discovery = (input: AgentHistoryLookupInput) => Promise<AgentHistoryRef | null>;
|
|
8
8
|
export type ResolvedCompactAgentHistory = {
|
|
@@ -18,7 +18,9 @@ export declare function createAgentHistoryService(options?: {
|
|
|
18
18
|
}): {
|
|
19
19
|
discover: Discovery;
|
|
20
20
|
getCompactHistory: (input: AgentHistoryLookupInput) => Promise<CompactAgentHistory>;
|
|
21
|
-
readCompactRef: (historyRef: AgentHistoryRef
|
|
21
|
+
readCompactRef: (historyRef: AgentHistoryRef, readCompactOptions?: {
|
|
22
|
+
forceRefresh?: boolean | undefined;
|
|
23
|
+
}) => Promise<ResolvedCompactAgentHistory>;
|
|
22
24
|
resolveCompactHistory: (input: AgentHistoryLookupInput, resolveOptions?: {
|
|
23
25
|
forceDiscovery?: boolean;
|
|
24
26
|
forceRefresh?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/agent-history/service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,KAAK,EACV,mBAAmB,EACnB,eAAe,EACf,6BAA6B,EAC7B,mBAAmB,EACpB,MAAM,8BAA8B,CAAC;AAItC,OAAO,EAAE,KAAK,uBAAuB,EAAwB,MAAM,gBAAgB,CAAC;AAKpF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/agent-history/service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,KAAK,EACV,mBAAmB,EACnB,eAAe,EACf,6BAA6B,EAC7B,mBAAmB,EACpB,MAAM,8BAA8B,CAAC;AAItC,OAAO,EAAE,KAAK,uBAAuB,EAAwB,MAAM,gBAAgB,CAAC;AAKpF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGvD,eAAO,MAAM,4BAA4B,qBAAqB,CAAC;AAE/D,KAAK,SAAS,GAAG,IAAI,CAAC,sBAAsB,EAAE,UAAU,GAAG,KAAK,CAAC,CAAC;AAClE,KAAK,SAAS,GAAG,CAAC,KAAK,EAAE,uBAAuB,KAAK,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;AAErF,MAAM,MAAM,2BAA2B,GAAG;IACxC,cAAc,EAAE,mBAAmB,CAAC;IACpC,UAAU,EAAE,eAAe,GAAG,IAAI,CAAC;IACnC,iBAAiB,EAAE,6BAA6B,GAAG,IAAI,CAAC;CACzD,CAAC;AAEF,wBAAgB,yBAAyB,CACvC,OAAO,GAAE;IACP,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAC3B;;+BAoI6B,uBAAuB,KAAG,OAAO,CAAC,mBAAmB,CAAC;iCAhH3E,eAAe,uBACP;QAAE,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAAE,KACzD,OAAO,CAAC,2BAA2B,CAAC;mCAsD9B,uBAAuB,mBACd;QACd,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,YAAY,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;KACvC,KACA,OAAO,CAAC,2BAA2B,CAAC;gBAuD5B,uBAAuB,eACjB;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,eAAe,GAAG,IAAI,CAAA;KAAE,GACpE,OAAO,CAAC;QAAE,UAAU,EAAE,eAAe,GAAG,IAAI,CAAC;QAAC,QAAQ,EAAE,mBAAmB,EAAE,CAAA;KAAE,CAAC;EAUtF;AAUD,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE/E,wBAAgB,qBAAqB,CAAC,UAAU,EAAE;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,MAAM,CAGT;AAED,wBAAgB,mBAAmB,CAAC,MAAM,GAAE,MAAM,GAAG,IAAW,GAAG,mBAAmB,CAUrF"}
|
|
@@ -7,7 +7,8 @@ import { GeminiHistoryReader } from "./gemini-reader.js";
|
|
|
7
7
|
import { GrokHistoryReader } from "./grok-reader.js";
|
|
8
8
|
import { OpenCodeHistoryReader } from "./opencode-reader.js";
|
|
9
9
|
import { PiHistoryReader } from "./pi-reader.js";
|
|
10
|
-
|
|
10
|
+
import { statSourceFingerprint } from "./source-fingerprint.js";
|
|
11
|
+
export const agentHistoryFormatterVersion = "agent-history-v3";
|
|
11
12
|
export function createAgentHistoryService(options = {}) {
|
|
12
13
|
const readers = options.readers ?? [
|
|
13
14
|
new PiHistoryReader(),
|
|
@@ -23,28 +24,25 @@ export function createAgentHistoryService(options = {}) {
|
|
|
23
24
|
...input,
|
|
24
25
|
...(options.homeDir ? { homeDir: options.homeDir } : {}),
|
|
25
26
|
}));
|
|
26
|
-
async function readCompactRef(historyRef) {
|
|
27
|
+
async function readCompactRef(historyRef, readCompactOptions = {}) {
|
|
27
28
|
const reader = readers.find((candidate) => candidate.canRead(historyRef));
|
|
28
29
|
if (!reader)
|
|
29
30
|
return unresolvedCompactHistory(historyRef.source);
|
|
30
31
|
const path = historyRef.path ?? historyRef.value;
|
|
31
|
-
const
|
|
32
|
-
if (!
|
|
32
|
+
const sourceFingerprint = await statSourceFingerprint(path);
|
|
33
|
+
if (!sourceFingerprint)
|
|
33
34
|
return unresolvedCompactHistory(historyRef.source);
|
|
34
|
-
const sourceFingerprint = {
|
|
35
|
-
mtimeMs: Math.trunc(stats.mtimeMs),
|
|
36
|
-
path,
|
|
37
|
-
size: stats.size,
|
|
38
|
-
};
|
|
39
35
|
const cacheSourcePath = cacheSourcePathForRef(historyRef);
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
36
|
+
if (!readCompactOptions.forceRefresh) {
|
|
37
|
+
const cached = options.cache?.getFresh({
|
|
38
|
+
formatterVersion: agentHistoryFormatterVersion,
|
|
39
|
+
sourceMtimeMs: sourceFingerprint.mtimeMs,
|
|
40
|
+
sourcePath: cacheSourcePath,
|
|
41
|
+
sourceSize: sourceFingerprint.size,
|
|
42
|
+
});
|
|
43
|
+
if (cached && cached.compactHistory.lastAssistantMessage !== null) {
|
|
44
|
+
return { compactHistory: cached.compactHistory, historyRef, sourceFingerprint };
|
|
45
|
+
}
|
|
48
46
|
}
|
|
49
47
|
try {
|
|
50
48
|
const compactHistory = await reader.readCompact(historyRef);
|
|
@@ -79,10 +77,10 @@ export function createAgentHistoryService(options = {}) {
|
|
|
79
77
|
}
|
|
80
78
|
}
|
|
81
79
|
async function resolveCompactHistory(input, resolveOptions = {}) {
|
|
82
|
-
if (!resolveOptions.
|
|
83
|
-
resolveOptions.preferredRef
|
|
84
|
-
|
|
85
|
-
|
|
80
|
+
if (resolveOptions.preferredRef && !resolveOptions.forceDiscovery) {
|
|
81
|
+
const preferred = await readCompactRef(resolveOptions.preferredRef, resolveOptions.forceRefresh !== undefined
|
|
82
|
+
? { forceRefresh: resolveOptions.forceRefresh }
|
|
83
|
+
: {});
|
|
86
84
|
if (preferred.historyRef)
|
|
87
85
|
return preferred;
|
|
88
86
|
}
|
|
@@ -91,7 +89,9 @@ export function createAgentHistoryService(options = {}) {
|
|
|
91
89
|
console.warn("Herdsman agent history discovery returned no reference", input);
|
|
92
90
|
return unresolvedCompactHistory();
|
|
93
91
|
}
|
|
94
|
-
return readCompactRef(historyRef
|
|
92
|
+
return readCompactRef(historyRef, resolveOptions.forceRefresh !== undefined
|
|
93
|
+
? { forceRefresh: resolveOptions.forceRefresh }
|
|
94
|
+
: {});
|
|
95
95
|
}
|
|
96
96
|
async function readRef(historyRef, readOptions) {
|
|
97
97
|
const reader = readers.find((candidate) => candidate.canRead(historyRef));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/agent-history/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAQxC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAgC,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/agent-history/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { AgentHistorySourceFingerprint } from "../observability/contracts.js";
|
|
2
|
+
/**
|
|
3
|
+
* Computes a fingerprint for an agent history file and any associated SQLite sidecars (-wal, -shm).
|
|
4
|
+
* Missing sidecars are treated as mtimeMs=0, size=0 (fail-open), matching legacy single-file values.
|
|
5
|
+
*/
|
|
6
|
+
export declare function statSourceFingerprint(path: string): Promise<AgentHistorySourceFingerprint | null>;
|
|
7
|
+
//# sourceMappingURL=source-fingerprint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-fingerprint.d.ts","sourceRoot":"","sources":["../../../src/agent-history/source-fingerprint.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAElF;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,6BAA6B,GAAG,IAAI,CAAC,CAsB/C"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { stat } from "node:fs/promises";
|
|
2
|
+
/**
|
|
3
|
+
* Computes a fingerprint for an agent history file and any associated SQLite sidecars (-wal, -shm).
|
|
4
|
+
* Missing sidecars are treated as mtimeMs=0, size=0 (fail-open), matching legacy single-file values.
|
|
5
|
+
*/
|
|
6
|
+
export async function statSourceFingerprint(path) {
|
|
7
|
+
const main = await stat(path).catch(() => null);
|
|
8
|
+
if (!main)
|
|
9
|
+
return null;
|
|
10
|
+
const [wal, shm] = await Promise.all([
|
|
11
|
+
stat(`${path}-wal`).catch(() => null),
|
|
12
|
+
stat(`${path}-shm`).catch(() => null),
|
|
13
|
+
]);
|
|
14
|
+
const walMtime = wal ? Math.trunc(wal.mtimeMs) : 0;
|
|
15
|
+
const walSize = wal ? wal.size : 0;
|
|
16
|
+
const shmMtime = shm ? Math.trunc(shm.mtimeMs) : 0;
|
|
17
|
+
const shmSize = shm ? shm.size : 0;
|
|
18
|
+
const mtimeMs = Math.trunc(main.mtimeMs) + walMtime * 3 + shmMtime * 7;
|
|
19
|
+
const size = main.size + walSize + shmSize;
|
|
20
|
+
return {
|
|
21
|
+
mtimeMs,
|
|
22
|
+
path,
|
|
23
|
+
size,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=source-fingerprint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"source-fingerprint.js","sourceRoot":"","sources":["../../../src/agent-history/source-fingerprint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAGxC;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,IAAY;IAEZ,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAChD,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACnC,IAAI,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;QACrC,IAAI,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;KACtC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAEnC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,QAAQ,GAAG,CAAC,GAAG,QAAQ,GAAG,CAAC,CAAC;IACvE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,OAAO,GAAG,OAAO,CAAC;IAE3C,OAAO;QACL,OAAO;QACP,IAAI;QACJ,IAAI;KACL,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../src/agent-history/text.ts"],"names":[],"mappings":"AAAA,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAgB/D;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../src/agent-history/text.ts"],"names":[],"mappings":"AAAA,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAgB/D;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAsBhF;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAIrE;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAErF;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAI3D;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEvD"}
|
|
@@ -30,6 +30,7 @@ export function sanitizeText(value) {
|
|
|
30
30
|
let redacted = false;
|
|
31
31
|
for (const pattern of [
|
|
32
32
|
/(Authorization:\s*Bearer\s+)[^\s]+/gi,
|
|
33
|
+
/\b(Bearer\s+)[A-Za-z0-9._\-+=/]+/gi,
|
|
33
34
|
/\b(token=)[^\s&]+/gi,
|
|
34
35
|
/\b(password=)[^\s&]+/gi,
|
|
35
36
|
/\b(secret=)[^\s&]+/gi,
|
|
@@ -40,6 +41,10 @@ export function sanitizeText(value) {
|
|
|
40
41
|
return `${prefix}[REDACTED]`;
|
|
41
42
|
});
|
|
42
43
|
}
|
|
44
|
+
text = text.replace(/\bsk-[A-Za-z0-9_-]{8,}/g, () => {
|
|
45
|
+
redacted = true;
|
|
46
|
+
return "sk-[REDACTED]";
|
|
47
|
+
});
|
|
43
48
|
return { redacted, text };
|
|
44
49
|
}
|
|
45
50
|
export function truncateChars(value, maxChars) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../../src/agent-history/text.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../../src/agent-history/text.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"herdsman.d.ts","sourceRoot":"","sources":["../../../src/cli/herdsman.ts"],"names":[],"mappings":";AAMA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"herdsman.d.ts","sourceRoot":"","sources":["../../../src/cli/herdsman.ts"],"names":[],"mappings":";AAMA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAa5D,KAAK,YAAY,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE5D,KAAK,UAAU,GAAG;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,UAAU,GAClB;IAAE,MAAM,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAA;CAAE,GAC3C,CAAC;IAAE,OAAO,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG,UAAU,CAAC,GACvD,CAAC;IAAE,OAAO,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,UAAU,CAAC,GACtE,CAAC;IAAE,OAAO,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,UAAU,CAAC,GACvF;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAExB,KAAK,aAAa,GAAG,IAAI,CAAC,sBAAsB,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC;AAEvE,KAAK,UAAU,GAAG;IAChB,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACpD,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EAAE,EACd,WAAW,GAAE,MAAM,CAAC,UAAwB,GAC3C,UAAU,CAkBZ;AAkED,wBAAgB,QAAQ,IAAI,MAAM,CAQjC;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAaxF;AA0MD,wBAAgB,wBAAwB;;;;EAKvC;AAuCD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE;IACtC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC,GAAG,OAAO,CAMV"}
|
package/dist/src/cli/herdsman.js
CHANGED
|
@@ -5,7 +5,7 @@ import { argv, exit } from "node:process";
|
|
|
5
5
|
import { fileURLToPath } from "node:url";
|
|
6
6
|
import { resolveRuntime, runtimePathsFromRecordOrDefault } from "../config/runtime.js";
|
|
7
7
|
import { ObservabilityRpcClient } from "../daemon/client.js";
|
|
8
|
-
import { getDaemonStatus, readDaemonRuntimeRecord, startDaemonProcess, stopDaemonProcess, } from "../daemon/process-manager.js";
|
|
8
|
+
import { getDaemonStatus, readDaemonRuntimeRecord, startDaemonProcess, stopDaemonProcess, withDaemonLock, } from "../daemon/process-manager.js";
|
|
9
9
|
const CURRENT_HERDR_WORKSPACE_ERROR = "agent command requires HERDR_ENV=1 with HERDR_WORKSPACE_ID, --workspace <id>, --session <name>, or --all.";
|
|
10
10
|
export function parseCliArgs(args, environment = process.env) {
|
|
11
11
|
const [command, ...rest] = args;
|
|
@@ -224,6 +224,7 @@ async function main() {
|
|
|
224
224
|
});
|
|
225
225
|
}
|
|
226
226
|
async function runDaemonCommand(command, runtime) {
|
|
227
|
+
const lockPath = `${runtime.paths.pidPath}.lock`;
|
|
227
228
|
if (command.action === "status") {
|
|
228
229
|
console.log(JSON.stringify(await getDaemonStatus({
|
|
229
230
|
pidPath: runtime.paths.pidPath,
|
|
@@ -232,21 +233,42 @@ async function runDaemonCommand(command, runtime) {
|
|
|
232
233
|
return;
|
|
233
234
|
}
|
|
234
235
|
if (command.action === "stop") {
|
|
235
|
-
|
|
236
|
+
const result = await withDaemonLock(lockPath, () => stopDaemonProcess({
|
|
236
237
|
pidPath: runtime.paths.pidPath,
|
|
237
238
|
socketPath: runtime.paths.socketPath,
|
|
238
239
|
timeoutMs: 10_000,
|
|
239
|
-
}))
|
|
240
|
+
}));
|
|
241
|
+
console.log(JSON.stringify(result));
|
|
240
242
|
return;
|
|
241
243
|
}
|
|
242
244
|
if (command.action === "restart") {
|
|
243
|
-
await
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
245
|
+
const result = await withDaemonLock(lockPath, async () => {
|
|
246
|
+
await stopDaemonProcess({
|
|
247
|
+
pidPath: runtime.paths.pidPath,
|
|
248
|
+
socketPath: runtime.paths.socketPath,
|
|
249
|
+
timeoutMs: 10_000,
|
|
250
|
+
});
|
|
251
|
+
return await startDaemonProcess({
|
|
252
|
+
entrypointPath: resolve(dirname(fileURLToPath(import.meta.url)), "herdsman-daemon.js"),
|
|
253
|
+
env: runtime.environment,
|
|
254
|
+
logPath: runtime.paths.logPath,
|
|
255
|
+
nodePath: process.execPath,
|
|
256
|
+
pidPath: runtime.paths.pidPath,
|
|
257
|
+
runtimeRecord: {
|
|
258
|
+
dbPath: runtime.paths.dbPath,
|
|
259
|
+
homeDir: runtime.homeDir,
|
|
260
|
+
logPath: runtime.paths.logPath,
|
|
261
|
+
pidPath: runtime.paths.pidPath,
|
|
262
|
+
socketPath: runtime.paths.socketPath,
|
|
263
|
+
},
|
|
264
|
+
runtimeRecordPath: runtime.paths.runtimeRecordPath,
|
|
265
|
+
socketPath: runtime.paths.socketPath,
|
|
266
|
+
});
|
|
247
267
|
});
|
|
268
|
+
console.log(JSON.stringify({ ...result, socketPath: runtime.paths.socketPath }));
|
|
269
|
+
return;
|
|
248
270
|
}
|
|
249
|
-
const result = await startDaemonProcess({
|
|
271
|
+
const result = await withDaemonLock(lockPath, () => startDaemonProcess({
|
|
250
272
|
entrypointPath: resolve(dirname(fileURLToPath(import.meta.url)), "herdsman-daemon.js"),
|
|
251
273
|
env: runtime.environment,
|
|
252
274
|
logPath: runtime.paths.logPath,
|
|
@@ -261,7 +283,7 @@ async function runDaemonCommand(command, runtime) {
|
|
|
261
283
|
},
|
|
262
284
|
runtimeRecordPath: runtime.paths.runtimeRecordPath,
|
|
263
285
|
socketPath: runtime.paths.socketPath,
|
|
264
|
-
});
|
|
286
|
+
}));
|
|
265
287
|
console.log(JSON.stringify({ ...result, socketPath: runtime.paths.socketPath }));
|
|
266
288
|
}
|
|
267
289
|
export function resolveRuntimeForCommand() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"herdsman.js","sourceRoot":"","sources":["../../../src/cli/herdsman.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"herdsman.js","sourceRoot":"","sources":["../../../src/cli/herdsman.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,+BAA+B,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,GACf,MAAM,6BAA6B,CAAC;AAGrC,MAAM,6BAA6B,GACjC,2GAA2G,CAAC;AAyB9G,MAAM,UAAU,YAAY,CAC1B,IAAc,EACd,cAAiC,OAAO,CAAC,GAAG;IAE5C,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAChC,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QAC/E,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAC7B,CAAC;IAED,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,MAAM,CAAC,MAAM,GAAG,QAAQ,EAAE,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC;QAC3C,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,MAAM,EAAE,CAAC,CAAC;QACjF,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;IACvC,CAAC;IAED,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,OAAO,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAc,EAAE,WAA8B;IACvE,MAAM,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IACnC,IAAI,CAAC,UAAU,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QAC3F,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAC7B,CAAC;IACD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACtC,MAAM,gBAAgB,GAAG,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACpD,MAAM,aAAa,GAAe;QAChC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxC,CAAC;IAEF,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC1B,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACpC,WAAW,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO;YACL,OAAO,EAAE,YAAY;YACrB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;YACtE,IAAI;SACL,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;QACzB,MAAM,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC5D,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO;YACL,OAAO,EAAE,WAAW;YACpB,GAAG,eAAe,CAAC,aAAa,EAAE,WAAW,CAAC;YAC9C,IAAI;YACJ,MAAM;SACP,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC1B,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC/C,MAAM,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC7D,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1D,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC,EAAE,CAAC;YAClF,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QACD,OAAO;YACL,OAAO,EAAE,YAAY;YACrB,GAAG,eAAe,CAAC,aAAa,EAAE,WAAW,CAAC;YAC9C,IAAI;YACJ,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,MAAM;SACP,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,0BAA0B,UAAU,EAAE,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,eAAe,CAAC,KAAiB,EAAE,WAA8B;IACxE,IAAI,KAAK,CAAC,gBAAgB,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IAC3E,IAAI,WAAW,CAAC,SAAS,KAAK,GAAG,IAAI,WAAW,CAAC,kBAAkB,EAAE,CAAC;QACpE,OAAO,EAAE,WAAW,EAAE,WAAW,CAAC,kBAAkB,EAAE,CAAC;IACzD,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,OAAO;;;;;;CAMR,CAAC;AACF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAmB,EAAE,IAAgB;IACvE,IAAI,OAAO,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxB,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,OAAO,KAAK,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACnD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACzD,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;YAAS,CAAC;QACT,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,OAA4D,EAC5D,MAAqB;IAErB,IAAI,OAAO,CAAC,OAAO,KAAK,YAAY,EAAE,CAAC;QACrC,OAAO,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,OAAO,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;QACpC,OAAO,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1F,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE;QAClC,GAAG,WAAW,CAAC,OAAO,CAAC;QACvB,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,WAAW,CAAC,KAAiB;IACpC,OAAO;QACL,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjE,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,OAAmB,EAAE,MAAe,EAAE,MAA8B;IACvF,IAAI,MAAM,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAC/B,OAAO;IACT,CAAC;IACD,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAmB,EAAE,MAAe;IAC7D,IAAI,OAAO,CAAC,OAAO,KAAK,YAAY;QAClC,OAAO,eAAe,CAAC,MAAsC,CAAC,CAAC;IACjE,IAAI,OAAO,CAAC,OAAO,KAAK,WAAW;QAAE,OAAO,cAAc,CAAC,MAAoC,CAAC,CAAC;IACjG,IAAI,OAAO,CAAC,OAAO,KAAK,YAAY;QAClC,OAAO,eAAe,CAAC,MAAqC,CAAC,CAAC;IAChE,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,eAAe,CAAC,MAAoC;IAC3D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;IACnC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,6BAA6B,CAAC;IAC9D,MAAM,KAAK,GAAG;QACZ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;KACzF,CAAC;IACF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CACR;YACE,KAAK,CAAC,WAAW;YACjB,KAAK,CAAC,IAAI,IAAI,EAAE;YAChB,KAAK,CAAC,KAAK,IAAI,SAAS;YACxB,KAAK,CAAC,MAAM;YACZ,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,IAAI,EAAE,CAAC;YAClD,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,EAAE,IAAI,IAAI,EAAE,CAAC;YACvD,KAAK,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE;SAC9B,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,cAAc,CAAC,MAAkC;IACxD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,IAAI,CAAC,KAAK;QAAE,OAAO,kBAAkB,CAAC;IACtC,OAAO;QACL,SAAS,KAAK,CAAC,IAAI,IAAI,SAAS,EAAE;QAClC,UAAU,KAAK,CAAC,KAAK,IAAI,SAAS,EAAE;QACpC,WAAW,KAAK,CAAC,WAAW,EAAE;QAC9B,SAAS,KAAK,CAAC,MAAM,EAAE;QACvB,aAAa,KAAK,CAAC,UAAU,IAAI,SAAS,EAAE;QAC5C,cAAc,KAAK,CAAC,WAAW,EAAE;QACjC,kBAAkB,KAAK,CAAC,gBAAgB,EAAE;QAC1C,QAAQ,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,aAAa,IAAI,SAAS,EAAE;QACvD,kBAAkB,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE;QAC5G,cAAc,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,IAAI,EAAE,CAAC,EAAE;QAClE,mBAAmB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,EAAE,IAAI,IAAI,EAAE,CAAC,EAAE;QAC5E,cAAc,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;KAC7I,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,eAAe,CAAC,MAAmC;IAC1D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,IAAI,CAAC,KAAK;QAAE,OAAO,kBAAkB,CAAC;IACtC,MAAM,KAAK,GAAG;QACZ,SAAS,KAAK,CAAC,IAAI,IAAI,SAAS,EAAE;QAClC,UAAU,KAAK,CAAC,KAAK,IAAI,SAAS,EAAE;QACpC,SAAS,KAAK,CAAC,MAAM,EAAE;QACvB,EAAE;KACH,CAAC;IACF,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CACR;YACE,OAAO,CAAC,SAAS,IAAI,EAAE;YACvB,OAAO,CAAC,IAAI;YACZ,OAAO,CAAC,QAAQ,IAAI,EAAE;YACtB,OAAO,CAAC,OAAO;gBACb,CAAC,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACjE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;SAC1B,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,OAAO,CAAC,KAAa;IAC5B,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAClD,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,wBAAwB,EAAE,CAAC;IAC3C,IAAI,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACjC,MAAM,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACzC,OAAO;IACT,CAAC;IACD,MAAM,aAAa,CAAC,OAAO,EAAE;QAC3B,OAAO,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,sBAAsB,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;QACpF,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;QACnC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU;KACrC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,OAAmD,EACnD,OAAoD;IAEpD,MAAM,QAAQ,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC;IACjD,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CACZ,MAAM,eAAe,CAAC;YACpB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;YAC9B,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU;SACrC,CAAC,CACH,CACF,CAAC;QACF,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,GAAG,EAAE,CACjD,iBAAiB,CAAC;YAChB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;YAC9B,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU;YACpC,SAAS,EAAE,MAAM;SAClB,CAAC,CACH,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QACpC,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;YACvD,MAAM,iBAAiB,CAAC;gBACtB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;gBAC9B,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU;gBACpC,SAAS,EAAE,MAAM;aAClB,CAAC,CAAC;YACH,OAAO,MAAM,kBAAkB,CAAC;gBAC9B,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC;gBACtF,GAAG,EAAE,OAAO,CAAC,WAAW;gBACxB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;gBAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;gBAC9B,aAAa,EAAE;oBACb,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM;oBAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;oBAC9B,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;oBAC9B,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU;iBACrC;gBACD,iBAAiB,EAAE,OAAO,CAAC,KAAK,CAAC,iBAAiB;gBAClD,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU;aACrC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACjF,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,GAAG,EAAE,CACjD,kBAAkB,CAAC;QACjB,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC;QACtF,GAAG,EAAE,OAAO,CAAC,WAAW;QACxB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;QAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;QAC9B,aAAa,EAAE;YACb,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;YAC9B,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;YAC9B,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU;SACrC;QACD,iBAAiB,EAAE,OAAO,CAAC,KAAK,CAAC,iBAAiB;QAClD,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU;KACrC,CAAC,CACH,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;AACnF,CAAC;AAED,MAAM,UAAU,wBAAwB;IACtC,MAAM,KAAK,GAAG,+BAA+B,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5E,MAAM,MAAM,GAAG,uBAAuB,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAChE,IAAI,MAAM;QAAE,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;IAChF,OAAO,cAAc,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,QAAQ,CAAC,IAAc,EAAE,IAAY;IAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACtB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CAAC,IAAc,EAAE,IAAY;IAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAC9B,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,mBAAmB,CAAC,CAAC;IACxD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACtB,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,IAAc;IACjC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,MAAM,CAAC;AAC5F,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvE,IACE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC1B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;QAChC,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAC;QACjD,OAAO,CAAC,QAAQ,CAAC,iCAAiC,CAAC,EACnD,CAAC;QACD,OAAO,GAAG,OAAO,iEAAiE,CAAC;IACrF,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAIhC;IACC,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC7C,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC;SACxC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;SACjF,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAC9B,QAAQ,CAAC,UAAU,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAwB;IACnD,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,IACE,gBAAgB,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACzB,UAAU;IACV,YAAY,EAAE,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;CACnD,CAAC,EACF,CAAC;IACD,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QAC9B,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;QACrC,IAAI,CAAC,CAAC,CAAC,CAAC;IACV,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,12 +1,35 @@
|
|
|
1
1
|
import type { AgentEventStore } from "../db/agent-events.js";
|
|
2
|
+
import type { AgentHistoryCacheStore } from "../db/agent-history-cache.js";
|
|
2
3
|
import type { AgentOrchestratorScopeStore } from "../db/agent-orchestrator-scopes.js";
|
|
4
|
+
import type { StatusEventPlanStore } from "../db/status-event-plans.js";
|
|
3
5
|
import type { HerdrSessionListEntry, HerdrSessionListRunner } from "../herdr/session-list.js";
|
|
4
6
|
import { HerdrSocketClient } from "../herdr/socket-client.js";
|
|
5
7
|
export declare const RECONCILE_BATCH_LIMIT = 100;
|
|
6
8
|
export declare const RECONCILE_REASON = "PANE_NOT_PRESENT_RECONCILE";
|
|
9
|
+
/** Release rows are ownerless scopes; keep them reclaimable for 30 days, then drop them. */
|
|
10
|
+
export declare const SCOPE_RELEASE_TTL_MS: number;
|
|
11
|
+
/** Terminal agent events (acked/failed) are purged after 7 days in the reconcile cycle. */
|
|
12
|
+
export declare const RECONCILE_SETTLED_TTL_MS: number;
|
|
13
|
+
/** History cache rows are purged after 30 days regardless of whether the source file still exists. */
|
|
14
|
+
export declare const HISTORY_CACHE_TTL_MS: number;
|
|
15
|
+
/**
|
|
16
|
+
* Invalidated events are retained this long so an owner that already received
|
|
17
|
+
* the event can still ack it (`isInvalidatedDelivered`) and advance the cursor.
|
|
18
|
+
* Must be >= REDELIVERY_FRESHNESS_MS; 1 hour covers reconnect delays without
|
|
19
|
+
* letting invalidated rows accumulate.
|
|
20
|
+
*/
|
|
21
|
+
export declare const INVALIDATED_GRACE_MS: number;
|
|
22
|
+
export type AgentEventReconcileResult = {
|
|
23
|
+
historyCacheExpired: number;
|
|
24
|
+
historyCacheMissing: number;
|
|
25
|
+
invalidated: number;
|
|
26
|
+
purged: number;
|
|
27
|
+
released: number;
|
|
28
|
+
};
|
|
7
29
|
export declare class AgentEventReconciler {
|
|
8
30
|
#private;
|
|
9
31
|
constructor(options: {
|
|
32
|
+
agentHistoryCache?: AgentHistoryCacheStore;
|
|
10
33
|
events: AgentEventStore;
|
|
11
34
|
scopes: AgentOrchestratorScopeStore;
|
|
12
35
|
sessionList: HerdrSessionListRunner;
|
|
@@ -15,12 +38,10 @@ export declare class AgentEventReconciler {
|
|
|
15
38
|
herdrSessionName: string;
|
|
16
39
|
terminalId: string;
|
|
17
40
|
}) => boolean;
|
|
41
|
+
statusEventPlans?: StatusEventPlanStore;
|
|
18
42
|
});
|
|
19
43
|
reconcile(options?: {
|
|
20
44
|
releaseStaleOwners?: boolean;
|
|
21
|
-
}): Promise<
|
|
22
|
-
invalidated: number;
|
|
23
|
-
released: number;
|
|
24
|
-
}>;
|
|
45
|
+
}): Promise<AgentEventReconcileResult>;
|
|
25
46
|
}
|
|
26
47
|
//# sourceMappingURL=agent-event-reconciler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-event-reconciler.d.ts","sourceRoot":"","sources":["../../../src/daemon/agent-event-reconciler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent-event-reconciler.d.ts","sourceRoot":"","sources":["../../../src/daemon/agent-event-reconciler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,KAAK,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAE7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAG7D,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,gBAAgB,+BAA+B,CAAC;AAE7D,4FAA4F;AAC5F,eAAO,MAAM,oBAAoB,QAA2B,CAAC;AAE7D,2FAA2F;AAC3F,eAAO,MAAM,wBAAwB,QAA0B,CAAC;AAEhE,sGAAsG;AACtG,eAAO,MAAM,oBAAoB,QAA2B,CAAC;AAE7D;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,QAAiB,CAAC;AAInD,MAAM,MAAM,yBAAyB,GAAG;IACtC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAYF,qBAAa,oBAAoB;;gBASnB,OAAO,EAAE;QACnB,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;QAC3C,MAAM,EAAE,eAAe,CAAC;QACxB,MAAM,EAAE,2BAA2B,CAAC;QACpC,WAAW,EAAE,sBAAsB,CAAC;QACpC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,iBAAiB,CAAC;QACpE,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;YAAE,gBAAgB,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAE,KAAK,OAAO,CAAC;QACzF,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;KACzC;IAWK,SAAS,CACb,OAAO,GAAE;QAAE,kBAAkB,CAAC,EAAE,OAAO,CAAA;KAAO,GAC7C,OAAO,CAAC,yBAAyB,CAAC;CA8GtC"}
|
|
@@ -1,20 +1,47 @@
|
|
|
1
|
+
import { existsSync } from "node:fs";
|
|
1
2
|
import { normalizeHerdrSessionSnapshot } from "../herdr/session-snapshot.js";
|
|
2
3
|
import { HerdrSocketClient } from "../herdr/socket-client.js";
|
|
3
4
|
export const RECONCILE_BATCH_LIMIT = 100;
|
|
4
5
|
export const RECONCILE_REASON = "PANE_NOT_PRESENT_RECONCILE";
|
|
6
|
+
/** Release rows are ownerless scopes; keep them reclaimable for 30 days, then drop them. */
|
|
7
|
+
export const SCOPE_RELEASE_TTL_MS = 30 * 24 * 60 * 60 * 1000;
|
|
8
|
+
/** Terminal agent events (acked/failed) are purged after 7 days in the reconcile cycle. */
|
|
9
|
+
export const RECONCILE_SETTLED_TTL_MS = 7 * 24 * 60 * 60 * 1000;
|
|
10
|
+
/** History cache rows are purged after 30 days regardless of whether the source file still exists. */
|
|
11
|
+
export const HISTORY_CACHE_TTL_MS = 30 * 24 * 60 * 60 * 1000;
|
|
12
|
+
/**
|
|
13
|
+
* Invalidated events are retained this long so an owner that already received
|
|
14
|
+
* the event can still ack it (`isInvalidatedDelivered`) and advance the cursor.
|
|
15
|
+
* Must be >= REDELIVERY_FRESHNESS_MS; 1 hour covers reconnect delays without
|
|
16
|
+
* letting invalidated rows accumulate.
|
|
17
|
+
*/
|
|
18
|
+
export const INVALIDATED_GRACE_MS = 60 * 60 * 1000;
|
|
19
|
+
function emptyReconcileResult() {
|
|
20
|
+
return {
|
|
21
|
+
historyCacheExpired: 0,
|
|
22
|
+
historyCacheMissing: 0,
|
|
23
|
+
invalidated: 0,
|
|
24
|
+
purged: 0,
|
|
25
|
+
released: 0,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
5
28
|
export class AgentEventReconciler {
|
|
29
|
+
#agentHistoryCache;
|
|
6
30
|
#events;
|
|
7
31
|
#scopes;
|
|
8
32
|
#sessionList;
|
|
9
33
|
#connectedTerminal;
|
|
10
34
|
#clientFactory;
|
|
35
|
+
#statusEventPlans;
|
|
11
36
|
constructor(options) {
|
|
37
|
+
this.#agentHistoryCache = options.agentHistoryCache;
|
|
12
38
|
this.#events = options.events;
|
|
13
39
|
this.#scopes = options.scopes;
|
|
14
40
|
this.#sessionList = options.sessionList;
|
|
15
41
|
this.#clientFactory =
|
|
16
42
|
options.clientFactory ?? ((entry) => new HerdrSocketClient({ socketPath: entry.socketPath }));
|
|
17
43
|
this.#connectedTerminal = options.connectedTerminal ?? (() => true);
|
|
44
|
+
this.#statusEventPlans = options.statusEventPlans;
|
|
18
45
|
}
|
|
19
46
|
async reconcile(options = {}) {
|
|
20
47
|
let sessions;
|
|
@@ -23,7 +50,7 @@ export class AgentEventReconciler {
|
|
|
23
50
|
}
|
|
24
51
|
catch (error) {
|
|
25
52
|
console.warn("Herdsman reconcile skipped: Herdr session list unavailable", error);
|
|
26
|
-
return
|
|
53
|
+
return emptyReconcileResult();
|
|
27
54
|
}
|
|
28
55
|
const live = new Map();
|
|
29
56
|
const clients = [];
|
|
@@ -53,7 +80,7 @@ export class AgentEventReconciler {
|
|
|
53
80
|
for (const client of clients)
|
|
54
81
|
client.close();
|
|
55
82
|
console.warn("Herdsman reconcile skipped: incomplete Herdr pane snapshot", error);
|
|
56
|
-
return
|
|
83
|
+
return emptyReconcileResult();
|
|
57
84
|
}
|
|
58
85
|
finally {
|
|
59
86
|
for (const client of clients)
|
|
@@ -70,13 +97,17 @@ export class AgentEventReconciler {
|
|
|
70
97
|
const panes = live.get(event.herdrSessionName);
|
|
71
98
|
if (!panes)
|
|
72
99
|
continue;
|
|
73
|
-
const present = panes.some((pane) => pane
|
|
74
|
-
(event.paneGeneration === null || pane.generation === event.paneGeneration));
|
|
100
|
+
const present = panes.some((pane) => paneMatchesEvent(pane, event));
|
|
75
101
|
if (!present && this.#events.deleteReconcileCandidate(event.id))
|
|
76
102
|
invalidated += 1;
|
|
77
103
|
}
|
|
78
104
|
}
|
|
79
|
-
invalidated += this.#events.
|
|
105
|
+
invalidated += this.#events.deleteInvalidatedOlderThan(INVALIDATED_GRACE_MS);
|
|
106
|
+
this.#events.deleteSettledOlderThan(RECONCILE_SETTLED_TTL_MS);
|
|
107
|
+
// Settled status event plans share the same 7-day TTL as settled agent
|
|
108
|
+
// events: a drained/completed/cancelled/failed plan is pure bookkeeping.
|
|
109
|
+
this.#statusEventPlans?.deleteSettledOlderThan(RECONCILE_SETTLED_TTL_MS);
|
|
110
|
+
const { historyCacheExpired, historyCacheMissing } = this.#purgeHistoryCache();
|
|
80
111
|
let released = 0;
|
|
81
112
|
if (options.releaseStaleOwners !== false) {
|
|
82
113
|
for (const scope of this.#scopes.listOwnedScopes()) {
|
|
@@ -99,6 +130,7 @@ export class AgentEventReconciler {
|
|
|
99
130
|
}
|
|
100
131
|
}
|
|
101
132
|
}
|
|
133
|
+
const purged = this.#scopes.purgeReleasedOlderThan(SCOPE_RELEASE_TTL_MS);
|
|
102
134
|
for (const scope of this.#scopes.listOwnedScopes()) {
|
|
103
135
|
if (scope.owner?.paneId) {
|
|
104
136
|
this.#events.ackSelfOwned({
|
|
@@ -108,10 +140,56 @@ export class AgentEventReconciler {
|
|
|
108
140
|
});
|
|
109
141
|
}
|
|
110
142
|
}
|
|
111
|
-
return { invalidated, released };
|
|
143
|
+
return { historyCacheExpired, historyCacheMissing, invalidated, purged, released };
|
|
144
|
+
}
|
|
145
|
+
#purgeHistoryCache() {
|
|
146
|
+
if (!this.#agentHistoryCache) {
|
|
147
|
+
return { historyCacheExpired: 0, historyCacheMissing: 0 };
|
|
148
|
+
}
|
|
149
|
+
const historyCacheExpired = this.#agentHistoryCache.deleteOlderThan(HISTORY_CACHE_TTL_MS);
|
|
150
|
+
const missing = this.#agentHistoryCache
|
|
151
|
+
.listSourcePaths()
|
|
152
|
+
.filter((sourcePath) => !historyCacheSourceExists(sourcePath));
|
|
153
|
+
const historyCacheMissing = this.#agentHistoryCache.deleteBySourcePaths(missing);
|
|
154
|
+
return { historyCacheExpired, historyCacheMissing };
|
|
112
155
|
}
|
|
113
156
|
}
|
|
114
157
|
function stringValue(value) {
|
|
115
158
|
return typeof value === "string" && value.length > 0 ? value : null;
|
|
116
159
|
}
|
|
160
|
+
/**
|
|
161
|
+
* Cache keys for opencode-sqlite append `#session=...` onto the backing file
|
|
162
|
+
* path. Existence is checked against the real path, not the synthetic key.
|
|
163
|
+
*/
|
|
164
|
+
function historyCacheSourceExists(sourcePath) {
|
|
165
|
+
if (existsSync(sourcePath))
|
|
166
|
+
return true;
|
|
167
|
+
const marker = "#session=";
|
|
168
|
+
const index = sourcePath.indexOf(marker);
|
|
169
|
+
return index > 0 && existsSync(sourcePath.slice(0, index));
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* A live pane matches an event when the pane ids are equal and the
|
|
173
|
+
* generations do not contradict each other. A generation-less live pane is
|
|
174
|
+
* treated as alive (the pane is present in the snapshot, so its events must
|
|
175
|
+
* not be swept even though the pane reports no generation); only two
|
|
176
|
+
* different non-null generations mean the pane was re-created and the old
|
|
177
|
+
* generation's events are stale.
|
|
178
|
+
*/
|
|
179
|
+
function paneMatchesEvent(pane, event) {
|
|
180
|
+
if (pane.paneId !== event.paneId)
|
|
181
|
+
return false;
|
|
182
|
+
if (event.paneGeneration === null)
|
|
183
|
+
return true;
|
|
184
|
+
if (pane.generation === null) {
|
|
185
|
+
console.warn("Herdsman reconcile treating generation-less live pane as alive", {
|
|
186
|
+
eventId: event.id,
|
|
187
|
+
eventPaneGeneration: event.paneGeneration,
|
|
188
|
+
herdrSessionName: event.herdrSessionName,
|
|
189
|
+
paneId: event.paneId,
|
|
190
|
+
});
|
|
191
|
+
return true;
|
|
192
|
+
}
|
|
193
|
+
return pane.generation === event.paneGeneration;
|
|
194
|
+
}
|
|
117
195
|
//# sourceMappingURL=agent-event-reconciler.js.map
|