@kybernesis/brain-contracts 0.5.0 → 0.6.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/dist/storage.d.ts CHANGED
@@ -20,9 +20,12 @@
20
20
  * - Param names stay camelCase at the input edge (unchanged public surface);
21
21
  * only RETURNED fields are snake_case.
22
22
  *
23
- * NOTE: this interface establishes the 5-store decomposition + shape. Methods
24
- * are added as each brain-core module migrates (G1–G6); the surface is complete
25
- * by the time the conformance suite (G7) runs against it.
23
+ * NOTE: as of 0.6.0 (gate U0) the bundle has TWO planes — five CRUD
24
+ * `*Repository` interfaces under `.repositories` (frozen since 0.5.0) and three
25
+ * DB-focused domain interfaces under `.domain` (SearchQueries, FactRetrievalQueries,
26
+ * SleepMaintenance), declared now to freeze the shape and populated per gate
27
+ * (U1 search, U2 fact-retrieval, U3 sleep). See the BUSINESS PLANE section below
28
+ * and docs/specs/storage-untangle-0.6.0-kickoff.md.
26
29
  */
27
30
  import type { TenantContext } from './tenant.js';
28
31
  import type { TimelineEvent, TimelineEventInput } from './timeline.js';
@@ -62,7 +65,7 @@ export interface VectorSearchRow {
62
65
  origin_id: string | null;
63
66
  distance: number;
64
67
  }
65
- export interface TimelineStore {
68
+ export interface TimelineRepository {
66
69
  ensureSchema(t: TenantContext): Promise<void>;
67
70
  addEvent(t: TenantContext, event: TimelineEventInput): Promise<number>;
68
71
  removeEventByPath(t: TenantContext, sourcePath: string): Promise<boolean>;
@@ -98,7 +101,7 @@ export interface EntityGraphStats {
98
101
  totalRelations: number;
99
102
  byType: Record<EntityType, number>;
100
103
  }
101
- export interface EntityGraphStore {
104
+ export interface EntityRepository {
102
105
  ensureSchema(t: TenantContext): Promise<void>;
103
106
  findOrCreateEntity(t: TenantContext, name: string, type: EntityType, timestamp: string): Promise<Entity>;
104
107
  addEntityAlias(t: TenantContext, entityId: number, alias: string): Promise<void>;
@@ -161,7 +164,7 @@ export interface EntityGraphStore {
161
164
  }
162
165
  /** Insert shape for storeFact — server fills id/created_at/is_latest/access_count/is_retracted. */
163
166
  export type StoreFactInput = Omit<Fact, 'id' | 'created_at' | 'is_latest' | 'access_count' | 'is_retracted'>;
164
- export interface FactStore {
167
+ export interface FactRepository {
165
168
  ensureFactsTable(t: TenantContext): Promise<void>;
166
169
  storeFact(t: TenantContext, fact: StoreFactInput): Promise<number>;
167
170
  retractFact(t: TenantContext, factId: number, retractedBy?: string): Promise<void>;
@@ -197,11 +200,229 @@ export interface MemoryEdgeHit {
197
200
  confidence: number;
198
201
  shared_tags: string;
199
202
  }
200
- export interface SleepStore {
201
- /** memory_edges neighbours of a source path. Returns [] if the table doesn't exist yet. */
203
+ /** sleep_runs checkpoint columns (crash-forensics; see where a run died). */
204
+ export interface SleepCheckpointRow {
205
+ checkpoint_step: string | null;
206
+ checkpoint_data: string | null;
207
+ }
208
+ /** timeline_events columns the decay step reads (non-archive batch). [U3b] */
209
+ export interface DecayCandidateRow {
210
+ id: number;
211
+ title: string | null;
212
+ source_path: string;
213
+ timestamp: string;
214
+ priority: number | null;
215
+ decay_score: number | null;
216
+ access_count: number | null;
217
+ is_pinned: number | null;
218
+ }
219
+ /** timeline_events columns the tag step reads (stale/missing tags). [U3b] */
220
+ export interface TagCandidateRow {
221
+ id: number;
222
+ source_path: string;
223
+ title: string | null;
224
+ summary: string | null;
225
+ tags_json: string | null;
226
+ topics_json: string | null;
227
+ }
228
+ /** memory_edges aggregate for a path: edge count + summed confidence. [U3c] */
229
+ export interface SleepEdgeStats {
230
+ count: number;
231
+ total_confidence: number;
232
+ }
233
+ /** A memory_edges reference (id + endpoints) for the link retype pass. [U3c] */
234
+ export interface MemoryEdgeRef {
235
+ id: number;
236
+ from_path: string;
237
+ to_path: string;
238
+ }
239
+ /** Insert payload for a new memory_edge (method/timestamps are impl-filled). [U3c] */
240
+ export interface MemoryEdgeInput {
241
+ from_path: string;
242
+ to_path: string;
243
+ relation: string;
244
+ confidence: number;
245
+ shared_tags: string;
246
+ rationale: string;
247
+ }
248
+ /** timeline_events columns the tier step evaluates. [U3c] */
249
+ export interface TierCandidateRow {
250
+ id: number;
251
+ source_path: string;
252
+ priority: number | null;
253
+ decay_score: number | null;
254
+ tier: string | null;
255
+ last_accessed: string | null;
256
+ access_count: number | null;
257
+ is_pinned: number | null;
258
+ }
259
+ /** timeline_events columns the link step reads. [U3c] */
260
+ export interface LinkCandidateRow {
261
+ id: number;
262
+ source_path: string;
263
+ title: string;
264
+ tier: string | null;
265
+ tags_json: string | null;
266
+ topics_json: string | null;
267
+ entities_json: string | null;
268
+ }
269
+ /** A consolidation group keyed by normalized title (channel-prefix/ellipsis stripped IN SQL). [U3d] */
270
+ export interface ConsolidationGroup {
271
+ normalized_title: string;
272
+ cnt: number;
273
+ ids: string;
274
+ first_ts: string;
275
+ last_ts: string;
276
+ }
277
+ /** An entity row for hygiene scanning (phase 1 artifacts, phase 5 profiles). [U3e] */
278
+ export interface HygieneEntityRow {
279
+ id: number;
280
+ name: string;
281
+ type: string;
282
+ mention_count: number;
283
+ }
284
+ /** A same-normalized-name / different-type group (entity-hygiene phase 2). [U3e] */
285
+ export interface SameNameGroup {
286
+ normalized_name: string;
287
+ ids: string;
288
+ types: string;
289
+ names: string;
290
+ mention_counts: string;
291
+ }
292
+ /** An entity row for variant detection (phase 3 — includes normalized_name). [U3e] */
293
+ export interface VariantEntityRow {
294
+ id: number;
295
+ name: string;
296
+ normalized_name: string;
297
+ type: string;
298
+ mention_count: number;
299
+ }
300
+ /** Mention contexts + related-entity names for one entity (AI-assessment input). [U3e] */
301
+ export interface HygieneEntityProfile {
302
+ contexts: string[];
303
+ related: string[];
304
+ }
305
+ /** A prune candidate (entity-hygiene phase 4 — passed all 5 KAD filters). [U3e] */
306
+ export interface PruneCandidateRow {
307
+ id: number;
308
+ name: string;
309
+ type: string;
310
+ mention_count: number;
311
+ }
312
+ /** A resummarize queue entry (maintenance_queue task='resummarize'). [U3f] */
313
+ export interface ResummarizeQueueItem {
314
+ queue_id: number;
315
+ item_id: string;
316
+ }
317
+ /** timeline_events columns the summarize step reads for one item. [U3f] */
318
+ export interface SummaryEventRow {
319
+ id: number;
320
+ source_path: string;
321
+ title: string | null;
322
+ tier: string | null;
323
+ summary: string | null;
324
+ tags_json: string | null;
325
+ entities_json: string | null;
326
+ }
327
+ /** An unordered related-edge neighbour for the summarize context block. [U3f] */
328
+ export interface SummaryEdgeRow {
329
+ related_path: string;
330
+ shared_tags: string;
331
+ }
332
+ /** An unprocessed conversation to extract facts from (observe step). [U3f] */
333
+ export interface UnprocessedConversationRow {
334
+ id: number;
335
+ source_path: string;
336
+ title: string;
337
+ summary: string;
338
+ timestamp: string;
339
+ entities_json: string | null;
340
+ topics_json: string | null;
341
+ }
342
+ /** Mention stats for the reasoning induction prompt. [U3f] */
343
+ export interface EntityStatsRow {
344
+ mention_count: number;
345
+ first_seen: string;
346
+ last_seen: string;
347
+ }
348
+ /** A co-occurring entity + relation strength (reasoning induction). [U3f] */
349
+ export interface EntityCooccurrenceRow {
350
+ name: string;
351
+ strength: number;
352
+ }
353
+ /**
354
+ * SleepRepository — CRUD/persistence for the maintenance engine.
355
+ *
356
+ * The cohesive sleep store (decision 1): its impl opens whichever DB kinds a
357
+ * method needs (sleep.db for run-state/edges/queue/transitions, timeline.db for
358
+ * event reads/writes, entityGraph.db for the observe entity lookup). It carries
359
+ * NO business thresholds — those live in the brain-core steps (JS) or, where the
360
+ * heuristic is encoded in SQL, in SleepMaintenance. Cross-kind writes stay
361
+ * best-effort (separate files; no unit-of-work — decision 2).
362
+ *
363
+ * Grows green per sub-gate to match the frozen design in
364
+ * docs/specs/storage-untangle-0.6.0-progress.md (U3a infra ✓; U3b decay/tag;
365
+ * U3c tier/link; U3d consolidate; U3e entity-hygiene; U3f summarize/observe).
366
+ */
367
+ export interface SleepRepository {
368
+ ensureSchema(t: TenantContext): Promise<void>;
369
+ /** id of an in-flight run (status='running'), or null. Concurrency guard. */
370
+ findRunningRun(t: TenantContext): Promise<number | null>;
371
+ /** INSERT a 'running' sleep_runs row; returns its id. */
372
+ startRun(t: TenantContext): Promise<number>;
373
+ completeRun(t: TenantContext, runId: number, metricsJson: string): Promise<void>;
374
+ failRun(t: TenantContext, runId: number, errorMessage: string): Promise<void>;
375
+ recordTelemetry(t: TenantContext, runId: number, step: string, eventType: string, count: number, durationMs: number, metadataJson: string): Promise<void>;
376
+ saveCheckpoint(t: TenantContext, runId: number, step: string, dataJson: string): Promise<void>;
377
+ getLastCheckpoint(t: TenantContext, runId: number): Promise<SleepCheckpointRow | null>;
378
+ /** Reap >2h-old 'running' rows to 'failed'; returns rows changed. */
379
+ recoverStaleRuns(t: TenantContext): Promise<number>;
380
+ /** memory_edges neighbours of a source path, by confidence DESC. [] if no table. */
202
381
  getRelatedEdges(t: TenantContext, sourcePath: string, limit: number): Promise<MemoryEdgeHit[]>;
382
+ /** Non-archive events for the decay batch (priority DESC). */
383
+ fetchDecayCandidates(t: TenantContext, limit: number): Promise<DecayCandidateRow[]>;
384
+ /** Write a computed decay_score + priority for one event. */
385
+ updateEventDecay(t: TenantContext, itemId: number, decayScore: number, priority: number): Promise<void>;
386
+ /** Events with stale/missing tags (enriched before `staleDate`, priority DESC). */
387
+ fetchTagCandidates(t: TenantContext, staleDate: string, limit: number): Promise<TagCandidateRow[]>;
388
+ /** Write refreshed tags_json + bump last_enriched for one event. */
389
+ updateEventTags(t: TenantContext, itemId: number, tagsJson: string): Promise<void>;
390
+ /** Edge count + summed confidence touching a path (tier relationship score, link cap). */
391
+ getEdgeStats(t: TenantContext, sourcePath: string): Promise<SleepEdgeStats>;
392
+ /** Does an edge already connect these two paths (either direction)? */
393
+ edgeExists(t: TenantContext, pathA: string, pathB: string): Promise<boolean>;
394
+ insertMemoryEdge(t: TenantContext, edge: MemoryEdgeInput): Promise<void>;
395
+ /** Edges of a given relation (e.g. 'related') for the retype pass. */
396
+ listEdgesByRelation(t: TenantContext, relation: string, limit: number): Promise<MemoryEdgeRef[]>;
397
+ updateEdgeRelation(t: TenantContext, edgeId: number, relation: string): Promise<void>;
398
+ /** Upsert a 'resummarize' maintenance_queue entry for an event. */
399
+ enqueueResummarize(t: TenantContext, itemId: number, priority: number): Promise<void>;
400
+ /** Append a tier_transitions audit row (best-effort; impl swallows errors). */
401
+ recordTierTransition(t: TenantContext, itemId: number, fromTier: string | null, toTier: string, reason: string): Promise<void>;
402
+ /** timeline_events batch for tier evaluation. */
403
+ fetchTierCandidates(t: TenantContext, limit: number): Promise<TierCandidateRow[]>;
404
+ /** Write a new tier for one event. */
405
+ updateEventTier(t: TenantContext, itemId: number, tier: string): Promise<void>;
406
+ /** timeline_events with tags/topics, for link candidate building (priority DESC). */
407
+ fetchLinkCandidates(t: TenantContext, limit: number): Promise<LinkCandidateRow[]>;
408
+ /** Pending 'resummarize' queue items (priority DESC). */
409
+ fetchResummarizeQueue(t: TenantContext, limit: number): Promise<ResummarizeQueueItem[]>;
410
+ /** Mark a queue item processed. */
411
+ markQueueProcessed(t: TenantContext, queueId: number): Promise<void>;
412
+ /** Mark a queue item processed with an error message. */
413
+ markQueueError(t: TenantContext, queueId: number, error: string): Promise<void>;
414
+ /** One event's columns for summarization, or null. */
415
+ getEventForSummary(t: TenantContext, itemId: number): Promise<SummaryEventRow | null>;
416
+ /** Write a refreshed summary + bump last_enriched. */
417
+ updateEventSummary(t: TenantContext, itemId: number, summary: string): Promise<void>;
418
+ /** Up-to-`limit` related neighbours (unordered) for the summarize context block. */
419
+ getSummaryEdges(t: TenantContext, sourcePath: string, limit: number): Promise<SummaryEdgeRow[]>;
420
+ /** Exact-name → entity id (observe contradiction recording). null if none. */
421
+ findEntityIdByName(t: TenantContext, nameLower: string): Promise<number | null>;
422
+ /** Mention stats for one entity (reasoning induction prompt), or null. */
423
+ fetchEntityStats(t: TenantContext, entityId: number): Promise<EntityStatsRow | null>;
203
424
  }
204
- export interface VectorStore {
425
+ export interface VectorRepository {
205
426
  /** Can the vector backend be opened for this tenant? (loads sqlite-vec) */
206
427
  available(t: TenantContext): Promise<boolean>;
207
428
  hasOrigin(t: TenantContext, originId: string): Promise<boolean>;
@@ -212,11 +433,161 @@ export interface VectorStore {
212
433
  available: boolean;
213
434
  }>;
214
435
  }
436
+ /** A timeline event row in the minimal shape hybrid-search's channels consume. */
437
+ export interface SearchEventRow {
438
+ id: number;
439
+ title: string;
440
+ summary: string;
441
+ source_path: string;
442
+ timestamp: string;
443
+ type: string;
444
+ }
445
+ /** FTS candidate row carrying the columns post-fetch metadata scoring needs. */
446
+ export interface MetadataCandidateRow {
447
+ id: number;
448
+ source_path: string;
449
+ title: string;
450
+ summary: string;
451
+ type: string;
452
+ timestamp: string;
453
+ tier: string | null;
454
+ priority: number | null;
455
+ tags_json: string | null;
456
+ }
457
+ /** Score-factor columns for one source_path (hybrid-search enrichment pass). */
458
+ export interface SearchEnrichRow {
459
+ tier: string | null;
460
+ priority: number | null;
461
+ tags_json: string | null;
462
+ entities_json: string | null;
463
+ }
464
+ /**
465
+ * Hybrid-search candidate/factor SQL (read-only). The SCORING stays in
466
+ * brain-core (RRF fusion, metadata weights, tier boosts, segment dedup) — these
467
+ * methods only fetch candidates and the columns scoring needs. SQL relocated
468
+ * verbatim from brain-core/hybrid-search.ts at gate U1; behaviour held constant.
469
+ */
470
+ export interface SearchQueries {
471
+ /** Temporal channel: events whose title/summary LIKE `%term%` (case-insensitive), newest first. */
472
+ temporalCandidates(t: TenantContext, term: string, limit: number): Promise<SearchEventRow[]>;
473
+ /** Keyword channel: FTS5 MATCH candidates (sanitizes the query internally; [] if it sanitizes empty). */
474
+ metadataCandidates(t: TenantContext, query: string, limit: number): Promise<MetadataCandidateRow[]>;
475
+ /** Entity channel (expandQuery): events mentioned by entities named in the query. Cross-kind (entity+timeline). */
476
+ entityAugmentedCandidates(t: TenantContext, query: string): Promise<SearchEventRow[]>;
477
+ /** Enrichment: score-factor columns for a source_path, or null if absent. */
478
+ enrichByPath(t: TenantContext, sourcePath: string): Promise<SearchEnrichRow | null>;
479
+ }
480
+ /**
481
+ * A fact row in the shape fact-retrieval's scoring consumes. `source_conversation_id`
482
+ * is absent on bridge candidates (that query doesn't select it).
483
+ */
484
+ export interface RetrievalFactRow {
485
+ id: number;
486
+ content: string;
487
+ category: string;
488
+ confidence: number;
489
+ timestamp: string;
490
+ entities_json: string;
491
+ source_conversation_id?: string | null;
492
+ }
493
+ /** One supporting-context segment (Layer 3). */
494
+ export interface SupportingSegmentRow {
495
+ source_path: string;
496
+ summary: string;
497
+ timestamp: string;
498
+ }
499
+ /**
500
+ * 4-layer fact-retrieval candidate SQL (read-only). The SCORING stays in
501
+ * brain-core: hop-distance penalty LUT {0:1.0,1:0.7,2:0.5,3:0.3}, scene ×0.6,
502
+ * bridge `1.05 + min(setsConnected-2,5)*0.03`, source-priority tie-break, the
503
+ * word-overlap dedup and token-budget assembly. These methods only fetch
504
+ * candidates and the columns scoring needs. SQL relocated verbatim from
505
+ * brain-core/fact-retrieval.ts at gate U2; behaviour held constant.
506
+ *
507
+ * `traverseEntityGraph` INVERTS the old handle-passing (it used to take a raw
508
+ * `Database`): the BFS over entity_relations runs inside the impl and returns
509
+ * `{id, hopDistance}` so the penalty LUT applies in brain-core.
510
+ */
511
+ export interface FactRetrievalQueries {
512
+ /** Layer 1: facts FTS5 MATCH (caller passes the already-sanitized query), latest+unexpired only. */
513
+ searchFactsByFts(t: TenantContext, ftsQuery: string, limit: number): Promise<RetrievalFactRow[]>;
514
+ /** Layer 2: BFS over entity_relations from the seeds; returns each reached entity id + its hop distance. */
515
+ traverseEntityGraph(t: TenantContext, seedIds: number[], maxHops: number, maxEntities: number): Promise<Array<{
516
+ id: number;
517
+ hopDistance: number;
518
+ }>>;
519
+ /** The source_conversation_id of a fact, or null. */
520
+ getFactConversationId(t: TenantContext, factId: number): Promise<string | null>;
521
+ /** Layer 2.5 scene: latest+unexpired facts in the same conversation, nearest by id, excluding `excludeFactId`. */
522
+ nearbyFactsInConversation(t: TenantContext, conversationId: string, excludeFactId: number, limit: number): Promise<RetrievalFactRow[]>;
523
+ /** Layer 2.5 bridge: latest+unexpired fact candidates to test for cross-cluster entity overlap. */
524
+ listBridgeCandidates(t: TenantContext, limit: number): Promise<RetrievalFactRow[]>;
525
+ /** Layer 3: timeline segments under a conversation's source_path prefix, oldest first. */
526
+ findSupportingSegments(t: TenantContext, parentPath: string, limit: number): Promise<SupportingSegmentRow[]>;
527
+ }
528
+ /**
529
+ * SleepMaintenance — the maintenance-engine policy that is encoded IN the SQL.
530
+ *
531
+ * Deliberately SMALL: most sleep "policy" (tier OR-thresholds, decay formula,
532
+ * Jaccard + confidence boosts, artifact/variant detection) is JS and stays in the
533
+ * brain-core steps. Only where the heuristic lives inside the statement itself — a
534
+ * normalization GROUP BY, a multi-clause prune WHERE, a policy-bearing UPDATE, an
535
+ * unprocessed-detection NOT EXISTS — does it relocate here VERBATIM (decision 3:
536
+ * keep SQL, assert parity, don't rewrite as JS).
537
+ *
538
+ * Cross-kind atomicity: tier/summarize write timeline.db AND sleep.db (separate
539
+ * files); best-effort is PRESERVED (decision 2 — no unit-of-work). Empty until
540
+ * U3b; grows green per sub-gate to the frozen design in
541
+ * docs/specs/storage-untangle-0.6.0-progress.md.
542
+ */
543
+ export interface SleepMaintenance {
544
+ /** Mark expired temporal facts is_latest=0; returns rows changed. */
545
+ expireTemporalFacts(t: TenantContext): Promise<number>;
546
+ /** MAX(updated_at) over decayed facts — the weekly-decay gate. null if never. */
547
+ lastFactConfidenceDecayAt(t: TenantContext): Promise<string | null>;
548
+ /** Weekly confidence decay (×0.95 floor 0.15) for old ai-extraction/chat facts; rows changed. */
549
+ decayFactConfidence(t: TenantContext): Promise<number>;
550
+ /** Groups of duplicate normalized titles (≥ threshold), highest-count first. */
551
+ fetchConsolidationGroups(t: TenantContext, threshold: number, limit: number): Promise<ConsolidationGroup[]>;
552
+ /** Sum access_count over a set of event ids (pre-merge tally). */
553
+ sumAccessCounts(t: TenantContext, ids: number[]): Promise<number>;
554
+ /** Fold removeIds into keepId: add `addedAccess` to keep's access_count, delete the rest. */
555
+ consolidateInto(t: TenantContext, keepId: number, removeIds: number[], addedAccess: number): Promise<void>;
556
+ /** Phase 0: delete orphaned entity_relations + entity_mentions. */
557
+ cleanOrphans(t: TenantContext): Promise<void>;
558
+ /** Phase 1: every entity (artifact-pattern scan happens in JS). */
559
+ fetchAllEntities(t: TenantContext): Promise<HygieneEntityRow[]>;
560
+ /** Phase 2: GROUP BY normalized_name HAVING COUNT(DISTINCT type) > 1. */
561
+ fetchSameNameGroups(t: TenantContext): Promise<SameNameGroup[]>;
562
+ /** Phase 3: top entities by mention_count for JS variant detection. */
563
+ fetchVariantEntities(t: TenantContext, limit: number): Promise<VariantEntityRow[]>;
564
+ /** Mention contexts + related names for AI-assessment of one entity. */
565
+ fetchEntityProfile(t: TenantContext, entityId: number): Promise<HygieneEntityProfile>;
566
+ /** Phase 4: the 5-clause prune filter (Bug B11B — all filters, verbatim). */
567
+ fetchPruneCandidates(t: TenantContext, pruneDate: string): Promise<PruneCandidateRow[]>;
568
+ /** Phase 5: high-mention entities (>=3) for narrative-profile generation. */
569
+ fetchProfileCandidates(t: TenantContext, limit: number): Promise<Pick<HygieneEntityRow, 'id' | 'name' | 'type'>[]>;
570
+ /** Event ids whose summary is missing/short/raw/over-long and not enriched in 3 days. */
571
+ fetchStaleSummaryIds(t: TenantContext, limit: number): Promise<number[]>;
572
+ /** Conversations with no observation/fact/realtime children yet (NOT EXISTS detection). */
573
+ fetchUnprocessedConversations(t: TenantContext, limit: number): Promise<UnprocessedConversationRow[]>;
574
+ /** Co-occurring entities (strength > 1) for the reasoning induction prompt. */
575
+ fetchEntityCooccurrence(t: TenantContext, entityId: number, limit: number): Promise<EntityCooccurrenceRow[]>;
576
+ }
215
577
  export interface StorageProvider {
216
- timeline: TimelineStore;
217
- entities: EntityGraphStore;
218
- facts: FactStore;
219
- sleep: SleepStore;
220
- vectors: VectorStore;
578
+ /** Data plane — CRUD persistence primitives, one per DB kind. */
579
+ repositories: {
580
+ timeline: TimelineRepository;
581
+ entities: EntityRepository;
582
+ facts: FactRepository;
583
+ sleep: SleepRepository;
584
+ vectors: VectorRepository;
585
+ };
586
+ /** Business plane — DB-focused domain queries, organized by capability. */
587
+ domain: {
588
+ search: SearchQueries;
589
+ factRetrieval: FactRetrievalQueries;
590
+ sleep: SleepMaintenance;
591
+ };
221
592
  }
222
593
  //# sourceMappingURL=storage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"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"}
package/dist/storage.js CHANGED
@@ -20,9 +20,12 @@
20
20
  * - Param names stay camelCase at the input edge (unchanged public surface);
21
21
  * only RETURNED fields are snake_case.
22
22
  *
23
- * NOTE: this interface establishes the 5-store decomposition + shape. Methods
24
- * are added as each brain-core module migrates (G1–G6); the surface is complete
25
- * by the time the conformance suite (G7) runs against it.
23
+ * NOTE: as of 0.6.0 (gate U0) the bundle has TWO planes — five CRUD
24
+ * `*Repository` interfaces under `.repositories` (frozen since 0.5.0) and three
25
+ * DB-focused domain interfaces under `.domain` (SearchQueries, FactRetrievalQueries,
26
+ * SleepMaintenance), declared now to freeze the shape and populated per gate
27
+ * (U1 search, U2 fact-retrieval, U3 sleep). See the BUSINESS PLANE section below
28
+ * and docs/specs/storage-untangle-0.6.0-kickoff.md.
26
29
  */
27
30
  export {};
28
31
  //# sourceMappingURL=storage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"storage.js","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG"}
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kybernesis/brain-contracts",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "description": "Zod schemas, provider interfaces, and shared types for the Kybernesis brain library",
5
5
  "license": "MIT",
6
6
  "author": "David Cruwys (AppyDave)",