abmind 0.2.7-alpha.1 → 0.2.7-alpha.2

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 (51) hide show
  1. package/dist/cli/abmind-deps.d.ts +3 -0
  2. package/dist/cli/abmind-deps.d.ts.map +1 -1
  3. package/dist/cli/abmind-deps.js +28 -11
  4. package/dist/cli/abmind-deps.js.map +1 -1
  5. package/dist/cli/abmind-doctor.js +30 -2
  6. package/dist/cli/abmind-doctor.js.map +1 -1
  7. package/dist/cli/abmind-install.js +4 -34
  8. package/dist/cli/abmind-install.js.map +1 -1
  9. package/dist/cli/abmind-update.js +34 -3
  10. package/dist/cli/abmind-update.js.map +1 -1
  11. package/dist/cli/abmind.js +0 -0
  12. package/dist/src/context-checkpoint-store.d.ts +99 -0
  13. package/dist/src/context-checkpoint-store.d.ts.map +1 -0
  14. package/dist/src/context-checkpoint-store.js +196 -0
  15. package/dist/src/context-checkpoint-store.js.map +1 -0
  16. package/dist/src/deploy-lib/index.d.ts +1 -0
  17. package/dist/src/deploy-lib/index.d.ts.map +1 -1
  18. package/dist/src/deploy-lib/index.js +1 -0
  19. package/dist/src/deploy-lib/index.js.map +1 -1
  20. package/dist/src/deploy-lib/shared-native-deps-activate.d.ts +11 -0
  21. package/dist/src/deploy-lib/shared-native-deps-activate.d.ts.map +1 -0
  22. package/dist/src/deploy-lib/shared-native-deps-activate.js +102 -0
  23. package/dist/src/deploy-lib/shared-native-deps-activate.js.map +1 -0
  24. package/dist/src/deploy-lib/shared-native-deps-lock.d.ts +8 -0
  25. package/dist/src/deploy-lib/shared-native-deps-lock.d.ts.map +1 -0
  26. package/dist/src/deploy-lib/shared-native-deps-lock.js +102 -0
  27. package/dist/src/deploy-lib/shared-native-deps-lock.js.map +1 -0
  28. package/dist/src/deploy-lib/shared-native-deps-manifest.d.ts +12 -0
  29. package/dist/src/deploy-lib/shared-native-deps-manifest.d.ts.map +1 -0
  30. package/dist/src/deploy-lib/shared-native-deps-manifest.js +110 -0
  31. package/dist/src/deploy-lib/shared-native-deps-manifest.js.map +1 -0
  32. package/dist/src/deploy-lib/shared-native-deps-paths.d.ts +12 -0
  33. package/dist/src/deploy-lib/shared-native-deps-paths.d.ts.map +1 -0
  34. package/dist/src/deploy-lib/shared-native-deps-paths.js +29 -0
  35. package/dist/src/deploy-lib/shared-native-deps-paths.js.map +1 -0
  36. package/dist/src/deploy-lib/shared-native-deps-types.d.ts +48 -0
  37. package/dist/src/deploy-lib/shared-native-deps-types.d.ts.map +1 -0
  38. package/dist/src/deploy-lib/shared-native-deps-types.js +3 -0
  39. package/dist/src/deploy-lib/shared-native-deps-types.js.map +1 -0
  40. package/dist/src/deploy-lib/shared-native-deps.d.ts +24 -0
  41. package/dist/src/deploy-lib/shared-native-deps.d.ts.map +1 -0
  42. package/dist/src/deploy-lib/shared-native-deps.js +78 -0
  43. package/dist/src/deploy-lib/shared-native-deps.js.map +1 -0
  44. package/dist/src/index.d.ts +2 -0
  45. package/dist/src/index.d.ts.map +1 -1
  46. package/dist/src/index.js +2 -0
  47. package/dist/src/index.js.map +1 -1
  48. package/dist/src/memory-db.d.ts.map +1 -1
  49. package/dist/src/memory-db.js +33 -0
  50. package/dist/src/memory-db.js.map +1 -1
  51. package/package.json +7 -3
@@ -0,0 +1,29 @@
1
+ import { homedir } from "node:os";
2
+ import { join } from "node:path";
3
+ const LOCK_DIR_NAME = ".native-deps.lock";
4
+ const STAGING_DIR_NAME = ".native-deps-staging";
5
+ const MANIFEST_FILE = "native-deps.manifest.json";
6
+ const OWNER_FILE = "owner.json";
7
+ export { LOCK_DIR_NAME, STAGING_DIR_NAME, MANIFEST_FILE, OWNER_FILE };
8
+ function sharedRoot() {
9
+ return process.env["AB_SHARED_DEPS_ROOT"] ?? join(homedir(), ".local", "lib");
10
+ }
11
+ export function resolveSharedNativeRoot() {
12
+ return join(sharedRoot(), "node_modules");
13
+ }
14
+ export function lockDirPath() {
15
+ return join(sharedRoot(), LOCK_DIR_NAME);
16
+ }
17
+ export function manifestFilePath() {
18
+ return join(sharedRoot(), MANIFEST_FILE);
19
+ }
20
+ export function stagingDirPath() {
21
+ return join(sharedRoot(), STAGING_DIR_NAME);
22
+ }
23
+ export function packageLivePath(pkgName) {
24
+ return join(resolveSharedNativeRoot(), pkgName);
25
+ }
26
+ export function packageStagingPath(opId, pkgName) {
27
+ return join(stagingDirPath(), opId, pkgName);
28
+ }
29
+ //# sourceMappingURL=shared-native-deps-paths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-native-deps-paths.js","sourceRoot":"","sources":["../../../src/deploy-lib/shared-native-deps-paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,aAAa,GAAG,mBAAmB,CAAC;AAC1C,MAAM,gBAAgB,GAAG,sBAAsB,CAAC;AAChD,MAAM,aAAa,GAAG,2BAA2B,CAAC;AAClD,MAAM,UAAU,GAAG,YAAY,CAAC;AAEhC,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;AAEtE,SAAS,UAAU;IACjB,OAAO,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;AAChF,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,IAAI,CAAC,UAAU,EAAE,EAAE,cAAc,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,WAAW;IACzB,OAAO,IAAI,CAAC,UAAU,EAAE,EAAE,aAAa,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO,IAAI,CAAC,UAAU,EAAE,EAAE,aAAa,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,OAAO,IAAI,CAAC,UAAU,EAAE,EAAE,gBAAgB,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAe;IAC7C,OAAO,IAAI,CAAC,uBAAuB,EAAE,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY,EAAE,OAAe;IAC9D,OAAO,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAC/C,CAAC"}
@@ -0,0 +1,48 @@
1
+ export declare const PROTOCOL_VERSION = 1;
2
+ export declare const PROTOCOL_HASH = "v1-20260712";
3
+ export type NativeConsumer = "abtars" | "abmind";
4
+ export interface LockOwner {
5
+ protocolVersion: 1;
6
+ token: string;
7
+ product: NativeConsumer;
8
+ operation: string;
9
+ pid: number;
10
+ hostname: string;
11
+ processStartedAt?: number;
12
+ acquiredAt: string;
13
+ }
14
+ export interface NativePackageRecord {
15
+ version: string;
16
+ nodeAbi: string;
17
+ nodeVersion: string;
18
+ platform: NodeJS.Platform;
19
+ arch: string;
20
+ contentHash: string;
21
+ installedAt: string;
22
+ installedBy: NativeConsumer;
23
+ consumers: NativeConsumer[];
24
+ probe: string;
25
+ }
26
+ export interface SharedNativeManifest {
27
+ protocolVersion: 1;
28
+ generation: number;
29
+ updatedAt: string;
30
+ packages: Record<string, NativePackageRecord>;
31
+ }
32
+ export interface PackageRequest {
33
+ name: string;
34
+ version: string;
35
+ nodeAbi: string;
36
+ nodeVersion: string;
37
+ platform: NodeJS.Platform;
38
+ arch: string;
39
+ sourceDir: string;
40
+ probeModule: string;
41
+ }
42
+ export type CompatibilityKind = "reuse" | "install" | "conflict";
43
+ export interface CompatibilityDecision {
44
+ kind: CompatibilityKind;
45
+ reason: string;
46
+ record?: NativePackageRecord;
47
+ }
48
+ //# sourceMappingURL=shared-native-deps-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-native-deps-types.d.ts","sourceRoot":"","sources":["../../../src/deploy-lib/shared-native-deps-types.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAClC,eAAO,MAAM,aAAa,gBAAgB,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEjD,MAAM,WAAW,SAAS;IACxB,eAAe,EAAE,CAAC,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,cAAc,CAAC;IAC5B,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,eAAe,EAAE,CAAC,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,SAAS,GAAG,UAAU,CAAC;AAEjE,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,iBAAiB,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,mBAAmB,CAAC;CAC9B"}
@@ -0,0 +1,3 @@
1
+ export const PROTOCOL_VERSION = 1;
2
+ export const PROTOCOL_HASH = "v1-20260712";
3
+ //# sourceMappingURL=shared-native-deps-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-native-deps-types.js","sourceRoot":"","sources":["../../../src/deploy-lib/shared-native-deps-types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAClC,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAC"}
@@ -0,0 +1,24 @@
1
+ import type { NativeConsumer, PackageRequest, NativePackageRecord } from "./shared-native-deps-types.js";
2
+ export interface EnsureResult {
3
+ action: "reused" | "installed";
4
+ record: NativePackageRecord;
5
+ }
6
+ export declare class NativeDepsError extends Error {
7
+ constructor(msg: string);
8
+ }
9
+ export declare function ensureSharedDependency(product: NativeConsumer, request: PackageRequest, nodeExec: string): EnsureResult;
10
+ export interface SharedNativeDepsStatus {
11
+ lockHeld: boolean;
12
+ lockOwner?: string;
13
+ manifestGeneration: number;
14
+ packageCount: number;
15
+ packages: Array<{
16
+ name: string;
17
+ version: string;
18
+ consumers: string[];
19
+ diskHash: string;
20
+ onDisk: boolean;
21
+ }>;
22
+ }
23
+ export declare function diagnoseSharedNativeDeps(): SharedNativeDepsStatus;
24
+ //# sourceMappingURL=shared-native-deps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-native-deps.d.ts","sourceRoot":"","sources":["../../../src/deploy-lib/shared-native-deps.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAIzG,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC/B,MAAM,EAAE,mBAAmB,CAAC;CAC7B;AAED,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,GAAG,EAAE,MAAM;CACxB;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,cAAc,EACvB,QAAQ,EAAE,MAAM,GACf,YAAY,CAwCd;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CAC5G;AAED,wBAAgB,wBAAwB,IAAI,sBAAsB,CA6BjE"}
@@ -0,0 +1,78 @@
1
+ import { generateLockToken, acquireLock, releaseLock } from "./shared-native-deps-lock.js";
2
+ import { readManifest, createEmptyManifest, writeManifest, resolveCompatibility, addConsumer } from "./shared-native-deps-manifest.js";
3
+ import { stagePackage, hashDirectory, probePackage, activatePackage, rollbackActivation } from "./shared-native-deps-activate.js";
4
+ import { packageLivePath, packageStagingPath, lockDirPath } from "./shared-native-deps-paths.js";
5
+ import { existsSync, readFileSync } from "node:fs";
6
+ import { join } from "node:path";
7
+ export class NativeDepsError extends Error {
8
+ constructor(msg) { super(msg); this.name = "NativeDepsError"; }
9
+ }
10
+ export function ensureSharedDependency(product, request, nodeExec) {
11
+ const token = generateLockToken();
12
+ acquireLock(product, `install:${request.name}`, token);
13
+ try {
14
+ const manifest = readManifest() ?? createEmptyManifest();
15
+ const diskExists = existsSync(packageLivePath(request.name));
16
+ const decision = resolveCompatibility(request, manifest, diskExists);
17
+ if (decision.kind === "conflict") {
18
+ throw new NativeDepsError(decision.reason);
19
+ }
20
+ if (decision.kind === "reuse" && decision.record) {
21
+ const updated = addConsumer(manifest, request.name, product);
22
+ writeManifest(updated);
23
+ return { action: "reused", record: decision.record };
24
+ }
25
+ const opId = stagePackage(request.sourceDir, request.name);
26
+ const hash = hashDirectory(packageStagingPath(opId, request.name));
27
+ const probeOk = probePackage(nodeExec, packageStagingPath(opId, request.name), request.probeModule);
28
+ const probeLabel = probeOk ? `probe:${request.probeModule}=ok` : `probe:${request.probeModule}=fail`;
29
+ try {
30
+ const { record: nativeRecord } = activatePackage(opId, request.name, request, hash, probeLabel);
31
+ const afterManifest = readManifest();
32
+ if (afterManifest) {
33
+ const withConsumer = addConsumer(afterManifest, request.name, product);
34
+ writeManifest(withConsumer);
35
+ }
36
+ return { action: "installed", record: nativeRecord };
37
+ }
38
+ catch (err) {
39
+ rollbackActivation(opId, request.name);
40
+ throw new NativeDepsError(`Activation failed: ${err instanceof Error ? err.message : String(err)}`);
41
+ }
42
+ }
43
+ finally {
44
+ releaseLock(token);
45
+ }
46
+ }
47
+ export function diagnoseSharedNativeDeps() {
48
+ const lockHeld = existsSync(lockDirPath());
49
+ let lockOwner;
50
+ if (lockHeld) {
51
+ try {
52
+ const raw = readFileSync(join(lockDirPath(), "owner.json"), "utf-8");
53
+ lockOwner = JSON.parse(raw).product;
54
+ }
55
+ catch { /* ignore */ }
56
+ }
57
+ const manifest = readManifest();
58
+ const packages = [];
59
+ if (manifest) {
60
+ for (const [name, rec] of Object.entries(manifest.packages)) {
61
+ packages.push({
62
+ name,
63
+ version: rec.version,
64
+ consumers: [...rec.consumers],
65
+ diskHash: rec.contentHash,
66
+ onDisk: existsSync(packageLivePath(name)),
67
+ });
68
+ }
69
+ }
70
+ return {
71
+ lockHeld,
72
+ lockOwner,
73
+ manifestGeneration: manifest?.generation ?? -1,
74
+ packageCount: packages.length,
75
+ packages,
76
+ };
77
+ }
78
+ //# sourceMappingURL=shared-native-deps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-native-deps.js","sourceRoot":"","sources":["../../../src/deploy-lib/shared-native-deps.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,8 @@ export { renderForContext } from "./context-tier-renderer.js";
23
23
  export type { TieredContextResult, TierBreakdown } from "./context-tier-renderer.js";
24
24
  export { ContextOrchestrator } from "./context-orchestrator.js";
25
25
  export type { ContextOrchestratorConfig, ContextResult, ContextQueryOptions, SummarizeFn, CompactionResult, CompactionEvent, CompactionLevel } from "./context-orchestrator.js";
26
+ export { CheckpointStore, computeDigest } from "./context-checkpoint-store.js";
27
+ export type { CheckpointRecord, ActiveCheckpointPointer, StableContextView, StableContextBudget } from "./context-checkpoint-store.js";
26
28
  export { runSleepCycle, SleepInitError, ESSENTIAL_STEPS } from "./sleep/orchestrator.js";
27
29
  export type { SleepCompletionRequest, SleepRuntime, SleepRunMode, SleepRunOptions, SleepTerminalStatus, SleepStepSummary, SleepRunResult, SleepEvent } from "./sleep/contracts.js";
28
30
  export { type Level, parseLevel, DEFAULT_LEVEL } from "./sleep/levels.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/src/index.js CHANGED
@@ -17,6 +17,8 @@ export { ContextEngine } from "./context-engine.js";
17
17
  export { CHARS_PER_TOKEN, TAIL_TOKENS, TAIL_MIN_MESSAGES, MAX_CHUNK_TOKENS, COMPACT_TRIGGER_PCT, CONDENSATION_THRESHOLD_TOKENS } from "./context-engine.js";
18
18
  export { renderForContext } from "./context-tier-renderer.js";
19
19
  export { ContextOrchestrator } from "./context-orchestrator.js";
20
+ // ── Checkpoint Store ────────────────────────────────────────────────────────
21
+ export { CheckpointStore, computeDigest } from "./context-checkpoint-store.js";
20
22
  // ── Sleep (public entry points only) ────────────────────────────────────────
21
23
  export { runSleepCycle, SleepInitError, ESSENTIAL_STEPS } from "./sleep/orchestrator.js";
22
24
  export { parseLevel, DEFAULT_LEVEL } from "./sleep/levels.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,+EAA+E;AAE/E,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAE9E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAqBpD,+EAA+E;AAE/E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGzD,+EAA+E;AAE/E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAC5J,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGhE,+EAA+E;AAE/E,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAEzF,OAAO,EAAc,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,kFAAkF;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,+EAA+E;AAE/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,+EAA+E;AAE/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAErE,+EAA+E;AAE/E,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE7G,+EAA+E;AAE/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,+EAA+E;AAE/E,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,+EAA+E;AAE/E,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG1D,4CAA4C;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAqB7D,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAE5K,wBAAwB;AACxB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,oBAAoB,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE5L,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory-db.d.ts","sourceRoot":"","sources":["../../src/memory-db.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,gBAAgB,CAAC;AAwKhD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC,QAAQ,CAazE"}
1
+ {"version":3,"file":"memory-db.d.ts","sourceRoot":"","sources":["../../src/memory-db.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,gBAAgB,CAAC;AAyMhD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC,QAAQ,CAazE"}
@@ -154,6 +154,39 @@ function ensureSchema(db) {
154
154
  created_at INTEGER NOT NULL
155
155
  );
156
156
  CREATE INDEX IF NOT EXISTS idx_ctx_summaries_chat ON context_summaries(chat_id, archived, created_at);
157
+
158
+ -- #1335: cumulative checkpoint lineage
159
+ CREATE TABLE IF NOT EXISTS context_checkpoints (
160
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
161
+ chat_id TEXT NOT NULL,
162
+ previous_checkpoint_id INTEGER,
163
+ source_message_start INTEGER NOT NULL,
164
+ source_message_end INTEGER NOT NULL,
165
+ first_kept_message_id INTEGER NOT NULL,
166
+ content TEXT NOT NULL,
167
+ source_token_count INTEGER NOT NULL,
168
+ checkpoint_token_count INTEGER NOT NULL,
169
+ source_digest TEXT NOT NULL,
170
+ checkpoint_digest TEXT NOT NULL,
171
+ summarizer_model TEXT,
172
+ summarizer_provider TEXT,
173
+ active_request_model TEXT NOT NULL,
174
+ reason TEXT NOT NULL,
175
+ budget_json TEXT NOT NULL,
176
+ classification INTEGER NOT NULL,
177
+ prompt_version TEXT NOT NULL,
178
+ schema_version INTEGER NOT NULL,
179
+ serializer_version TEXT NOT NULL,
180
+ created_at INTEGER NOT NULL
181
+ );
182
+ CREATE INDEX IF NOT EXISTS idx_checkpoints_chat ON context_checkpoints(chat_id, created_at);
183
+
184
+ CREATE TABLE IF NOT EXISTS active_context_checkpoint (
185
+ chat_id TEXT PRIMARY KEY,
186
+ checkpoint_id INTEGER NOT NULL,
187
+ generation INTEGER NOT NULL,
188
+ updated_at INTEGER NOT NULL
189
+ );
157
190
  `);
158
191
  }
159
192
  // ── Public API ──────────────────────────────────────────────────────────────
@@ -1 +1 @@
1
- {"version":3,"file":"memory-db.js","sourceRoot":"","sources":["../../src/memory-db.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE1C,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,IAAI,SAAS,GAAgC,IAAI,CAAC;AAClD,SAAS,WAAW;IAClB,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,gBAAgB,CAAC,CAAC;QACtF,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAyB,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,QAAQ,CAAC,gBAAgB,CAAyB,CAAC;QACjE,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,GAAG,GAAG,WAAW,CAAC;AAGxB,iFAAiF;AAEjF,SAAS,iBAAiB,CAAC,EAA0B;IACnD,EAAE,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,IAAa,EAAE,EAAE;QAC5C,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC1C,OAAO,IAAI,CAAC,OAAO,CAAC,qDAAqD,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/G,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,IAAa,EAAE,EAAE;QAChD,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC1C,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7E,CAAC,CAAC,CAAC;AACL,CAAC;AAED,+EAA+E;AAE/E,SAAS,YAAY,CAAC,EAA0B;IAC9C,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyHP,CAAC,CAAC;AAEL,CAAC;AAED,+EAA+E;AAE/E;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc;IAC/C,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhD,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChC,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAChC,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAE/B,iBAAiB,CAAC,EAAE,CAAC,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,CAAC;IAEjB,OAAO,CAAC,GAAG,EAAE,2BAA2B,MAAM,EAAE,CAAC,CAAC;IAClD,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"memory-db.js","sourceRoot":"","sources":["../../src/memory-db.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE1C,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,IAAI,SAAS,GAAgC,IAAI,CAAC;AAClD,SAAS,WAAW;IAClB,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,gBAAgB,CAAC,CAAC;QACtF,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAyB,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,QAAQ,CAAC,gBAAgB,CAAyB,CAAC;QACjE,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,GAAG,GAAG,WAAW,CAAC;AAGxB,iFAAiF;AAEjF,SAAS,iBAAiB,CAAC,EAA0B;IACnD,EAAE,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,IAAa,EAAE,EAAE;QAC5C,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC1C,OAAO,IAAI,CAAC,OAAO,CAAC,qDAAqD,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/G,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,IAAa,EAAE,EAAE;QAChD,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC1C,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7E,CAAC,CAAC,CAAC;AACL,CAAC;AAED,+EAA+E;AAE/E,SAAS,YAAY,CAAC,EAA0B;IAC9C,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0JP,CAAC,CAAC;AAEL,CAAC;AAED,+EAA+E;AAE/E;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc;IAC/C,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhD,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChC,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAChC,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAE/B,iBAAiB,CAAC,EAAE,CAAC,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,CAAC;IAEjB,OAAO,CAAC,GAAG,EAAE,2BAA2B,MAAM,EAAE,CAAC,CAAC;IAClD,OAAO,EAAE,CAAC;AACZ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "abmind",
3
- "version": "0.2.7-alpha.1",
3
+ "version": "0.2.7-alpha.2",
4
4
  "description": "Standalone AI agent memory system — SQLite, FTS5, embeddings, 4-layer recall, sleep maintenance",
5
5
  "keywords": [
6
6
  "ai",
@@ -41,6 +41,10 @@
41
41
  "types": "./dist/src/deploy-lib/index.d.ts",
42
42
  "default": "./dist/src/deploy-lib/index.js"
43
43
  },
44
+ "./deploy-lib/*": {
45
+ "types": "./dist/src/deploy-lib/*",
46
+ "default": "./dist/src/deploy-lib/*"
47
+ },
44
48
  "./pi-plugin": {
45
49
  "types": "./dist/src/pi-plugin/index.d.ts",
46
50
  "default": "./dist/src/pi-plugin/index.js"
@@ -63,9 +67,9 @@
63
67
  "access": "public"
64
68
  },
65
69
  "scripts": {
66
- "build": "tsc",
70
+ "build": "rm -rf dist && tsc",
67
71
  "postbuild": "chmod +x dist/cli/abmind.js",
68
- "prepare": "tsc",
72
+ "prepare": "rm -rf dist && tsc",
69
73
  "test": "vitest run --dir src",
70
74
  "test:watch": "vitest --dir src",
71
75
  "typecheck": "tsc --noEmit"