Reproduce
REPRODUCE — agent-memory-manager
Every number in verification-report.json is reproducible from a clean checkout with Node.js >= 20 (developed and verified on Node v24). No network or external database is required — Postgres + pgvector run in-process via PGlite (WASM).
1. Install + build
cd delivery-package/agent-memory-manager
npm install
npm run build
2. Run the unit suite (24 tests)
npm test # node --test "dist/test/**/*.test.js"
3. Run the full verification harness
node verify.mjs
This (a) compiles TypeScript, (b) runs the unit suite, (c) loads a seeded synthetic corpus (default 12 topics × 12 = 144 memories) into both the InMemoryStore and a real PGlite Postgres+pgvector engine, (d) measures retrieval precision@k against the known topic answer key on both stores, (e) checks pgvector-vs-JS cosine parity, decay-driven demotion, tier eviction, fleet replication, and metrics, then (f) writes verification-report.json, verification-report.md, and evidence/verification-results.json.
Smaller/faster run:
AMM_VERIFY_TOPICS=8 AMM_VERIFY_PER=8 node verify.mjs
Expected: Verification PASS: 20/20 checks (100%), in-memory and pgvector precision@1 = 1.0, precision@5 ≈ 0.98, and an identical corpus fingerprint across runs (6cd045a8… for the default seed/size).
4. Run the worked fleet-monitoring example
node --import tsx examples/fleet-monitoring-agent.ts
5. Reproduce against an external Postgres server (optional)
Bring up any Postgres with the vector extension available, then:
import pg from 'pg';
import { PgVectorStore, MemoryManager } from './dist/src/index.js';
const pool = new pg.Pool({ connectionString: process.env.DATABASE_URL });
const store = new PgVectorStore(pool, { dimensions: 256 });
await store.init();
const memory = new MemoryManager({ store, namespace: 'repro' });
The SQL executed is identical to the PGlite path.
6. Verify integrity of this package
# from the repo root
node tools/forge-proof-verify.mjs --outcome delivery-package/agent-memory-manager