@contextgit/store 0.0.11 → 0.0.13

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/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export type { ContextStore } from './interface.js';
2
2
  export { LocalStore } from './local/index.js';
3
3
  export { RemoteStore } from './remote/index.js';
4
+ export { SupabaseStore } from './supabase/index.js';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA"}
package/dist/index.js CHANGED
@@ -1,3 +1,4 @@
1
1
  export { LocalStore } from './local/index.js';
2
2
  export { RemoteStore } from './remote/index.js';
3
+ export { SupabaseStore } from './supabase/index.js';
3
4
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/local/index.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EACV,KAAK,EACL,UAAU,EACV,MAAM,EACN,WAAW,EACX,KAAK,EACL,UAAU,EACV,MAAM,EACN,WAAW,EACX,YAAY,EACZ,UAAU,EACV,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,cAAc,EACd,MAAM,EACP,MAAM,kBAAkB,CAAA;AAEzB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAQnD,qBAAa,UAAW,YAAW,YAAY;IAC7C,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAmB;IACtC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAS;IAE3B;;;OAGG;gBACS,SAAS,EAAE,MAAM;IA6B7B,aAAa,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IAQtD,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAU/C,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAclD,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAQ7C,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAQhF,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAQlD,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASnE,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgD7F,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAuDjD,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAQ7C,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAUxE,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,kBAAkB,EAAE,SAAS,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAQjJ,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAWlG,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAQrD,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAQ5D,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAU3C,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrE,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAI/F,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAUzE,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC;IAQ9C,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAU/C,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC;IAQjF,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS3C,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAQrD,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAe1F,KAAK,IAAI,IAAI;CAGd"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/local/index.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,15 @@ import { SnapshotFormatter } from '@contextgit/core';
17
17
  import { runMigrations } from './migrations.js';
18
18
  import { Queries } from './queries.js';
19
19
  const snapshotFormatter = new SnapshotFormatter();
20
+ // ─── Helpers ──────────────────────────────────────────────────────────────────
21
+ function msSince(date) {
22
+ const ms = Date.now() - date.getTime();
23
+ const minutes = Math.floor(ms / 60_000);
24
+ if (minutes < 60)
25
+ return `${minutes} minute${minutes !== 1 ? 's' : ''} ago`;
26
+ const hours = Math.floor(minutes / 60);
27
+ return `${hours} hour${hours !== 1 ? 's' : ''} ago`;
28
+ }
20
29
  // ─── LocalStore ───────────────────────────────────────────────────────────────
21
30
  export class LocalStore {
22
31
  db;
@@ -288,6 +297,14 @@ export class LocalStore {
288
297
  // ─── Claims ───────────────────────────────────────────────────────────────
289
298
  claimTask(projectId, branchId, input) {
290
299
  try {
300
+ // Check for existing active claim on the same task (matches SupabaseStore behavior)
301
+ const active = this.q.listActiveClaims(projectId);
302
+ const conflict = active.find(c => c.task === input.task);
303
+ if (conflict) {
304
+ throw new Error(`Task "${input.task}" is already claimed by ${conflict.agentId} ` +
305
+ `(claimed ${msSince(conflict.claimedAt)}). ` +
306
+ `Pick a different task or wait for the claim to expire.`);
307
+ }
291
308
  return Promise.resolve(this.q.insertClaim(nanoid(), projectId, branchId, input));
292
309
  }
293
310
  catch (e) {
@@ -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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"}
@@ -0,0 +1,38 @@
1
+ import type { Agent, AgentInput, AgentRole, Branch, BranchInput, Claim, ClaimInput, Commit, CommitInput, ContextDelta, Pagination, Project, ProjectInput, SearchResult, SessionSnapshot, SnapshotFormat, Thread } from '@contextgit/core';
2
+ import type { ContextStore } from '../interface.js';
3
+ export declare class SupabaseStore implements ContextStore {
4
+ private readonly db;
5
+ private readonly branchProjectCache;
6
+ constructor(url: string, serviceKey: string);
7
+ private q;
8
+ private qNull;
9
+ private resolveProjectId;
10
+ createProject(input: ProjectInput): Promise<Project>;
11
+ getProject(id: string): Promise<Project | null>;
12
+ createBranch(input: BranchInput): Promise<Branch>;
13
+ getBranch(id: string): Promise<Branch | null>;
14
+ getBranchByGitName(projectId: string, gitBranch: string): Promise<Branch | null>;
15
+ listBranches(projectId: string): Promise<Branch[]>;
16
+ updateBranchHead(branchId: string, commitId: string): Promise<void>;
17
+ mergeBranch(sourceBranchId: string, targetBranchId: string, summary: string): Promise<Commit>;
18
+ createCommit(input: CommitInput): Promise<Commit>;
19
+ getCommit(id: string): Promise<Commit | null>;
20
+ listCommits(branchId: string, pagination: Pagination): Promise<Commit[]>;
21
+ getSessionSnapshot(projectId: string, branchId: string, options?: {
22
+ agentRole?: AgentRole;
23
+ }): Promise<SessionSnapshot>;
24
+ getFormattedSnapshot(projectId: string, branchId: string, format: SnapshotFormat): Promise<string>;
25
+ listOpenThreads(projectId: string): Promise<Thread[]>;
26
+ listOpenThreadsByBranch(branchId: string): Promise<Thread[]>;
27
+ syncThread(thread: Thread): Promise<Thread>;
28
+ indexEmbedding(commitId: string, vector: Float32Array): Promise<void>;
29
+ semanticSearch(vector: Float32Array, projectId: string, limit: number): Promise<SearchResult[]>;
30
+ fullTextSearch(query: string, projectId: string): Promise<SearchResult[]>;
31
+ upsertAgent(input: AgentInput): Promise<Agent>;
32
+ listAgents(projectId: string): Promise<Agent[]>;
33
+ claimTask(projectId: string, branchId: string, input: ClaimInput): Promise<Claim>;
34
+ unclaimTask(claimId: string): Promise<void>;
35
+ listActiveClaims(projectId: string): Promise<Claim[]>;
36
+ getContextDelta(projectId: string, branchId: string, since: number): Promise<ContextDelta>;
37
+ }
38
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/supabase/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,495 @@
1
+ // SupabaseStore — ContextStore backed by Supabase (Postgres + pgvector).
2
+ //
3
+ // This store is a push/pull sync target. LocalStore remains the live primary store.
4
+ // SUPABASE_SERVICE_KEY env var provides the service role key (never written to disk).
5
+ //
6
+ // Key design notes:
7
+ // • TEXT primary keys (nanoid) — same as LocalStore, no ID translation on push/pull
8
+ // • TIMESTAMPTZ in Postgres — parsed to Date at the boundary via d()
9
+ // • branchProjectCache avoids N round-trips during batch commit pushes
10
+ // • project_id on commits is a denormalized server-side column — not in Commit domain type
11
+ // • All Supabase errors throw; no silent failures
12
+ import { createClient } from '@supabase/supabase-js';
13
+ import { nanoid } from 'nanoid';
14
+ import { SnapshotFormatter } from '@contextgit/core';
15
+ // ─── Date helper ──────────────────────────────────────────────────────────────
16
+ function d(s) {
17
+ return typeof s === 'string' ? new Date(s) : new Date(0);
18
+ }
19
+ // ─── Row → domain parsers ─────────────────────────────────────────────────────
20
+ function parseProject(row) {
21
+ return {
22
+ id: row['id'],
23
+ name: row['name'],
24
+ description: row['description'] ?? undefined,
25
+ githubUrl: row['github_url'] ?? undefined,
26
+ createdAt: d(row['created_at']),
27
+ };
28
+ }
29
+ function parseBranch(row) {
30
+ return {
31
+ id: row['id'],
32
+ projectId: row['project_id'],
33
+ name: row['name'],
34
+ gitBranch: row['git_branch'],
35
+ githubPrUrl: row['github_pr_url'] ?? undefined,
36
+ parentBranchId: row['parent_branch_id'] ?? undefined,
37
+ headCommitId: row['head_commit_id'] ?? undefined,
38
+ status: row['status'],
39
+ createdAt: d(row['created_at']),
40
+ mergedAt: row['merged_at'] ? d(row['merged_at']) : undefined,
41
+ };
42
+ }
43
+ function parseCommit(row) {
44
+ return {
45
+ id: row['id'],
46
+ branchId: row['branch_id'],
47
+ parentId: row['parent_id'] ?? undefined,
48
+ agentId: row['agent_id'],
49
+ agentRole: row['agent_role'],
50
+ tool: row['tool'],
51
+ workflowType: row['workflow_type'],
52
+ loopIteration: row['loop_iteration'] ?? undefined,
53
+ ciRunId: row['ci_run_id'] ?? undefined,
54
+ pipelineName: row['pipeline_name'] ?? undefined,
55
+ message: row['message'],
56
+ content: row['content'],
57
+ summary: row['summary'],
58
+ commitType: row['commit_type'],
59
+ gitCommitSha: row['git_commit_sha'] ?? undefined,
60
+ createdAt: d(row['created_at']),
61
+ // NOTE: project_id is a server-side denormalized column; not in Commit domain type
62
+ };
63
+ }
64
+ function parseThread(row) {
65
+ return {
66
+ id: row['id'],
67
+ projectId: row['project_id'],
68
+ branchId: row['branch_id'],
69
+ description: row['description'],
70
+ status: row['status'],
71
+ workflowType: row['workflow_type'] ?? undefined,
72
+ openedInCommit: row['opened_in_commit'],
73
+ closedInCommit: row['closed_in_commit'] ?? undefined,
74
+ closedNote: row['closed_note'] ?? undefined,
75
+ createdAt: d(row['created_at']),
76
+ updatedAt: row['updated_at'] ? d(row['updated_at']) : undefined,
77
+ };
78
+ }
79
+ function parseClaim(row) {
80
+ return {
81
+ id: row['id'],
82
+ projectId: row['project_id'],
83
+ branchId: row['branch_id'],
84
+ task: row['task'],
85
+ agentId: row['agent_id'],
86
+ role: row['role'],
87
+ claimedAt: d(row['claimed_at']),
88
+ status: row['status'],
89
+ ttl: row['ttl'],
90
+ releasedAt: row['released_at'] ? d(row['released_at']) : undefined,
91
+ threadId: row['thread_id'] ?? undefined,
92
+ };
93
+ }
94
+ function parseAgent(row) {
95
+ return {
96
+ id: row['id'],
97
+ projectId: row['project_id'],
98
+ role: row['role'],
99
+ tool: row['tool'],
100
+ workflowType: row['workflow_type'],
101
+ displayName: row['display_name'] ?? undefined,
102
+ totalCommits: row['total_commits'],
103
+ lastSeen: d(row['last_seen']),
104
+ createdAt: d(row['created_at']),
105
+ };
106
+ }
107
+ // ─── SupabaseStore ────────────────────────────────────────────────────────────
108
+ function msSince(date) {
109
+ const ms = Date.now() - date.getTime();
110
+ const minutes = Math.floor(ms / 60_000);
111
+ if (minutes < 60)
112
+ return `${minutes} minute${minutes !== 1 ? 's' : ''} ago`;
113
+ const hours = Math.floor(minutes / 60);
114
+ return `${hours} hour${hours !== 1 ? 's' : ''} ago`;
115
+ }
116
+ const snapshotFormatter = new SnapshotFormatter();
117
+ export class SupabaseStore {
118
+ db;
119
+ // Cache branchId → projectId to avoid N round-trips during batch commit pushes.
120
+ branchProjectCache = new Map();
121
+ constructor(url, serviceKey) {
122
+ this.db = createClient(url, serviceKey);
123
+ }
124
+ // Throws on Supabase error; returns T (not null).
125
+ // Accepts PromiseLike so Supabase query builder types work without explicit casts.
126
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
127
+ async q(p) {
128
+ const { data, error } = await p;
129
+ if (error)
130
+ throw new Error(error.message);
131
+ if (data === null)
132
+ throw new Error('Unexpected null response from Supabase');
133
+ return data;
134
+ }
135
+ // Like q() but returns null instead of throwing when data is null.
136
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
137
+ async qNull(p) {
138
+ const { data, error } = await p;
139
+ if (error)
140
+ throw new Error(error.message);
141
+ return data;
142
+ }
143
+ async resolveProjectId(branchId) {
144
+ if (this.branchProjectCache.has(branchId))
145
+ return this.branchProjectCache.get(branchId);
146
+ const branch = await this.getBranch(branchId);
147
+ if (!branch)
148
+ throw new Error(`Branch not found: ${branchId}`);
149
+ this.branchProjectCache.set(branchId, branch.projectId);
150
+ return branch.projectId;
151
+ }
152
+ // ── Projects ──────────────────────────────────────────────────────────────
153
+ async createProject(input) {
154
+ const id = input.id ?? nanoid();
155
+ const row = await this.q(this.db.from('projects').insert({
156
+ id,
157
+ name: input.name,
158
+ description: input.description ?? null,
159
+ github_url: input.githubUrl ?? null,
160
+ summary: '',
161
+ }).select().single());
162
+ return parseProject(row);
163
+ }
164
+ async getProject(id) {
165
+ const row = await this.qNull(this.db.from('projects').select('*').eq('id', id).maybeSingle());
166
+ return row ? parseProject(row) : null;
167
+ }
168
+ // ── Branches ──────────────────────────────────────────────────────────────
169
+ async createBranch(input) {
170
+ // Idempotent: if caller supplied an ID and it already exists, return existing
171
+ if (input.id) {
172
+ const existing = await this.getBranch(input.id);
173
+ if (existing)
174
+ return existing;
175
+ }
176
+ const id = input.id ?? nanoid();
177
+ const row = await this.q(this.db.from('branches').insert({
178
+ id,
179
+ project_id: input.projectId,
180
+ name: input.name,
181
+ git_branch: input.gitBranch,
182
+ summary: '',
183
+ github_pr_url: input.githubPrUrl ?? null,
184
+ parent_branch_id: input.parentBranchId ?? null,
185
+ status: 'active',
186
+ }).select().single());
187
+ return parseBranch(row);
188
+ }
189
+ async getBranch(id) {
190
+ const row = await this.qNull(this.db.from('branches').select('*').eq('id', id).maybeSingle());
191
+ return row ? parseBranch(row) : null;
192
+ }
193
+ async getBranchByGitName(projectId, gitBranch) {
194
+ const row = await this.qNull(this.db.from('branches').select('*')
195
+ .eq('project_id', projectId)
196
+ .eq('git_branch', gitBranch)
197
+ .maybeSingle());
198
+ return row ? parseBranch(row) : null;
199
+ }
200
+ async listBranches(projectId) {
201
+ const rows = await this.q(this.db.from('branches').select('*').eq('project_id', projectId));
202
+ return rows.map(parseBranch);
203
+ }
204
+ async updateBranchHead(branchId, commitId) {
205
+ const { error } = await this.db.from('branches')
206
+ .update({ head_commit_id: commitId })
207
+ .eq('id', branchId);
208
+ if (error)
209
+ throw new Error(error.message);
210
+ }
211
+ async mergeBranch(sourceBranchId, targetBranchId, summary) {
212
+ const [source, target] = await Promise.all([
213
+ this.getBranch(sourceBranchId),
214
+ this.getBranch(targetBranchId),
215
+ ]);
216
+ if (!source)
217
+ throw new Error(`Source branch not found: ${sourceBranchId}`);
218
+ if (!target)
219
+ throw new Error(`Target branch not found: ${targetBranchId}`);
220
+ const commitId = nanoid();
221
+ const row = await this.q(this.db.from('commits').insert({
222
+ id: commitId,
223
+ branch_id: targetBranchId,
224
+ project_id: target.projectId,
225
+ parent_id: target.headCommitId ?? null,
226
+ merge_source_branch_id: sourceBranchId,
227
+ agent_id: 'system',
228
+ agent_role: 'orchestrator',
229
+ tool: 'contextgit',
230
+ workflow_type: 'interactive',
231
+ message: `Merge ${source.name} into ${target.name}`,
232
+ content: summary,
233
+ summary,
234
+ commit_type: 'merge',
235
+ }).select().single());
236
+ // Update target HEAD and mark source merged (fire in parallel)
237
+ await Promise.all([
238
+ this.updateBranchHead(targetBranchId, commitId),
239
+ this.db.from('branches').update({ status: 'merged', merged_at: new Date().toISOString() }).eq('id', sourceBranchId),
240
+ // Carry open threads from source to target
241
+ this.db.from('threads').update({ branch_id: targetBranchId }).eq('branch_id', sourceBranchId).eq('status', 'open'),
242
+ ]);
243
+ return parseCommit(row);
244
+ }
245
+ // ── Commits ───────────────────────────────────────────────────────────────
246
+ async createCommit(input) {
247
+ // Idempotent: if caller supplied an ID and it already exists, return existing
248
+ if (input.id) {
249
+ const existing = await this.getCommit(input.id);
250
+ if (existing)
251
+ return existing;
252
+ }
253
+ const id = input.id ?? nanoid();
254
+ const projectId = await this.resolveProjectId(input.branchId);
255
+ const row = await this.q(this.db.from('commits').insert({
256
+ id,
257
+ branch_id: input.branchId,
258
+ project_id: projectId,
259
+ parent_id: input.parentId ?? null,
260
+ agent_id: input.agentId,
261
+ agent_role: input.agentRole,
262
+ tool: input.tool,
263
+ workflow_type: input.workflowType,
264
+ loop_iteration: input.loopIteration ?? null,
265
+ ci_run_id: input.ciRunId ?? null,
266
+ pipeline_name: input.pipelineName ?? null,
267
+ message: input.message,
268
+ content: input.content,
269
+ summary: input.summary,
270
+ commit_type: input.commitType,
271
+ git_commit_sha: input.gitCommitSha ?? null,
272
+ }).select().single());
273
+ return parseCommit(row);
274
+ }
275
+ async getCommit(id) {
276
+ const row = await this.qNull(this.db.from('commits').select('*').eq('id', id).maybeSingle());
277
+ return row ? parseCommit(row) : null;
278
+ }
279
+ async listCommits(branchId, pagination) {
280
+ const rows = await this.q(this.db.from('commits').select('*')
281
+ .eq('branch_id', branchId)
282
+ .order('created_at', { ascending: false })
283
+ .range(pagination.offset, pagination.offset + pagination.limit - 1));
284
+ return rows.map(parseCommit);
285
+ }
286
+ // ── Snapshots ─────────────────────────────────────────────────────────────
287
+ async getSessionSnapshot(projectId, branchId, options) {
288
+ const branch = await this.getBranch(branchId);
289
+ if (!branch)
290
+ throw new Error(`Branch not found: ${branchId}`);
291
+ // Project summary: from parent branch head commit (child branch)
292
+ // or from current branch head commit (main/root branch).
293
+ // branchSummary and projectSummary may be the same commit on main — fetch once.
294
+ let headCommit = null;
295
+ if (branch.headCommitId) {
296
+ headCommit = await this.getCommit(branch.headCommitId);
297
+ }
298
+ let projectSummary = headCommit?.summary ?? '';
299
+ if (branch.parentBranchId) {
300
+ // Child branch: project summary comes from parent's head commit
301
+ const parentBranch = await this.getBranch(branch.parentBranchId);
302
+ if (parentBranch?.headCommitId) {
303
+ const parentHead = await this.getCommit(parentBranch.headCommitId);
304
+ projectSummary = parentHead?.summary ?? '';
305
+ }
306
+ }
307
+ // Recent commits (role-filtered if requested)
308
+ let commitsQuery = this.db.from('commits').select('*')
309
+ .eq('branch_id', branchId)
310
+ .order('created_at', { ascending: false })
311
+ .limit(3);
312
+ if (options?.agentRole) {
313
+ commitsQuery = commitsQuery
314
+ .eq('agent_role', options.agentRole);
315
+ }
316
+ // Open threads scoped to branch (not whole project) to match LocalStore semantics
317
+ const [commitsResult, threadsResult, claimsResult] = await Promise.all([
318
+ commitsQuery,
319
+ this.db.from('threads').select('*').eq('branch_id', branchId).eq('status', 'open'),
320
+ this.db.rpc('list_active_claims', { p_project_id: projectId }),
321
+ ]);
322
+ if (commitsResult.error)
323
+ throw new Error(commitsResult.error.message);
324
+ if (threadsResult.error)
325
+ throw new Error(threadsResult.error.message);
326
+ if (claimsResult.error)
327
+ throw new Error(claimsResult.error.message);
328
+ return {
329
+ projectSummary,
330
+ branchName: branch.name,
331
+ branchSummary: headCommit?.summary ?? '', // reuses the already-fetched commit
332
+ recentCommits: (commitsResult.data ?? []).map(parseCommit),
333
+ openThreads: (threadsResult.data ?? []).map(parseThread),
334
+ activeClaims: (claimsResult.data ?? []).map(parseClaim),
335
+ };
336
+ }
337
+ async getFormattedSnapshot(projectId, branchId, format) {
338
+ const snapshot = await this.getSessionSnapshot(projectId, branchId);
339
+ return snapshotFormatter.format(snapshot, format);
340
+ }
341
+ // ── Threads ───────────────────────────────────────────────────────────────
342
+ async listOpenThreads(projectId) {
343
+ const rows = await this.q(this.db.from('threads').select('*').eq('project_id', projectId).eq('status', 'open'));
344
+ return rows.map(parseThread);
345
+ }
346
+ async listOpenThreadsByBranch(branchId) {
347
+ const rows = await this.q(this.db.from('threads').select('*').eq('branch_id', branchId).eq('status', 'open'));
348
+ return rows.map(parseThread);
349
+ }
350
+ async syncThread(thread) {
351
+ // Upsert on id conflict — thread may have been closed since first push
352
+ const row = await this.q(this.db.from('threads').upsert({
353
+ id: thread.id,
354
+ project_id: thread.projectId,
355
+ branch_id: thread.branchId,
356
+ description: thread.description,
357
+ status: thread.status,
358
+ workflow_type: thread.workflowType ?? null,
359
+ opened_in_commit: thread.openedInCommit,
360
+ closed_in_commit: thread.closedInCommit ?? null,
361
+ closed_note: thread.closedNote ?? null,
362
+ }, { onConflict: 'id' }).select().single());
363
+ return parseThread(row);
364
+ }
365
+ // ── Search ────────────────────────────────────────────────────────────────
366
+ async indexEmbedding(commitId, vector) {
367
+ const { error } = await this.db.from('commits')
368
+ .update({ embedding: Array.from(vector) })
369
+ .eq('id', commitId);
370
+ if (error)
371
+ throw new Error(error.message);
372
+ }
373
+ async semanticSearch(vector, projectId, limit) {
374
+ const { data, error } = await this.db.rpc('match_commits', {
375
+ query_embedding: Array.from(vector),
376
+ project_id: projectId,
377
+ match_count: limit,
378
+ });
379
+ if (error)
380
+ throw new Error(error.message);
381
+ if (!data || data.length === 0)
382
+ return [];
383
+ // Fetch full commit rows for the returned IDs
384
+ const ids = data.map(r => r.id);
385
+ const scoreMap = new Map(data.map(r => [r.id, r.score]));
386
+ const rows = await this.q(this.db.from('commits').select('*').in('id', ids));
387
+ return rows.map(row => ({
388
+ commit: parseCommit(row),
389
+ score: scoreMap.get(row['id']) ?? 0,
390
+ matchType: 'semantic',
391
+ }));
392
+ }
393
+ async fullTextSearch(query, projectId) {
394
+ const rows = await this.q(this.db.from('commits').select('*')
395
+ .eq('project_id', projectId)
396
+ .textSearch('fts', query, { type: 'plain', config: 'english' }));
397
+ // Supabase textSearch does not expose BM25 scores; fixed score of 1.0
398
+ return rows.map(row => ({
399
+ commit: parseCommit(row),
400
+ score: 1.0,
401
+ matchType: 'fulltext',
402
+ }));
403
+ }
404
+ // ── Agents ────────────────────────────────────────────────────────────────
405
+ async upsertAgent(input) {
406
+ // NOTE: AgentInput has no totalCommits field, so total_commits is not included
407
+ // in the upsert payload. On Supabase the column defaults to 0 on first insert.
408
+ // On subsequent upserts the column is reset to 0 — this is a known limitation.
409
+ // total_commits is authoritative in LocalStore only; Supabase reflects push-time state.
410
+ const row = await this.q(this.db.from('agents').upsert({
411
+ id: input.id,
412
+ project_id: input.projectId,
413
+ role: input.role,
414
+ tool: input.tool,
415
+ workflow_type: input.workflowType,
416
+ display_name: input.displayName ?? null,
417
+ last_seen: new Date().toISOString(),
418
+ }, { onConflict: 'id' }).select().single());
419
+ return parseAgent(row);
420
+ }
421
+ async listAgents(projectId) {
422
+ const rows = await this.q(this.db.from('agents').select('*').eq('project_id', projectId));
423
+ return rows.map(parseAgent);
424
+ }
425
+ // ── Claims ────────────────────────────────────────────────────────────────
426
+ async claimTask(projectId, branchId, input) {
427
+ // Use listActiveClaims (RPC-backed, TTL-aware) to check for conflicts.
428
+ // This reuses the already-tested TTL expiry path and avoids duplicating
429
+ // the SQL `claimed_at + (ttl || ' milliseconds')::interval > NOW()` logic.
430
+ const active = await this.listActiveClaims(projectId);
431
+ const conflict = active.find(c => c.task === input.task);
432
+ if (conflict) {
433
+ throw new Error(`Task "${input.task}" is already claimed by ${conflict.agentId} ` +
434
+ `(claimed ${msSince(conflict.claimedAt)}). ` +
435
+ `Pick a different task or wait for the claim to expire.`);
436
+ }
437
+ const id = nanoid();
438
+ const row = await this.q(this.db.from('claims').insert({
439
+ id,
440
+ project_id: projectId,
441
+ branch_id: branchId,
442
+ task: input.task,
443
+ agent_id: input.agentId,
444
+ role: input.role,
445
+ status: input.status ?? 'proposed',
446
+ ttl: input.ttl ?? 7_200_000,
447
+ thread_id: input.threadId ?? null,
448
+ }).select().single());
449
+ return parseClaim(row);
450
+ }
451
+ async unclaimTask(claimId) {
452
+ const { error } = await this.db.from('claims')
453
+ .update({ status: 'released', released_at: new Date().toISOString() })
454
+ .eq('id', claimId);
455
+ if (error)
456
+ throw new Error(error.message);
457
+ }
458
+ async listActiveClaims(projectId) {
459
+ // TTL filter applied in SQL via the list_active_claims function
460
+ const { data, error } = await this.db.rpc('list_active_claims', { p_project_id: projectId });
461
+ if (error)
462
+ throw new Error(error.message);
463
+ return (data ?? []).map(parseClaim);
464
+ }
465
+ // ── Delta ─────────────────────────────────────────────────────────────────
466
+ async getContextDelta(projectId, branchId, since) {
467
+ // Strictly greater than — matches LocalStore semantics (> datetime(since/1000, 'unixepoch'))
468
+ const sinceIso = new Date(since).toISOString();
469
+ const [commitsResult, threadsResult, claimsResult] = await Promise.all([
470
+ this.db.from('commits').select('*')
471
+ .eq('branch_id', branchId)
472
+ .gt('created_at', sinceIso)
473
+ .order('created_at', { ascending: true }),
474
+ this.db.from('threads').select('*')
475
+ .eq('project_id', projectId)
476
+ .gt('updated_at', sinceIso),
477
+ this.db.rpc('list_active_claims', { p_project_id: projectId }),
478
+ ]);
479
+ if (commitsResult.error)
480
+ throw new Error(commitsResult.error.message);
481
+ if (threadsResult.error)
482
+ throw new Error(threadsResult.error.message);
483
+ if (claimsResult.error)
484
+ throw new Error(claimsResult.error.message);
485
+ const allThreadChanges = (threadsResult.data ?? []).map(parseThread);
486
+ return {
487
+ newCommits: (commitsResult.data ?? []).map(parseCommit),
488
+ openedThreads: allThreadChanges.filter(t => t.status === 'open'),
489
+ closedThreads: allThreadChanges.filter(t => t.status === 'closed'),
490
+ activeClaims: (claimsResult.data ?? []).map(parseClaim),
491
+ checkedAt: Date.now(),
492
+ };
493
+ }
494
+ }
495
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/supabase/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=supabase-store.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supabase-store.test.d.ts","sourceRoot":"","sources":["../../src/supabase/supabase-store.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,341 @@
1
+ import { describe, it, expect, vi, beforeEach } from 'vitest';
2
+ // ── Mock @supabase/supabase-js before importing SupabaseStore ─────────────────
3
+ // The Supabase client uses a builder pattern. We mock createClient to return
4
+ // a fake db object. Individual tests configure mockResolvedValue on the chain.
5
+ const mockSingle = vi.fn();
6
+ const mockMaybeSingle = vi.fn();
7
+ function makeChain(resolved) {
8
+ // A chainable builder that resolves when awaited.
9
+ // Each method returns `this` so chains like .select().eq().single() work.
10
+ const chain = {};
11
+ const methods = [
12
+ 'select', 'insert', 'update', 'upsert', 'delete',
13
+ 'eq', 'neq', 'gt', 'lt', 'gte', 'lte', 'is', 'in',
14
+ 'filter', 'order', 'limit', 'range', 'textSearch',
15
+ ];
16
+ methods.forEach(m => { chain[m] = vi.fn().mockReturnValue(chain); });
17
+ chain['single'] = vi.fn().mockResolvedValue(resolved);
18
+ chain['maybeSingle'] = vi.fn().mockResolvedValue(resolved);
19
+ // Make the chain itself thenable (for `await db.from(...).select()`)
20
+ chain['then'] = (resolve) => resolve(resolved);
21
+ return chain;
22
+ }
23
+ const mockDb = {
24
+ from: vi.fn(),
25
+ rpc: vi.fn(),
26
+ };
27
+ vi.mock('@supabase/supabase-js', () => ({
28
+ createClient: vi.fn(() => mockDb),
29
+ }));
30
+ import { SupabaseStore } from './index.js';
31
+ describe('SupabaseStore', () => {
32
+ let store;
33
+ beforeEach(() => {
34
+ vi.clearAllMocks();
35
+ store = new SupabaseStore('https://test.supabase.co', 'service-key');
36
+ });
37
+ // ── Error handling ────────────────────────────────────────────────────────
38
+ it('throws when Supabase returns an error', async () => {
39
+ mockDb.from.mockReturnValue(makeChain({ data: null, error: { message: 'db error' } }));
40
+ await expect(store.getProject('any')).rejects.toThrow('db error');
41
+ });
42
+ // ── Projects ──────────────────────────────────────────────────────────────
43
+ it('getProject returns null when not found', async () => {
44
+ mockDb.from.mockReturnValue(makeChain({ data: null, error: null }));
45
+ const result = await store.getProject('nonexistent');
46
+ expect(result).toBeNull();
47
+ });
48
+ it('getProject parses timestamps and optional fields', async () => {
49
+ const iso = '2026-03-18T10:00:00.000Z';
50
+ mockDb.from.mockReturnValue(makeChain({
51
+ data: { id: 'p1', name: 'MyProject', description: 'desc', github_url: 'https://gh.com', summary: '', created_at: iso },
52
+ error: null,
53
+ }));
54
+ const project = await store.getProject('p1');
55
+ expect(project).not.toBeNull();
56
+ expect(project.createdAt).toBeInstanceOf(Date);
57
+ expect(project.createdAt.toISOString()).toBe(iso);
58
+ expect(project.description).toBe('desc');
59
+ expect(project.githubUrl).toBe('https://gh.com');
60
+ });
61
+ it('createProject inserts and returns a Project', async () => {
62
+ const iso = '2026-03-18T10:00:00.000Z';
63
+ mockDb.from.mockReturnValue(makeChain({
64
+ data: { id: 'p1', name: 'Test', description: null, github_url: null, summary: '', created_at: iso },
65
+ error: null,
66
+ }));
67
+ const project = await store.createProject({ name: 'Test' });
68
+ expect(project.id).toBeDefined();
69
+ expect(project.name).toBe('Test');
70
+ expect(project.createdAt).toBeInstanceOf(Date);
71
+ });
72
+ // ── Branches ──────────────────────────────────────────────────────────────
73
+ it('getBranch returns null when not found', async () => {
74
+ mockDb.from.mockReturnValue(makeChain({ data: null, error: null }));
75
+ expect(await store.getBranch('missing')).toBeNull();
76
+ });
77
+ it('getBranch parses branch row correctly', async () => {
78
+ const iso = '2026-03-18T10:00:00.000Z';
79
+ mockDb.from.mockReturnValue(makeChain({
80
+ data: { id: 'br1', project_id: 'p1', name: 'main', git_branch: 'main',
81
+ summary: '', github_pr_url: null, parent_branch_id: null,
82
+ head_commit_id: 'c1', status: 'active', created_at: iso, merged_at: null },
83
+ error: null,
84
+ }));
85
+ const branch = await store.getBranch('br1');
86
+ expect(branch.projectId).toBe('p1');
87
+ expect(branch.headCommitId).toBe('c1');
88
+ expect(branch.createdAt).toBeInstanceOf(Date);
89
+ expect(branch.mergedAt).toBeUndefined();
90
+ });
91
+ it('createBranch is idempotent when ID already exists', async () => {
92
+ const iso = new Date().toISOString();
93
+ const existing = { id: 'br1', project_id: 'p1', name: 'main', git_branch: 'main',
94
+ summary: '', github_pr_url: null, parent_branch_id: null,
95
+ head_commit_id: null, status: 'active', created_at: iso, merged_at: null };
96
+ // First call (getBranch check) returns existing; second call (insert) should not be reached
97
+ mockDb.from.mockReturnValue(makeChain({ data: existing, error: null }));
98
+ const result = await store.createBranch({ id: 'br1', projectId: 'p1', name: 'main', gitBranch: 'main' });
99
+ expect(result.id).toBe('br1');
100
+ });
101
+ // ── Commits ───────────────────────────────────────────────────────────────
102
+ it('createCommit resolves projectId via getBranch and caches it', async () => {
103
+ const branchIso = new Date().toISOString();
104
+ const commitIso = new Date().toISOString();
105
+ const branchRow = { id: 'br1', project_id: 'proj1', name: 'main', git_branch: 'main',
106
+ summary: '', github_pr_url: null, parent_branch_id: null,
107
+ head_commit_id: null, status: 'active', created_at: branchIso, merged_at: null };
108
+ const commitRow = { id: 'c1', branch_id: 'br1', project_id: 'proj1', parent_id: null,
109
+ agent_id: 'agent1', agent_role: 'solo', tool: 'cli',
110
+ workflow_type: 'interactive', message: 'hello', content: 'c',
111
+ summary: 's', commit_type: 'manual', git_commit_sha: null,
112
+ created_at: commitIso };
113
+ // Call 1: getBranch for cache population; Call 2: insert commit
114
+ mockDb.from
115
+ .mockReturnValueOnce(makeChain({ data: branchRow, error: null })) // getBranch
116
+ .mockReturnValueOnce(makeChain({ data: commitRow, error: null })); // insert commit
117
+ const commit = await store.createCommit({
118
+ branchId: 'br1', agentId: 'agent1', agentRole: 'solo', tool: 'cli',
119
+ workflowType: 'interactive', message: 'hello', content: 'c', summary: 's', commitType: 'manual',
120
+ });
121
+ expect(commit.branchId).toBe('br1');
122
+ expect(commit.message).toBe('hello');
123
+ // projectId is NOT on the Commit domain type — verify it's absent
124
+ expect(commit['projectId']).toBeUndefined();
125
+ // Cache populated: second createCommit on same branch should NOT call getBranch again
126
+ mockDb.from.mockReturnValueOnce(makeChain({ data: commitRow, error: null })); // only insert
127
+ await store.createCommit({
128
+ branchId: 'br1', agentId: 'agent1', agentRole: 'solo', tool: 'cli',
129
+ workflowType: 'interactive', message: 'hello 2', content: 'c2', summary: 's2', commitType: 'manual',
130
+ });
131
+ // from() called 3 times total: getBranch (1) + insert commit 1 (1) + insert commit 2 (1)
132
+ expect(mockDb.from).toHaveBeenCalledTimes(3);
133
+ });
134
+ it('createCommit is idempotent when commit ID already exists', async () => {
135
+ const commitRow = { id: 'c1', branch_id: 'br1', project_id: 'proj1', parent_id: null,
136
+ agent_id: 'a', agent_role: 'solo', tool: 'cli',
137
+ workflow_type: 'interactive', message: 'm', content: 'c',
138
+ summary: 's', commit_type: 'manual', git_commit_sha: null,
139
+ created_at: new Date().toISOString() };
140
+ // getCommit check returns existing
141
+ mockDb.from.mockReturnValueOnce(makeChain({ data: commitRow, error: null }));
142
+ const result = await store.createCommit({
143
+ id: 'c1', branchId: 'br1', agentId: 'a', agentRole: 'solo', tool: 'cli',
144
+ workflowType: 'interactive', message: 'm', content: 'c', summary: 's', commitType: 'manual',
145
+ });
146
+ expect(result.id).toBe('c1');
147
+ // Should not have called insert
148
+ expect(mockDb.from).toHaveBeenCalledTimes(1);
149
+ });
150
+ // ── Snapshots ─────────────────────────────────────────────────────────────
151
+ it('getSessionSnapshot assembles a SessionSnapshot', async () => {
152
+ const now = new Date().toISOString();
153
+ const branchRow = { id: 'br1', project_id: 'p1', name: 'main', git_branch: 'main',
154
+ summary: '', parent_branch_id: null, head_commit_id: 'c1',
155
+ status: 'active', created_at: now, merged_at: null, github_pr_url: null };
156
+ const commitRow = { id: 'c1', branch_id: 'br1', project_id: 'p1', parent_id: null,
157
+ agent_id: 'a', agent_role: 'solo', tool: 'cli', workflow_type: 'interactive',
158
+ message: 'init', content: 'c', summary: 'project summary here',
159
+ commit_type: 'manual', git_commit_sha: null, created_at: now };
160
+ // Call sequence (matches the corrected implementation):
161
+ // 1. getBranch(branchId) — branch has parentBranchId=null, headCommitId='c1'
162
+ // 2. getCommit('c1') — fetched once, used for both projectSummary and branchSummary
163
+ // 3. commitsQuery (listCommits), threadsQuery (listOpenThreadsByBranch), rpc (list_active_claims) — parallel
164
+ mockDb.from
165
+ .mockReturnValueOnce(makeChain({ data: branchRow, error: null })) // getBranch
166
+ .mockReturnValueOnce(makeChain({ data: commitRow, error: null })) // getCommit (head)
167
+ .mockReturnValueOnce(makeChain({ data: [commitRow], error: null })) // listCommits (parallel)
168
+ .mockReturnValueOnce(makeChain({ data: [], error: null })); // listOpenThreadsByBranch (parallel)
169
+ mockDb.rpc.mockResolvedValueOnce({ data: [], error: null }); // list_active_claims (parallel)
170
+ const snapshot = await store.getSessionSnapshot('p1', 'br1');
171
+ expect(snapshot.projectSummary).toBe('project summary here');
172
+ expect(snapshot.branchName).toBe('main');
173
+ expect(snapshot.recentCommits).toHaveLength(1);
174
+ expect(snapshot.openThreads).toHaveLength(0);
175
+ expect(snapshot.activeClaims).toHaveLength(0);
176
+ });
177
+ // ── Threads ───────────────────────────────────────────────────────────────
178
+ it('listOpenThreads returns only open threads for the project', async () => {
179
+ const now = new Date().toISOString();
180
+ const threadRow = { id: 't1', project_id: 'p1', branch_id: 'br1', description: 'todo',
181
+ status: 'open', workflow_type: null, opened_in_commit: 'c1',
182
+ closed_in_commit: null, closed_note: null, created_at: now, updated_at: now };
183
+ mockDb.from.mockReturnValue(makeChain({ data: [threadRow], error: null }));
184
+ const threads = await store.listOpenThreads('p1');
185
+ expect(threads).toHaveLength(1);
186
+ expect(threads[0].status).toBe('open');
187
+ expect(threads[0].createdAt).toBeInstanceOf(Date);
188
+ });
189
+ it('syncThread upserts on id conflict', async () => {
190
+ const now = new Date().toISOString();
191
+ const thread = { id: 't1', projectId: 'p1', branchId: 'br1', description: 'todo',
192
+ status: 'closed', openedInCommit: 'c1', closedInCommit: 'c2',
193
+ closedNote: 'done', createdAt: new Date(), };
194
+ const threadRow = { id: 't1', project_id: 'p1', branch_id: 'br1', description: 'todo',
195
+ status: 'closed', workflow_type: null, opened_in_commit: 'c1',
196
+ closed_in_commit: 'c2', closed_note: 'done', created_at: now, updated_at: now };
197
+ mockDb.from.mockReturnValue(makeChain({ data: threadRow, error: null }));
198
+ const result = await store.syncThread(thread);
199
+ expect(result.status).toBe('closed');
200
+ expect(result.closedNote).toBe('done');
201
+ });
202
+ // ── Search ────────────────────────────────────────────────────────────────
203
+ it('indexEmbedding updates the embedding column on the commit row', async () => {
204
+ mockDb.from.mockReturnValue(makeChain({ data: null, error: null }));
205
+ await store.indexEmbedding('c1', new Float32Array([0.1, 0.2, 0.3]));
206
+ expect(mockDb.from).toHaveBeenCalledWith('commits');
207
+ });
208
+ it('semanticSearch calls match_commits RPC and maps results', async () => {
209
+ const now = new Date().toISOString();
210
+ const commitRow = { id: 'c1', branch_id: 'br1', project_id: 'p1', parent_id: null,
211
+ agent_id: 'a', agent_role: 'solo', tool: 'cli', workflow_type: 'interactive',
212
+ message: 'm', content: 'c', summary: 's', commit_type: 'manual',
213
+ git_commit_sha: null, created_at: now };
214
+ // RPC returns { id, score } rows; then we fetch full commit rows
215
+ mockDb.rpc.mockResolvedValueOnce({ data: [{ id: 'c1', score: 0.95 }], error: null });
216
+ mockDb.from.mockReturnValue(makeChain({ data: [commitRow], error: null }));
217
+ const results = await store.semanticSearch(new Float32Array(384), 'p1', 5);
218
+ expect(results).toHaveLength(1);
219
+ expect(results[0].score).toBe(0.95);
220
+ expect(results[0].matchType).toBe('semantic');
221
+ expect(mockDb.rpc).toHaveBeenCalledWith('match_commits', expect.objectContaining({ project_id: 'p1', match_count: 5 }));
222
+ });
223
+ it('fullTextSearch uses textSearch on fts column', async () => {
224
+ const now = new Date().toISOString();
225
+ const commitRow = { id: 'c1', branch_id: 'br1', project_id: 'p1', parent_id: null,
226
+ agent_id: 'a', agent_role: 'solo', tool: 'cli', workflow_type: 'interactive',
227
+ message: 'hello world', content: 'c', summary: 's', commit_type: 'manual',
228
+ git_commit_sha: null, created_at: now };
229
+ mockDb.from.mockReturnValue(makeChain({ data: [commitRow], error: null }));
230
+ const results = await store.fullTextSearch('hello', 'p1');
231
+ expect(results).toHaveLength(1);
232
+ expect(results[0].matchType).toBe('fulltext');
233
+ expect(results[0].score).toBe(1.0);
234
+ });
235
+ // ── Agents ────────────────────────────────────────────────────────────────
236
+ it('upsertAgent upserts on id conflict', async () => {
237
+ const now = new Date().toISOString();
238
+ const agentRow = { id: 'agent1', project_id: 'p1', role: 'solo', tool: 'cli',
239
+ workflow_type: 'interactive', display_name: null,
240
+ total_commits: 5, last_seen: now, created_at: now };
241
+ mockDb.from.mockReturnValue(makeChain({ data: agentRow, error: null }));
242
+ const agent = await store.upsertAgent({
243
+ id: 'agent1', projectId: 'p1', role: 'solo', tool: 'cli', workflowType: 'interactive'
244
+ });
245
+ expect(agent.id).toBe('agent1');
246
+ expect(agent.totalCommits).toBe(5);
247
+ expect(agent.lastSeen).toBeInstanceOf(Date);
248
+ });
249
+ // ── Claims ────────────────────────────────────────────────────────────────
250
+ it('listActiveClaims calls list_active_claims RPC', async () => {
251
+ mockDb.rpc.mockResolvedValueOnce({ data: [], error: null });
252
+ const claims = await store.listActiveClaims('p1');
253
+ expect(claims).toHaveLength(0);
254
+ expect(mockDb.rpc).toHaveBeenCalledWith('list_active_claims', { p_project_id: 'p1' });
255
+ });
256
+ it('unclaimTask updates status to released', async () => {
257
+ mockDb.from.mockReturnValue(makeChain({ data: null, error: null }));
258
+ await expect(store.unclaimTask('claim1')).resolves.toBeUndefined();
259
+ });
260
+ it('claimTask throws when same task is already actively claimed', async () => {
261
+ const existingClaim = {
262
+ id: 'claim-existing',
263
+ project_id: 'proj-1',
264
+ branch_id: 'branch-1',
265
+ task: 'Story 7.1',
266
+ agent_id: 'dev-a-machine',
267
+ role: 'solo',
268
+ status: 'active',
269
+ ttl: 7_200_000,
270
+ claimed_at: new Date(Date.now() - 3 * 60 * 1000).toISOString(), // 3 minutes ago
271
+ released_at: null,
272
+ thread_id: null,
273
+ };
274
+ mockDb.rpc.mockResolvedValueOnce({ data: [existingClaim], error: null });
275
+ await expect(store.claimTask('proj-1', 'branch-1', {
276
+ task: 'Story 7.1',
277
+ agentId: 'dev-b-machine',
278
+ role: 'solo',
279
+ status: 'active',
280
+ ttl: 7_200_000,
281
+ })).rejects.toThrow('already claimed by dev-a-machine');
282
+ });
283
+ it('claimTask succeeds when no active claim exists for the task', async () => {
284
+ // listActiveClaims: rpc returns empty list (no conflicts)
285
+ mockDb.rpc.mockResolvedValueOnce({ data: [], error: null });
286
+ // INSERT chain: from → insert → select → single
287
+ const newClaimRow = {
288
+ id: 'claim-new',
289
+ project_id: 'proj-1',
290
+ branch_id: 'branch-1',
291
+ task: 'Story 7.1',
292
+ agent_id: 'dev-b-machine',
293
+ role: 'solo',
294
+ status: 'active',
295
+ ttl: 7_200_000,
296
+ claimed_at: new Date().toISOString(),
297
+ released_at: null,
298
+ thread_id: null,
299
+ };
300
+ mockDb.from.mockReturnValueOnce({
301
+ insert: () => ({
302
+ select: () => ({
303
+ single: () => ({ data: newClaimRow, error: null }),
304
+ }),
305
+ }),
306
+ });
307
+ const claim = await store.claimTask('proj-1', 'branch-1', {
308
+ task: 'Story 7.1',
309
+ agentId: 'dev-b-machine',
310
+ role: 'solo',
311
+ status: 'active',
312
+ ttl: 7_200_000,
313
+ });
314
+ expect(claim.task).toBe('Story 7.1');
315
+ expect(claim.agentId).toBe('dev-b-machine');
316
+ });
317
+ // ── Delta ─────────────────────────────────────────────────────────────────
318
+ it('getContextDelta filters by since using ISO string, strictly greater than', async () => {
319
+ const since = Date.now() - 60_000; // 1 minute ago
320
+ const sinceIso = new Date(since).toISOString();
321
+ const now = new Date().toISOString();
322
+ const commitRow = { id: 'c1', branch_id: 'br1', project_id: 'p1', parent_id: null,
323
+ agent_id: 'a', agent_role: 'solo', tool: 'cli', workflow_type: 'interactive',
324
+ message: 'm', content: 'c', summary: 's', commit_type: 'manual',
325
+ git_commit_sha: null, created_at: now };
326
+ mockDb.from
327
+ .mockReturnValueOnce(makeChain({ data: [commitRow], error: null })) // commits since
328
+ .mockReturnValueOnce(makeChain({ data: [], error: null })); // threads since
329
+ mockDb.rpc.mockResolvedValueOnce({ data: [], error: null }); // active claims
330
+ const delta = await store.getContextDelta('p1', 'br1', since);
331
+ expect(delta.newCommits).toHaveLength(1);
332
+ expect(delta.openedThreads).toHaveLength(0);
333
+ expect(delta.closedThreads).toHaveLength(0);
334
+ expect(delta.checkedAt).toBeGreaterThan(since);
335
+ // Verify strictly-greater-than filter used the correct ISO string
336
+ // (guards against accidental use of gte which would include the since boundary)
337
+ const commitsChain = mockDb.from.mock.results[0]?.value;
338
+ expect(commitsChain.gt).toHaveBeenCalledWith('created_at', sinceIso);
339
+ });
340
+ });
341
+ //# sourceMappingURL=supabase-store.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supabase-store.test.js","sourceRoot":"","sources":["../../src/supabase/supabase-store.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@contextgit/store",
3
- "version": "0.0.11",
3
+ "version": "0.0.13",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -10,14 +10,17 @@
10
10
  "types": "./dist/index.d.ts"
11
11
  }
12
12
  },
13
- "files": ["dist"],
13
+ "files": [
14
+ "dist"
15
+ ],
14
16
  "scripts": {
15
17
  "build": "tsc",
16
18
  "test": "vitest run",
17
19
  "typecheck": "tsc --noEmit"
18
20
  },
19
21
  "dependencies": {
20
- "@contextgit/core": "0.0.11",
22
+ "@contextgit/core": "0.0.13",
23
+ "@supabase/supabase-js": "^2.99.2",
21
24
  "better-sqlite3": "^9.4.0",
22
25
  "nanoid": "^5.0.0",
23
26
  "sqlite-vec": "^0.1.6"