@hivehub/rulebook 4.4.1 → 5.0.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 (82) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/README.md +45 -4
  3. package/dist/cli/commands.d.ts.map +1 -1
  4. package/dist/cli/commands.js +86 -0
  5. package/dist/cli/commands.js.map +1 -1
  6. package/dist/core/agent-template-engine.d.ts +51 -0
  7. package/dist/core/agent-template-engine.d.ts.map +1 -0
  8. package/dist/core/agent-template-engine.js +273 -0
  9. package/dist/core/agent-template-engine.js.map +1 -0
  10. package/dist/core/complexity-detector.d.ts +36 -0
  11. package/dist/core/complexity-detector.d.ts.map +1 -0
  12. package/dist/core/complexity-detector.js +254 -0
  13. package/dist/core/complexity-detector.js.map +1 -0
  14. package/dist/core/generator.d.ts +1 -0
  15. package/dist/core/generator.d.ts.map +1 -1
  16. package/dist/core/generator.js +21 -3
  17. package/dist/core/generator.js.map +1 -1
  18. package/dist/core/indexer/background-indexer.d.ts +2 -2
  19. package/dist/core/indexer/background-indexer.d.ts.map +1 -1
  20. package/dist/core/indexer/background-indexer.js +55 -61
  21. package/dist/core/indexer/background-indexer.js.map +1 -1
  22. package/dist/core/rule-engine.d.ts +64 -0
  23. package/dist/core/rule-engine.d.ts.map +1 -0
  24. package/dist/core/rule-engine.js +333 -0
  25. package/dist/core/rule-engine.js.map +1 -0
  26. package/dist/core/task-manager.d.ts +4 -0
  27. package/dist/core/task-manager.d.ts.map +1 -1
  28. package/dist/core/task-manager.js +39 -24
  29. package/dist/core/task-manager.js.map +1 -1
  30. package/dist/index.js +182 -0
  31. package/dist/index.js.map +1 -1
  32. package/dist/mcp/rulebook-server.d.ts.map +1 -1
  33. package/dist/mcp/rulebook-server.js +278 -26
  34. package/dist/mcp/rulebook-server.js.map +1 -1
  35. package/dist/memory/hnsw-index.d.ts +3 -1
  36. package/dist/memory/hnsw-index.d.ts.map +1 -1
  37. package/dist/memory/hnsw-index.js +121 -18
  38. package/dist/memory/hnsw-index.js.map +1 -1
  39. package/dist/memory/memory-manager.d.ts +2 -0
  40. package/dist/memory/memory-manager.d.ts.map +1 -1
  41. package/dist/memory/memory-manager.js +16 -7
  42. package/dist/memory/memory-manager.js.map +1 -1
  43. package/dist/memory/memory-store.d.ts +15 -3
  44. package/dist/memory/memory-store.d.ts.map +1 -1
  45. package/dist/memory/memory-store.js +327 -274
  46. package/dist/memory/memory-store.js.map +1 -1
  47. package/dist/types.d.ts +17 -0
  48. package/dist/types.d.ts.map +1 -1
  49. package/package.json +8 -3
  50. package/templates/agents/compiler/codegen-debugger.md +34 -0
  51. package/templates/agents/compiler/stdlib-engineer.md +28 -0
  52. package/templates/agents/compiler/test-coverage-guardian.md +31 -0
  53. package/templates/agents/game-engine/cpp-core-expert.md +35 -0
  54. package/templates/agents/game-engine/render-engineer.md +22 -0
  55. package/templates/agents/game-engine/shader-engineer.md +38 -0
  56. package/templates/agents/game-engine/systems-integration.md +43 -0
  57. package/templates/agents/generic/code-reviewer.md +39 -0
  58. package/templates/agents/generic/docs-writer.md +25 -0
  59. package/templates/agents/generic/project-manager.md +34 -0
  60. package/templates/agents/generic/researcher.md +34 -0
  61. package/templates/agents/generic/test-engineer.md +40 -0
  62. package/templates/agents/mobile/platform-specialist.md +22 -0
  63. package/templates/agents/mobile/ui-engineer.md +22 -0
  64. package/templates/agents/web-app/api-designer.md +22 -0
  65. package/templates/agents/web-app/backend-engineer.md +30 -0
  66. package/templates/agents/web-app/database-engineer.md +22 -0
  67. package/templates/agents/web-app/frontend-engineer.md +29 -0
  68. package/templates/agents/web-app/security-reviewer.md +32 -0
  69. package/templates/core/AGENT_AUTOMATION.md +8 -0
  70. package/templates/core/RULEBOOK.md +12 -0
  71. package/templates/core/TIER1_PROHIBITIONS.md +154 -0
  72. package/templates/core/TOKEN_OPTIMIZATION.md +49 -0
  73. package/templates/git/GIT_WORKFLOW.md +35 -0
  74. package/templates/rules/follow-task-sequence.md +36 -0
  75. package/templates/rules/git-safety.md +29 -0
  76. package/templates/rules/incremental-tests.md +29 -0
  77. package/templates/rules/no-deferred.md +31 -0
  78. package/templates/rules/no-shortcuts.md +30 -0
  79. package/templates/rules/research-first.md +30 -0
  80. package/templates/rules/sequential-editing.md +21 -0
  81. package/templates/rules/session-workflow.md +24 -0
  82. package/templates/rules/task-decomposition.md +32 -0
@@ -1 +1 @@
1
- {"version":3,"file":"memory-manager.d.ts","sourceRoot":"","sources":["../../src/memory/memory-manager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACb,WAAW,EACX,UAAU,EACV,aAAa,EACd,MAAM,mBAAmB,CAAC;AAW3B,qBAAa,aAAa;IACxB,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,eAAe,CAAK;IAE5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;gBAExB,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY;IAUrD,OAAO,CAAC,WAAW,CAA8B;YAEnC,iBAAiB;YAajB,MAAM;YAUN,WAAW;IA0BzB;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,cAAc;IAchB,UAAU,CAAC,KAAK,EAAE;QACtB,IAAI,EAAE,UAAU,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GAAG,OAAO,CAAC,MAAM,CAAC;IAkCb,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAS7C,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMvC,cAAc,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAK3E,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE,MAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAK3E,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAKhD,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAerD,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9D,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC;IAwBhC,OAAO,CAAC,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAStF,cAAc,CAAC,MAAM,GAAE,MAAM,GAAG,KAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAmBhE,YAAY,CAAC,IAAI,EAAE,OAAO,kCAAkC,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBtF,YAAY,CAAC,IAAI,EAAE,OAAO,kCAAkC,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtF,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAStD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAW7B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,aAAa,CAE5F"}
1
+ {"version":3,"file":"memory-manager.d.ts","sourceRoot":"","sources":["../../src/memory/memory-manager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACb,WAAW,EACX,UAAU,EACV,aAAa,EACd,MAAM,mBAAmB,CAAC;AAW3B,qBAAa,aAAa;IACxB,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,eAAe,CAAK;IAE5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAM;gBAEzC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY;IAUrD,OAAO,CAAC,WAAW,CAA8B;YAEnC,iBAAiB;YAajB,MAAM;YAaN,WAAW;IA0BzB;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,cAAc;IAchB,UAAU,CAAC,KAAK,EAAE;QACtB,IAAI,EAAE,UAAU,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GAAG,OAAO,CAAC,MAAM,CAAC;IAuCb,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAS7C,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMvC,cAAc,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAK3E,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE,MAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAK3E,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAKhD,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAerD,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9D,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC;IAwBhC,OAAO,CAAC,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAStF,cAAc,CAAC,MAAM,GAAE,MAAM,GAAG,KAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAmBhE,YAAY,CAAC,IAAI,EAAE,OAAO,kCAAkC,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBtF,YAAY,CAAC,IAAI,EAAE,OAAO,kCAAkC,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtF,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWtD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAW7B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,aAAa,CAE5F"}
@@ -30,6 +30,8 @@ export class MemoryManager {
30
30
  hnswPath;
31
31
  maxSizeBytes;
32
32
  dimensions;
33
+ saveCount = 0;
34
+ static EVICTION_CHECK_INTERVAL = 50;
33
35
  constructor(projectRoot, config) {
34
36
  this.dbPath = join(projectRoot, config.dbPath ?? DEFAULT_DB_PATH);
35
37
  this.hnswPath = join(projectRoot, config.dbPath ? config.dbPath.replace(/\.db$/, '.hnsw') : DEFAULT_HNSW_PATH);
@@ -125,8 +127,13 @@ export class MemoryManager {
125
127
  const vec = vectorize(textToVectorize, this.dimensions);
126
128
  this.index.add(memory.id, vec);
127
129
  this.saveHnswIfNeeded();
128
- // Check cache limits
129
- this.cache.checkAndEvict();
130
+ // Check cache limits periodically (not on every save — getDbSizeBytes is cheap now
131
+ // but eviction itself is expensive and rarely needed)
132
+ this.saveCount++;
133
+ if (this.saveCount >= MemoryManager.EVICTION_CHECK_INTERVAL) {
134
+ this.saveCount = 0;
135
+ this.cache.checkAndEvict();
136
+ }
130
137
  return memory;
131
138
  }
132
139
  async getMemory(id) {
@@ -199,7 +206,7 @@ export class MemoryManager {
199
206
  }
200
207
  async exportMemories(format = 'json') {
201
208
  await this.ensureInitialized();
202
- const memories = this.store.listMemories({ limit: 100000 });
209
+ const memories = this.store.listMemories({ limit: 1000 });
203
210
  if (format === 'csv') {
204
211
  const header = 'id,type,title,content,project,tags,createdAt,updatedAt';
205
212
  const rows = memories.map((m) => `"${m.id}","${m.type}","${m.title.replace(/"/g, '""')}","${m.content.replace(/"/g, '""')}","${m.project}","${m.tags.join(';')}",${m.createdAt},${m.updatedAt}`);
@@ -230,11 +237,13 @@ export class MemoryManager {
230
237
  }
231
238
  async deleteCodeNodesByFile(filePath) {
232
239
  await this.ensureInitialized();
233
- // In an ideal architecture we would query the store for all nodes belonging to this file,
234
- // then remove them from HNSW, before deleting from SQLite.
235
- // For V1, the SQLite triggers delete, but HNSW vectors stay as orphans until a rebuild.
236
- // A future improvement: add a HNSW delete via batch.
240
+ // Query node IDs before deleting from SQLite so we can also clean HNSW
241
+ const nodeIds = this.store.getCodeNodeIdsByFile(filePath);
237
242
  this.store.deleteCodeNodesByFile(filePath);
243
+ // Remove corresponding vectors from HNSW to prevent orphan accumulation
244
+ for (const id of nodeIds) {
245
+ this.index.remove(`__code__${id}`);
246
+ }
238
247
  }
239
248
  async close() {
240
249
  if (this.store) {
@@ -1 +1 @@
1
- {"version":3,"file":"memory-manager.js","sourceRoot":"","sources":["../../src/memory/memory-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory-manager.js","sourceRoot":"","sources":["../../src/memory/memory-manager.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,25 @@
1
1
  /**
2
- * SQLite Storage Layer using sql.js (WASM)
2
+ * SQLite Storage Layer using better-sqlite3 (native)
3
3
  *
4
4
  * Provides CRUD operations for memories and sessions,
5
5
  * with FTS5 full-text search (BM25 ranking).
6
+ *
7
+ * Replaced sql.js (WASM) in v5.0 to eliminate:
8
+ * - Full DB export() copies on every save (100-500MB allocations)
9
+ * - WASM JIT warmup delay (~300ms on init)
10
+ * - Event loop blocking on synchronous writeFileSync of entire DB
11
+ *
12
+ * better-sqlite3 writes directly to disk via SQLite's WAL journal.
13
+ * No export(), no manual saveToDisk(), no memory copies.
6
14
  */
7
15
  import type { Memory, MemorySession, MemoryType } from './memory-types.js';
8
16
  export declare class MemoryStore {
9
17
  private db;
10
18
  private dbPath;
11
- private writeCount;
12
19
  private initialized;
13
20
  constructor(dbPath: string);
14
21
  initialize(): Promise<void>;
15
22
  private createSchema;
16
- private trackWrite;
17
23
  saveMemory(memory: Memory): void;
18
24
  getMemory(id: string): Memory | null;
19
25
  deleteMemory(id: string): void;
@@ -54,9 +60,15 @@ export declare class MemoryStore {
54
60
  getDbSizeBytes(): number;
55
61
  saveToDisk(): void;
56
62
  close(): void;
63
+ /**
64
+ * Wraps a sql.js database to expose the same API surface as better-sqlite3.
65
+ * This enables the rest of the class to use db.prepare().run/get/all uniformly.
66
+ */
67
+ private wrapSqlJs;
57
68
  private rowToMemory;
58
69
  saveCodeNode(node: import('../core/indexer/indexer-types.js').CodeNode): void;
59
70
  saveCodeEdge(edge: import('../core/indexer/indexer-types.js').CodeEdge): void;
71
+ getCodeNodeIdsByFile(filePath: string): string[];
60
72
  deleteCodeNodesByFile(filePath: string): void;
61
73
  getCodeNodeByHash(id: string): string | null;
62
74
  getCodeNode(id: string): {
@@ -1 +1 @@
1
- {"version":3,"file":"memory-store.d.ts","sourceRoot":"","sources":["../../src/memory/memory-store.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAc3E,qBAAa,WAAW;IACtB,OAAO,CAAC,EAAE,CAA8B;IACxC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,WAAW,CAAS;gBAEhB,MAAM,EAAE,MAAM;IAIpB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA8BjC,OAAO,CAAC,YAAY;IA2GpB,OAAO,CAAC,UAAU;IAUlB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAsBhC,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAcpC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAO9B,YAAY,CAAC,OAAO,CAAC,EAAE;QACrB,IAAI,CAAC,EAAE,UAAU,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,MAAM,EAAE;IAoBZ,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAOlC,cAAc,IAAI,MAAM;IAUxB,UAAU,CACR,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,MAAW,EAClB,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,UAAU,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAChD,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAqCvC,OAAO,CAAC,UAAU;IAiClB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAmB3C,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;IAU9C,gBAAgB,IAAI,aAAa,GAAG,IAAI;IAsBxC,eAAe,IAAI,MAAM;IAUzB,wBAAwB,IAAI,MAAM,GAAG,SAAS;IAQ9C,wBAAwB,IAAI,MAAM,GAAG,SAAS;IAQ9C,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IAczF;;OAEG;IACH,iBAAiB,CACf,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAsCxE,cAAc,IAAI,MAAM;IAKxB,UAAU,IAAI,IAAI;IAYlB,KAAK,IAAI,IAAI;IASb,OAAO,CAAC,WAAW;IAiBnB,YAAY,CAAC,IAAI,EAAE,OAAO,kCAAkC,EAAE,QAAQ,GAAG,IAAI;IAsB7E,YAAY,CAAC,IAAI,EAAE,OAAO,kCAAkC,EAAE,QAAQ,GAAG,IAAI;IAW7E,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAO7C,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAS5C,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG;QACvB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;KACnB,GAAG,IAAI;CAiBT"}
1
+ {"version":3,"file":"memory-store.d.ts","sourceRoot":"","sources":["../../src/memory/memory-store.ts"],"names":[],"mappings":"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"}