@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.
Files changed (122) hide show
  1. package/README.ja.md +4 -2
  2. package/README.md +5 -3
  3. package/dist/src/agent-history/antigravity-proto.js +1 -1
  4. package/dist/src/agent-history/antigravity-proto.js.map +1 -1
  5. package/dist/src/agent-history/antigravity-reader.d.ts +13 -1
  6. package/dist/src/agent-history/antigravity-reader.d.ts.map +1 -1
  7. package/dist/src/agent-history/antigravity-reader.js +22 -1
  8. package/dist/src/agent-history/antigravity-reader.js.map +1 -1
  9. package/dist/src/agent-history/discovery.d.ts +8 -2
  10. package/dist/src/agent-history/discovery.d.ts.map +1 -1
  11. package/dist/src/agent-history/discovery.js +89 -9
  12. package/dist/src/agent-history/discovery.js.map +1 -1
  13. package/dist/src/agent-history/readers.d.ts +15 -1
  14. package/dist/src/agent-history/readers.d.ts.map +1 -1
  15. package/dist/src/agent-history/readers.js +77 -31
  16. package/dist/src/agent-history/readers.js.map +1 -1
  17. package/dist/src/agent-history/service.d.ts +4 -2
  18. package/dist/src/agent-history/service.d.ts.map +1 -1
  19. package/dist/src/agent-history/service.js +22 -22
  20. package/dist/src/agent-history/service.js.map +1 -1
  21. package/dist/src/agent-history/source-fingerprint.d.ts +7 -0
  22. package/dist/src/agent-history/source-fingerprint.d.ts.map +1 -0
  23. package/dist/src/agent-history/source-fingerprint.js +26 -0
  24. package/dist/src/agent-history/source-fingerprint.js.map +1 -0
  25. package/dist/src/agent-history/text.d.ts.map +1 -1
  26. package/dist/src/agent-history/text.js +5 -0
  27. package/dist/src/agent-history/text.js.map +1 -1
  28. package/dist/src/cli/herdsman.d.ts.map +1 -1
  29. package/dist/src/cli/herdsman.js +31 -9
  30. package/dist/src/cli/herdsman.js.map +1 -1
  31. package/dist/src/daemon/agent-event-reconciler.d.ts +25 -4
  32. package/dist/src/daemon/agent-event-reconciler.d.ts.map +1 -1
  33. package/dist/src/daemon/agent-event-reconciler.js +84 -6
  34. package/dist/src/daemon/agent-event-reconciler.js.map +1 -1
  35. package/dist/src/daemon/herdr-session-watch-manager.d.ts +1 -0
  36. package/dist/src/daemon/herdr-session-watch-manager.d.ts.map +1 -1
  37. package/dist/src/daemon/herdr-session-watch-manager.js +176 -55
  38. package/dist/src/daemon/herdr-session-watch-manager.js.map +1 -1
  39. package/dist/src/daemon/observability-server.d.ts +3 -0
  40. package/dist/src/daemon/observability-server.d.ts.map +1 -1
  41. package/dist/src/daemon/observability-server.js +73 -24
  42. package/dist/src/daemon/observability-server.js.map +1 -1
  43. package/dist/src/daemon/process-manager.d.ts +41 -2
  44. package/dist/src/daemon/process-manager.d.ts.map +1 -1
  45. package/dist/src/daemon/process-manager.js +340 -19
  46. package/dist/src/daemon/process-manager.js.map +1 -1
  47. package/dist/src/daemon/service.d.ts +46 -0
  48. package/dist/src/daemon/service.d.ts.map +1 -1
  49. package/dist/src/daemon/service.js +172 -12
  50. package/dist/src/daemon/service.js.map +1 -1
  51. package/dist/src/db/agent-events.d.ts +34 -1
  52. package/dist/src/db/agent-events.d.ts.map +1 -1
  53. package/dist/src/db/agent-events.js +168 -28
  54. package/dist/src/db/agent-events.js.map +1 -1
  55. package/dist/src/db/agent-history-cache.d.ts +4 -0
  56. package/dist/src/db/agent-history-cache.d.ts.map +1 -1
  57. package/dist/src/db/agent-history-cache.js +27 -0
  58. package/dist/src/db/agent-history-cache.js.map +1 -1
  59. package/dist/src/db/agent-orchestrator-scopes.d.ts +8 -0
  60. package/dist/src/db/agent-orchestrator-scopes.d.ts.map +1 -1
  61. package/dist/src/db/agent-orchestrator-scopes.js +13 -0
  62. package/dist/src/db/agent-orchestrator-scopes.js.map +1 -1
  63. package/dist/src/db/agents.d.ts +44 -0
  64. package/dist/src/db/agents.d.ts.map +1 -1
  65. package/dist/src/db/agents.js +91 -5
  66. package/dist/src/db/agents.js.map +1 -1
  67. package/dist/src/db/client.d.ts +1 -0
  68. package/dist/src/db/client.d.ts.map +1 -1
  69. package/dist/src/db/client.js +12 -0
  70. package/dist/src/db/client.js.map +1 -1
  71. package/dist/src/db/schema.d.ts +391 -0
  72. package/dist/src/db/schema.d.ts.map +1 -1
  73. package/dist/src/db/schema.js +34 -0
  74. package/dist/src/db/schema.js.map +1 -1
  75. package/dist/src/db/status-event-plans.d.ts +62 -0
  76. package/dist/src/db/status-event-plans.d.ts.map +1 -0
  77. package/dist/src/db/status-event-plans.js +147 -0
  78. package/dist/src/db/status-event-plans.js.map +1 -0
  79. package/dist/src/herdr/pane-identity-resolver.d.ts +4 -0
  80. package/dist/src/herdr/pane-identity-resolver.d.ts.map +1 -1
  81. package/dist/src/herdr/pane-identity-resolver.js +13 -1
  82. package/dist/src/herdr/pane-identity-resolver.js.map +1 -1
  83. package/dist/src/herdr/socket-client.d.ts +2 -0
  84. package/dist/src/herdr/socket-client.d.ts.map +1 -1
  85. package/dist/src/herdr/socket-client.js +64 -20
  86. package/dist/src/herdr/socket-client.js.map +1 -1
  87. package/dist/src/observability/agent-context-service.d.ts +17 -1
  88. package/dist/src/observability/agent-context-service.d.ts.map +1 -1
  89. package/dist/src/observability/agent-context-service.js +85 -21
  90. package/dist/src/observability/agent-context-service.js.map +1 -1
  91. package/dist/src/observability/agent-index-service.d.ts +47 -2
  92. package/dist/src/observability/agent-index-service.d.ts.map +1 -1
  93. package/dist/src/observability/agent-index-service.js +1125 -115
  94. package/dist/src/observability/agent-index-service.js.map +1 -1
  95. package/dist/src/observability/agent-orchestrator-service.d.ts.map +1 -1
  96. package/dist/src/observability/agent-orchestrator-service.js +34 -12
  97. package/dist/src/observability/agent-orchestrator-service.js.map +1 -1
  98. package/dist/src/observability/contracts.d.ts +2 -1
  99. package/dist/src/observability/contracts.d.ts.map +1 -1
  100. package/dist/src/observability/contracts.js.map +1 -1
  101. package/dist/src/observability/interactive-pi.d.ts +1 -1
  102. package/dist/src/observability/interactive-pi.d.ts.map +1 -1
  103. package/dist/src/observability/interactive-pi.js +1 -1
  104. package/dist/src/observability/interactive-pi.js.map +1 -1
  105. package/dist/src/observability/schemas.d.ts +1 -0
  106. package/dist/src/observability/schemas.d.ts.map +1 -1
  107. package/dist/src/observability/schemas.js +1 -0
  108. package/dist/src/observability/schemas.js.map +1 -1
  109. package/dist/src/observability/turn-completion.d.ts +2 -1
  110. package/dist/src/observability/turn-completion.d.ts.map +1 -1
  111. package/dist/src/observability/turn-completion.js +10 -1
  112. package/dist/src/observability/turn-completion.js.map +1 -1
  113. package/dist/src/shared/unix-peercred.d.ts +14 -0
  114. package/dist/src/shared/unix-peercred.d.ts.map +1 -0
  115. package/dist/src/shared/unix-peercred.js +144 -0
  116. package/dist/src/shared/unix-peercred.js.map +1 -0
  117. package/drizzle/0008_pane_tombstones.sql +9 -0
  118. package/drizzle/0009_high_lake.sql +24 -0
  119. package/drizzle/meta/0008_snapshot.json +823 -0
  120. package/drizzle/meta/0009_snapshot.json +975 -0
  121. package/drizzle/meta/_journal.json +14 -0
  122. package/package.json +24 -22
@@ -1 +1 @@
1
- {"version":3,"file":"readers.js","sourceRoot":"","sources":["../../../src/agent-history/readers.ts"],"names":[],"mappings":"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"}
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-v1";
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) => Promise<ResolvedCompactAgentHistory>;
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;AAEvD,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;;+BA8H6B,uBAAuB,KAAG,OAAO,CAAC,mBAAmB,CAAC;iCA3G/C,eAAe,KAAG,OAAO,CAAC,2BAA2B,CAAC;mCAyDvF,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;gBAiD5B,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"}
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
- export const agentHistoryFormatterVersion = "agent-history-v1";
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 stats = await stat(path).catch(() => null);
32
- if (!stats)
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
- const cached = options.cache?.getFresh({
41
- formatterVersion: agentHistoryFormatterVersion,
42
- sourceMtimeMs: sourceFingerprint.mtimeMs,
43
- sourcePath: cacheSourcePath,
44
- sourceSize: sourceFingerprint.size,
45
- });
46
- if (cached) {
47
- return { compactHistory: cached.compactHistory, historyRef, sourceFingerprint };
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.forceRefresh &&
83
- resolveOptions.preferredRef &&
84
- !resolveOptions.forceDiscovery) {
85
- const preferred = await readCompactRef(resolveOptions.preferredRef);
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":"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"}
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,CAiBhF;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"}
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;AAY5D,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;AAoLD,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"}
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"}
@@ -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
- console.log(JSON.stringify(await stopDaemonProcess({
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 stopDaemonProcess({
244
- pidPath: runtime.paths.pidPath,
245
- socketPath: runtime.paths.socketPath,
246
- timeoutMs: 10_000,
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":"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"}
@@ -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":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,KAAK,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAE7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,gBAAgB,+BAA+B,CAAC;AAI7D,qBAAa,oBAAoB;;gBAOnB,OAAO,EAAE;QACnB,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;KAC1F;IASK,SAAS,CACb,OAAO,GAAE;QAAE,kBAAkB,CAAC,EAAE,OAAO,CAAA;KAAO,GAC7C,OAAO,CAAC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CAgGtD"}
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 { invalidated: 0, released: 0 };
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 { invalidated: 0, released: 0 };
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.paneId === event.paneId &&
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.deleteInvalidated();
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