abmind 0.2.6 → 0.2.7-alpha.0

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 (153) hide show
  1. package/SUPPORTED-SURFACE.md +20 -2
  2. package/dist/cli/abmind-hook-recall.js +17 -40
  3. package/dist/cli/abmind-hook-recall.js.map +1 -1
  4. package/dist/cli/abmind-hook-store.js +10 -31
  5. package/dist/cli/abmind-hook-store.js.map +1 -1
  6. package/dist/cli/abmind-hook-wakeup.js +17 -3
  7. package/dist/cli/abmind-hook-wakeup.js.map +1 -1
  8. package/dist/cli/abmind-install.js +19 -19
  9. package/dist/cli/abmind-install.js.map +1 -1
  10. package/dist/cli/abmind-restore.js +10 -0
  11. package/dist/cli/abmind-restore.js.map +1 -1
  12. package/dist/cli/abmind-sleep.d.ts +9 -5
  13. package/dist/cli/abmind-sleep.d.ts.map +1 -1
  14. package/dist/cli/abmind-sleep.js +61 -14
  15. package/dist/cli/abmind-sleep.js.map +1 -1
  16. package/dist/cli/hook-lifecycle-adapter.d.ts +11 -0
  17. package/dist/cli/hook-lifecycle-adapter.d.ts.map +1 -0
  18. package/dist/cli/hook-lifecycle-adapter.js +33 -0
  19. package/dist/cli/hook-lifecycle-adapter.js.map +1 -0
  20. package/dist/src/context-engine.d.ts +13 -3
  21. package/dist/src/context-engine.d.ts.map +1 -1
  22. package/dist/src/context-engine.js +22 -5
  23. package/dist/src/context-engine.js.map +1 -1
  24. package/dist/src/context-orchestrator.d.ts +20 -2
  25. package/dist/src/context-orchestrator.d.ts.map +1 -1
  26. package/dist/src/context-orchestrator.js +11 -3
  27. package/dist/src/context-orchestrator.js.map +1 -1
  28. package/dist/src/context-tier-renderer.d.ts +8 -1
  29. package/dist/src/context-tier-renderer.d.ts.map +1 -1
  30. package/dist/src/context-tier-renderer.js +7 -2
  31. package/dist/src/context-tier-renderer.js.map +1 -1
  32. package/dist/src/ensure-initialized.d.ts +5 -0
  33. package/dist/src/ensure-initialized.d.ts.map +1 -1
  34. package/dist/src/ensure-initialized.js +19 -28
  35. package/dist/src/ensure-initialized.js.map +1 -1
  36. package/dist/src/host-integration/identity.d.ts +10 -0
  37. package/dist/src/host-integration/identity.d.ts.map +1 -0
  38. package/dist/src/host-integration/identity.js +66 -0
  39. package/dist/src/host-integration/identity.js.map +1 -0
  40. package/dist/src/host-integration/index.d.ts +5 -0
  41. package/dist/src/host-integration/index.d.ts.map +1 -0
  42. package/dist/src/host-integration/index.js +4 -0
  43. package/dist/src/host-integration/index.js.map +1 -0
  44. package/dist/src/host-integration/lifecycle.d.ts +14 -0
  45. package/dist/src/host-integration/lifecycle.d.ts.map +1 -0
  46. package/dist/src/host-integration/lifecycle.js +192 -0
  47. package/dist/src/host-integration/lifecycle.js.map +1 -0
  48. package/dist/src/host-integration/render.d.ts +5 -0
  49. package/dist/src/host-integration/render.d.ts.map +1 -0
  50. package/dist/src/host-integration/render.js +20 -0
  51. package/dist/src/host-integration/render.js.map +1 -0
  52. package/dist/src/host-integration/types.d.ts +107 -0
  53. package/dist/src/host-integration/types.d.ts.map +1 -0
  54. package/dist/src/host-integration/types.js +2 -0
  55. package/dist/src/host-integration/types.js.map +1 -0
  56. package/dist/src/imemory-system.d.ts +1 -1
  57. package/dist/src/imemory-system.d.ts.map +1 -1
  58. package/dist/src/index.d.ts +6 -4
  59. package/dist/src/index.d.ts.map +1 -1
  60. package/dist/src/index.js +3 -1
  61. package/dist/src/index.js.map +1 -1
  62. package/dist/src/maintenance-service.d.ts +11 -0
  63. package/dist/src/maintenance-service.d.ts.map +1 -1
  64. package/dist/src/maintenance-service.js +43 -0
  65. package/dist/src/maintenance-service.js.map +1 -1
  66. package/dist/src/memory-manager.d.ts +6 -2
  67. package/dist/src/memory-manager.d.ts.map +1 -1
  68. package/dist/src/memory-manager.js +9 -5
  69. package/dist/src/memory-manager.js.map +1 -1
  70. package/dist/src/message-store.d.ts +15 -3
  71. package/dist/src/message-store.d.ts.map +1 -1
  72. package/dist/src/message-store.js +28 -9
  73. package/dist/src/message-store.js.map +1 -1
  74. package/dist/src/openclaw-plugin/index.d.ts.map +1 -1
  75. package/dist/src/openclaw-plugin/index.js +3 -2
  76. package/dist/src/openclaw-plugin/index.js.map +1 -1
  77. package/dist/src/pi-plugin/abtars-client.d.ts +22 -0
  78. package/dist/src/pi-plugin/abtars-client.d.ts.map +1 -0
  79. package/dist/src/pi-plugin/abtars-client.js +153 -0
  80. package/dist/src/pi-plugin/abtars-client.js.map +1 -0
  81. package/dist/src/pi-plugin/abtars-tools.d.ts +8 -0
  82. package/dist/src/pi-plugin/abtars-tools.d.ts.map +1 -0
  83. package/dist/src/pi-plugin/abtars-tools.js +317 -0
  84. package/dist/src/pi-plugin/abtars-tools.js.map +1 -0
  85. package/dist/src/pi-plugin/identity.d.ts +8 -0
  86. package/dist/src/pi-plugin/identity.d.ts.map +1 -0
  87. package/dist/src/pi-plugin/identity.js +37 -0
  88. package/dist/src/pi-plugin/identity.js.map +1 -0
  89. package/dist/src/pi-plugin/index.d.ts +3 -0
  90. package/dist/src/pi-plugin/index.d.ts.map +1 -0
  91. package/dist/src/pi-plugin/index.js +139 -0
  92. package/dist/src/pi-plugin/index.js.map +1 -0
  93. package/dist/src/pi-plugin/messages.d.ts +4 -0
  94. package/dist/src/pi-plugin/messages.d.ts.map +1 -0
  95. package/dist/src/pi-plugin/messages.js +36 -0
  96. package/dist/src/pi-plugin/messages.js.map +1 -0
  97. package/dist/src/pi-plugin/pi-types.d.ts +126 -0
  98. package/dist/src/pi-plugin/pi-types.d.ts.map +1 -0
  99. package/dist/src/pi-plugin/pi-types.js +15 -0
  100. package/dist/src/pi-plugin/pi-types.js.map +1 -0
  101. package/dist/src/pi-plugin/runtime.d.ts +21 -0
  102. package/dist/src/pi-plugin/runtime.d.ts.map +1 -0
  103. package/dist/src/pi-plugin/runtime.js +60 -0
  104. package/dist/src/pi-plugin/runtime.js.map +1 -0
  105. package/dist/src/pi-plugin/tools.d.ts +11 -0
  106. package/dist/src/pi-plugin/tools.d.ts.map +1 -0
  107. package/dist/src/pi-plugin/tools.js +136 -0
  108. package/dist/src/pi-plugin/tools.js.map +1 -0
  109. package/dist/src/reconcile.d.ts +2 -0
  110. package/dist/src/reconcile.d.ts.map +1 -1
  111. package/dist/src/reconcile.js +21 -4
  112. package/dist/src/reconcile.js.map +1 -1
  113. package/dist/src/session-context.d.ts +1 -0
  114. package/dist/src/session-context.d.ts.map +1 -1
  115. package/dist/src/session-context.js +42 -23
  116. package/dist/src/session-context.js.map +1 -1
  117. package/dist/src/sleep/basic.d.ts +1 -1
  118. package/dist/src/sleep/basic.d.ts.map +1 -1
  119. package/dist/src/sleep/basic.js +5 -2
  120. package/dist/src/sleep/basic.js.map +1 -1
  121. package/dist/src/sleep/catchup.d.ts +3 -5
  122. package/dist/src/sleep/catchup.d.ts.map +1 -1
  123. package/dist/src/sleep/catchup.js +37 -55
  124. package/dist/src/sleep/catchup.js.map +1 -1
  125. package/dist/src/sleep/contracts.d.ts +112 -0
  126. package/dist/src/sleep/contracts.d.ts.map +1 -0
  127. package/dist/src/sleep/contracts.js +25 -0
  128. package/dist/src/sleep/contracts.js.map +1 -0
  129. package/dist/src/sleep/llm-budget.d.ts +34 -14
  130. package/dist/src/sleep/llm-budget.d.ts.map +1 -1
  131. package/dist/src/sleep/llm-budget.js +66 -52
  132. package/dist/src/sleep/llm-budget.js.map +1 -1
  133. package/dist/src/sleep/orchestrator.d.ts +19 -69
  134. package/dist/src/sleep/orchestrator.d.ts.map +1 -1
  135. package/dist/src/sleep/orchestrator.js +286 -270
  136. package/dist/src/sleep/orchestrator.js.map +1 -1
  137. package/dist/src/sleep/state.d.ts +7 -19
  138. package/dist/src/sleep/state.d.ts.map +1 -1
  139. package/dist/src/sleep/state.js +5 -38
  140. package/dist/src/sleep/state.js.map +1 -1
  141. package/dist/src/sleep/test-harness.d.ts +3 -1
  142. package/dist/src/sleep/test-harness.d.ts.map +1 -1
  143. package/dist/src/sleep/test-harness.js +3 -2
  144. package/dist/src/sleep/test-harness.js.map +1 -1
  145. package/dist/src/soul-seeder.d.ts +36 -0
  146. package/dist/src/soul-seeder.d.ts.map +1 -0
  147. package/dist/src/soul-seeder.js +69 -0
  148. package/dist/src/soul-seeder.js.map +1 -0
  149. package/dist/src/wake-up-builder.d.ts +3 -1
  150. package/dist/src/wake-up-builder.d.ts.map +1 -1
  151. package/dist/src/wake-up-builder.js +29 -5
  152. package/dist/src/wake-up-builder.js.map +1 -1
  153. package/package.json +20 -2
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../src/sleep/orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../src/sleep/orchestrator.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ export type StepResult = {
13
13
  ctxBefore?: number;
14
14
  ctxAfter?: number;
15
15
  path?: string;
16
+ essential?: boolean;
16
17
  };
17
18
  export type WiredResults = {
18
19
  purged: number;
@@ -21,12 +22,16 @@ export type WiredResults = {
21
22
  anomaliesFixed: number;
22
23
  walOk: boolean;
23
24
  ftsOk: boolean;
24
- logsDeleted: number;
25
25
  };
26
26
  export type SleepStatus = "ongoing" | "completed" | "suspended" | "failed";
27
+ /** #1353: runId is the stable identity for one execution attempt. priorRunId
28
+ * records lineage when a run resumes a previous checkpoint (a resumed run
29
+ * gets its OWN new runId — it does not pretend to be the prior process). */
27
30
  export type SleepState = {
28
31
  status: SleepStatus;
29
32
  pid: number;
33
+ runId?: string;
34
+ priorRunId?: string;
30
35
  startedAt: number;
31
36
  llmCalls: number;
32
37
  wiredResults?: WiredResults;
@@ -34,23 +39,6 @@ export type SleepState = {
34
39
  };
35
40
  export declare function readStateFile(path: string): SleepState | null;
36
41
  export declare function writeStateFile(path: string, state: SleepState): void;
37
- /** Step-lifecycle event fired by the orchestrator at each step boundary (#895).
38
- * Best-effort — a throwing handler must never break memory consolidation. */
39
- export interface SleepStepEvent {
40
- /** Step name, e.g. "extract-memories". */
41
- name: string;
42
- /** Source filename, e.g. "03-extract-memories.md". */
43
- filename: string;
44
- /** 1-based step index within the run. */
45
- index: number;
46
- /** Total steps in this run (loaded from loadSleepSteps() at cycle start). */
47
- total: number;
48
- /** "start" fired before the step runs, "done"/"skipped"/"failed" on resolution. */
49
- phase: "start" | "done" | "skipped" | "failed";
50
- }
51
- /** Best-effort onStep invoker — swallow handler errors so a display callback
52
- * can never break the pipeline. */
53
- export declare function fireOnStep(handler: ((e: SleepStepEvent) => void) | undefined, e: SleepStepEvent): void;
54
- export declare function runWiredPreTasks(sleepData: SleepDataAccess, memoryDir: string, memory: MemoryManager): Promise<WiredResults>;
42
+ export declare function runWiredPreTasks(sleepData: SleepDataAccess, _memoryDir: string, memory: MemoryManager): Promise<WiredResults>;
55
43
  export declare function formatWiredResults(r: WiredResults): string;
56
44
  //# sourceMappingURL=state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/sleep/state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAM/D,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAC7E,MAAM,MAAM,UAAU,GAAG;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAC5I,MAAM,MAAM,YAAY,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAC9J,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;AAC3E,MAAM,MAAM,UAAU,GAAG;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;CAAE,CAAC;AAEnK,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAU7D;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,CAEpE;AAID;8EAC8E;AAC9E,MAAM,WAAW,cAAc;IAC7B,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,QAAQ,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,6EAA6E;IAC7E,KAAK,EAAE,MAAM,CAAC;IACd,mFAAmF;IACnF,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;CAChD;AAED;oCACoC;AACpC,wBAAgB,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,cAAc,GAAG,IAAI,CAGtG;AAID,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAqBlI;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAU1D"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/sleep/state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAI/D,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AAC7E,MAAM,MAAM,UAAU,GAAG;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AACjK,MAAM,MAAM,YAAY,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC;AACzI,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;AAC3E;;6EAE6E;AAC7E,MAAM,MAAM,UAAU,GAAG;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;CAAE,CAAC;AAExM,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAU7D;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,CAEpE;AAMD,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAGnI;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAS1D"}
@@ -3,11 +3,8 @@
3
3
  * step-lifecycle event helpers.
4
4
  * Extracted from orchestrator.ts (#1229).
5
5
  */
6
- import { existsSync, readFileSync, readdirSync, unlinkSync } from "node:fs";
7
- import { join } from "node:path";
6
+ import { existsSync, readFileSync } from "node:fs";
8
7
  import { atomicWriteSync } from "../atomic-write.js";
9
- import { logWarn } from "../mem-logger.js";
10
- const TAG = "abmind-sleep";
11
8
  export function readStateFile(path) {
12
9
  try {
13
10
  if (!existsSync(path))
@@ -29,40 +26,12 @@ export function readStateFile(path) {
29
26
  export function writeStateFile(path, state) {
30
27
  atomicWriteSync(path, JSON.stringify(state, null, 2));
31
28
  }
32
- /** Best-effort onStep invoker — swallow handler errors so a display callback
33
- * can never break the pipeline. */
34
- export function fireOnStep(handler, e) {
35
- if (!handler)
36
- return;
37
- try {
38
- handler(e);
39
- }
40
- catch { /* host display only — never fail the cycle */ }
41
- }
42
29
  // ── Wired pre-tasks (delegated to abmind MaintenanceService) ────────────────
43
- export async function runWiredPreTasks(sleepData, memoryDir, memory) {
30
+ // #1353: bridge-log rotation moved out — abmind may clean only its own
31
+ // artifacts below its configured home. Host log retention is host-owned.
32
+ export async function runWiredPreTasks(sleepData, _memoryDir, memory) {
44
33
  const r = await memory.maintenance.runPreSleepTasks(memory, sleepData);
45
- // Bridge-side: log rotation (not memory's concern)
46
- let logsDeleted = 0;
47
- try {
48
- const logsDir = join(memoryDir, "..", "logs");
49
- if (existsSync(logsDir)) {
50
- const cutoff = Date.now() - 7 * 86400000;
51
- for (const f of readdirSync(logsDir)) {
52
- if (!f.startsWith("bridge-") || !f.endsWith(".log"))
53
- continue;
54
- const match = f.match(/bridge-(\d{4}-\d{2}-\d{2})\.log/);
55
- if (match && new Date(match[1]).getTime() < cutoff) {
56
- unlinkSync(join(logsDir, f));
57
- logsDeleted++;
58
- }
59
- }
60
- }
61
- }
62
- catch (err) {
63
- logWarn(TAG, `[WIRED] log rotation: ${err instanceof Error ? err.message : String(err)}`);
64
- }
65
- return { purged: r.purged, deduped: r.deduped, embedded: r.embedded, anomaliesFixed: r.anomaliesFixed, walOk: r.walOk, ftsOk: r.ftsOk, logsDeleted };
34
+ return { purged: r.purged, deduped: r.deduped, embedded: r.embedded, anomaliesFixed: r.anomaliesFixed, walOk: r.walOk, ftsOk: r.ftsOk };
66
35
  }
67
36
  export function formatWiredResults(r) {
68
37
  const parts = [];
@@ -76,8 +45,6 @@ export function formatWiredResults(r) {
76
45
  parts.push(`${r.embedded} embedded`);
77
46
  if (r.anomaliesFixed > 0)
78
47
  parts.push(`${r.anomaliesFixed} anomalies fixed`);
79
- if (r.logsDeleted > 0)
80
- parts.push(`${r.logsDeleted} old logs deleted`);
81
48
  return parts.length > 0 ? parts.join(", ") : "nothing to do";
82
49
  }
83
50
  //# sourceMappingURL=state.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/sleep/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/sleep/state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAerD,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,IAAI,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QACpD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QACvE,0CAA0C;QAC1C,IAAI,CAAC,GAAG,CAAC,MAAM;YAAE,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC;QACxC,IAAI,GAAG,CAAC,QAAQ,IAAI,IAAI;YAAE,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC3C,OAAO,GAAiB,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,KAAiB;IAC5D,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,+EAA+E;AAC/E,uEAAuE;AACvE,yEAAyE;AAEzE,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,SAA0B,EAAE,UAAkB,EAAE,MAAqB;IAC1G,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACvE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;AAC1I,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,CAAe;IAChD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,iBAAiB,CAAC,CAAC;IAC3D,IAAI,CAAC,CAAC,OAAO,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,gBAAgB,CAAC,CAAC;IAC5D,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC/C,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC/C,IAAI,CAAC,CAAC,QAAQ,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,WAAW,CAAC,CAAC;IACzD,IAAI,CAAC,CAAC,cAAc,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,cAAc,kBAAkB,CAAC,CAAC;IAC5E,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC;AAC/D,CAAC"}
@@ -9,7 +9,7 @@
9
9
  */
10
10
  import { MemoryManager } from "../memory-manager.js";
11
11
  import { type MemoryConfig } from "../memory-config.js";
12
- import type { SleepRuntime } from "./runtime.js";
12
+ import type { SleepRuntime } from "./contracts.js";
13
13
  export interface MockRuntime extends SleepRuntime {
14
14
  setResponse(stepHint: string, response: string): void;
15
15
  setError(stepHint: string, err: Error): void;
@@ -18,6 +18,8 @@ export interface MockRuntime extends SleepRuntime {
18
18
  callsFor(stepHint: string): string[];
19
19
  allCalls(): Array<{
20
20
  prompt: string;
21
+ stepId: string;
22
+ runId: string;
21
23
  }>;
22
24
  }
23
25
  /** Create a SleepRuntime mock. complete() matches prompt against registered hints; first hint-match wins. */
@@ -1 +1 @@
1
- {"version":3,"file":"test-harness.d.ts","sourceRoot":"","sources":["../../../src/sleep/test-harness.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAIjD,MAAM,WAAW,WAAY,SAAQ,YAAY;IAC/C,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACtD,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,GAAG,IAAI,CAAC;IAC7C,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,SAAS,IAAI,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACrC,QAAQ,IAAI,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACvC;AAED,6GAA6G;AAC7G,wBAAgB,iBAAiB,IAAI,WAAW,CA2B/C;AAID,MAAM,WAAW,OAAO;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,aAAa,CAAC;IACtB,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,WAAW,CAAC;IACrB,gDAAgD;IAChD,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,WAAW,CAAC,EAAE;QACZ,MAAM,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;QAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,MAAM,EAAE,IAAI,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;YAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC3H,CAAC;IACF,0DAA0D;IAC1D,sBAAsB,CAAC,EAAE;QACvB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,MAAM,EAAE,IAAI,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAA;SAAE,CAAC,CAAC;QACvF,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,mFAAmF;IACnF,gBAAgB,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CACtD;AAED,wBAAsB,YAAY,CAAC,IAAI,GAAE,SAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAqFzE"}
1
+ {"version":3,"file":"test-harness.d.ts","sourceRoot":"","sources":["../../../src/sleep/test-harness.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAA0B,MAAM,gBAAgB,CAAC;AAI3E,MAAM,WAAW,WAAY,SAAQ,YAAY;IAC/C,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACtD,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,GAAG,IAAI,CAAC;IAC7C,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,SAAS,IAAI,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACrC,QAAQ,IAAI,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtE;AAED,6GAA6G;AAC7G,wBAAgB,iBAAiB,IAAI,WAAW,CA4B/C;AAID,MAAM,WAAW,OAAO;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,aAAa,CAAC;IACtB,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,WAAW,CAAC;IACrB,gDAAgD;IAChD,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,WAAW,CAAC,EAAE;QACZ,MAAM,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;QAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,MAAM,EAAE,IAAI,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;YAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC3H,CAAC;IACF,0DAA0D;IAC1D,sBAAsB,CAAC,EAAE;QACvB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,MAAM,EAAE,IAAI,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAA;SAAE,CAAC,CAAC;QACvF,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,mFAAmF;IACnF,gBAAgB,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CACtD;AAED,wBAAsB,YAAY,CAAC,IAAI,GAAE,SAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAqFzE"}
@@ -20,8 +20,9 @@ export function createMockRuntime() {
20
20
  let defaultResponse = "(mock default)";
21
21
  const calls = [];
22
22
  return {
23
- async complete(prompt) {
24
- calls.push({ prompt });
23
+ async complete(request) {
24
+ const { prompt, stepId, runId } = request;
25
+ calls.push({ prompt, stepId, runId });
25
26
  // Ensure writeStateFile flush ordering before returning (see plan Phase 2 atomicity note)
26
27
  await Promise.resolve();
27
28
  for (const [hint, err] of errors) {
@@ -1 +1 @@
1
- {"version":3,"file":"test-harness.js","sourceRoot":"","sources":["../../../src/sleep/test-harness.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-harness.js","sourceRoot":"","sources":["../../../src/sleep/test-harness.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * soul-seeder.ts — single source of truth for SOUL.md lifecycle.
3
+ *
4
+ * The persona file at ~/.abmind/memory/core/SOUL.md is *personalized* — it
5
+ * embeds the agent's display name via the `<agentName>` placeholder, which
6
+ * `reconcile()` (template sync) must NOT touch, and which install/restore
7
+ * must write via this module.
8
+ *
9
+ * Three callers, one writer:
10
+ * 1. `cli/abmind-install.ts` — first install, after `reconcile()`.
11
+ * 2. `cli/abmind-restore.ts` — restore from backup, after `reconcile()`.
12
+ * 3. `src/ensure-initialized.ts` — lazy init for library consumers that
13
+ * never run `abmind install` (defense in depth).
14
+ *
15
+ * See #1323 (bug) and #1324 (refactor).
16
+ */
17
+ /** Canonical SOUL.md path inside an abmind home. */
18
+ export declare function soulPath(home: string): string;
19
+ /** Canonical SOUL.md template path inside an abmind source tree. */
20
+ export declare function templateSoulPath(repoRoot: string): string;
21
+ /** Read the deployed SOUL.md, or null if absent. */
22
+ export declare function readSoul(home: string): string | null;
23
+ /**
24
+ * Personalize the SOUL.md template and write it to the abmind home.
25
+ * Idempotent — overwrites any existing file. Caller decides when to invoke.
26
+ *
27
+ * Returns true if the file was written, false if the template was missing.
28
+ */
29
+ export declare function writeSoulPersonalized(repoRoot: string, home: string, agentName: string): boolean;
30
+ /**
31
+ * Resolve the agent display name to use for SOUL.md substitution.
32
+ * Tries in order: explicit arg → ~/.abtars/config/peers.json → default "Agent".
33
+ * Used by install and restore when the user has not provided --agent-name.
34
+ */
35
+ export declare function discoverAgentName(explicit?: string | null): string;
36
+ //# sourceMappingURL=soul-seeder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"soul-seeder.d.ts","sourceRoot":"","sources":["../../src/soul-seeder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAQH,oDAAoD;AACpD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE7C;AAED,oEAAoE;AACpE,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,oDAAoD;AACpD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGpD;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,GAChB,OAAO,CAQT;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAUlE"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * soul-seeder.ts — single source of truth for SOUL.md lifecycle.
3
+ *
4
+ * The persona file at ~/.abmind/memory/core/SOUL.md is *personalized* — it
5
+ * embeds the agent's display name via the `<agentName>` placeholder, which
6
+ * `reconcile()` (template sync) must NOT touch, and which install/restore
7
+ * must write via this module.
8
+ *
9
+ * Three callers, one writer:
10
+ * 1. `cli/abmind-install.ts` — first install, after `reconcile()`.
11
+ * 2. `cli/abmind-restore.ts` — restore from backup, after `reconcile()`.
12
+ * 3. `src/ensure-initialized.ts` — lazy init for library consumers that
13
+ * never run `abmind install` (defense in depth).
14
+ *
15
+ * See #1323 (bug) and #1324 (refactor).
16
+ */
17
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
18
+ import { dirname, join } from 'node:path';
19
+ import { homedir } from 'node:os';
20
+ const PLACEHOLDER = '<agentName>';
21
+ /** Canonical SOUL.md path inside an abmind home. */
22
+ export function soulPath(home) {
23
+ return join(home, 'memory', 'core', 'SOUL.md');
24
+ }
25
+ /** Canonical SOUL.md template path inside an abmind source tree. */
26
+ export function templateSoulPath(repoRoot) {
27
+ return join(repoRoot, 'templates', 'memory', 'core', 'SOUL.md');
28
+ }
29
+ /** Read the deployed SOUL.md, or null if absent. */
30
+ export function readSoul(home) {
31
+ const p = soulPath(home);
32
+ return existsSync(p) ? readFileSync(p, 'utf-8') : null;
33
+ }
34
+ /**
35
+ * Personalize the SOUL.md template and write it to the abmind home.
36
+ * Idempotent — overwrites any existing file. Caller decides when to invoke.
37
+ *
38
+ * Returns true if the file was written, false if the template was missing.
39
+ */
40
+ export function writeSoulPersonalized(repoRoot, home, agentName) {
41
+ const src = templateSoulPath(repoRoot);
42
+ if (!existsSync(src))
43
+ return false;
44
+ const dst = soulPath(home);
45
+ mkdirSync(dirname(dst), { recursive: true });
46
+ const content = readFileSync(src, 'utf-8').replaceAll(PLACEHOLDER, agentName);
47
+ writeFileSync(dst, content, { mode: 0o600 });
48
+ return true;
49
+ }
50
+ /**
51
+ * Resolve the agent display name to use for SOUL.md substitution.
52
+ * Tries in order: explicit arg → ~/.abtars/config/peers.json → default "Agent".
53
+ * Used by install and restore when the user has not provided --agent-name.
54
+ */
55
+ export function discoverAgentName(explicit) {
56
+ if (explicit && explicit.trim().length > 0)
57
+ return explicit.trim();
58
+ try {
59
+ const peersPath = join(homedir(), '.abtars', 'config', 'peers.json');
60
+ if (existsSync(peersPath)) {
61
+ const peers = JSON.parse(readFileSync(peersPath, 'utf-8'));
62
+ if (peers.self?.name && peers.self.name.trim().length > 0)
63
+ return peers.self.name.trim();
64
+ }
65
+ }
66
+ catch { /* malformed or missing — fall through */ }
67
+ return 'Agent';
68
+ }
69
+ //# sourceMappingURL=soul-seeder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"soul-seeder.js","sourceRoot":"","sources":["../../src/soul-seeder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,WAAW,GAAG,aAAa,CAAC;AAElC,oDAAoD;AACpD,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,OAAO,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;AACjD,CAAC;AAED,oEAAoE;AACpE,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,OAAO,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;AAClE,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IACzB,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACzD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAAgB,EAChB,IAAY,EACZ,SAAiB;IAEjB,MAAM,GAAG,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IACnC,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC3B,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAC9E,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7C,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAwB;IACxD,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;IACnE,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;QACrE,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAiC,CAAC;YAC3F,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC3F,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAC,yCAAyC,CAAC,CAAC;IACrD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -6,7 +6,9 @@
6
6
  import type Database from "better-sqlite3";
7
7
  /**
8
8
  * Build wake-up context: current time + one flashback.
9
+ * Enforces an optional character budget — prefers complete sections,
10
+ * drops the flashback if needed, then truncates the time line as a last resort.
9
11
  * Returns empty string if DB unavailable or no emotional memories exist.
10
12
  */
11
- export declare function buildWakeUp(db: Database.Database | null): string;
13
+ export declare function buildWakeUp(db: Database.Database | null, maxChars?: number): string;
12
14
  //# sourceMappingURL=wake-up-builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wake-up-builder.d.ts","sourceRoot":"","sources":["../../src/wake-up-builder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAM3C;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,GAAG,MAAM,CAmChE"}
1
+ {"version":3,"file":"wake-up-builder.d.ts","sourceRoot":"","sources":["../../src/wake-up-builder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAM3C;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CA2DnF"}
@@ -8,16 +8,22 @@ import { localDateTime } from "./local-time.js";
8
8
  const DAYS = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];
9
9
  /**
10
10
  * Build wake-up context: current time + one flashback.
11
+ * Enforces an optional character budget — prefers complete sections,
12
+ * drops the flashback if needed, then truncates the time line as a last resort.
11
13
  * Returns empty string if DB unavailable or no emotional memories exist.
12
14
  */
13
- export function buildWakeUp(db) {
15
+ export function buildWakeUp(db, maxChars) {
14
16
  if (!db)
15
17
  return "";
16
- const parts = [];
18
+ // Invalid budget — zero, negative, or non-finite — returns empty
19
+ if (maxChars !== undefined && (maxChars <= 0 || !Number.isFinite(maxChars))) {
20
+ return "";
21
+ }
17
22
  // 1. Current time
18
23
  const now = new Date();
19
- parts.push(`[Current time: ${localDateTime(now)} (${DAYS[now.getDay()]})]`);
24
+ const timeSection = `[Current time: ${localDateTime(now)} (${DAYS[now.getDay()]})]`;
20
25
  // 2. Flashback — random emotional memory weighted by intensity × recency
26
+ let flashbackSection;
21
27
  try {
22
28
  const row = db.prepare(`SELECT content_en, emotion_tags, importance_flags, topic, memory_type, confidence, created_at
23
29
  FROM extracted_memories
@@ -36,10 +42,28 @@ export function buildWakeUp(db) {
36
42
  confidence: row.confidence ?? undefined,
37
43
  createdAt: row.created_at,
38
44
  });
39
- parts.push(`[Flashback] ${rendered}`);
45
+ flashbackSection = `[Flashback] ${rendered}`;
40
46
  }
41
47
  }
42
48
  catch { /* no emotional memories or DB error */ }
43
- return parts.join("\n\n");
49
+ // No budget → full output (preserve existing behavior)
50
+ if (maxChars === undefined) {
51
+ const parts = [timeSection];
52
+ if (flashbackSection)
53
+ parts.push(flashbackSection);
54
+ return parts.join("\n\n");
55
+ }
56
+ // Assemble within budget, preferring complete sections.
57
+ // Start with current time, add flashback only if it fits.
58
+ const combined = flashbackSection
59
+ ? `${timeSection}\n\n${flashbackSection}`
60
+ : timeSection;
61
+ if (combined.length <= maxChars)
62
+ return combined;
63
+ // Flashback doesn't fit — drop it
64
+ if (timeSection.length <= maxChars)
65
+ return timeSection;
66
+ // Even the time section is too long — truncate it
67
+ return timeSection.slice(0, maxChars);
44
68
  }
45
69
  //# sourceMappingURL=wake-up-builder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wake-up-builder.js","sourceRoot":"","sources":["../../src/wake-up-builder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;AAE5F;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,EAA4B;IACtD,IAAI,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC;IACnB,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,kBAAkB;IAClB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,KAAK,CAAC,IAAI,CAAC,kBAAkB,aAAa,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;IAE5E,yEAAyE;IACzE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CACpB;;;;;;eAMS,CACV,CAAC,GAAG,EAAuM,CAAC;QAE7M,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,QAAQ,GAAG,YAAY,CAAC;gBAC5B,UAAU,EAAE,GAAG,CAAC,UAAU;gBAC1B,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,SAAS;gBAC7B,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,SAAS;gBAC3C,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,IAAI,SAAS;gBACnD,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,SAAS;gBACzC,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,SAAS;gBACvC,SAAS,EAAE,GAAG,CAAC,UAAU;aAC1B,CAAC,CAAC;YACH,KAAK,CAAC,IAAI,CAAC,eAAe,QAAQ,EAAE,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAC,uCAAuC,CAAC,CAAC;IAEnD,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC"}
1
+ {"version":3,"file":"wake-up-builder.js","sourceRoot":"","sources":["../../src/wake-up-builder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;AAE5F;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,EAA4B,EAAE,QAAiB;IACzE,IAAI,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC;IAEnB,iEAAiE;IACjE,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QAC5E,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,kBAAkB;IAClB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,WAAW,GAAG,kBAAkB,aAAa,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC;IAEpF,yEAAyE;IACzE,IAAI,gBAAoC,CAAC;IACzC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CACpB;;;;;;eAMS,CACV,CAAC,GAAG,EAAuM,CAAC;QAE7M,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,QAAQ,GAAG,YAAY,CAAC;gBAC5B,UAAU,EAAE,GAAG,CAAC,UAAU;gBAC1B,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,SAAS;gBAC7B,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,SAAS;gBAC3C,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,IAAI,SAAS;gBACnD,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,SAAS;gBACzC,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,SAAS;gBACvC,SAAS,EAAE,GAAG,CAAC,UAAU;aAC1B,CAAC,CAAC;YACH,gBAAgB,GAAG,eAAe,QAAQ,EAAE,CAAC;QAC/C,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAC,uCAAuC,CAAC,CAAC;IAEnD,uDAAuD;IACvD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAa,CAAC,WAAW,CAAC,CAAC;QACtC,IAAI,gBAAgB;YAAE,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACnD,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,wDAAwD;IACxD,0DAA0D;IAC1D,MAAM,QAAQ,GAAG,gBAAgB;QAC/B,CAAC,CAAC,GAAG,WAAW,OAAO,gBAAgB,EAAE;QACzC,CAAC,CAAC,WAAW,CAAC;IAEhB,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAEjD,kCAAkC;IAClC,IAAI,WAAW,CAAC,MAAM,IAAI,QAAQ;QAAE,OAAO,WAAW,CAAC;IAEvD,kDAAkD;IAClD,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;AACxC,CAAC"}