kaimon-cli 0.2.1 → 0.4.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 (68) hide show
  1. package/README.md +37 -3
  2. package/dist/__tests__/commands/list.test.d.ts +2 -0
  3. package/dist/__tests__/commands/list.test.d.ts.map +1 -0
  4. package/dist/__tests__/commands/list.test.js +113 -0
  5. package/dist/__tests__/commands/list.test.js.map +1 -0
  6. package/dist/__tests__/commands/pull.test.js +165 -59
  7. package/dist/__tests__/commands/pull.test.js.map +1 -1
  8. package/dist/__tests__/helpers.d.ts.map +1 -1
  9. package/dist/__tests__/helpers.js +2 -1
  10. package/dist/__tests__/helpers.js.map +1 -1
  11. package/dist/__tests__/integration/complete-user-journeys.test.d.ts +2 -0
  12. package/dist/__tests__/integration/complete-user-journeys.test.d.ts.map +1 -0
  13. package/dist/__tests__/integration/complete-user-journeys.test.js +357 -0
  14. package/dist/__tests__/integration/complete-user-journeys.test.js.map +1 -0
  15. package/dist/__tests__/integration/config-integration.test.d.ts +2 -0
  16. package/dist/__tests__/integration/config-integration.test.d.ts.map +1 -0
  17. package/dist/__tests__/integration/config-integration.test.js +151 -0
  18. package/dist/__tests__/integration/config-integration.test.js.map +1 -0
  19. package/dist/__tests__/integration/data-integrity.test.d.ts +2 -0
  20. package/dist/__tests__/integration/data-integrity.test.d.ts.map +1 -0
  21. package/dist/__tests__/integration/data-integrity.test.js +302 -0
  22. package/dist/__tests__/integration/data-integrity.test.js.map +1 -0
  23. package/dist/__tests__/integration/edge-cases-advanced.test.d.ts +2 -0
  24. package/dist/__tests__/integration/edge-cases-advanced.test.d.ts.map +1 -0
  25. package/dist/__tests__/integration/edge-cases-advanced.test.js +294 -0
  26. package/dist/__tests__/integration/edge-cases-advanced.test.js.map +1 -0
  27. package/dist/__tests__/integration/error-recovery.test.d.ts +2 -0
  28. package/dist/__tests__/integration/error-recovery.test.d.ts.map +1 -0
  29. package/dist/__tests__/integration/error-recovery.test.js +284 -0
  30. package/dist/__tests__/integration/error-recovery.test.js.map +1 -0
  31. package/dist/__tests__/integration/filesystem-edge-cases.test.d.ts +2 -0
  32. package/dist/__tests__/integration/filesystem-edge-cases.test.d.ts.map +1 -0
  33. package/dist/__tests__/integration/filesystem-edge-cases.test.js +224 -0
  34. package/dist/__tests__/integration/filesystem-edge-cases.test.js.map +1 -0
  35. package/dist/__tests__/integration/filtering-operations.test.d.ts +2 -0
  36. package/dist/__tests__/integration/filtering-operations.test.d.ts.map +1 -0
  37. package/dist/__tests__/integration/filtering-operations.test.js +286 -0
  38. package/dist/__tests__/integration/filtering-operations.test.js.map +1 -0
  39. package/dist/__tests__/integration/full-workflow.test.js +4 -0
  40. package/dist/__tests__/integration/full-workflow.test.js.map +1 -1
  41. package/dist/__tests__/integration/state-transitions.test.d.ts +2 -0
  42. package/dist/__tests__/integration/state-transitions.test.d.ts.map +1 -0
  43. package/dist/__tests__/integration/state-transitions.test.js +328 -0
  44. package/dist/__tests__/integration/state-transitions.test.js.map +1 -0
  45. package/dist/__tests__/unit/utils/frontmatter.test.js +68 -68
  46. package/dist/__tests__/unit/utils/markdown.test.js +11 -11
  47. package/dist/commands/auth.d.ts.map +1 -1
  48. package/dist/commands/auth.js +2 -11
  49. package/dist/commands/auth.js.map +1 -1
  50. package/dist/commands/list.d.ts +4 -0
  51. package/dist/commands/list.d.ts.map +1 -0
  52. package/dist/commands/list.js +19 -0
  53. package/dist/commands/list.js.map +1 -0
  54. package/dist/commands/pull.d.ts.map +1 -1
  55. package/dist/commands/pull.js +5 -3
  56. package/dist/commands/pull.js.map +1 -1
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/index.js +6 -1
  59. package/dist/index.js.map +1 -1
  60. package/dist/utils/listOperations.d.ts +5 -0
  61. package/dist/utils/listOperations.d.ts.map +1 -0
  62. package/dist/utils/listOperations.js +171 -0
  63. package/dist/utils/listOperations.js.map +1 -0
  64. package/dist/utils/pullOperations.d.ts +3 -2
  65. package/dist/utils/pullOperations.d.ts.map +1 -1
  66. package/dist/utils/pullOperations.js +86 -9
  67. package/dist/utils/pullOperations.js.map +1 -1
  68. package/package.json +2 -2
package/README.md CHANGED
@@ -78,9 +78,21 @@ kaimon config show
78
78
  ### Downloading Documents
79
79
 
80
80
  ```bash
81
+ # List all available documents
82
+ kaimon list
83
+
81
84
  # Download all documents from Kaimon as markdown
82
85
  kaimon pull
83
86
 
87
+ # Download specific document by title
88
+ kaimon pull "Product Roadmap"
89
+
90
+ # Download specific document by ID
91
+ kaimon pull "abc-123-def-456"
92
+
93
+ # Download multiple specific documents
94
+ kaimon pull "Product Roadmap" "Engineering Notes" "abc-123-def-456"
95
+
84
96
  # Download documents to current folder (no KaimonDocs subfolder)
85
97
  kaimon pull --flat
86
98
 
@@ -88,14 +100,36 @@ kaimon pull --flat
88
100
  kaimon pull -y
89
101
  ```
90
102
 
103
+ ### List Command
104
+
105
+ Show all available documents with their status:
106
+
107
+ ```bash
108
+ $ kaimon list
109
+
110
+ 📄 Available documents (5 total):
111
+
112
+ 1. "Product Roadmap" ID: abc-123-def-456 (updated 2 days ago) [NEW]
113
+ 2. "Engineering Notes" ID: xyz-789-ghi-012 (updated 1 week ago) [UP-TO-DATE]
114
+ 3. "Design System" ID: jkl-345-mno-678 (updated 3 days ago) [UPDATED]
115
+ 4. "Meeting Notes" ID: pqr-901-stu-234 (updated 1 hour ago) [NEW]
116
+ 5. "API Documentation" ID: vwx-567-yza-890 (updated 2 weeks ago) [UP-TO-DATE]
117
+
118
+ Use: kaimon pull "title" or kaimon pull "ID" to pull specific document(s)
119
+ ```
120
+
121
+ **Status indicators:**
122
+ - `[NEW]` - Document not yet in local folder
123
+ - `[UPDATED]` - Remote version is newer than local
124
+ - `[UP-TO-DATE]` - Local and remote are in sync
125
+
91
126
  **Pull behavior:**
92
- - **Smart pull**: Only pulls new or updated documents (compares timestamps and content hash)
127
+ - **Smart pull**: Only pulls new or updated documents (compares timestamps)
93
128
  - If local file is newer than remote → skips (no overwrite)
94
- - If both local and remote changed → skips with conflict warning
95
129
  - Default: Creates `./KaimonDocs/` subfolder and downloads documents there
96
130
  - `--flat`: Downloads documents directly to current folder (no subfolder)
97
131
  - `-y, --yes`: Skip confirmation and pull all documents
98
- - Shows preview with file counts and timestamps before pulling
132
+ - Shows preview with document names and timestamps before pulling
99
133
 
100
134
  ## Document Format
101
135
 
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=list.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/commands/list.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,113 @@
1
+ import { describe, it, expect, beforeEach, afterEach, vi } from 'vitest';
2
+ import path from 'path';
3
+ import os from 'os';
4
+ import { listDocuments } from '../../utils/listOperations.js';
5
+ import * as config from '../../utils/config.js';
6
+ import * as supabaseClient from '../../utils/supabaseClient.js';
7
+ import * as tokenRefresh from '../../utils/tokenRefresh.js';
8
+ import { createTempDir, cleanupTempDir, mockConfig, mockDocumentRecord, createMockSupabaseClient } from '../helpers.js';
9
+ describe('list command', () => {
10
+ let tempDir;
11
+ let docsDir;
12
+ let consoleSpy;
13
+ beforeEach(() => {
14
+ tempDir = createTempDir();
15
+ docsDir = path.join(tempDir, 'KaimonDocs');
16
+ vi.spyOn(os, 'homedir').mockReturnValue(tempDir);
17
+ vi.spyOn(process, 'cwd').mockReturnValue(tempDir);
18
+ consoleSpy = vi.spyOn(console, 'log').mockImplementation(() => { });
19
+ });
20
+ afterEach(() => {
21
+ cleanupTempDir(tempDir);
22
+ vi.restoreAllMocks();
23
+ });
24
+ describe('listDocuments', () => {
25
+ it('should display documents with titles and IDs', async () => {
26
+ config.saveConfig(mockConfig());
27
+ vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(true);
28
+ const mockDocs = [
29
+ mockDocumentRecord({
30
+ id: 'abc-123-def-456',
31
+ title: 'Product Roadmap',
32
+ updated_at: new Date().toISOString()
33
+ }),
34
+ mockDocumentRecord({
35
+ id: 'xyz-789-ghi-012',
36
+ title: 'Engineering Notes',
37
+ updated_at: new Date(Date.now() - 604800000).toISOString()
38
+ }),
39
+ ];
40
+ const mockSupabase = createMockSupabaseClient();
41
+ mockSupabase.from.mockReturnValue({
42
+ select: vi.fn().mockReturnThis(),
43
+ eq: vi.fn().mockReturnThis(),
44
+ order: vi.fn().mockResolvedValue({ data: mockDocs, error: null })
45
+ });
46
+ vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
47
+ await listDocuments();
48
+ const output = consoleSpy.mock.calls.map((c) => c[0]).join('\n');
49
+ // User-facing: should see titles and IDs
50
+ expect(output).toContain('Product Roadmap');
51
+ expect(output).toContain('abc-123-def-456');
52
+ expect(output).toContain('Engineering Notes');
53
+ expect(output).toContain('xyz-789-ghi-012');
54
+ });
55
+ it('should show error when no documents exist', async () => {
56
+ config.saveConfig(mockConfig());
57
+ vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(true);
58
+ const mockSupabase = createMockSupabaseClient();
59
+ mockSupabase.from.mockReturnValue({
60
+ select: vi.fn().mockReturnThis(),
61
+ eq: vi.fn().mockReturnThis(),
62
+ order: vi.fn().mockResolvedValue({ data: [], error: null })
63
+ });
64
+ vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
65
+ await listDocuments();
66
+ const output = consoleSpy.mock.calls.map((c) => c[0]).join('\n');
67
+ // Should indicate no documents
68
+ expect(output).toMatch(/No documents found|Create some documents/i);
69
+ });
70
+ it('should show helpful message on authentication failure', async () => {
71
+ config.saveConfig(mockConfig());
72
+ vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(false);
73
+ await expect(listDocuments()).rejects.toThrow('Not authenticated');
74
+ });
75
+ it('should handle database errors gracefully', async () => {
76
+ config.saveConfig(mockConfig());
77
+ vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(true);
78
+ const mockSupabase = createMockSupabaseClient();
79
+ mockSupabase.from.mockReturnValue({
80
+ select: vi.fn().mockReturnThis(),
81
+ eq: vi.fn().mockReturnThis(),
82
+ order: vi.fn().mockResolvedValue({
83
+ data: null,
84
+ error: { message: 'Connection failed' }
85
+ })
86
+ });
87
+ vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
88
+ await expect(listDocuments()).rejects.toThrow('Database error');
89
+ });
90
+ it('should display relative timestamps (e.g., "2 days ago")', async () => {
91
+ config.saveConfig(mockConfig());
92
+ vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(true);
93
+ const mockDocs = [
94
+ mockDocumentRecord({
95
+ id: 'doc-1',
96
+ title: 'Test Doc',
97
+ updated_at: new Date(Date.now() - 172800000).toISOString() // 2 days ago
98
+ }),
99
+ ];
100
+ const mockSupabase = createMockSupabaseClient();
101
+ mockSupabase.from.mockReturnValue({
102
+ select: vi.fn().mockReturnThis(),
103
+ eq: vi.fn().mockReturnThis(),
104
+ order: vi.fn().mockResolvedValue({ data: mockDocs, error: null })
105
+ });
106
+ vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
107
+ await listDocuments();
108
+ const output = consoleSpy.mock.calls.map((c) => c[0]).join('\n');
109
+ expect(output).toMatch(/days? ago/);
110
+ });
111
+ });
112
+ });
113
+ //# sourceMappingURL=list.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.test.js","sourceRoot":"","sources":["../../../src/__tests__/commands/list.test.ts"],"names":[],"mappings":"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"}
@@ -20,75 +20,78 @@ describe('pull command', () => {
20
20
  cleanupTempDir(tempDir);
21
21
  vi.restoreAllMocks();
22
22
  });
23
- describe('pullDocuments', () => {
24
- it('should pull new documents', async () => {
25
- // Setup auth
23
+ describe('pullDocuments - core behavior', () => {
24
+ it('should create markdown files with correct metadata', async () => {
26
25
  config.saveConfig(mockConfig());
27
26
  vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(true);
28
- // Mock Supabase
29
27
  const mockSupabase = createMockSupabaseClient();
30
- const mockDocs = [mockDocumentRecord({ title: 'Test Document' })];
28
+ const mockDocs = [mockDocumentRecord({
29
+ id: 'test-doc-123',
30
+ title: 'My Test Document'
31
+ })];
31
32
  mockSupabase.from.mockReturnValue({
32
33
  select: vi.fn().mockReturnThis(),
34
+ eq: vi.fn().mockReturnThis(),
33
35
  order: vi.fn().mockResolvedValue({ data: mockDocs, error: null })
34
36
  });
35
- const mockContent = mockBlockNoteContent('Test Document');
37
+ const mockContent = mockBlockNoteContent('My Test Document');
36
38
  const blob = new Blob([JSON.stringify(mockContent)], { type: 'application/json' });
37
39
  mockSupabase.storage.from.mockReturnValue({
38
40
  download: vi.fn().mockResolvedValue({ data: blob, error: null })
39
41
  });
40
42
  vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
41
- // Pull with -y flag to skip confirmation
42
43
  await pullDocuments(false, true);
43
44
  // Verify file was created
45
+ expect(fs.existsSync(docsDir)).toBe(true);
44
46
  const files = fs.readdirSync(docsDir);
45
- expect(files).toHaveLength(1);
46
- expect(files[0]).toContain('.md');
47
- // Verify content
47
+ expect(files.length).toBe(1);
48
+ expect(files[0]).toMatch(/\.md$/);
49
+ // Verify metadata
48
50
  const content = fs.readFileSync(path.join(docsDir, files[0]), 'utf-8');
49
- expect(content).toContain('kaimon_id:');
50
- expect(content).toContain('Test Document');
51
+ expect(content).toContain('kaimon_id: "test-doc-123"');
52
+ expect(content).toContain('title: "My Test Document"');
51
53
  });
52
- it('should skip up-to-date documents', async () => {
54
+ it('should skip documents that are already up-to-date', async () => {
53
55
  config.saveConfig(mockConfig());
54
56
  vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(true);
55
- // Create existing file with newer mtime
57
+ // Create existing file from 1 day ago
58
+ fs.mkdirSync(docsDir, { recursive: true });
59
+ const existingFile = path.join(docsDir, 'Existing-Doc.md');
60
+ const oldTime = new Date(Date.now() - 86400000);
61
+ fs.writeFileSync(existingFile, `---
62
+ kaimon_id: "existing-doc"
63
+ ---
64
+ Original content`, 'utf-8');
65
+ fs.utimesSync(existingFile, oldTime, oldTime);
66
+ // Remote doc is older than local
56
67
  const mockDoc = mockDocumentRecord({
57
- id: 'doc-123',
58
- title: 'Existing Document',
59
- updated_at: new Date(Date.now() - 86400000).toISOString() // 1 day ago
68
+ id: 'existing-doc',
69
+ title: 'Existing Doc',
70
+ updated_at: new Date(oldTime.getTime() - 3600000).toISOString()
60
71
  });
61
- fs.mkdirSync(docsDir, { recursive: true });
62
- const existingFile = path.join(docsDir, 'Existing-Document.md');
63
- fs.writeFileSync(existingFile, `---
64
- kaimon_id: "doc-123"
65
- ---
66
-
67
- Content`, 'utf-8');
68
- // Set file mtime to now (newer than remote)
69
- fs.utimesSync(existingFile, new Date(), new Date());
70
72
  const mockSupabase = createMockSupabaseClient();
71
73
  mockSupabase.from.mockReturnValue({
72
74
  select: vi.fn().mockReturnThis(),
75
+ eq: vi.fn().mockReturnThis(),
73
76
  order: vi.fn().mockResolvedValue({ data: [mockDoc], error: null })
74
77
  });
75
78
  vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
76
79
  await pullDocuments(false, true);
77
- // File should not be modified
78
- const content = fs.readFileSync(existingFile, 'utf-8');
79
- expect(content).toBe(`---
80
- kaimon_id: "doc-123"
81
- ---
82
-
83
- Content`);
80
+ // File should NOT be modified
81
+ const finalContent = fs.readFileSync(existingFile, 'utf-8');
82
+ expect(finalContent).toBe(`---
83
+ kaimon_id: "existing-doc"
84
+ ---
85
+ Original content`);
84
86
  });
85
- it('should use flat directory structure with --flat', async () => {
87
+ it('should use flat directory with --flat flag', async () => {
86
88
  config.saveConfig(mockConfig());
87
89
  vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(true);
88
90
  const mockSupabase = createMockSupabaseClient();
89
91
  const mockDocs = [mockDocumentRecord()];
90
92
  mockSupabase.from.mockReturnValue({
91
93
  select: vi.fn().mockReturnThis(),
94
+ eq: vi.fn().mockReturnThis(),
92
95
  order: vi.fn().mockResolvedValue({ data: mockDocs, error: null })
93
96
  });
94
97
  const mockContent = mockBlockNoteContent();
@@ -97,7 +100,7 @@ Content`);
97
100
  download: vi.fn().mockResolvedValue({ data: blob, error: null })
98
101
  });
99
102
  vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
100
- // Pull with --flat
103
+ // Pull with --flat flag
101
104
  await pullDocuments(true, true);
102
105
  // Files should be in current directory, not KaimonDocs/
103
106
  const files = fs.readdirSync(tempDir);
@@ -105,36 +108,26 @@ Content`);
105
108
  expect(mdFiles.length).toBeGreaterThan(0);
106
109
  expect(fs.existsSync(docsDir)).toBe(false);
107
110
  });
108
- it('should handle no documents gracefully', async () => {
109
- config.saveConfig(mockConfig());
110
- vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(true);
111
- const mockSupabase = createMockSupabaseClient();
112
- mockSupabase.from.mockReturnValue({
113
- select: vi.fn().mockReturnThis(),
114
- order: vi.fn().mockResolvedValue({ data: [], error: null })
115
- });
116
- vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
117
- await pullDocuments(false, true);
118
- // Should not create directory if no docs
119
- expect(fs.existsSync(docsDir)).toBe(false);
120
- });
121
- it('should handle authentication failure', async () => {
111
+ });
112
+ describe('pullDocuments - error handling', () => {
113
+ it('should fail gracefully if not authenticated', async () => {
122
114
  vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(false);
123
115
  await expect(pullDocuments(false, true)).rejects.toThrow('Not authenticated');
124
116
  });
125
- it('should handle database errors', async () => {
117
+ it('should handle database connection errors', async () => {
126
118
  config.saveConfig(mockConfig());
127
119
  vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(true);
128
120
  const mockSupabase = createMockSupabaseClient();
129
121
  mockSupabase.from.mockReturnValue({
130
122
  select: vi.fn().mockReturnThis(),
123
+ eq: vi.fn().mockReturnThis(),
131
124
  order: vi.fn().mockResolvedValue({
132
125
  data: null,
133
- error: { message: 'Database error' }
126
+ error: { message: 'Connection timeout' }
134
127
  })
135
128
  });
136
129
  vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
137
- await expect(pullDocuments(false, true)).rejects.toThrow();
130
+ await expect(pullDocuments(false, true)).rejects.toThrow('Database error');
138
131
  });
139
132
  it('should handle storage download errors gracefully', async () => {
140
133
  config.saveConfig(mockConfig());
@@ -143,6 +136,7 @@ Content`);
143
136
  const mockDocs = [mockDocumentRecord()];
144
137
  mockSupabase.from.mockReturnValue({
145
138
  select: vi.fn().mockReturnThis(),
139
+ eq: vi.fn().mockReturnThis(),
146
140
  order: vi.fn().mockResolvedValue({ data: mockDocs, error: null })
147
141
  });
148
142
  mockSupabase.storage.from.mockReturnValue({
@@ -153,17 +147,129 @@ Content`);
153
147
  });
154
148
  vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
155
149
  // Should not throw, but handle error gracefully
150
+ await expect(pullDocuments(false, true)).resolves.not.toThrow();
151
+ });
152
+ it('should handle no documents available', async () => {
153
+ config.saveConfig(mockConfig());
154
+ vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(true);
155
+ const mockSupabase = createMockSupabaseClient();
156
+ mockSupabase.from.mockReturnValue({
157
+ select: vi.fn().mockReturnThis(),
158
+ eq: vi.fn().mockReturnThis(),
159
+ order: vi.fn().mockResolvedValue({ data: [], error: null })
160
+ });
161
+ vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
156
162
  await pullDocuments(false, true);
163
+ // Should not create directory if no docs
164
+ expect(fs.existsSync(docsDir)).toBe(false);
157
165
  });
158
- it('should update file mtime to match remote', async () => {
166
+ });
167
+ describe('pullDocuments - filtering by title/ID', () => {
168
+ it('should pull only documents matching selected title', async () => {
159
169
  config.saveConfig(mockConfig());
160
170
  vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(true);
161
- const remoteTime = new Date('2024-01-15T10:00:00Z');
162
- const mockDoc = mockDocumentRecord({ updated_at: remoteTime.toISOString() });
163
171
  const mockSupabase = createMockSupabaseClient();
172
+ const mockDocs = [
173
+ mockDocumentRecord({ id: 'doc-1', title: 'Document A' }),
174
+ mockDocumentRecord({ id: 'doc-2', title: 'Document B' }),
175
+ mockDocumentRecord({ id: 'doc-3', title: 'Document C' }),
176
+ ];
164
177
  mockSupabase.from.mockReturnValue({
165
178
  select: vi.fn().mockReturnThis(),
166
- order: vi.fn().mockResolvedValue({ data: [mockDoc], error: null })
179
+ eq: vi.fn().mockReturnThis(),
180
+ order: vi.fn().mockResolvedValue({ data: mockDocs, error: null })
181
+ });
182
+ const mockContent = mockBlockNoteContent();
183
+ const blob = new Blob([JSON.stringify(mockContent)], { type: 'application/json' });
184
+ mockSupabase.storage.from.mockReturnValue({
185
+ download: vi.fn().mockResolvedValue({ data: blob, error: null })
186
+ });
187
+ vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
188
+ // Pull only Document A
189
+ await pullDocuments(false, true, ['Document A']);
190
+ const files = fs.readdirSync(docsDir);
191
+ expect(files.length).toBe(1);
192
+ expect(files[0]).toContain('Document-A');
193
+ });
194
+ it('should pull only documents matching selected ID', async () => {
195
+ config.saveConfig(mockConfig());
196
+ vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(true);
197
+ const mockSupabase = createMockSupabaseClient();
198
+ const mockDocs = [
199
+ mockDocumentRecord({ id: 'abc-123', title: 'Document A' }),
200
+ mockDocumentRecord({ id: 'xyz-789', title: 'Document B' }),
201
+ ];
202
+ mockSupabase.from.mockReturnValue({
203
+ select: vi.fn().mockReturnThis(),
204
+ eq: vi.fn().mockReturnThis(),
205
+ order: vi.fn().mockResolvedValue({ data: mockDocs, error: null })
206
+ });
207
+ const mockContent = mockBlockNoteContent();
208
+ const blob = new Blob([JSON.stringify(mockContent)], { type: 'application/json' });
209
+ mockSupabase.storage.from.mockReturnValue({
210
+ download: vi.fn().mockResolvedValue({ data: blob, error: null })
211
+ });
212
+ vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
213
+ // Pull only by ID
214
+ await pullDocuments(false, true, ['abc-123']);
215
+ const files = fs.readdirSync(docsDir);
216
+ expect(files.length).toBe(1);
217
+ });
218
+ it('should handle when selected document does not exist', async () => {
219
+ config.saveConfig(mockConfig());
220
+ vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(true);
221
+ const mockSupabase = createMockSupabaseClient();
222
+ const mockDocs = [mockDocumentRecord({ id: 'doc-1', title: 'Document A' })];
223
+ mockSupabase.from.mockReturnValue({
224
+ select: vi.fn().mockReturnThis(),
225
+ eq: vi.fn().mockReturnThis(),
226
+ order: vi.fn().mockResolvedValue({ data: mockDocs, error: null })
227
+ });
228
+ vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
229
+ // Try to pull non-existent document
230
+ await pullDocuments(false, true, ['Nonexistent Document']);
231
+ // Should not create any files
232
+ expect(fs.existsSync(docsDir)).toBe(false);
233
+ });
234
+ it('should pull multiple documents by title and ID mix', async () => {
235
+ config.saveConfig(mockConfig());
236
+ vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(true);
237
+ const mockSupabase = createMockSupabaseClient();
238
+ const mockDocs = [
239
+ mockDocumentRecord({ id: 'abc-123', title: 'Document A' }),
240
+ mockDocumentRecord({ id: 'xyz-789', title: 'Document B' }),
241
+ mockDocumentRecord({ id: 'def-456', title: 'Document C' }),
242
+ ];
243
+ mockSupabase.from.mockReturnValue({
244
+ select: vi.fn().mockReturnThis(),
245
+ eq: vi.fn().mockReturnThis(),
246
+ order: vi.fn().mockResolvedValue({ data: mockDocs, error: null })
247
+ });
248
+ const mockContent = mockBlockNoteContent();
249
+ const blob = new Blob([JSON.stringify(mockContent)], { type: 'application/json' });
250
+ mockSupabase.storage.from.mockReturnValue({
251
+ download: vi.fn().mockResolvedValue({ data: blob, error: null })
252
+ });
253
+ vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
254
+ // Pull by mix of title and ID
255
+ await pullDocuments(false, true, ['Document A', 'xyz-789']);
256
+ const files = fs.readdirSync(docsDir);
257
+ expect(files.length).toBe(2);
258
+ });
259
+ });
260
+ describe('pullDocuments - input validation', () => {
261
+ it('should sanitize filenames with special characters', async () => {
262
+ config.saveConfig(mockConfig());
263
+ vi.spyOn(tokenRefresh, 'ensureValidToken').mockResolvedValue(true);
264
+ const mockSupabase = createMockSupabaseClient();
265
+ const mockDocs = [mockDocumentRecord({
266
+ id: 'doc-1',
267
+ title: 'Document: "Special" <Chars> & More!'
268
+ })];
269
+ mockSupabase.from.mockReturnValue({
270
+ select: vi.fn().mockReturnThis(),
271
+ eq: vi.fn().mockReturnThis(),
272
+ order: vi.fn().mockResolvedValue({ data: mockDocs, error: null })
167
273
  });
168
274
  const mockContent = mockBlockNoteContent();
169
275
  const blob = new Blob([JSON.stringify(mockContent)], { type: 'application/json' });
@@ -173,9 +279,9 @@ Content`);
173
279
  vi.spyOn(supabaseClient, 'getSupabaseClient').mockReturnValue(mockSupabase);
174
280
  await pullDocuments(false, true);
175
281
  const files = fs.readdirSync(docsDir);
176
- const filePath = path.join(docsDir, files[0]);
177
- const stats = fs.statSync(filePath);
178
- expect(stats.mtime.toISOString()).toBe(remoteTime.toISOString());
282
+ expect(files.length).toBe(1);
283
+ // Filename should not contain invalid characters
284
+ expect(files[0]).not.toMatch(/[<>:"|?*]/);
179
285
  });
180
286
  });
181
287
  });
@@ -1 +1 @@
1
- {"version":3,"file":"pull.test.js","sourceRoot":"","sources":["../../../src/__tests__/commands/pull.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pull.test.js","sourceRoot":"","sources":["../../../src/__tests__/commands/pull.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/__tests__/helpers.ts"],"names":[],"mappings":"AAKA;;GAEG;AAGH,wBAAgB,wBAAwB;;;;;;;;;EAkCvC;AAGD,wBAAgB,oBAAoB,CAAC,KAAK,GAAE,MAAwB;;;;;;;;;;;;;;;;;;;EAuBnE;AAGD,wBAAgB,kBAAkB,CAAC,SAAS,GAAE,GAAQ,OASrD;AAGD,wBAAgB,aAAa,CAAC,MAAM,GAAE,MAAuB,GAAG,MAAM,CAErE;AAGD,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAIpD;AAGD,wBAAgB,UAAU,CAAC,SAAS,GAAE,GAAQ,OAQ7C;AAGD,wBAAgB,iBAAiB,CAAC,SAAS,GAAE,GAAQ,OAUpD;AAGD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,WAAW,GAAE,GAAQ,GACpB,MAAM,CAaR;AAGD,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE;;EAY7C;AAGD,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM;sCAEjB,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI;;;;EAW5D"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/__tests__/helpers.ts"],"names":[],"mappings":"AAKA;;GAEG;AAGH,wBAAgB,wBAAwB;;;;;;;;;EAmCvC;AAGD,wBAAgB,oBAAoB,CAAC,KAAK,GAAE,MAAwB;;;;;;;;;;;;;;;;;;;EAuBnE;AAGD,wBAAgB,kBAAkB,CAAC,SAAS,GAAE,GAAQ,OASrD;AAGD,wBAAgB,aAAa,CAAC,MAAM,GAAE,MAAuB,GAAG,MAAM,CAErE;AAGD,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAIpD;AAGD,wBAAgB,UAAU,CAAC,SAAS,GAAE,GAAQ,OAQ7C;AAGD,wBAAgB,iBAAiB,CAAC,SAAS,GAAE,GAAQ,OAUpD;AAGD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,WAAW,GAAE,GAAQ,GACpB,MAAM,CAaR;AAGD,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE;;EAY7C;AAGD,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM;sCAEjB,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI;;;;EAW5D"}
@@ -31,7 +31,8 @@ export function createMockSupabaseClient() {
31
31
  eq: vi.fn().mockReturnThis(),
32
32
  in: vi.fn().mockReturnThis(),
33
33
  order: vi.fn().mockReturnThis(),
34
- single: vi.fn().mockResolvedValue({ data: null, error: null })
34
+ single: vi.fn().mockResolvedValue({ data: null, error: null }),
35
+ execute: vi.fn().mockResolvedValue({ data: [], error: null })
35
36
  }),
36
37
  storage: {
37
38
  from: vi.fn().mockReturnValue({
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/__tests__/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/__tests__/helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=complete-user-journeys.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"complete-user-journeys.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/integration/complete-user-journeys.test.ts"],"names":[],"mappings":""}