a2a-memory 0.12.26 → 0.12.28
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/README.md +1 -1
- package/dist/a2a/client.js +1 -1
- package/dist/a2a/discovery.js +1 -1
- package/dist/a2a/index.js +1 -1
- package/dist/a2a/types.js +1 -1
- package/dist/adapters/anthropic.js +1 -1
- package/dist/chunking/chunker.js +1 -1
- package/dist/claude/sync.js +1 -1
- package/dist/cli/commands/add.js +1 -1
- package/dist/cli/commands/claude-sync.js +1 -1
- package/dist/cli/commands/cleanup.js +1 -1
- package/dist/cli/commands/config.js +1 -1
- package/dist/cli/commands/contextrank.d.ts +9 -0
- package/dist/cli/commands/contextrank.js +1 -0
- package/dist/cli/commands/edit.js +1 -1
- package/dist/cli/commands/embed.js +1 -1
- package/dist/cli/commands/export.d.ts +10 -0
- package/dist/cli/commands/export.js +1 -0
- package/dist/cli/commands/extract.js +1 -1
- package/dist/cli/commands/health.js +1 -1
- package/dist/cli/commands/list.js +1 -1
- package/dist/cli/commands/migrate-chunks.js +1 -1
- package/dist/cli/commands/migrate-file-refs.js +1 -1
- package/dist/cli/commands/proficiency.js +1 -1
- package/dist/cli/commands/review.js +1 -1
- package/dist/cli/commands/rm.js +1 -1
- package/dist/cli/commands/search.js +1 -1
- package/dist/cli/commands/setup-wizard.js +1 -1
- package/dist/cli/commands/setup.js +1 -1
- package/dist/cli/commands/skill.js +1 -1
- package/dist/cli/commands/status.js +1 -1
- package/dist/cli/commands/sync.js +1 -1
- package/dist/cli/commands/team.js +1 -1
- package/dist/cli/commands/usage.js +1 -1
- package/dist/cli/index.js +1 -1
- package/dist/config/manager.js +1 -1
- package/dist/contextrank/edge-builder.d.ts +86 -0
- package/dist/contextrank/edge-builder.js +1 -0
- package/dist/contextrank/rank-builder.d.ts +87 -0
- package/dist/contextrank/rank-builder.js +1 -0
- package/dist/contextrank/signal-builder.d.ts +52 -0
- package/dist/contextrank/signal-builder.js +1 -0
- package/dist/db/database.d.ts +172 -0
- package/dist/db/database.js +1 -1
- package/dist/db/usage-spool.js +1 -1
- package/dist/embedding/e5-provider.js +1 -1
- package/dist/embedding/index.js +1 -1
- package/dist/embedding/local-provider.js +1 -1
- package/dist/embedding/openai-provider.js +1 -1
- package/dist/embedding/quantization.js +1 -1
- package/dist/extraction/dedup-manager.js +1 -1
- package/dist/extraction/emotion-filter.js +1 -1
- package/dist/extraction/extractor.js +1 -1
- package/dist/extraction/file-reference.js +1 -1
- package/dist/extraction/filter.js +1 -1
- package/dist/extraction/scorer.js +1 -1
- package/dist/extraction/similarity.js +1 -1
- package/dist/hooks/client-factory.js +1 -1
- package/dist/hooks/post-tool-use.js +1 -1
- package/dist/hooks/pre-compact.js +1 -1
- package/dist/hooks/session-end.js +1 -1
- package/dist/hooks/session-start.js +1 -1
- package/dist/hooks/shared.d.ts +8 -4
- package/dist/hooks/shared.js +1 -1
- package/dist/hooks/stop.js +1 -1
- package/dist/hooks/user-prompt-submit.js +1 -1
- package/dist/i18n/index.js +1 -1
- package/dist/i18n/messages.js +1 -1
- package/dist/index.js +1 -1
- package/dist/lifecycle/cleanup-scheduler.js +1 -1
- package/dist/lifecycle/cleanup.js +1 -1
- package/dist/lifecycle/consolidation.js +1 -1
- package/dist/lifecycle/contradiction.js +1 -1
- package/dist/lifecycle/embedding-backfill.js +1 -1
- package/dist/lifecycle/index.js +1 -1
- package/dist/lifecycle/injection-flush.js +1 -1
- package/dist/lifecycle/quality-scorer.js +1 -1
- package/dist/lifecycle/tiering.js +1 -1
- package/dist/llm/client.js +1 -1
- package/dist/llm/index.js +1 -1
- package/dist/proficiency/actr-engine.js +1 -1
- package/dist/proficiency/detection.js +1 -1
- package/dist/proficiency/index.js +1 -1
- package/dist/proficiency/tracker.js +1 -1
- package/dist/providers/adapters.js +1 -1
- package/dist/providers/detector.js +1 -1
- package/dist/search/adaptive-router.js +1 -1
- package/dist/search/index.js +1 -1
- package/dist/search/injection-filter.js +1 -1
- package/dist/search/ranker.js +1 -1
- package/dist/search/reranker.js +1 -1
- package/dist/session/parser.js +1 -1
- package/dist/skill/evaluator.js +1 -1
- package/dist/skill/index.js +1 -1
- package/dist/sync/client.js +1 -1
- package/dist/sync/encryption.js +1 -1
- package/dist/sync/index.js +1 -1
- package/dist/sync/queue.js +1 -1
- package/dist/sync/scheduler.js +1 -1
- package/dist/sync/synchronizer.js +1 -1
- package/dist/sync/team-synchronizer.js +1 -1
- package/dist/sync/vector-clock.js +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.js +1 -1
- package/dist/utils/keychain.js +1 -1
- package/dist/utils/logger.js +1 -1
- package/package.json +1 -1
package/dist/db/database.d.ts
CHANGED
|
@@ -80,6 +80,11 @@ export declare class MemoryDatabase {
|
|
|
80
80
|
tier?: MemoryTier;
|
|
81
81
|
projectPath?: string;
|
|
82
82
|
}): number;
|
|
83
|
+
/**
|
|
84
|
+
* #57 (ADR-048 Phase 1): 작업셋(active) 조건 단일 source — MERGE 사본(merged_into)과
|
|
85
|
+
* ARCHIVE(archived_at)는 기본 검색·주입에서 제외. 명시 옵션/refine CLI로만 접근.
|
|
86
|
+
*/
|
|
87
|
+
private activeFilter;
|
|
83
88
|
listMemories(options?: {
|
|
84
89
|
limit?: number;
|
|
85
90
|
offset?: number;
|
|
@@ -88,6 +93,7 @@ export declare class MemoryDatabase {
|
|
|
88
93
|
projectPath?: string;
|
|
89
94
|
excludeParents?: boolean;
|
|
90
95
|
includeInvalid?: boolean;
|
|
96
|
+
includeInactive?: boolean;
|
|
91
97
|
}): Memory[];
|
|
92
98
|
searchByFTS(query: string, limit?: number, options?: {
|
|
93
99
|
projectPath?: string;
|
|
@@ -211,6 +217,172 @@ export declare class MemoryDatabase {
|
|
|
211
217
|
}>;
|
|
212
218
|
saveEmbedding(memoryId: string, embedding: number[]): void;
|
|
213
219
|
getEmbedding(memoryId: string): number[] | null;
|
|
220
|
+
/**
|
|
221
|
+
* #43: 저장 quantization level에 따른 embedding 복원 단일 source —
|
|
222
|
+
* getEmbedding(단건)과 searchByVector(후보 배치 JOIN)가 공유한다.
|
|
223
|
+
* int8인데 stats가 없으면 복원 불가 → null (검색 경로에서는 후보 제외).
|
|
224
|
+
*/
|
|
225
|
+
private dequantizeEmbedding;
|
|
226
|
+
/** 56b: embedding 보유 메모리 전체를 dequantize하여 batch 로드 (sim k-NN 입력). */
|
|
227
|
+
getAllEmbeddingRows(): Array<{
|
|
228
|
+
id: string;
|
|
229
|
+
embedding: number[];
|
|
230
|
+
}>;
|
|
231
|
+
/** type별 엣지 전체 교체 (clear + batch insert, 단일 트랜잭션). shadow 재계산용. */
|
|
232
|
+
replaceEdges(type: string, edges: Array<{
|
|
233
|
+
src: string;
|
|
234
|
+
dst: string;
|
|
235
|
+
weight: number;
|
|
236
|
+
}>): number;
|
|
237
|
+
/** type별 엣지 카운트 (shadow 관찰). */
|
|
238
|
+
countEdgesByType(): Array<{
|
|
239
|
+
type: string;
|
|
240
|
+
count: number;
|
|
241
|
+
}>;
|
|
242
|
+
/** 56e: type별 엣지 read — per-memory 신호 계산 입력 (sim uniqueness/generic/dup, ref/cooc local). */
|
|
243
|
+
getEdges(type: string): Array<{
|
|
244
|
+
src: string;
|
|
245
|
+
dst: string;
|
|
246
|
+
weight: number;
|
|
247
|
+
}>;
|
|
248
|
+
/** 56e: per-memory 신호 계산 입력 (activation/dump). content는 LENGTH만 — 본문 미로딩. */
|
|
249
|
+
getSignalInputRows(): Array<{
|
|
250
|
+
id: string;
|
|
251
|
+
access_count: number;
|
|
252
|
+
created_at: string;
|
|
253
|
+
last_accessed_at: string | null;
|
|
254
|
+
content_length: number;
|
|
255
|
+
quality_score: number | null;
|
|
256
|
+
}>;
|
|
257
|
+
/** 56e: per-memory 신호 컬럼 batch 기록 (shadow, 단일 트랜잭션 — 액션 0). */
|
|
258
|
+
updateSignals(updates: Array<{
|
|
259
|
+
id: string;
|
|
260
|
+
activation: number;
|
|
261
|
+
uniqueness: number;
|
|
262
|
+
generic_penalty: number;
|
|
263
|
+
dup_score: number;
|
|
264
|
+
dump_score: number;
|
|
265
|
+
reliability: number;
|
|
266
|
+
cluster_id: string | null;
|
|
267
|
+
}>, computedAt: string): number;
|
|
268
|
+
/** 56e/g: 계산된 per-memory 신호 read (shadow 검증 + 56g 분포 관찰. computed된 것만). */
|
|
269
|
+
getComputedSignals(): Array<{
|
|
270
|
+
id: string;
|
|
271
|
+
activation: number | null;
|
|
272
|
+
uniqueness: number | null;
|
|
273
|
+
generic_penalty: number | null;
|
|
274
|
+
dup_score: number | null;
|
|
275
|
+
dump_score: number | null;
|
|
276
|
+
reliability: number | null;
|
|
277
|
+
cluster_id: string | null;
|
|
278
|
+
}>;
|
|
279
|
+
/** 56f: rank 계산 입력 — 56e 신호 + teleport prior(quality/tier) + retention/prune 입력. content 미로딩. */
|
|
280
|
+
getRankInputRows(): Array<{
|
|
281
|
+
id: string;
|
|
282
|
+
tier: string;
|
|
283
|
+
category: string;
|
|
284
|
+
quality_score: number | null;
|
|
285
|
+
access_count: number;
|
|
286
|
+
created_at: string;
|
|
287
|
+
last_accessed_at: string | null;
|
|
288
|
+
activation: number | null;
|
|
289
|
+
uniqueness: number | null;
|
|
290
|
+
generic_penalty: number | null;
|
|
291
|
+
dup_score: number | null;
|
|
292
|
+
dump_score: number | null;
|
|
293
|
+
reliability: number | null;
|
|
294
|
+
cluster_id: string | null;
|
|
295
|
+
}>;
|
|
296
|
+
/** 56f: rank/retention/prune/decision batch 기록 (shadow, 단일 트랜잭션 — 액션 0). */
|
|
297
|
+
updateRanks(updates: Array<{
|
|
298
|
+
id: string;
|
|
299
|
+
struct_rank: number;
|
|
300
|
+
memoryrank: number;
|
|
301
|
+
retention_score: number;
|
|
302
|
+
prune_score: number;
|
|
303
|
+
decision: string;
|
|
304
|
+
}>, computedAt: string): number;
|
|
305
|
+
/**
|
|
306
|
+
* #57 (ADR-048 Phase 1 — 섹션 7.4/7.5): MERGE/ARCHIVE reversible 실행.
|
|
307
|
+
* - MERGE: decision='MERGE' + cluster_id 클러스터별 canonical(argmax memoryrank·quality)
|
|
308
|
+
* 1벌 유지, 나머지 merged_into=canonical + access_count는 canonical에 합산.
|
|
309
|
+
* - ARCHIVE: decision='ARCHIVE' → archived_at 설정 (기본 작업셋 제외, 명시 조회 가능).
|
|
310
|
+
* - hard rule 재검증(방어 심층 — DecisionGate가 이미 적용했으나 실행 시점 이중 가드):
|
|
311
|
+
* 보호 카테고리/태그 메모리는 MERGE 사본 전환 대상에서 제외 (canonical 지위는 무관).
|
|
312
|
+
* - 자동 DELETE 없음 — DELETE_CANDIDATE는 L1 승인 배치(#58) 전용 (섹션 7.5).
|
|
313
|
+
* - revert 시 access_count 합산은 역산하지 않음 (사용 통계 통합값 유지 — 무해).
|
|
314
|
+
*/
|
|
315
|
+
applyPhase1Refine(dryRun?: boolean): {
|
|
316
|
+
clusters: number;
|
|
317
|
+
merged: number;
|
|
318
|
+
archived: number;
|
|
319
|
+
hardRuleSkipped: number;
|
|
320
|
+
singletonClusters: number;
|
|
321
|
+
};
|
|
322
|
+
/**
|
|
323
|
+
* #58 (ADR-048 섹션 7.5): DELETE 라벨 항목을 L1 승인 큐에 등재.
|
|
324
|
+
* proposed_action='DELETE'만 대상 — 실제 삭제는 executePruneBatch(사용자 L1 승인 후)에서만.
|
|
325
|
+
*/
|
|
326
|
+
fillPruneQueue(entries: Array<{
|
|
327
|
+
memoryId: string;
|
|
328
|
+
pruneScore: number | null;
|
|
329
|
+
reason: string;
|
|
330
|
+
}>): number;
|
|
331
|
+
listPruneQueue(status?: string): Array<{
|
|
332
|
+
memory_id: string;
|
|
333
|
+
prune_score: number | null;
|
|
334
|
+
reason: string | null;
|
|
335
|
+
proposed_action: string;
|
|
336
|
+
status: string;
|
|
337
|
+
created_at: string;
|
|
338
|
+
}>;
|
|
339
|
+
/**
|
|
340
|
+
* #58: L1 승인 후 batch 삭제 실행 — pending_approval + DELETE 항목을 deleteMemories로
|
|
341
|
+
* 삭제(child cascade + tombstone 전파는 기존 경로 재사용) 후 큐 status 갱신.
|
|
342
|
+
* ⚠️ 사용자 L1 승인 없이 호출 금지 (CLI --approve 게이트).
|
|
343
|
+
*/
|
|
344
|
+
executePruneBatch(): {
|
|
345
|
+
deleted: number;
|
|
346
|
+
};
|
|
347
|
+
/** #57: Phase 1 전체 되돌림 — merged_into/archived_at 해제 (access 합산은 유지). */
|
|
348
|
+
revertPhase1Refine(): {
|
|
349
|
+
unmerged: number;
|
|
350
|
+
unarchived: number;
|
|
351
|
+
};
|
|
352
|
+
/** 56f/g: 계산된 rank/decision read (shadow 검증 + 56g 분포/상관 관찰). */
|
|
353
|
+
getComputedRanks(): Array<{
|
|
354
|
+
id: string;
|
|
355
|
+
struct_rank: number | null;
|
|
356
|
+
memoryrank: number | null;
|
|
357
|
+
retention_score: number | null;
|
|
358
|
+
prune_score: number | null;
|
|
359
|
+
decision: string | null;
|
|
360
|
+
}>;
|
|
361
|
+
/** 56c: injection_hits.matched_memory_ids (JSON 배열) 중 2+ 매칭 세션 집합. */
|
|
362
|
+
getInjectionMatchedSets(): string[][];
|
|
363
|
+
/** 56c: memory_usage_events session_id별 공동 사용 메모리 집합 (2+). */
|
|
364
|
+
getUsageSessionSets(): string[][];
|
|
365
|
+
/** 56c: (memory_id, tag) 전체 페어 — tag-cooc + hub IDF/PPMI 필터 입력. */
|
|
366
|
+
getTagMemoryPairs(): Array<{
|
|
367
|
+
memory_id: string;
|
|
368
|
+
tag: string;
|
|
369
|
+
}>;
|
|
370
|
+
/** 56d: memories.session_id 공유 2+ 메모리 집합 (temp 엣지 — 동일 세션 공동 생성, 대칭). */
|
|
371
|
+
getSessionSharedSets(): string[][];
|
|
372
|
+
/**
|
|
373
|
+
* 56d: content 내 `[[...]]` 보유 메모리 (id, content) — ref 엣지 파싱 입력.
|
|
374
|
+
* bash test 문법(`[[ -n ... ]]` 등) 제외 + slug→id resolve는 edge-builder에서 수행.
|
|
375
|
+
* (memories에 name/slug 컬럼 부재 — ADR 섹션 15 Q3 미확정. resolve율 shadow 관찰.)
|
|
376
|
+
*/
|
|
377
|
+
getRefLinkSources(): Array<{
|
|
378
|
+
id: string;
|
|
379
|
+
content: string;
|
|
380
|
+
}>;
|
|
381
|
+
/**
|
|
382
|
+
* 56d: slug substring을 content에 포함하는 memory id 목록 (ref resolve, self 제외).
|
|
383
|
+
* LIKE 와일드카드(`%`/`_`) 이스케이프 — slug의 underscore를 literal로 매칭.
|
|
384
|
+
*/
|
|
385
|
+
findMemoryIdsContaining(needle: string, excludeId: string): string[];
|
|
214
386
|
getMemoriesOlderThan(days: number): Memory[];
|
|
215
387
|
getMemoriesWithoutEmbedding(limit?: number): Memory[];
|
|
216
388
|
deleteMemories(ids: string[]): number;
|