@contextgit/store 0.1.10 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/interface.d.ts +26 -1
  2. package/dist/interface.d.ts.map +1 -1
  3. package/dist/local/index.d.ts +26 -1
  4. package/dist/local/index.d.ts.map +1 -1
  5. package/dist/local/index.js +216 -6
  6. package/dist/local/index.js.map +1 -1
  7. package/dist/local/local-store.test.js +642 -2
  8. package/dist/local/local-store.test.js.map +1 -1
  9. package/dist/local/migrations.d.ts +11 -0
  10. package/dist/local/migrations.d.ts.map +1 -1
  11. package/dist/local/migrations.js +118 -1
  12. package/dist/local/migrations.js.map +1 -1
  13. package/dist/local/plan-nodes.test.d.ts +2 -0
  14. package/dist/local/plan-nodes.test.d.ts.map +1 -0
  15. package/dist/local/plan-nodes.test.js +291 -0
  16. package/dist/local/plan-nodes.test.js.map +1 -0
  17. package/dist/local/queries.d.ts +103 -2
  18. package/dist/local/queries.d.ts.map +1 -1
  19. package/dist/local/queries.js +506 -16
  20. package/dist/local/queries.js.map +1 -1
  21. package/dist/local/schema.d.ts +8 -0
  22. package/dist/local/schema.d.ts.map +1 -1
  23. package/dist/local/schema.js +88 -0
  24. package/dist/local/schema.js.map +1 -1
  25. package/dist/local/thread-archive.test.d.ts +2 -0
  26. package/dist/local/thread-archive.test.d.ts.map +1 -0
  27. package/dist/local/thread-archive.test.js +203 -0
  28. package/dist/local/thread-archive.test.js.map +1 -0
  29. package/dist/remote/index.d.ts +15 -0
  30. package/dist/remote/index.d.ts.map +1 -1
  31. package/dist/remote/index.js +44 -0
  32. package/dist/remote/index.js.map +1 -1
  33. package/dist/supabase/index.d.ts +15 -0
  34. package/dist/supabase/index.d.ts.map +1 -1
  35. package/dist/supabase/index.js +45 -2
  36. package/dist/supabase/index.js.map +1 -1
  37. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"local-store.test.js","sourceRoot":"","sources":["../../src/local/local-store.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-store.test.js","sourceRoot":"","sources":["../../src/local/local-store.test.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,14 @@
1
1
  import type { Database } from 'better-sqlite3';
2
+ /**
3
+ * One-time sweep run by migration v8: move every currently-stale or expired-watch
4
+ * thread from `threads` into `thread_archive`. Uses the same classification logic
5
+ * (`classifyThread` from core) the rest of the system uses.
6
+ *
7
+ * Exported so tests can drive the sweep against arbitrary seed data; in production
8
+ * it's called once, inside the v8 migration transaction, with `now = Date.now()`.
9
+ *
10
+ * Returns the number of threads moved.
11
+ */
12
+ export declare function sweepStaleThreadsOnMigration(db: Database, now: number): number;
2
13
  export declare function runMigrations(db: Database): void;
3
14
  //# sourceMappingURL=migrations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/local/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAsF9C,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAqBhD"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/local/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AA2I9C;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAAC,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAqG9E;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAqBhD"}
@@ -1,4 +1,5 @@
1
- import { SCHEMA_V1_DDL, SCHEMA_V2_DDL, SCHEMA_V3_DDL, SCHEMA_V4_DDL, SCHEMA_V5_DDL, CREATE_COMMIT_EMBEDDINGS } from './schema.js';
1
+ import { SCHEMA_V1_DDL, SCHEMA_V2_DDL, SCHEMA_V3_DDL, SCHEMA_V4_DDL, SCHEMA_V5_DDL, SCHEMA_V6_DDL, SCHEMA_V7_DDL, SCHEMA_V8_DDL, SCHEMA_V9_DDL, SCHEMA_V10_DDL, CREATE_COMMIT_EMBEDDINGS } from './schema.js';
2
+ import { classifyThread } from '@contextgit/core';
2
3
  const MIGRATIONS_TABLE = `
3
4
  CREATE TABLE IF NOT EXISTS _migrations (
4
5
  version INTEGER PRIMARY KEY,
@@ -68,7 +69,123 @@ const MIGRATIONS = [
68
69
  }
69
70
  },
70
71
  },
72
+ {
73
+ version: 6,
74
+ name: 'threads_granularity',
75
+ run(db) {
76
+ for (const sql of SCHEMA_V6_DDL) {
77
+ db.exec(sql);
78
+ }
79
+ },
80
+ },
81
+ {
82
+ version: 7,
83
+ name: 'trace_table',
84
+ run(db) {
85
+ for (const sql of SCHEMA_V7_DDL) {
86
+ db.exec(sql);
87
+ }
88
+ },
89
+ },
90
+ {
91
+ version: 8,
92
+ name: 'thread_archive',
93
+ run(db) {
94
+ for (const sql of SCHEMA_V8_DDL) {
95
+ db.exec(sql);
96
+ }
97
+ sweepStaleThreadsOnMigration(db, Date.now());
98
+ },
99
+ },
100
+ {
101
+ version: 9,
102
+ name: 'plan_nodes',
103
+ run(db) {
104
+ for (const sql of SCHEMA_V9_DDL) {
105
+ db.exec(sql);
106
+ }
107
+ // No sweep. Planning is structurally exempt from staleness — it never decays.
108
+ },
109
+ },
110
+ {
111
+ version: 10,
112
+ name: 'backfill_last_touched_commit',
113
+ run(db) {
114
+ // Backfill: rows opened before v6 had last_touched_commit added as NULL
115
+ // (v6 was ALTER-only, no UPDATE). Decay logic falls back to
116
+ // opened_in_commit so behavior is correct, but the NULL is misleading.
117
+ // Set it explicitly so the field is trustworthy at the data layer.
118
+ for (const sql of SCHEMA_V10_DDL) {
119
+ db.exec(sql);
120
+ }
121
+ },
122
+ },
71
123
  ];
124
+ /**
125
+ * One-time sweep run by migration v8: move every currently-stale or expired-watch
126
+ * thread from `threads` into `thread_archive`. Uses the same classification logic
127
+ * (`classifyThread` from core) the rest of the system uses.
128
+ *
129
+ * Exported so tests can drive the sweep against arbitrary seed data; in production
130
+ * it's called once, inside the v8 migration transaction, with `now = Date.now()`.
131
+ *
132
+ * Returns the number of threads moved.
133
+ */
134
+ export function sweepStaleThreadsOnMigration(db, now) {
135
+ const rows = db.prepare(`SELECT * FROM threads WHERE status = 'open'`).all();
136
+ const selectCommitTs = db.prepare(`SELECT created_at FROM commits WHERE id = ?`);
137
+ const countProjectCommitsSince = db.prepare(`SELECT COUNT(*) AS n FROM commits c JOIN branches b ON c.branch_id = b.id WHERE b.project_id = ? AND c.created_at > ?`);
138
+ const countBranchCommitsSince = db.prepare(`SELECT COUNT(*) AS n FROM commits WHERE branch_id = ? AND created_at > ?`);
139
+ const insertArchive = db.prepare(`INSERT INTO thread_archive (
140
+ id, project_id, branch_id, description, status, kind, workflow_type,
141
+ opened_in_commit, last_touched_commit, closed_in_commit, closed_note,
142
+ created_at, updated_at, archived_at, archived_reason
143
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`);
144
+ const deleteFromThreads = db.prepare(`DELETE FROM threads WHERE id = ?`);
145
+ let moved = 0;
146
+ for (const row of rows) {
147
+ const thread = {
148
+ id: row.id,
149
+ projectId: row.project_id,
150
+ branchId: row.branch_id,
151
+ description: row.description,
152
+ status: row.status,
153
+ kind: row.kind,
154
+ workflowType: (row.workflow_type ?? undefined),
155
+ openedInCommit: row.opened_in_commit,
156
+ lastTouchedCommit: row.last_touched_commit ?? undefined,
157
+ closedInCommit: row.closed_in_commit ?? undefined,
158
+ closedNote: row.closed_note ?? undefined,
159
+ createdAt: new Date(row.created_at),
160
+ updatedAt: row.updated_at ? new Date(row.updated_at) : undefined,
161
+ };
162
+ const touchId = thread.lastTouchedCommit ?? thread.openedInCommit;
163
+ const tsRow = selectCommitTs.get(touchId);
164
+ const touchTs = tsRow?.created_at ?? thread.createdAt.getTime();
165
+ const projectN = countProjectCommitsSince.get(thread.projectId, touchTs).n;
166
+ const branchN = countBranchCommitsSince.get(thread.branchId, touchTs).n;
167
+ const flag = classifyThread(thread, {
168
+ touchTs,
169
+ projectCommitsSince: projectN,
170
+ branchCommitsSince: branchN,
171
+ now,
172
+ });
173
+ if (flag !== 'stale' && flag !== 'expired')
174
+ continue;
175
+ const reason = flag === 'expired'
176
+ ? 'watch-expired'
177
+ : // classifyThread can return 'stale' via either projectCommitsSince (>=8) or
178
+ // branchCommitsSince (>=30). Pick the more specific reason when commit-distance
179
+ // crossed the branch threshold; otherwise attribute to age (project-wide cadence).
180
+ branchN >= 30
181
+ ? 'stale-distance'
182
+ : 'stale-age';
183
+ insertArchive.run(row.id, row.project_id, row.branch_id, row.description, row.status, row.kind, row.workflow_type, row.opened_in_commit, row.last_touched_commit, row.closed_in_commit, row.closed_note, row.created_at, row.updated_at, now, reason);
184
+ deleteFromThreads.run(row.id);
185
+ moved++;
186
+ }
187
+ return moved;
188
+ }
72
189
  export function runMigrations(db) {
73
190
  // Ensure migrations table exists
74
191
  db.exec(MIGRATIONS_TABLE);
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../src/local/migrations.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAQjI,MAAM,gBAAgB,GAAG;;;;;;CAMxB,CAAA;AAQD,MAAM,UAAU,GAAgB;IAC9B;QACE,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,gBAAgB;QACtB,GAAG,CAAC,EAAE;YACJ,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;gBAChC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACd,CAAC;QACH,CAAC;KACF;IACD;QACE,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,kBAAkB;QACxB,GAAG,CAAC,EAAE;YACJ,uBAAuB;YACvB,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;gBAChC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACd,CAAC;YAED,uEAAuE;YACvE,IAAI,CAAC;gBACH,EAAE,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;YACnC,CAAC;YAAC,MAAM,CAAC;gBACP,mEAAmE;YACrE,CAAC;QACH,CAAC;KACF;IACD;QACE,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,aAAa;QACnB,GAAG,CAAC,EAAE;YACJ,qEAAqE;YACrE,6EAA6E;YAC7E,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;gBAChC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACd,CAAC;YACD,IAAI,CAAC;gBACH,EAAE,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAA;YACnE,CAAC;YAAC,MAAM,CAAC;gBACP,0CAA0C;YAC5C,CAAC;QACH,CAAC;KACF;IACD;QACE,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,cAAc;QACpB,GAAG,CAAC,EAAE;YACJ,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;gBAChC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACd,CAAC;QACH,CAAC;KACF;IACD;QACE,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,yBAAyB;QAC/B,GAAG,CAAC,EAAE;YACJ,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;gBAChC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACd,CAAC;QACH,CAAC;KACF;CACF,CAAA;AAED,MAAM,UAAU,aAAa,CAAC,EAAY;IACxC,iCAAiC;IACjC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;IAEzB,MAAM,UAAU,GAAG,EAAE,CAAC,OAAO,CAC3B,oEAAoE,CACrE,CAAA;IACD,MAAM,eAAe,GAAG,EAAE,CAAC,OAAO,CAChC,sEAAsE,CACvE,CAAA;IAED,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;IAE/D,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC;YAAE,SAAQ;QAE5C,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;YAClB,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACjB,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;QACpE,CAAC,CAAC,EAAE,CAAA;IACN,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../src/local/migrations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=plan-nodes.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-nodes.test.d.ts","sourceRoot":"","sources":["../../src/local/plan-nodes.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,291 @@
1
+ import Database from 'better-sqlite3';
2
+ import { afterEach, beforeEach, describe, expect, it } from 'vitest';
3
+ import { runMigrations } from './migrations.js';
4
+ describe('plan_nodes table (v9 migration)', () => {
5
+ let db;
6
+ beforeEach(() => {
7
+ db = new Database(':memory:');
8
+ runMigrations(db);
9
+ });
10
+ afterEach(() => {
11
+ db.close();
12
+ });
13
+ it('creates the plan_nodes table', () => {
14
+ const row = db
15
+ .prepare(`SELECT name FROM sqlite_master WHERE type='table' AND name='plan_nodes'`)
16
+ .get();
17
+ expect(row?.name).toBe('plan_nodes');
18
+ });
19
+ it('records v9 in _migrations', () => {
20
+ const versions = db.prepare(`SELECT version FROM _migrations ORDER BY version`).all().map((r) => r.version);
21
+ expect(versions).toContain(9);
22
+ });
23
+ it('enforces level enum via CHECK constraint', () => {
24
+ db.prepare(`INSERT INTO projects (id, name, created_at) VALUES ('p', 'p', 0)`).run();
25
+ expect(() => db.prepare(`
26
+ INSERT INTO plan_nodes (id, project_id, level, title, status, position, created_at)
27
+ VALUES ('x', 'p', 'epic', 'bad', 'pending', 0, 0)
28
+ `).run()).toThrow();
29
+ });
30
+ // ─── Task 4: insertPlanTree ───────────────────────────────────────────────
31
+ it('insertPlanTree creates a full plan→step→task tree in one transaction', async () => {
32
+ const { Queries } = await import('./queries.js');
33
+ const q = new Queries(db);
34
+ db.prepare(`INSERT INTO projects (id, name, created_at) VALUES ('p1', 'p1', 0)`).run();
35
+ const plan = q.insertPlanTree('p1', {
36
+ title: 'Plan 1D-α',
37
+ children: [
38
+ { title: 'Slice 1', children: [{ title: 'Task A' }, { title: 'Task B' }] },
39
+ { title: 'Slice 2' },
40
+ ],
41
+ });
42
+ expect(plan.level).toBe('plan');
43
+ expect(plan.title).toBe('Plan 1D-α');
44
+ expect(plan.children?.length).toBe(2);
45
+ expect(plan.children?.[0].level).toBe('step');
46
+ expect(plan.children?.[0].children?.[0].level).toBe('task');
47
+ expect(plan.children?.[0].children?.[0].title).toBe('Task A');
48
+ const rows = db.prepare(`SELECT id, level, status FROM plan_nodes WHERE project_id = 'p1'`).all();
49
+ expect(rows).toHaveLength(5); // 1 plan + 2 steps + 2 tasks
50
+ expect(rows.every((r) => r.status === 'pending')).toBe(true);
51
+ });
52
+ it('insertPlanTree accepts arbitrary depth (no level-enum cap)', async () => {
53
+ const { Queries } = await import('./queries.js');
54
+ const q = new Queries(db);
55
+ db.prepare(`INSERT INTO projects (id, name, created_at) VALUES ('p2', 'p2', 0)`).run();
56
+ // 4 levels deep: root → child → grandchild → great-grandchild. Real project
57
+ // trees commonly exceed plan→step→task (e.g. Phase → sub-phase → Slice → Task).
58
+ const plan = q.insertPlanTree('p2', {
59
+ title: 'Phase 1',
60
+ children: [{
61
+ title: 'Sub-phase 1D-α',
62
+ children: [{
63
+ title: 'Slice 3',
64
+ children: [
65
+ { title: 'StatusDot' },
66
+ { title: 'Checkbox' },
67
+ ],
68
+ }],
69
+ }],
70
+ });
71
+ expect(plan.children?.[0].children?.[0].children).toHaveLength(2);
72
+ expect(plan.children?.[0].children?.[0].children?.[0].title).toBe('StatusDot');
73
+ // Depth 3+ nodes get level='task' (the 'level' enum is purely cosmetic for
74
+ // depths ≥ 2 after removing the cap).
75
+ expect(plan.children?.[0].children?.[0].children?.[0].level).toBe('task');
76
+ const rows = db.prepare(`SELECT id, level FROM plan_nodes WHERE project_id = 'p2'`).all();
77
+ expect(rows).toHaveLength(5); // 1 + 1 + 1 + 2
78
+ });
79
+ // ─── Task 5: getPlanTree ──────────────────────────────────────────────────
80
+ it('getPlanTree returns active plans with direct-child progress semantics', async () => {
81
+ const { Queries } = await import('./queries.js');
82
+ const q = new Queries(db);
83
+ db.prepare(`INSERT INTO projects (id, name, created_at) VALUES ('p3', 'p3', 0)`).run();
84
+ const plan = q.insertPlanTree('p3', {
85
+ title: 'P',
86
+ children: [
87
+ { title: 'S1', children: [{ title: 'T1' }, { title: 'T2' }] },
88
+ { title: 'S2', children: [{ title: 'T3' }] },
89
+ ],
90
+ });
91
+ const t1Id = plan.children[0].children[0].id;
92
+ q.updatePlanNodeStatus(t1Id, 'done', null);
93
+ const trees = q.getPlanTree('p3');
94
+ expect(trees).toHaveLength(1);
95
+ expect(trees[0].title).toBe('P');
96
+ // P has 2 direct children (S1, S2). Neither is effectively-done yet
97
+ // (S1 has 1 of 2 done; S2 has 0 of 1).
98
+ expect(trees[0].progress).toEqual({ done: 0, total: 2 });
99
+ // S1 has 2 direct children, 1 done.
100
+ expect(trees[0].children?.[0].progress).toEqual({ done: 1, total: 2 });
101
+ // S2 has 1 direct child, 0 done.
102
+ expect(trees[0].children?.[1].progress).toEqual({ done: 0, total: 1 });
103
+ });
104
+ it('getPlanTree progress is depth-agnostic — rollup is correct at any depth', async () => {
105
+ // Reproduces the user's bug: Phase 1 with 9 children (8 placeholders + 1
106
+ // sub-phase with 6 leaf tasks, 3 done) must show [0/9 done], NOT [3/6].
107
+ const { Queries } = await import('./queries.js');
108
+ const q = new Queries(db);
109
+ db.prepare(`INSERT INTO projects (id, name, created_at) VALUES ('p_deep', 'p_deep', 0)`).run();
110
+ const plan = q.insertPlanTree('p_deep', {
111
+ title: 'Phase 1',
112
+ children: [
113
+ // The one populated sub-phase: 6 leaf tasks, mark 3 done after insert.
114
+ { title: 'Sub-phase 1D-α', children: [
115
+ { title: 'Task 1' },
116
+ { title: 'Task 2' },
117
+ { title: 'Task 3' },
118
+ { title: 'Task 4' },
119
+ { title: 'Task 5' },
120
+ { title: 'Task 6' },
121
+ ] },
122
+ // 8 empty placeholder sub-phases.
123
+ { title: 'Sub-phase 1B' },
124
+ { title: 'Sub-phase 1C' },
125
+ { title: 'Sub-phase 1D-β' },
126
+ { title: 'Sub-phase 1D-γ' },
127
+ { title: 'Sub-phase 1D-δ' },
128
+ { title: 'Sub-phase 1D-SSO' },
129
+ { title: 'Sub-phase 1E' },
130
+ { title: 'Sub-phase 1F' },
131
+ ],
132
+ });
133
+ // Mark 3 of the 6 leaf tasks done.
134
+ const subPhase = plan.children[0];
135
+ for (let i = 0; i < 3; i++) {
136
+ q.updatePlanNodeStatus(subPhase.children[i].id, 'done', null);
137
+ }
138
+ const trees = q.getPlanTree('p_deep');
139
+ const phase1 = trees[0];
140
+ // Phase 1 has 9 direct children. None is effectively-done (sub-phase 1D-α
141
+ // is only 3/6, placeholders have no children + status=pending).
142
+ expect(phase1.progress).toEqual({ done: 0, total: 9 });
143
+ // Sub-phase 1D-α has 6 direct children, 3 done.
144
+ expect(phase1.children[0].progress).toEqual({ done: 3, total: 6 });
145
+ // Placeholder sub-phases have no children — no progress badge (undefined).
146
+ expect(phase1.children[1].progress).toBeUndefined();
147
+ });
148
+ it('getPlanTree: status=done on an empty step does NOT count as complete (containers need children)', async () => {
149
+ // Reproduces the second user bug report (after the depth-cap fix):
150
+ // Phase 1 [3/9] but no direct child shows ✓ → the "3" matches no rule.
151
+ // Cause: 3 of Phase 1's children are level='step' with status='done' and
152
+ // zero children. The previous fix counted them as "leaf-complete" because
153
+ // they had no children. The right rule: a 'step' or 'plan' is only complete
154
+ // when it has children AND all children complete. status='done' on an empty
155
+ // container is meaningless for the rollup.
156
+ const { Queries } = await import('./queries.js');
157
+ const q = new Queries(db);
158
+ db.prepare(`INSERT INTO projects (id, name, created_at) VALUES ('p_empty_step', 'p_empty_step', 0)`).run();
159
+ const plan = q.insertPlanTree('p_empty_step', {
160
+ title: 'Phase 1',
161
+ children: [
162
+ // The active sub-phase with 6 tasks, 4 done (matches user's 1D-α [4/6]).
163
+ { title: 'Sub-phase 1D-α', children: [
164
+ { title: 'T1' }, { title: 'T2' }, { title: 'T3' },
165
+ { title: 'T4' }, { title: 'T5' }, { title: 'T6' },
166
+ ] },
167
+ // 3 placeholder steps that the user later marks status='done' directly
168
+ // (matches user's 1A/1B/1C). These must NOT count as complete.
169
+ { title: '1A' }, { title: '1B' }, { title: '1C' },
170
+ // 5 pending placeholder steps.
171
+ { title: '1D-β' }, { title: '1D-γ' }, { title: '1D-δ' },
172
+ { title: '1D-SSO' }, { title: '1E' },
173
+ ],
174
+ });
175
+ // Note: under the new content-aware level mapping, empty inserts get
176
+ // level='task'. But the bug specifically targets nodes stored as level='step'
177
+ // with no children (as in the user's actual data). Force level='step' on the
178
+ // 3 placeholders we want to mark "done" so the regression covers the real case.
179
+ db.prepare(`UPDATE plan_nodes SET level = 'step' WHERE project_id = 'p_empty_step' AND title IN ('1A', '1B', '1C')`).run();
180
+ // Mark 4 of 1D-α's 6 tasks done (4/6 — matches user's number).
181
+ for (let i = 0; i < 4; i++) {
182
+ q.updatePlanNodeStatus(plan.children[0].children[i].id, 'done', null);
183
+ }
184
+ // Mark 1A, 1B, 1C steps as status='done' directly (the user's case).
185
+ for (let i = 1; i <= 3; i++) {
186
+ q.updatePlanNodeStatus(plan.children[i].id, 'done', null);
187
+ }
188
+ const trees = q.getPlanTree('p_empty_step');
189
+ const phase1 = trees[0];
190
+ // No direct child of Phase 1 is complete:
191
+ // - 1D-α: container with 4/6 children done → not all → incomplete
192
+ // - 1A/1B/1C: containers (level='step') with no children → incomplete
193
+ // - 5 pending placeholders: leaves or empty containers → incomplete
194
+ expect(phase1.progress).toEqual({ done: 0, total: 9 });
195
+ // Sub-phase 1D-α still correctly rolls up its own tasks.
196
+ expect(phase1.children[0].progress).toEqual({ done: 4, total: 6 });
197
+ });
198
+ it('getPlanTree: a non-leaf is effectively-done when all descendants are done (propagates up)', async () => {
199
+ const { Queries } = await import('./queries.js');
200
+ const q = new Queries(db);
201
+ db.prepare(`INSERT INTO projects (id, name, created_at) VALUES ('p_prop', 'p_prop', 0)`).run();
202
+ const plan = q.insertPlanTree('p_prop', {
203
+ title: 'P',
204
+ children: [
205
+ { title: 'S1', children: [{ title: 'T1' }, { title: 'T2' }] },
206
+ { title: 'S2', children: [{ title: 'T3' }] },
207
+ ],
208
+ });
209
+ // Mark all leaf tasks done. P should be effectively-done and excluded from
210
+ // the active tree (goes to listCompletedPlans).
211
+ for (const s of plan.children) {
212
+ for (const t of s.children)
213
+ q.updatePlanNodeStatus(t.id, 'done', null);
214
+ }
215
+ expect(q.getPlanTree('p_prop')).toHaveLength(0);
216
+ expect(q.listCompletedPlans('p_prop')).toHaveLength(1);
217
+ });
218
+ it('getPlanTree excludes plans where every leaf task is done', async () => {
219
+ const { Queries } = await import('./queries.js');
220
+ const q = new Queries(db);
221
+ db.prepare(`INSERT INTO projects (id, name, created_at) VALUES ('p4', 'p4', 0)`).run();
222
+ const plan = q.insertPlanTree('p4', {
223
+ title: 'AllDone',
224
+ children: [{ title: 'OnlyStep', children: [{ title: 'OnlyTask' }] }],
225
+ });
226
+ const taskId = plan.children[0].children[0].id;
227
+ q.updatePlanNodeStatus(taskId, 'done', null);
228
+ expect(q.getPlanTree('p4')).toHaveLength(0);
229
+ });
230
+ // ─── Task 6: updatePlanNodeStatus + updatePlanNodeTitle ───────────────────
231
+ it('updatePlanNodeStatus sets status and completed_at when going to done', async () => {
232
+ const { Queries } = await import('./queries.js');
233
+ const q = new Queries(db);
234
+ db.prepare(`INSERT INTO projects (id, name, created_at) VALUES ('p5', 'p5', 0)`).run();
235
+ db.prepare(`INSERT INTO branches (id, project_id, name, git_branch, status, created_at)
236
+ VALUES ('b5', 'p5', 'main', 'main', 'active', 0)`).run();
237
+ db.prepare(`INSERT INTO commits (id, branch_id, agent_id, agent_role, tool, workflow_type, message, content, summary, commit_type, created_at)
238
+ VALUES ('c5', 'b5', 'a', 'solo', 't', 'interactive', 'm', 'c', 's', 'manual', 0)`).run();
239
+ const plan = q.insertPlanTree('p5', {
240
+ title: 'P', children: [{ title: 'S', children: [{ title: 'T' }] }],
241
+ });
242
+ const tId = plan.children[0].children[0].id;
243
+ q.updatePlanNodeStatus(tId, 'done', 'c5');
244
+ const row = db.prepare(`SELECT status, completed_at, git_commit_sha FROM plan_nodes WHERE id = ?`).get(tId);
245
+ expect(row.status).toBe('done');
246
+ expect(row.completed_at).not.toBeNull();
247
+ expect(row.git_commit_sha).toBe('c5');
248
+ });
249
+ it('updatePlanNodeTitle changes the title', async () => {
250
+ const { Queries } = await import('./queries.js');
251
+ const q = new Queries(db);
252
+ db.prepare(`INSERT INTO projects (id, name, created_at) VALUES ('p6', 'p6', 0)`).run();
253
+ const plan = q.insertPlanTree('p6', { title: 'Old' });
254
+ q.updatePlanNodeTitle(plan.id, 'New');
255
+ const row = db.prepare(`SELECT title FROM plan_nodes WHERE id = ?`).get(plan.id);
256
+ expect(row.title).toBe('New');
257
+ });
258
+ // ─── Task 7: findPlanNodeByHandle, findPlanNodeByTitle, listCompletedPlans ─
259
+ it('findPlanNodeByHandle returns a node by 6-char prefix; undefined if no match', async () => {
260
+ const { Queries } = await import('./queries.js');
261
+ const q = new Queries(db);
262
+ db.prepare(`INSERT INTO projects (id, name, created_at) VALUES ('p7', 'p7', 0)`).run();
263
+ const plan = q.insertPlanTree('p7', { title: 'My Plan' });
264
+ const handle = plan.id.slice(0, 6);
265
+ expect(q.findPlanNodeByHandle('p7', handle)?.id).toBe(plan.id);
266
+ expect(q.findPlanNodeByHandle('p7', 'zzzzzz')).toBeUndefined();
267
+ });
268
+ it('findPlanNodeByTitle returns a node by exact title match', async () => {
269
+ const { Queries } = await import('./queries.js');
270
+ const q = new Queries(db);
271
+ db.prepare(`INSERT INTO projects (id, name, created_at) VALUES ('p8', 'p8', 0)`).run();
272
+ q.insertPlanTree('p8', { title: 'Build StatusDot' });
273
+ expect(q.findPlanNodeByTitle('p8', 'Build StatusDot')?.title).toBe('Build StatusDot');
274
+ expect(q.findPlanNodeByTitle('p8', 'Nope')).toBeUndefined();
275
+ });
276
+ it('listCompletedPlans returns plans whose every leaf task is done', async () => {
277
+ const { Queries } = await import('./queries.js');
278
+ const q = new Queries(db);
279
+ db.prepare(`INSERT INTO projects (id, name, created_at) VALUES ('p9', 'p9', 0)`).run();
280
+ const plan = q.insertPlanTree('p9', {
281
+ title: 'Shipped', children: [{ title: 'S', children: [{ title: 'T' }] }],
282
+ });
283
+ const taskId = plan.children[0].children[0].id;
284
+ q.updatePlanNodeStatus(taskId, 'done', null);
285
+ const completed = q.listCompletedPlans('p9');
286
+ expect(completed).toHaveLength(1);
287
+ expect(completed[0].title).toBe('Shipped');
288
+ expect(q.getPlanTree('p9')).toHaveLength(0);
289
+ });
290
+ });
291
+ //# sourceMappingURL=plan-nodes.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-nodes.test.js","sourceRoot":"","sources":["../../src/local/plan-nodes.test.ts"],"names":[],"mappings":"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"}