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.
- package/SUPPORTED-SURFACE.md +20 -2
- package/dist/cli/abmind-hook-recall.js +17 -40
- package/dist/cli/abmind-hook-recall.js.map +1 -1
- package/dist/cli/abmind-hook-store.js +10 -31
- package/dist/cli/abmind-hook-store.js.map +1 -1
- package/dist/cli/abmind-hook-wakeup.js +17 -3
- package/dist/cli/abmind-hook-wakeup.js.map +1 -1
- package/dist/cli/abmind-install.js +19 -19
- package/dist/cli/abmind-install.js.map +1 -1
- package/dist/cli/abmind-restore.js +10 -0
- package/dist/cli/abmind-restore.js.map +1 -1
- package/dist/cli/abmind-sleep.d.ts +9 -5
- package/dist/cli/abmind-sleep.d.ts.map +1 -1
- package/dist/cli/abmind-sleep.js +61 -14
- package/dist/cli/abmind-sleep.js.map +1 -1
- package/dist/cli/hook-lifecycle-adapter.d.ts +11 -0
- package/dist/cli/hook-lifecycle-adapter.d.ts.map +1 -0
- package/dist/cli/hook-lifecycle-adapter.js +33 -0
- package/dist/cli/hook-lifecycle-adapter.js.map +1 -0
- package/dist/src/context-engine.d.ts +13 -3
- package/dist/src/context-engine.d.ts.map +1 -1
- package/dist/src/context-engine.js +22 -5
- package/dist/src/context-engine.js.map +1 -1
- package/dist/src/context-orchestrator.d.ts +20 -2
- package/dist/src/context-orchestrator.d.ts.map +1 -1
- package/dist/src/context-orchestrator.js +11 -3
- package/dist/src/context-orchestrator.js.map +1 -1
- package/dist/src/context-tier-renderer.d.ts +8 -1
- package/dist/src/context-tier-renderer.d.ts.map +1 -1
- package/dist/src/context-tier-renderer.js +7 -2
- package/dist/src/context-tier-renderer.js.map +1 -1
- package/dist/src/ensure-initialized.d.ts +5 -0
- package/dist/src/ensure-initialized.d.ts.map +1 -1
- package/dist/src/ensure-initialized.js +19 -28
- package/dist/src/ensure-initialized.js.map +1 -1
- package/dist/src/host-integration/identity.d.ts +10 -0
- package/dist/src/host-integration/identity.d.ts.map +1 -0
- package/dist/src/host-integration/identity.js +66 -0
- package/dist/src/host-integration/identity.js.map +1 -0
- package/dist/src/host-integration/index.d.ts +5 -0
- package/dist/src/host-integration/index.d.ts.map +1 -0
- package/dist/src/host-integration/index.js +4 -0
- package/dist/src/host-integration/index.js.map +1 -0
- package/dist/src/host-integration/lifecycle.d.ts +14 -0
- package/dist/src/host-integration/lifecycle.d.ts.map +1 -0
- package/dist/src/host-integration/lifecycle.js +192 -0
- package/dist/src/host-integration/lifecycle.js.map +1 -0
- package/dist/src/host-integration/render.d.ts +5 -0
- package/dist/src/host-integration/render.d.ts.map +1 -0
- package/dist/src/host-integration/render.js +20 -0
- package/dist/src/host-integration/render.js.map +1 -0
- package/dist/src/host-integration/types.d.ts +107 -0
- package/dist/src/host-integration/types.d.ts.map +1 -0
- package/dist/src/host-integration/types.js +2 -0
- package/dist/src/host-integration/types.js.map +1 -0
- package/dist/src/imemory-system.d.ts +1 -1
- package/dist/src/imemory-system.d.ts.map +1 -1
- package/dist/src/index.d.ts +6 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/maintenance-service.d.ts +11 -0
- package/dist/src/maintenance-service.d.ts.map +1 -1
- package/dist/src/maintenance-service.js +43 -0
- package/dist/src/maintenance-service.js.map +1 -1
- package/dist/src/memory-manager.d.ts +6 -2
- package/dist/src/memory-manager.d.ts.map +1 -1
- package/dist/src/memory-manager.js +9 -5
- package/dist/src/memory-manager.js.map +1 -1
- package/dist/src/message-store.d.ts +15 -3
- package/dist/src/message-store.d.ts.map +1 -1
- package/dist/src/message-store.js +28 -9
- package/dist/src/message-store.js.map +1 -1
- package/dist/src/openclaw-plugin/index.d.ts.map +1 -1
- package/dist/src/openclaw-plugin/index.js +3 -2
- package/dist/src/openclaw-plugin/index.js.map +1 -1
- package/dist/src/pi-plugin/abtars-client.d.ts +22 -0
- package/dist/src/pi-plugin/abtars-client.d.ts.map +1 -0
- package/dist/src/pi-plugin/abtars-client.js +153 -0
- package/dist/src/pi-plugin/abtars-client.js.map +1 -0
- package/dist/src/pi-plugin/abtars-tools.d.ts +8 -0
- package/dist/src/pi-plugin/abtars-tools.d.ts.map +1 -0
- package/dist/src/pi-plugin/abtars-tools.js +317 -0
- package/dist/src/pi-plugin/abtars-tools.js.map +1 -0
- package/dist/src/pi-plugin/identity.d.ts +8 -0
- package/dist/src/pi-plugin/identity.d.ts.map +1 -0
- package/dist/src/pi-plugin/identity.js +37 -0
- package/dist/src/pi-plugin/identity.js.map +1 -0
- package/dist/src/pi-plugin/index.d.ts +3 -0
- package/dist/src/pi-plugin/index.d.ts.map +1 -0
- package/dist/src/pi-plugin/index.js +139 -0
- package/dist/src/pi-plugin/index.js.map +1 -0
- package/dist/src/pi-plugin/messages.d.ts +4 -0
- package/dist/src/pi-plugin/messages.d.ts.map +1 -0
- package/dist/src/pi-plugin/messages.js +36 -0
- package/dist/src/pi-plugin/messages.js.map +1 -0
- package/dist/src/pi-plugin/pi-types.d.ts +126 -0
- package/dist/src/pi-plugin/pi-types.d.ts.map +1 -0
- package/dist/src/pi-plugin/pi-types.js +15 -0
- package/dist/src/pi-plugin/pi-types.js.map +1 -0
- package/dist/src/pi-plugin/runtime.d.ts +21 -0
- package/dist/src/pi-plugin/runtime.d.ts.map +1 -0
- package/dist/src/pi-plugin/runtime.js +60 -0
- package/dist/src/pi-plugin/runtime.js.map +1 -0
- package/dist/src/pi-plugin/tools.d.ts +11 -0
- package/dist/src/pi-plugin/tools.d.ts.map +1 -0
- package/dist/src/pi-plugin/tools.js +136 -0
- package/dist/src/pi-plugin/tools.js.map +1 -0
- package/dist/src/reconcile.d.ts +2 -0
- package/dist/src/reconcile.d.ts.map +1 -1
- package/dist/src/reconcile.js +21 -4
- package/dist/src/reconcile.js.map +1 -1
- package/dist/src/session-context.d.ts +1 -0
- package/dist/src/session-context.d.ts.map +1 -1
- package/dist/src/session-context.js +42 -23
- package/dist/src/session-context.js.map +1 -1
- package/dist/src/sleep/basic.d.ts +1 -1
- package/dist/src/sleep/basic.d.ts.map +1 -1
- package/dist/src/sleep/basic.js +5 -2
- package/dist/src/sleep/basic.js.map +1 -1
- package/dist/src/sleep/catchup.d.ts +3 -5
- package/dist/src/sleep/catchup.d.ts.map +1 -1
- package/dist/src/sleep/catchup.js +37 -55
- package/dist/src/sleep/catchup.js.map +1 -1
- package/dist/src/sleep/contracts.d.ts +112 -0
- package/dist/src/sleep/contracts.d.ts.map +1 -0
- package/dist/src/sleep/contracts.js +25 -0
- package/dist/src/sleep/contracts.js.map +1 -0
- package/dist/src/sleep/llm-budget.d.ts +34 -14
- package/dist/src/sleep/llm-budget.d.ts.map +1 -1
- package/dist/src/sleep/llm-budget.js +66 -52
- package/dist/src/sleep/llm-budget.js.map +1 -1
- package/dist/src/sleep/orchestrator.d.ts +19 -69
- package/dist/src/sleep/orchestrator.d.ts.map +1 -1
- package/dist/src/sleep/orchestrator.js +286 -270
- package/dist/src/sleep/orchestrator.js.map +1 -1
- package/dist/src/sleep/state.d.ts +7 -19
- package/dist/src/sleep/state.d.ts.map +1 -1
- package/dist/src/sleep/state.js +5 -38
- package/dist/src/sleep/state.js.map +1 -1
- package/dist/src/sleep/test-harness.d.ts +3 -1
- package/dist/src/sleep/test-harness.d.ts.map +1 -1
- package/dist/src/sleep/test-harness.js +3 -2
- package/dist/src/sleep/test-harness.js.map +1 -1
- package/dist/src/soul-seeder.d.ts +36 -0
- package/dist/src/soul-seeder.d.ts.map +1 -0
- package/dist/src/soul-seeder.js +69 -0
- package/dist/src/soul-seeder.js.map +1 -0
- package/dist/src/wake-up-builder.d.ts +3 -1
- package/dist/src/wake-up-builder.d.ts.map +1 -1
- package/dist/src/wake-up-builder.js +29 -5
- package/dist/src/wake-up-builder.js.map +1 -1
- 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
|
-
|
|
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;
|
|
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"}
|
package/dist/src/sleep/state.js
CHANGED
|
@@ -3,11 +3,8 @@
|
|
|
3
3
|
* step-lifecycle event helpers.
|
|
4
4
|
* Extracted from orchestrator.ts (#1229).
|
|
5
5
|
*/
|
|
6
|
-
import { existsSync, readFileSync
|
|
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
|
-
|
|
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
|
-
|
|
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":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,
|
|
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 "./
|
|
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,
|
|
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(
|
|
24
|
-
|
|
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":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC/G,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAqB,MAAM,qBAAqB,CAAC;AAc1E,6GAA6G;AAC7G,MAAM,UAAU,iBAAiB;IAC/B,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC5C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAiB,CAAC;IACxC,IAAI,eAAe,GAAG,gBAAgB,CAAC;IACvC,MAAM,KAAK,
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
45
|
+
flashbackSection = `[Flashback] ${rendered}`;
|
|
40
46
|
}
|
|
41
47
|
}
|
|
42
48
|
catch { /* no emotional memories or DB error */ }
|
|
43
|
-
|
|
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
|
|
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"}
|