@felan-ai/ext-memory 0.12.0 → 0.13.1

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 (48) hide show
  1. package/README.md +23 -3
  2. package/dist/contracts.d.ts +8 -0
  3. package/dist/contracts.d.ts.map +1 -1
  4. package/dist/contracts.js +2 -0
  5. package/dist/contracts.js.map +1 -1
  6. package/dist/daemon-provider.d.ts +49 -0
  7. package/dist/daemon-provider.d.ts.map +1 -0
  8. package/dist/daemon-provider.js +231 -0
  9. package/dist/daemon-provider.js.map +1 -0
  10. package/dist/data.d.ts +1 -0
  11. package/dist/data.d.ts.map +1 -1
  12. package/dist/local/context.d.ts +2 -2
  13. package/dist/local/control.d.ts +1 -0
  14. package/dist/local/control.d.ts.map +1 -1
  15. package/dist/local/control.js.map +1 -1
  16. package/dist/local/coordinator.d.ts +2 -0
  17. package/dist/local/coordinator.d.ts.map +1 -1
  18. package/dist/local/coordinator.js +53 -4
  19. package/dist/local/coordinator.js.map +1 -1
  20. package/dist/local/dreamer.d.ts +3 -2
  21. package/dist/local/dreamer.d.ts.map +1 -1
  22. package/dist/local/dreamer.js +1 -1
  23. package/dist/local/dreamer.js.map +1 -1
  24. package/dist/local/history.d.ts +3 -0
  25. package/dist/local/history.d.ts.map +1 -1
  26. package/dist/local/history.js +20 -13
  27. package/dist/local/history.js.map +1 -1
  28. package/dist/local/hydration.d.ts +1 -0
  29. package/dist/local/hydration.d.ts.map +1 -1
  30. package/dist/local/hydration.js +1 -0
  31. package/dist/local/hydration.js.map +1 -1
  32. package/dist/local/project.d.ts +1 -0
  33. package/dist/local/project.d.ts.map +1 -1
  34. package/dist/local/project.js +124 -2
  35. package/dist/local/project.js.map +1 -1
  36. package/dist/local/store.d.ts +5 -4
  37. package/dist/local/store.d.ts.map +1 -1
  38. package/dist/local/store.js +18 -2
  39. package/dist/local/store.js.map +1 -1
  40. package/dist/local/transcript-pages.d.ts +23 -0
  41. package/dist/local/transcript-pages.d.ts.map +1 -0
  42. package/dist/local/transcript-pages.js +127 -0
  43. package/dist/local/transcript-pages.js.map +1 -0
  44. package/dist/local/ui.d.ts +0 -4
  45. package/dist/local/ui.d.ts.map +1 -1
  46. package/dist/local/ui.js +23 -35
  47. package/dist/local/ui.js.map +1 -1
  48. package/package.json +6 -2
package/README.md CHANGED
@@ -5,11 +5,10 @@ and Pi extension behavior for Felan hosts.
5
5
 
6
6
  The package root requires the core `felan.runtime@1`, `felan.models@1`, and
7
7
  `felan.sessions@1` services. It owns the local store, project coordination,
8
- checkpoint recovery, dreaming, retention and `/memory` commands. There is no
9
- memory-specific provider or service contract.
8
+ checkpoint recovery, dreaming, retention and `/memory` commands.
10
9
 
11
10
  The daemon process shares one memory coordinator per agent directory across its
12
- sessions. Only loaded root sessions whose host provides workers and runtime
11
+ sessions. Loaded root sessions whose host provides workers and runtime
13
12
  lifetime can drive processing. Reader sessions and limited hosts can recall the
14
13
  current artifact without starting workers; readers do not record checkpoints.
15
14
  Processing is event-driven, with targeted recovery retries and writer re-checks
@@ -19,6 +18,27 @@ Models facade. Restricted dreaming sessions and lifecycle settlement go through
19
18
  Sessions. Missing worker or lifetime capabilities disable processing rather than
20
19
  opening an independent, untracked worker.
21
20
 
21
+ `@felan-ai/ext-memory/daemon` exports a default daemon provider and
22
+ `createMemoryDaemonProvider(options?)`. It provides `felan.memory.scheduler@1`,
23
+ requires `felan.host.maintenance@1`, and optionally uses `felan.host.models@1`.
24
+ The provider shares the extension's coordinator and keeps one persistent
25
+ attachment per discovered project, so pending work can run with no loaded
26
+ session. It coalesces coordinator status changes within two seconds and rescans
27
+ every ten minutes. Without host models it tracks projects but disables scheduling.
28
+ The scheduler's `status()` returns each tracked project root and its memory status.
29
+ Hosts can supply a `runtime` instance or a `() => AgentRuntime` factory called
30
+ during activation, extra `projects`, and a project-to-session `selector`.
31
+ Explicit project roots resolve once per activation. `discover` defaults to `true`;
32
+ set it to `false` to track only `projects` without listing stored project directories.
33
+ For shared team memory, pass the team workspace in `projects`, `discover: false`,
34
+ and a selector that returns `{ kind: 'all' }`. By default, session listings include
35
+ sessions whose cwd resolves to the same project, including git subdirectories.
36
+ Checkpoint and history reads use the host's full authorized inventory.
37
+ Attachments use the host's allowed model scope and refresh it on rescan.
38
+ Host drain immediately stops scheduling through every persistent attachment.
39
+ Settlement detaches the provider and releases its
40
+ coordinator reference without closing other sessions' attachments.
41
+
22
42
  The canonical layout remains `<agentDir>/memory/v1/projects/<projectKey>` and
23
43
  retained journals remain under `<agentDir>/sessions/memory`. A session's `.memory`
24
44
  directory is a non-authoritative projection. Existing checkpoints and artifacts
@@ -50,6 +50,14 @@ export interface MemoryHost {
50
50
  recordCheckpoint(checkpoint: SessionCheckpoint): Promise<void>;
51
51
  status(): Promise<MemoryStatus>;
52
52
  }
53
+ export interface MemorySchedulerProjectStatus {
54
+ readonly projectRoot: string;
55
+ readonly status: MemoryStatus;
56
+ }
57
+ export interface MemorySchedulerService {
58
+ status(): Promise<readonly MemorySchedulerProjectStatus[]>;
59
+ }
60
+ export declare const MEMORY_SCHEDULER_SERVICE: import("@felan-ai/agent-core").ServiceContract<MemorySchedulerService>;
53
61
  export interface MemoryInputSession {
54
62
  readonly checkpoint: SessionCheckpoint;
55
63
  readonly metadataPath: string;
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"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"}
package/dist/contracts.js CHANGED
@@ -1,6 +1,8 @@
1
+ import { defineServiceContract } from '@felan-ai/agent-core';
1
2
  export const MEMORY_ARTIFACT_VERSION = 1;
2
3
  export const MEMORY_INPUT_MANIFEST_VERSION = 1;
3
4
  export const MEMORY_INPUT_PROJECTION_VERSION = 1;
5
+ export const MEMORY_SCHEDULER_SERVICE = defineServiceContract('felan.memory.scheduler', 1);
4
6
  export const DEFAULT_MEMORY_ARTIFACT_LIMITS = Object.freeze({
5
7
  maxFiles: 256,
6
8
  maxFileBytes: 256 * 1024,
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAU,CAAC;AAClD,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAU,CAAC;AACxD,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAU,CAAC;AA0F1D,MAAM,CAAC,MAAM,8BAA8B,GAAyB,MAAM,CAAC,MAAM,CAAC;IAChF,QAAQ,EAAE,GAAG;IACb,YAAY,EAAE,GAAG,GAAG,IAAI;IACxB,aAAa,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;CAC/B,CAAC,CAAC"}
1
+ {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAU,CAAC;AAClD,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAU,CAAC;AACxD,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAU,CAAC;AA4E1D,MAAM,CAAC,MAAM,wBAAwB,GAAG,qBAAqB,CAAyB,wBAAwB,EAAE,CAAC,CAAC,CAAC;AAyBnH,MAAM,CAAC,MAAM,8BAA8B,GAAyB,MAAM,CAAC,MAAM,CAAC;IAChF,QAAQ,EAAE,GAAG;IACb,YAAY,EAAE,GAAG,GAAG,IAAI;IACxB,aAAa,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;CAC/B,CAAC,CAAC"}
@@ -0,0 +1,49 @@
1
+ import { type AgentRuntime, type ExtensionServiceAccess, type HostSessionsSelector, type ModelsService } from '@felan-ai/agent-core';
2
+ import { type MemorySchedulerService } from './contracts.js';
3
+ import { type LocalMemoryProject } from './local/project.js';
4
+ export { MEMORY_SCHEDULER_SERVICE } from './contracts.js';
5
+ export type { MemorySchedulerService, MemorySchedulerProjectStatus } from './contracts.js';
6
+ export interface MemoryDaemonProviderOptions {
7
+ readonly runtime?: AgentRuntime | (() => AgentRuntime);
8
+ readonly projects?: readonly string[];
9
+ readonly discover?: boolean;
10
+ readonly selector?: (project: LocalMemoryProject) => HostSessionsSelector;
11
+ }
12
+ export declare function createMemoryDaemonProvider(options?: MemoryDaemonProviderOptions): {
13
+ scope: "daemon";
14
+ provides: import("@felan-ai/agent-core").ServiceContract<MemorySchedulerService>[];
15
+ requires: import("@felan-ai/agent-core").ServiceContract<import("@felan-ai/agent-core").HostMaintenance>[];
16
+ optional: import("@felan-ai/agent-core").ServiceContract<ModelsService>[];
17
+ create({ services }: {
18
+ readonly services: ExtensionServiceAccess;
19
+ }): Promise<{
20
+ implementations: {
21
+ contract: import("@felan-ai/agent-core").ServiceContract<MemorySchedulerService>;
22
+ value: MemorySchedulerService;
23
+ }[];
24
+ busy: () => boolean;
25
+ activate(): Promise<void>;
26
+ settle: (mode: "drain" | "force") => Promise<void>;
27
+ dispose: () => Promise<void>;
28
+ }>;
29
+ };
30
+ declare const _default: {
31
+ scope: "daemon";
32
+ provides: import("@felan-ai/agent-core").ServiceContract<MemorySchedulerService>[];
33
+ requires: import("@felan-ai/agent-core").ServiceContract<import("@felan-ai/agent-core").HostMaintenance>[];
34
+ optional: import("@felan-ai/agent-core").ServiceContract<ModelsService>[];
35
+ create({ services }: {
36
+ readonly services: ExtensionServiceAccess;
37
+ }): Promise<{
38
+ implementations: {
39
+ contract: import("@felan-ai/agent-core").ServiceContract<MemorySchedulerService>;
40
+ value: MemorySchedulerService;
41
+ }[];
42
+ busy: () => boolean;
43
+ activate(): Promise<void>;
44
+ settle: (mode: "drain" | "force") => Promise<void>;
45
+ dispose: () => Promise<void>;
46
+ }>;
47
+ };
48
+ export default _default;
49
+ //# sourceMappingURL=daemon-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"daemon-provider.d.ts","sourceRoot":"","sources":["../src/daemon-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAInB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAA4B,KAAK,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAEvF,OAAO,EAA0D,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAGrH,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,YAAY,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,MAAM,gBAAgB,CAAC;AAE3F,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,CAAC,MAAM,YAAY,CAAC,CAAC;IACvD,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,oBAAoB,CAAC;CAC3E;AAaD,wBAAgB,0BAA0B,CAAC,OAAO,GAAE,2BAAgC;;;;;yBAMrD;QAAE,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAA;KAAE;;;;;;oBA0DxD,OAAO,CAAC,IAAI,CAAC;uBAlCN,OAAO,GAAG,OAAO,KAAG,OAAO,CAAC,IAAI,CAAC;;;EAwK3D;;;;;;yBAhM8B;QAAE,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAA;KAAE;;;;;;oBA0DxD,OAAO,CAAC,IAAI,CAAC;uBAlCN,OAAO,GAAG,OAAO,KAAG,OAAO,CAAC,IAAI,CAAC;;;;AA0K5D,wBAA4C"}
@@ -0,0 +1,231 @@
1
+ import { HOST_MAINTENANCE_SERVICE, HOST_MODELS_SERVICE, HostAgentRuntime, } from '@felan-ai/agent-core';
2
+ import { MEMORY_SCHEDULER_SERVICE } from './contracts.js';
3
+ import { discoverLocalMemoryProjects, resolveLocalMemoryProject } from './local/project.js';
4
+ import { acquireSharedLocalMemoryCoordinator } from './local/shared.js';
5
+ export { MEMORY_SCHEDULER_SERVICE } from './contracts.js';
6
+ const unavailableReason = 'Dream scheduling is unavailable because this host does not provide models; captured memory remains readable.';
7
+ const scopeUnavailableReason = 'Dream scheduling is unavailable until the host model scope can be resolved; captured memory remains readable.';
8
+ const unavailable = () => { throw new Error(unavailableReason); };
9
+ const unavailableModels = {
10
+ getAvailable: async () => [],
11
+ completeSimple: unavailable,
12
+ streamSimple: unavailable,
13
+ getAvailableOfType: async () => [],
14
+ generateImages: unavailable,
15
+ };
16
+ export function createMemoryDaemonProvider(options = {}) {
17
+ return {
18
+ scope: 'daemon',
19
+ provides: [MEMORY_SCHEDULER_SERVICE],
20
+ requires: [HOST_MAINTENANCE_SERVICE],
21
+ optional: [HOST_MODELS_SERVICE],
22
+ async create({ services }) {
23
+ const projects = new Map();
24
+ let shared;
25
+ let active = false;
26
+ let closed = false;
27
+ let activation;
28
+ let scanning;
29
+ let scanRequested = false;
30
+ let unsubscribe;
31
+ let timer;
32
+ let debounce;
33
+ let removeAbortListener;
34
+ let closing;
35
+ let forcing;
36
+ const scheduler = {
37
+ status: async () => {
38
+ await scanning?.catch(() => { });
39
+ return Promise.all([...projects.values()].map(async ({ project, attachment }) => ({
40
+ projectRoot: project.canonicalRoot,
41
+ status: await attachment.status(project.canonicalRoot),
42
+ })));
43
+ },
44
+ };
45
+ const close = (mode) => {
46
+ closed = true;
47
+ if (closing && mode === 'force') {
48
+ const pendingClose = closing;
49
+ forcing ??= Promise.allSettled([...projects.values()].map(({ attachment }) => attachment.settle('force')))
50
+ .then(() => pendingClose).finally(() => { forcing = undefined; });
51
+ return forcing;
52
+ }
53
+ closing ??= (async () => {
54
+ active = false;
55
+ if (timer)
56
+ clearInterval(timer);
57
+ if (debounce)
58
+ clearTimeout(debounce);
59
+ unsubscribe?.();
60
+ removeAbortListener?.();
61
+ const settling = Promise.allSettled([...projects.entries()].map(async ([key, { attachment }]) => {
62
+ try {
63
+ await attachment.settle(mode);
64
+ }
65
+ finally {
66
+ await attachment.detach();
67
+ projects.delete(key);
68
+ }
69
+ }));
70
+ await scanning?.catch(() => { });
71
+ const results = await settling;
72
+ await shared?.release();
73
+ shared = undefined;
74
+ const errors = results.flatMap(result => result.status === 'rejected' ? [result.reason] : []);
75
+ if (errors.length)
76
+ throw new AggregateError(errors, 'Memory scheduler shutdown failed');
77
+ })().catch(error => { closing = undefined; throw error; });
78
+ return closing;
79
+ };
80
+ return {
81
+ implementations: [{ contract: MEMORY_SCHEDULER_SERVICE, value: scheduler }],
82
+ busy: () => [...projects.values()].some(({ attachment }) => attachment.busy()),
83
+ activate() {
84
+ if (closed)
85
+ return Promise.reject(new Error('Memory scheduler is closed'));
86
+ activation ??= (async () => {
87
+ const maintenance = services.get(HOST_MAINTENANCE_SERVICE);
88
+ if (!maintenance)
89
+ throw new Error('Memory scheduler requires host maintenance');
90
+ maintenance.signal.throwIfAborted();
91
+ const models = services.get(HOST_MODELS_SERVICE);
92
+ const runtime = (typeof options.runtime === 'function' ? options.runtime() : options.runtime) ?? new HostAgentRuntime(maintenance.agentDir, {
93
+ agentDir: maintenance.agentDir,
94
+ agentStorageRoot: maintenance.agentDir,
95
+ sessionStorageRoot: maintenance.agentDir,
96
+ pathAccess: 'host',
97
+ });
98
+ const discovery = { runtime, sessions: maintenance.sessions({ kind: 'all' }) };
99
+ const resolvedProjects = new Map();
100
+ const resolveProject = (cwd) => {
101
+ let resolved = resolvedProjects.get(cwd);
102
+ if (!resolved) {
103
+ resolved = resolveLocalMemoryProject(discovery, cwd);
104
+ resolvedProjects.set(cwd, resolved);
105
+ void resolved.catch(() => { resolvedProjects.delete(cwd); });
106
+ }
107
+ return resolved;
108
+ };
109
+ const projectHistory = (project) => ({
110
+ current: discovery.sessions.current,
111
+ history: (id, request) => discovery.sessions.history(id, request),
112
+ checkpoint: (id, request) => discovery.sessions.checkpoint(id, request),
113
+ list: async (filter, request) => {
114
+ const page = await discovery.sessions.list(filter, request);
115
+ const matches = await Promise.all(page.items.map(async (session) => (await resolveProject(session.cwd)).key === project.key));
116
+ return { ...page, items: page.items.filter((_, index) => matches[index]) };
117
+ },
118
+ });
119
+ shared = acquireSharedLocalMemoryCoordinator({ agentDir: maintenance.agentDir });
120
+ active = true;
121
+ const onAbort = () => { void close('drain').catch(() => runtime.logger.warn('Memory scheduler drain failed')); };
122
+ maintenance.signal.addEventListener('abort', onAbort, { once: true });
123
+ removeAbortListener = () => maintenance.signal.removeEventListener('abort', onAbort);
124
+ let scope = { unavailableReason: scopeUnavailableReason };
125
+ const scanProjects = async () => {
126
+ let nextScope;
127
+ let timeout;
128
+ let onScopeAbort;
129
+ try {
130
+ const interrupted = new Promise((_, reject) => {
131
+ timeout = setTimeout(() => reject(new Error('Memory model scope resolution timed out')), 30_000);
132
+ timeout.unref?.();
133
+ onScopeAbort = () => reject(new DOMException('Memory model scope resolution aborted', 'AbortError'));
134
+ maintenance.signal.addEventListener('abort', onScopeAbort, { once: true });
135
+ if (maintenance.signal.aborted)
136
+ onScopeAbort();
137
+ });
138
+ const allowed = await Promise.race([maintenance.allowedModels(maintenance.signal), interrupted]);
139
+ const scopedModels = allowed?.flatMap(selection => {
140
+ const model = maintenance.modelRuntime.getModel(selection.provider, selection.id);
141
+ return model ? [model] : [];
142
+ });
143
+ nextScope = { models: scopedModels };
144
+ }
145
+ catch (error) {
146
+ if (error instanceof Error && error.name === 'AbortError')
147
+ nextScope = scope;
148
+ else {
149
+ if (active)
150
+ runtime.logger.warn('Memory model scope is unavailable; scheduling remains paused');
151
+ nextScope = { unavailableReason: scopeUnavailableReason };
152
+ }
153
+ }
154
+ finally {
155
+ if (timeout)
156
+ clearTimeout(timeout);
157
+ if (onScopeAbort)
158
+ maintenance.signal.removeEventListener('abort', onScopeAbort);
159
+ }
160
+ if (!active)
161
+ return;
162
+ if (JSON.stringify(scope) !== JSON.stringify(nextScope)) {
163
+ scope = nextScope;
164
+ for (const { attachment } of projects.values()) {
165
+ attachment.setModelSelection(undefined, scope.models, models?.classifier);
166
+ attachment.setScheduling(!!models && !scope.unavailableReason, models ? scope.unavailableReason : unavailableReason);
167
+ }
168
+ }
169
+ const discovered = options.discover === false ? [] : await discoverLocalMemoryProjects(discovery, maintenance.agentDir);
170
+ discovered.push(...await Promise.all((options.projects ?? []).map(resolveProject)));
171
+ for (const project of discovered) {
172
+ if (!active)
173
+ return;
174
+ const existing = projects.get(project.key);
175
+ if (existing) {
176
+ await existing.attachment.status(existing.project.canonicalRoot);
177
+ continue;
178
+ }
179
+ const attachment = shared.coordinator.attach({
180
+ environment: {
181
+ runtime,
182
+ sessions: options.selector ? maintenance.sessions(options.selector(project)) : projectHistory(project),
183
+ openWorker: maintenance.openWorker,
184
+ },
185
+ models: models ?? unavailableModels,
186
+ scheduling: !!models && !scope.unavailableReason,
187
+ persistent: true,
188
+ ...(scope.models === undefined ? {} : { scopedModels: scope.models }),
189
+ ...(!models ? { unavailableReason } : scope.unavailableReason ? { unavailableReason: scope.unavailableReason } : {}),
190
+ ...(models?.classifier ? { classifier: models.classifier } : {}),
191
+ });
192
+ projects.set(project.key, { project, attachment });
193
+ await attachment.status(project.canonicalRoot);
194
+ }
195
+ };
196
+ const requestScan = () => {
197
+ if (!active)
198
+ return Promise.resolve();
199
+ scanRequested = true;
200
+ scanning ??= (async () => {
201
+ do {
202
+ scanRequested = false;
203
+ await scanProjects();
204
+ } while (scanRequested && active);
205
+ })().finally(() => { scanning = undefined; });
206
+ return scanning;
207
+ };
208
+ const rescan = () => {
209
+ void requestScan().catch(() => runtime.logger.warn('Memory project discovery failed'));
210
+ };
211
+ unsubscribe = shared.coordinator.subscribeStatusChanges(() => {
212
+ if (!active || debounce)
213
+ return;
214
+ debounce = setTimeout(() => { debounce = undefined; rescan(); }, 2_000);
215
+ debounce.unref?.();
216
+ });
217
+ timer = setInterval(() => { resolvedProjects.clear(); rescan(); }, 10 * 60 * 1_000);
218
+ timer.unref?.();
219
+ // The daemon reports ready only after activation, so the first scan must not hold it.
220
+ rescan();
221
+ })();
222
+ return activation;
223
+ },
224
+ settle: close,
225
+ dispose: () => close('force'),
226
+ };
227
+ },
228
+ };
229
+ }
230
+ export default createMemoryDaemonProvider();
231
+ //# sourceMappingURL=daemon-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"daemon-provider.js","sourceRoot":"","sources":["../src/daemon-provider.ts"],"names":[],"mappings":"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"}
package/dist/data.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  export { formatMemoryText } from './diagnostics.js';
2
2
  export type { LocalSessionHistory, MemoryHistoryOptions, MemoryHistorySession, MemoryHistorySnapshot } from './local/history.js';
3
+ export type { MemoryTranscriptHintData } from './local/transcript-pages.js';
3
4
  //# sourceMappingURL=data.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../src/data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../src/data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACjI,YAAY,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -1,7 +1,7 @@
1
- import type { AgentRuntime, HostWorkerLauncher, SessionsService } from '@felan-ai/agent-core';
1
+ import type { AgentRuntime, HostWorkerLauncher, SessionsHistory } from '@felan-ai/agent-core';
2
2
  export interface MemoryContext {
3
3
  readonly runtime: AgentRuntime;
4
- readonly sessions: SessionsService;
4
+ readonly sessions: SessionsHistory;
5
5
  readonly openWorker?: HostWorkerLauncher;
6
6
  }
7
7
  export declare function removeIfPresent(context: MemoryContext, path: string, options?: {
@@ -4,6 +4,7 @@ export interface MemoryControlPresentationHost {
4
4
  showHistory(ctx: ExtensionContext, agentDir: string, status: string, signal: AbortSignal): Promise<void>;
5
5
  openDirectory(directory: string, signal: AbortSignal): Promise<void>;
6
6
  }
7
+ /** @internal */
7
8
  export type MemoryControlCoordinator = Pick<LocalMemoryAttachment, 'status' | 'runNow' | 'retryProject' | 'canonicalDirectory' | 'subscribeStatusChanges' | 'setSelectedModel'>;
8
9
  export interface CreateMemoryControlExtensionOptions {
9
10
  readonly coordinator: MemoryControlCoordinator;
@@ -1 +1 @@
1
- {"version":3,"file":"control.d.ts","sourceRoot":"","sources":["../../src/local/control.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,KAAK,EAAE,qBAAqB,EAAqB,MAAM,kBAAkB,CAAC;AAKjF,MAAM,WAAW,6BAA6B;IAC5C,WAAW,CAAC,GAAG,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzG,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtE;AAED,MAAM,MAAM,wBAAwB,GAAG,IAAI,CAAC,qBAAqB,EAC/D,QAAQ,GAAG,QAAQ,GAAG,cAAc,GAAG,oBAAoB,GAAG,wBAAwB,GAAG,kBAAkB,CAAC,CAAC;AAE/G,MAAM,WAAW,mCAAmC;IAClD,QAAQ,CAAC,WAAW,EAAE,wBAAwB,CAAC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,6BAA6B,CAAC;CACtD;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,mCAAmC,GAC3C,cAAc,CAqKhB"}
1
+ {"version":3,"file":"control.d.ts","sourceRoot":"","sources":["../../src/local/control.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,KAAK,EAAE,qBAAqB,EAAqB,MAAM,kBAAkB,CAAC;AAKjF,MAAM,WAAW,6BAA6B;IAC5C,WAAW,CAAC,GAAG,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzG,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtE;AAED,gBAAgB;AAChB,MAAM,MAAM,wBAAwB,GAAG,IAAI,CAAC,qBAAqB,EAC/D,QAAQ,GAAG,QAAQ,GAAG,cAAc,GAAG,oBAAoB,GAAG,wBAAwB,GAAG,kBAAkB,CAAC,CAAC;AAE/G,MAAM,WAAW,mCAAmC;IAClD,QAAQ,CAAC,WAAW,EAAE,wBAAwB,CAAC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,6BAA6B,CAAC;CACtD;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,mCAAmC,GAC3C,cAAc,CAqKhB"}
@@ -1 +1 @@
1
- {"version":3,"file":"control.js","sourceRoot":"","sources":["../../src/local/control.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"control.js","sourceRoot":"","sources":["../../src/local/control.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,7 @@ export interface LocalMemoryAttachmentOptions {
26
26
  readonly environment: MemoryContext;
27
27
  readonly models: ModelsService;
28
28
  readonly scheduling: boolean;
29
+ readonly persistent?: boolean;
29
30
  readonly unavailableReason?: string;
30
31
  readonly selectedModel?: Model<Api>;
31
32
  readonly scopedModels?: readonly Model<Api>[];
@@ -41,6 +42,7 @@ export interface LocalMemoryAttachment {
41
42
  canonicalDirectory(cwd: string): Promise<string>;
42
43
  setSelectedModel(model: Model<Api> | undefined): void;
43
44
  setModelSelection(model: Model<Api> | undefined, scopedModels: readonly Model<Api>[] | undefined, classifier?: Classifier): void;
45
+ setScheduling(scheduling: boolean, unavailableReason?: string): void;
44
46
  subscribeStatusChanges(listener: () => void): () => void;
45
47
  busy(): boolean;
46
48
  settle(mode: 'drain' | 'force'): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../src/local/coordinator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../src/local/coordinator.ts"],"names":[],"mappings":"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"}