@contextgit/store 0.1.10 → 0.2.1

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 (38) hide show
  1. package/README.md +16 -0
  2. package/dist/interface.d.ts +26 -1
  3. package/dist/interface.d.ts.map +1 -1
  4. package/dist/local/index.d.ts +26 -1
  5. package/dist/local/index.d.ts.map +1 -1
  6. package/dist/local/index.js +216 -6
  7. package/dist/local/index.js.map +1 -1
  8. package/dist/local/local-store.test.js +642 -2
  9. package/dist/local/local-store.test.js.map +1 -1
  10. package/dist/local/migrations.d.ts +11 -0
  11. package/dist/local/migrations.d.ts.map +1 -1
  12. package/dist/local/migrations.js +118 -1
  13. package/dist/local/migrations.js.map +1 -1
  14. package/dist/local/plan-nodes.test.d.ts +2 -0
  15. package/dist/local/plan-nodes.test.d.ts.map +1 -0
  16. package/dist/local/plan-nodes.test.js +291 -0
  17. package/dist/local/plan-nodes.test.js.map +1 -0
  18. package/dist/local/queries.d.ts +103 -2
  19. package/dist/local/queries.d.ts.map +1 -1
  20. package/dist/local/queries.js +506 -16
  21. package/dist/local/queries.js.map +1 -1
  22. package/dist/local/schema.d.ts +8 -0
  23. package/dist/local/schema.d.ts.map +1 -1
  24. package/dist/local/schema.js +88 -0
  25. package/dist/local/schema.js.map +1 -1
  26. package/dist/local/thread-archive.test.d.ts +2 -0
  27. package/dist/local/thread-archive.test.d.ts.map +1 -0
  28. package/dist/local/thread-archive.test.js +203 -0
  29. package/dist/local/thread-archive.test.js.map +1 -0
  30. package/dist/remote/index.d.ts +15 -0
  31. package/dist/remote/index.d.ts.map +1 -1
  32. package/dist/remote/index.js +44 -0
  33. package/dist/remote/index.js.map +1 -1
  34. package/dist/supabase/index.d.ts +15 -0
  35. package/dist/supabase/index.d.ts.map +1 -1
  36. package/dist/supabase/index.js +45 -2
  37. package/dist/supabase/index.js.map +1 -1
  38. package/package.json +2 -2
package/README.md ADDED
@@ -0,0 +1,16 @@
1
+ # @contextgit/store
2
+
3
+ Storage interface (`ContextStore`) plus the LocalStore (SQLite + sqlite-vec), RemoteStore (HTTP), and SupabaseStore (Postgres + pgvector) backends for [ContextGit](https://www.npmjs.com/package/contextgit).
4
+
5
+ This is an internal workspace package. If you want to use ContextGit, install the main package:
6
+
7
+ ```bash
8
+ npm install -g contextgit
9
+ contextgit init
10
+ ```
11
+
12
+ See the main package — [`contextgit`](https://www.npmjs.com/package/contextgit) — or the project on GitHub: [MendeTr/contextgit](https://github.com/MendeTr/contextgit).
13
+
14
+ ## License
15
+
16
+ MIT
@@ -1,4 +1,4 @@
1
- import type { Agent, AgentInput, AgentRole, Branch, BranchInput, Claim, ClaimInput, Commit, CommitInput, ContextDelta, Pagination, Project, ProjectInput, SearchResult, SessionSnapshot, SnapshotFormat, Thread } from '@contextgit/core';
1
+ import type { Agent, AgentInput, AgentRole, ArchivedThread, Branch, BranchInput, Claim, ClaimInput, Commit, CommitInput, ContextDelta, Pagination, PlanNode, PlanNodeInput, PlanNodeStatus, Project, ProjectInput, SearchResult, SessionSnapshot, SnapshotFormat, Thread, TraceEntry } from '@contextgit/core';
2
2
  export interface ContextStore {
3
3
  createProject(project: ProjectInput): Promise<Project>;
4
4
  getProject(id: string): Promise<Project | null>;
@@ -13,11 +13,36 @@ export interface ContextStore {
13
13
  listCommits(branchId: string, pagination: Pagination): Promise<Commit[]>;
14
14
  getSessionSnapshot(projectId: string, branchId: string, options?: {
15
15
  agentRole?: AgentRole;
16
+ commitWindow?: number;
16
17
  }): Promise<SessionSnapshot>;
17
18
  getFormattedSnapshot(projectId: string, branchId: string, format: SnapshotFormat): Promise<string>;
18
19
  listOpenThreads(projectId: string): Promise<Thread[]>;
19
20
  listOpenThreadsByBranch(branchId: string): Promise<Thread[]>;
20
21
  syncThread(thread: Thread): Promise<Thread>;
22
+ archiveThread?(threadId: string, reason: ArchivedThread['archivedReason'], closedInCommit: string | null): Promise<ArchivedThread>;
23
+ restoreThread?(threadId: string): Promise<Thread>;
24
+ listArchivedThreads?(projectId: string): Promise<ArchivedThread[]>;
25
+ findOpenThreadByHandle?(projectId: string, handle: string): Promise<Thread | undefined>;
26
+ findArchivedThreadByHandle?(projectId: string, handle: string): Promise<ArchivedThread | undefined>;
27
+ sweepStaleThreads?(projectId: string, now: number): Promise<{
28
+ archived: number;
29
+ byReason: Record<'stale-age' | 'stale-distance' | 'watch-expired', number>;
30
+ }>;
31
+ restoreAllArchivedByReason?(projectId: string, reasons: ArchivedThread['archivedReason'][]): Promise<number>;
32
+ insertPlanTree?(projectId: string, input: PlanNodeInput): Promise<PlanNode>;
33
+ getPlanTree?(projectId: string): Promise<PlanNode[]>;
34
+ listCompletedPlans?(projectId: string): Promise<PlanNode[]>;
35
+ updatePlanNodeStatus?(id: string, status: PlanNodeStatus, gitCommitSha: string | null): Promise<void>;
36
+ updatePlanNodeTitle?(id: string, title: string): Promise<void>;
37
+ findPlanNodeByHandle?(projectId: string, handle: string): Promise<PlanNode | undefined>;
38
+ findPlanNodeByTitle?(projectId: string, title: string): Promise<PlanNode | undefined>;
39
+ appendTraceEntry?(input: {
40
+ projectId: string;
41
+ branchId: string;
42
+ note: string;
43
+ gitCommitSha?: string;
44
+ }): Promise<TraceEntry>;
45
+ listTraceEntries?(projectId: string, pagination: Pagination): Promise<TraceEntry[]>;
21
46
  indexEmbedding(commitId: string, vector: Float32Array): Promise<void>;
22
47
  semanticSearch(vector: Float32Array, projectId: string, limit: number): Promise<SearchResult[]>;
23
48
  fullTextSearch(query: string, projectId: string): Promise<SearchResult[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../src/interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../src/interface.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Agent, AgentInput, Branch, BranchInput, Claim, ClaimInput, Commit, CommitInput, ContextDelta, Pagination, Project, ProjectInput, SearchResult, SessionSnapshot, SnapshotFormat, Thread } from '@contextgit/core';
1
+ import type { Agent, AgentInput, ArchivedThread, Branch, BranchInput, Claim, ClaimInput, Commit, CommitInput, ContextDelta, Pagination, Project, ProjectInput, SearchResult, SessionSnapshot, SnapshotFormat, Thread, TraceEntry } from '@contextgit/core';
2
2
  import type { ContextStore } from '../interface.js';
3
3
  export declare class LocalStore implements ContextStore {
4
4
  private readonly db;
@@ -22,11 +22,36 @@ export declare class LocalStore implements ContextStore {
22
22
  listCommits(branchId: string, pagination: Pagination): Promise<Commit[]>;
23
23
  getSessionSnapshot(projectId: string, branchId: string, options?: {
24
24
  agentRole?: import('@contextgit/core').AgentRole;
25
+ commitWindow?: number;
25
26
  }): Promise<SessionSnapshot>;
26
27
  getFormattedSnapshot(projectId: string, branchId: string, format: SnapshotFormat): Promise<string>;
27
28
  listOpenThreads(projectId: string): Promise<Thread[]>;
28
29
  listOpenThreadsByBranch(branchId: string): Promise<Thread[]>;
29
30
  syncThread(thread: Thread): Promise<Thread>;
31
+ archiveThread(threadId: string, reason: ArchivedThread['archivedReason'], closedInCommit: string | null): Promise<ArchivedThread>;
32
+ restoreThread(threadId: string): Promise<Thread>;
33
+ listArchivedThreads(projectId: string): Promise<ArchivedThread[]>;
34
+ findOpenThreadByHandle(projectId: string, handle: string): Promise<Thread | undefined>;
35
+ findArchivedThreadByHandle(projectId: string, handle: string): Promise<ArchivedThread | undefined>;
36
+ sweepStaleThreads(projectId: string, now: number): Promise<{
37
+ archived: number;
38
+ byReason: Record<'stale-age' | 'stale-distance' | 'watch-expired', number>;
39
+ }>;
40
+ restoreAllArchivedByReason(projectId: string, reasons: import('@contextgit/core').ArchivedThread['archivedReason'][]): Promise<number>;
41
+ insertPlanTree(projectId: string, input: import('@contextgit/core').PlanNodeInput): Promise<import('@contextgit/core').PlanNode>;
42
+ getPlanTree(projectId: string): Promise<import('@contextgit/core').PlanNode[]>;
43
+ listCompletedPlans(projectId: string): Promise<import('@contextgit/core').PlanNode[]>;
44
+ updatePlanNodeStatus(id: string, status: import('@contextgit/core').PlanNodeStatus, gitCommitSha: string | null): Promise<void>;
45
+ updatePlanNodeTitle(id: string, title: string): Promise<void>;
46
+ findPlanNodeByHandle(projectId: string, handle: string): Promise<import('@contextgit/core').PlanNode | undefined>;
47
+ findPlanNodeByTitle(projectId: string, title: string): Promise<import('@contextgit/core').PlanNode | undefined>;
48
+ appendTraceEntry(input: {
49
+ projectId: string;
50
+ branchId: string;
51
+ note: string;
52
+ gitCommitSha?: string;
53
+ }): Promise<TraceEntry>;
54
+ listTraceEntries(projectId: string, pagination: Pagination): Promise<TraceEntry[]>;
30
55
  indexEmbedding(commitId: string, vector: Float32Array): Promise<void>;
31
56
  semanticSearch(vector: Float32Array, projectId: string, limit: number): Promise<SearchResult[]>;
32
57
  fullTextSearch(query: string, projectId: string): Promise<SearchResult[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/local/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/local/index.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ import { createRequire } from 'module';
13
13
  import Database from 'better-sqlite3';
14
14
  import { nanoid } from 'nanoid';
15
15
  const require = createRequire(import.meta.url);
16
- import { SnapshotFormatter } from '@contextgit/core';
16
+ import { SnapshotFormatter, normalizeThreadSubject, parseThreadOpenInput } from '@contextgit/core';
17
17
  import { runMigrations } from './migrations.js';
18
18
  import { Queries } from './queries.js';
19
19
  const snapshotFormatter = new SnapshotFormatter();
@@ -182,15 +182,91 @@ export class LocalStore {
182
182
  const commitId = input.id ?? nanoid();
183
183
  const parentId = input.parentId ?? branch.headCommitId ?? null;
184
184
  const commit = this.q.insertCommit(commitId, input, parentId);
185
- // Handle thread operations
185
+ // Handle thread operations.
186
+ // Dedupe-on-save (02 DELTA spec §A): if an open thread on this project
187
+ // already has the same normalized subject, update its last_touched_commit
188
+ // instead of inserting a duplicate. Kind on a duplicate-save is ignored —
189
+ // an established 'open' thread is never silently downgraded to 'watch'.
186
190
  if (input.threads?.open?.length) {
187
- for (const description of input.threads.open) {
188
- this.q.insertThread(nanoid(), description, branch.projectId, input.branchId, commitId, input.workflowType ?? null);
191
+ for (const entry of input.threads.open) {
192
+ const { subject, kind } = parseThreadOpenInput(entry);
193
+ const normalized = normalizeThreadSubject(subject);
194
+ const existing = this.q.findOpenThreadByNormalizedDescription(branch.projectId, normalized);
195
+ if (existing) {
196
+ this.q.updateThreadLastTouched(existing.id, commitId);
197
+ continue;
198
+ }
199
+ this.q.insertThread(nanoid(), subject, branch.projectId, input.branchId, commitId, input.workflowType ?? null, kind);
189
200
  }
190
201
  }
202
+ // Reason for archived rows in this save:
203
+ // 'manual' — exactly 1 thread closed (singular, explicit close)
204
+ // 'bulk-cleanup' — multiple threads closed atomically in one save
205
+ // The audit trail distinguishes "I closed THIS thread for a reason" from
206
+ // "I batch-closed N threads in one cleanup pass."
207
+ const totalCloses = (input.threads?.close?.length ?? 0) +
208
+ (input.threads?.closes?.length ?? 0);
209
+ const closeReason = totalCloses > 1 ? 'bulk-cleanup' : 'manual';
191
210
  if (input.threads?.close?.length) {
192
- for (const { id, note } of input.threads.close) {
193
- this.q.closeThread(id, commitId, note);
211
+ // Legacy direct-ID close path. closed_note from the legacy shape is
212
+ // dropped (no archive column for it, no live caller depends on it).
213
+ for (const { id } of input.threads.close) {
214
+ this.q.archiveThread(id, closeReason, commitId);
215
+ }
216
+ }
217
+ // 03 DELTA: closesThreads — atomic resolve handle → subject → archive-handle.
218
+ // Whole save fails if any entry stays unresolved.
219
+ if (input.threads?.closes?.length) {
220
+ for (const raw of input.threads.closes) {
221
+ const candidate = raw.trim();
222
+ const handle = candidate.slice(0, 6);
223
+ // 1. Try as handle in open threads
224
+ const byHandle = this.q.findOpenThreadByHandle(branch.projectId, handle);
225
+ if (byHandle) {
226
+ this.q.archiveThread(byHandle.id, closeReason, commitId);
227
+ continue;
228
+ }
229
+ // 2. Try as subject
230
+ const normalized = normalizeThreadSubject(candidate);
231
+ const bySubject = this.q.findOpenThreadByNormalizedDescription(branch.projectId, normalized);
232
+ if (bySubject) {
233
+ this.q.archiveThread(bySubject.id, closeReason, commitId);
234
+ continue;
235
+ }
236
+ // 3. Already archived?
237
+ const inArchive = this.q.findArchivedThreadByHandle(branch.projectId, handle);
238
+ if (inArchive) {
239
+ continue; // no-op success: agent's intent is already satisfied
240
+ }
241
+ // 4. Unresolved — abort the whole save.
242
+ throw new Error(`closesThreads: no thread matched '${candidate}' (tried as handle, subject, and archive)`);
243
+ }
244
+ }
245
+ // 04 DELTA: completesTasks — atomic resolve handle → title.
246
+ // Already-done is a no-op success (agent's intent is satisfied).
247
+ // Whole save fails if any entry stays unresolved.
248
+ if (input.completesTasks?.length) {
249
+ for (const raw of input.completesTasks) {
250
+ const candidate = raw.trim();
251
+ const handle = candidate.slice(0, 6);
252
+ // 1. Try as handle
253
+ const byHandle = this.q.findPlanNodeByHandle(branch.projectId, handle);
254
+ if (byHandle) {
255
+ if (byHandle.status !== 'done') {
256
+ this.q.updatePlanNodeStatus(byHandle.id, 'done', commitId);
257
+ }
258
+ continue;
259
+ }
260
+ // 2. Try as exact title
261
+ const byTitle = this.q.findPlanNodeByTitle(branch.projectId, candidate);
262
+ if (byTitle) {
263
+ if (byTitle.status !== 'done') {
264
+ this.q.updatePlanNodeStatus(byTitle.id, 'done', commitId);
265
+ }
266
+ continue;
267
+ }
268
+ // 3. Unresolved — abort the whole save.
269
+ throw new Error(`completesTasks: no plan node matched '${candidate}' (tried as handle and title)`);
194
270
  }
195
271
  }
196
272
  // Update branch HEAD
@@ -199,6 +275,8 @@ export class LocalStore {
199
275
  this.q.incrementAgentCommits(input.agentId);
200
276
  // Auto-release this agent's claims on this branch (branch-scoped)
201
277
  this.q.releaseClaimsByAgent(input.agentId, input.branchId);
278
+ // 03 DELTA: sweep newly-decayed threads on every save.
279
+ this.q.sweepStaleThreads(branch.projectId, Date.now());
202
280
  return commit;
203
281
  })();
204
282
  return Promise.resolve(result);
@@ -266,6 +344,138 @@ export class LocalStore {
266
344
  return Promise.reject(e);
267
345
  }
268
346
  }
347
+ archiveThread(threadId, reason, closedInCommit) {
348
+ try {
349
+ return Promise.resolve(this.q.archiveThread(threadId, reason, closedInCommit));
350
+ }
351
+ catch (e) {
352
+ return Promise.reject(e);
353
+ }
354
+ }
355
+ restoreThread(threadId) {
356
+ try {
357
+ return Promise.resolve(this.q.restoreThread(threadId));
358
+ }
359
+ catch (e) {
360
+ return Promise.reject(e);
361
+ }
362
+ }
363
+ listArchivedThreads(projectId) {
364
+ try {
365
+ return Promise.resolve(this.q.listArchivedThreads(projectId));
366
+ }
367
+ catch (e) {
368
+ return Promise.reject(e);
369
+ }
370
+ }
371
+ findOpenThreadByHandle(projectId, handle) {
372
+ try {
373
+ return Promise.resolve(this.q.findOpenThreadByHandle(projectId, handle));
374
+ }
375
+ catch (e) {
376
+ return Promise.reject(e);
377
+ }
378
+ }
379
+ findArchivedThreadByHandle(projectId, handle) {
380
+ try {
381
+ return Promise.resolve(this.q.findArchivedThreadByHandle(projectId, handle));
382
+ }
383
+ catch (e) {
384
+ return Promise.reject(e);
385
+ }
386
+ }
387
+ sweepStaleThreads(projectId, now) {
388
+ try {
389
+ return Promise.resolve(this.q.sweepStaleThreads(projectId, now));
390
+ }
391
+ catch (e) {
392
+ return Promise.reject(e);
393
+ }
394
+ }
395
+ restoreAllArchivedByReason(projectId, reasons) {
396
+ try {
397
+ return Promise.resolve(this.q.restoreAllArchivedByReason(projectId, reasons));
398
+ }
399
+ catch (e) {
400
+ return Promise.reject(e);
401
+ }
402
+ }
403
+ // ─── Planning hierarchy (04 DELTA) ────────────────────────────────────────
404
+ insertPlanTree(projectId, input) {
405
+ try {
406
+ return Promise.resolve(this.q.insertPlanTree(projectId, input));
407
+ }
408
+ catch (e) {
409
+ return Promise.reject(e);
410
+ }
411
+ }
412
+ getPlanTree(projectId) {
413
+ try {
414
+ return Promise.resolve(this.q.getPlanTree(projectId));
415
+ }
416
+ catch (e) {
417
+ return Promise.reject(e);
418
+ }
419
+ }
420
+ listCompletedPlans(projectId) {
421
+ try {
422
+ return Promise.resolve(this.q.listCompletedPlans(projectId));
423
+ }
424
+ catch (e) {
425
+ return Promise.reject(e);
426
+ }
427
+ }
428
+ updatePlanNodeStatus(id, status, gitCommitSha) {
429
+ try {
430
+ this.q.updatePlanNodeStatus(id, status, gitCommitSha);
431
+ return Promise.resolve();
432
+ }
433
+ catch (e) {
434
+ return Promise.reject(e);
435
+ }
436
+ }
437
+ updatePlanNodeTitle(id, title) {
438
+ try {
439
+ this.q.updatePlanNodeTitle(id, title);
440
+ return Promise.resolve();
441
+ }
442
+ catch (e) {
443
+ return Promise.reject(e);
444
+ }
445
+ }
446
+ findPlanNodeByHandle(projectId, handle) {
447
+ try {
448
+ return Promise.resolve(this.q.findPlanNodeByHandle(projectId, handle));
449
+ }
450
+ catch (e) {
451
+ return Promise.reject(e);
452
+ }
453
+ }
454
+ findPlanNodeByTitle(projectId, title) {
455
+ try {
456
+ return Promise.resolve(this.q.findPlanNodeByTitle(projectId, title));
457
+ }
458
+ catch (e) {
459
+ return Promise.reject(e);
460
+ }
461
+ }
462
+ // ─── Trace (fine tier — 02 DELTA Step 4/5) ───────────────────────────────
463
+ appendTraceEntry(input) {
464
+ try {
465
+ return Promise.resolve(this.q.insertTraceEntry({ id: nanoid(), ...input }));
466
+ }
467
+ catch (e) {
468
+ return Promise.reject(e);
469
+ }
470
+ }
471
+ listTraceEntries(projectId, pagination) {
472
+ try {
473
+ return Promise.resolve(this.q.listTraceEntries(projectId, pagination));
474
+ }
475
+ catch (e) {
476
+ return Promise.reject(e);
477
+ }
478
+ }
269
479
  // ─── Search ───────────────────────────────────────────────────────────────
270
480
  indexEmbedding(commitId, vector) {
271
481
  this.q.insertEmbedding(this.db, commitId, vector);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/local/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/local/index.ts"],"names":[],"mappings":"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"}