@sudocode-ai/cli 0.1.6 → 0.1.8

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 (80) hide show
  1. package/dist/cli/feedback-commands.d.ts +6 -7
  2. package/dist/cli/feedback-commands.d.ts.map +1 -1
  3. package/dist/cli/feedback-commands.js +104 -57
  4. package/dist/cli/feedback-commands.js.map +1 -1
  5. package/dist/cli/init-commands.d.ts.map +1 -1
  6. package/dist/cli/init-commands.js +2 -1
  7. package/dist/cli/init-commands.js.map +1 -1
  8. package/dist/cli/issue-commands.d.ts +1 -0
  9. package/dist/cli/issue-commands.d.ts.map +1 -1
  10. package/dist/cli/issue-commands.js +43 -2
  11. package/dist/cli/issue-commands.js.map +1 -1
  12. package/dist/cli/merge-commands.d.ts.map +1 -1
  13. package/dist/cli/merge-commands.js +6 -2
  14. package/dist/cli/merge-commands.js.map +1 -1
  15. package/dist/cli/relationship-commands.d.ts +1 -1
  16. package/dist/cli/relationship-commands.d.ts.map +1 -1
  17. package/dist/cli/relationship-commands.js +25 -18
  18. package/dist/cli/relationship-commands.js.map +1 -1
  19. package/dist/cli/server-commands.d.ts.map +1 -1
  20. package/dist/cli/server-commands.js +46 -25
  21. package/dist/cli/server-commands.js.map +1 -1
  22. package/dist/cli/spec-commands.d.ts.map +1 -1
  23. package/dist/cli/spec-commands.js +10 -6
  24. package/dist/cli/spec-commands.js.map +1 -1
  25. package/dist/cli/sync-commands.d.ts.map +1 -1
  26. package/dist/cli/sync-commands.js +54 -39
  27. package/dist/cli/sync-commands.js.map +1 -1
  28. package/dist/cli/update-commands.d.ts.map +1 -1
  29. package/dist/cli/update-commands.js +72 -10
  30. package/dist/cli/update-commands.js.map +1 -1
  31. package/dist/cli.js +11 -10
  32. package/dist/cli.js.map +1 -1
  33. package/dist/db.d.ts.map +1 -1
  34. package/dist/db.js +4 -3
  35. package/dist/db.js.map +1 -1
  36. package/dist/export.js +3 -3
  37. package/dist/export.js.map +1 -1
  38. package/dist/filename-generator.d.ts +10 -9
  39. package/dist/filename-generator.d.ts.map +1 -1
  40. package/dist/filename-generator.js +55 -45
  41. package/dist/filename-generator.js.map +1 -1
  42. package/dist/id-generator.d.ts +5 -0
  43. package/dist/id-generator.d.ts.map +1 -1
  44. package/dist/id-generator.js +21 -0
  45. package/dist/id-generator.js.map +1 -1
  46. package/dist/import.d.ts +6 -1
  47. package/dist/import.d.ts.map +1 -1
  48. package/dist/import.js +71 -15
  49. package/dist/import.js.map +1 -1
  50. package/dist/operations/feedback.d.ts +24 -9
  51. package/dist/operations/feedback.d.ts.map +1 -1
  52. package/dist/operations/feedback.js +88 -65
  53. package/dist/operations/feedback.js.map +1 -1
  54. package/dist/operations/issues.d.ts +1 -0
  55. package/dist/operations/issues.d.ts.map +1 -1
  56. package/dist/operations/issues.js +4 -0
  57. package/dist/operations/issues.js.map +1 -1
  58. package/dist/operations/relationships.d.ts.map +1 -1
  59. package/dist/operations/relationships.js +5 -0
  60. package/dist/operations/relationships.js.map +1 -1
  61. package/dist/operations/specs.d.ts +1 -0
  62. package/dist/operations/specs.d.ts.map +1 -1
  63. package/dist/operations/specs.js +4 -0
  64. package/dist/operations/specs.js.map +1 -1
  65. package/dist/sync.d.ts.map +1 -1
  66. package/dist/sync.js +13 -2
  67. package/dist/sync.js.map +1 -1
  68. package/dist/validation.d.ts +11 -0
  69. package/dist/validation.d.ts.map +1 -0
  70. package/dist/validation.js +58 -0
  71. package/dist/validation.js.map +1 -0
  72. package/dist/watcher.d.ts +11 -5
  73. package/dist/watcher.d.ts.map +1 -1
  74. package/dist/watcher.js +346 -150
  75. package/dist/watcher.js.map +1 -1
  76. package/package.json +2 -2
  77. package/dist/migrations.d.ts +0 -23
  78. package/dist/migrations.d.ts.map +0 -1
  79. package/dist/migrations.js +0 -57
  80. package/dist/migrations.js.map +0 -1
@@ -11,20 +11,21 @@
11
11
  */
12
12
  export declare function titleToFilename(title: string, maxLength?: number): string;
13
13
  /**
14
- * Generate a unique filename based on title, with ID suffix if collision
15
- * @param title - The spec title
16
- * @param id - The spec ID (used for collision resolution)
17
- * @param directory - Directory to check for collisions
14
+ * Generate a unified filename with format: {id}_{title_slug}.md
15
+ * This format is used for both specs and issues to ensure consistency.
16
+ * @param title - The entity title
17
+ * @param id - The entity ID
18
18
  * @param extension - File extension (default: .md)
19
- * @returns Unique filename
19
+ * @returns Filename in format: {id}_{title_slug}.md
20
20
  */
21
- export declare function generateUniqueFilename(title: string, id: string, directory: string, extension?: string): string;
21
+ export declare function generateUniqueFilename(title: string, id: string, extension?: string): string;
22
22
  /**
23
- * Find existing markdown file for a spec (supports both naming conventions)
24
- * @param specId - The spec ID
23
+ * Find existing markdown file for an entity (supports multiple naming conventions)
24
+ * Works for both specs and issues.
25
+ * @param entityId - The entity ID
25
26
  * @param directory - Directory to search
26
27
  * @param title - Optional title for title-based search
27
28
  * @returns Path to existing file if found, null otherwise
28
29
  */
29
- export declare function findExistingSpecFile(specId: string, directory: string, title?: string): string | null;
30
+ export declare function findExistingEntityFile(entityId: string, directory: string, title?: string): string | null;
30
31
  //# sourceMappingURL=filename-generator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"filename-generator.d.ts","sourceRoot":"","sources":["../src/filename-generator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,GAAE,MAAW,GAAG,MAAM,CAO7E;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,EACb,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,MAAM,EACjB,SAAS,GAAE,MAAc,GACxB,MAAM,CA4BR;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,GACb,MAAM,GAAG,IAAI,CAgCf"}
1
+ {"version":3,"file":"filename-generator.d.ts","sourceRoot":"","sources":["../src/filename-generator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,GAAE,MAAW,GAAG,MAAM,CAO7E;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,EACb,EAAE,EAAE,MAAM,EACV,SAAS,GAAE,MAAc,GACxB,MAAM,CAIR;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,GACb,MAAM,GAAG,IAAI,CAuEf"}
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * Generate human-readable filenames from spec titles
3
3
  */
4
- import * as fs from 'fs';
5
- import * as path from 'path';
4
+ import * as fs from "fs";
5
+ import * as path from "path";
6
6
  /**
7
7
  * Convert a title to snake_case filename
8
8
  * - Lowercase
@@ -14,66 +14,54 @@ import * as path from 'path';
14
14
  export function titleToFilename(title, maxLength = 50) {
15
15
  return title
16
16
  .toLowerCase()
17
- .replace(/[^a-z0-9]+/g, '_') // Replace non-alphanumeric with underscore
18
- .replace(/_+/g, '_') // Replace multiple underscores with single
19
- .replace(/^_|_$/g, '') // Trim underscores from start/end
17
+ .replace(/[^a-z0-9]+/g, "_") // Replace non-alphanumeric with underscore
18
+ .replace(/_+/g, "_") // Replace multiple underscores with single
19
+ .replace(/^_|_$/g, "") // Trim underscores from start/end
20
20
  .slice(0, maxLength); // Truncate to max length
21
21
  }
22
22
  /**
23
- * Generate a unique filename based on title, with ID suffix if collision
24
- * @param title - The spec title
25
- * @param id - The spec ID (used for collision resolution)
26
- * @param directory - Directory to check for collisions
23
+ * Generate a unified filename with format: {id}_{title_slug}.md
24
+ * This format is used for both specs and issues to ensure consistency.
25
+ * @param title - The entity title
26
+ * @param id - The entity ID
27
27
  * @param extension - File extension (default: .md)
28
- * @returns Unique filename
28
+ * @returns Filename in format: {id}_{title_slug}.md
29
29
  */
30
- export function generateUniqueFilename(title, id, directory, extension = '.md') {
31
- const baseFilename = titleToFilename(title);
32
- // Try base filename first
33
- const baseFile = baseFilename + extension;
34
- const basePath = path.join(directory, baseFile);
35
- // If file doesn't exist, use base filename
36
- if (!fs.existsSync(basePath)) {
37
- return baseFile;
38
- }
39
- // Check if existing file is for the same spec (by reading its frontmatter ID)
40
- try {
41
- const existingContent = fs.readFileSync(basePath, 'utf8');
42
- const idMatch = existingContent.match(/^---\s*\n[\s\S]*?^id:\s*['"]?([^'"\n]+)['"]?\s*$/m);
43
- if (idMatch && idMatch[1] === id) {
44
- // Same spec, use the existing filename
45
- return baseFile;
46
- }
47
- }
48
- catch (error) {
49
- // If we can't read the file, assume it's a collision
50
- }
51
- // Collision detected - append ID
52
- const collisionFilename = `${baseFilename}_${id}${extension}`;
53
- return collisionFilename;
30
+ export function generateUniqueFilename(title, id, extension = ".md") {
31
+ const titleSlug = titleToFilename(title);
32
+ const filename = `${id}_${titleSlug}${extension}`;
33
+ return filename;
54
34
  }
55
35
  /**
56
- * Find existing markdown file for a spec (supports both naming conventions)
57
- * @param specId - The spec ID
36
+ * Find existing markdown file for an entity (supports multiple naming conventions)
37
+ * Works for both specs and issues.
38
+ * @param entityId - The entity ID
58
39
  * @param directory - Directory to search
59
40
  * @param title - Optional title for title-based search
60
41
  * @returns Path to existing file if found, null otherwise
61
42
  */
62
- export function findExistingSpecFile(specId, directory, title) {
63
- // Try ID-based filename first (legacy)
64
- const idBasedFile = path.join(directory, `${specId}.md`);
43
+ export function findExistingEntityFile(entityId, directory, title) {
44
+ // Try new unified format: {id}_{title_slug}.md
45
+ if (title) {
46
+ const unifiedFile = path.join(directory, `${entityId}_${titleToFilename(title)}.md`);
47
+ if (fs.existsSync(unifiedFile)) {
48
+ return unifiedFile;
49
+ }
50
+ }
51
+ // Try ID-based filename (legacy for issues, and legacy specs)
52
+ const idBasedFile = path.join(directory, `${entityId}.md`);
65
53
  if (fs.existsSync(idBasedFile)) {
66
54
  return idBasedFile;
67
55
  }
68
- // Try title-based filename
56
+ // Try title-based filename (legacy for specs)
69
57
  if (title) {
70
58
  const titleBasedFile = path.join(directory, `${titleToFilename(title)}.md`);
71
59
  if (fs.existsSync(titleBasedFile)) {
72
- // Verify it's the right spec by checking ID in frontmatter
60
+ // Verify it's the right entity by checking ID in frontmatter
73
61
  try {
74
- const content = fs.readFileSync(titleBasedFile, 'utf8');
62
+ const content = fs.readFileSync(titleBasedFile, "utf8");
75
63
  const idMatch = content.match(/^---\s*\n[\s\S]*?^id:\s*['"]?([^'"\n]+)['"]?\s*$/m);
76
- if (idMatch && idMatch[1] === specId) {
64
+ if (idMatch && idMatch[1] === entityId) {
77
65
  return titleBasedFile;
78
66
  }
79
67
  }
@@ -81,12 +69,34 @@ export function findExistingSpecFile(specId, directory, title) {
81
69
  // Continue searching
82
70
  }
83
71
  }
84
- // Try title-based with ID suffix
85
- const titleWithIdFile = path.join(directory, `${titleToFilename(title)}_${specId}.md`);
72
+ // Try title-based with ID suffix (legacy collision resolution)
73
+ const titleWithIdFile = path.join(directory, `${titleToFilename(title)}_${entityId}.md`);
86
74
  if (fs.existsSync(titleWithIdFile)) {
87
75
  return titleWithIdFile;
88
76
  }
89
77
  }
78
+ // Search directory for any file with matching ID in frontmatter
79
+ try {
80
+ const files = fs.readdirSync(directory);
81
+ for (const file of files) {
82
+ if (!file.endsWith(".md"))
83
+ continue;
84
+ const filePath = path.join(directory, file);
85
+ try {
86
+ const content = fs.readFileSync(filePath, "utf8");
87
+ const idMatch = content.match(/^---\s*\n[\s\S]*?^id:\s*['"]?([^'"\n]+)['"]?\s*$/m);
88
+ if (idMatch && idMatch[1] === entityId) {
89
+ return filePath;
90
+ }
91
+ }
92
+ catch (error) {
93
+ // Skip files we can't read
94
+ }
95
+ }
96
+ }
97
+ catch (error) {
98
+ // Directory doesn't exist or can't be read
99
+ }
90
100
  // Not found
91
101
  return null;
92
102
  }
@@ -1 +1 @@
1
- {"version":3,"file":"filename-generator.js","sourceRoot":"","sources":["../src/filename-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filename-generator.js","sourceRoot":"","sources":["../src/filename-generator.ts"],"names":[],"mappings":"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"}
@@ -55,4 +55,9 @@ export declare function generateIssueId(db: Database.Database, outputDir: string
55
55
  * Generate a UUID v4
56
56
  */
57
57
  export declare function generateUUID(): string;
58
+ /**
59
+ * Infer entity type from ID
60
+ * Supports both hash-based (i-xxxx, s-xxxx) and legacy (ISSUE-xxx, SPEC-xxx) formats
61
+ */
62
+ export declare function getEntityTypeFromId(id: string): "spec" | "issue";
58
63
  //# sourceMappingURL=id-generator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"id-generator.d.ts","sourceRoot":"","sources":["../src/id-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAM3D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CA2BrE;AAoCD;;GAEG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAE9C;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAE5C;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,EAAE,MAAM,GAChB;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAU9B;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,EAAE,MAAM,GAChB;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAU9B;AA8DD;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC"}
1
+ {"version":3,"file":"id-generator.d.ts","sourceRoot":"","sources":["../src/id-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAM3D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CA2BrE;AAoCD;;GAEG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAE9C;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAE5C;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,EAAE,MAAM,GAChB;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAU9B;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,EAAE,MAAM,GAChB;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAU9B;AA8DD;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAkBhE"}
@@ -172,4 +172,25 @@ function getNextIssueNumber(db) {
172
172
  export function generateUUID() {
173
173
  return crypto.randomUUID();
174
174
  }
175
+ /**
176
+ * Infer entity type from ID
177
+ * Supports both hash-based (i-xxxx, s-xxxx) and legacy (ISSUE-xxx, SPEC-xxx) formats
178
+ */
179
+ export function getEntityTypeFromId(id) {
180
+ // Hash format: i-xxxx for issues, s-xxxx for specs
181
+ if (id.startsWith("i-")) {
182
+ return "issue";
183
+ }
184
+ if (id.startsWith("s-")) {
185
+ return "spec";
186
+ }
187
+ // Legacy format: ISSUE-xxx for issues, SPEC-xxx for specs
188
+ if (id.startsWith("ISSUE-")) {
189
+ return "issue";
190
+ }
191
+ if (id.startsWith("SPEC-")) {
192
+ return "spec";
193
+ }
194
+ throw new Error(`Cannot infer entity type from ID: ${id}`);
195
+ }
175
196
  //# sourceMappingURL=id-generator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"id-generator.js","sourceRoot":"","sources":["../src/id-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAGjC;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAa;IACjD,IAAI,KAAK,GAAG,GAAG;QAAE,OAAO,CAAC,CAAC,CAAC,SAAS;IACpC,IAAI,KAAK,GAAG,IAAI;QAAE,OAAO,CAAC,CAAC,CAAC,UAAU;IACtC,IAAI,KAAK,GAAG,KAAK;QAAE,OAAO,CAAC,CAAC,CAAC,WAAW;IACxC,IAAI,KAAK,GAAG,MAAM;QAAE,OAAO,CAAC,CAAC,CAAC,YAAY;IAC1C,OAAO,CAAC,CAAC,CAAC,aAAa;AACzB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY,EAAE,MAAc;IAC3D,2BAA2B;IAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAEzC,oDAAoD;IACpD,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEzE,0DAA0D;IAC1D,2DAA2D;IAC3D,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAChD,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;IAEvD,wCAAwC;IACxC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,GAAG,YAAY,CAAC,CAAC;IAC3C,IAAI,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAE/C,2BAA2B;IAC3B,IAAI,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC;QAC3B,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACxC,CAAC;IAED,qCAAqC;IACrC,IAAI,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC;QAC3B,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACvC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAC7B,EAAqB,EACrB,IAAY,EACZ,UAA4B,EAC5B,KAAa;IAEb,MAAM,MAAM,GAAG,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IACjD,MAAM,UAAU,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAEhD,2DAA2D;IAC3D,KAAK,IAAI,MAAM,GAAG,UAAU,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;QACpD,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,GAAG,MAAM,IAAI,IAAI,EAAE,CAAC;QAEtC,kCAAkC;QAClC,MAAM,KAAK,GAAG,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;QACzD,MAAM,UAAU,GAAG,EAAE,CAAC,OAAO,CAC3B,iCAAiC,KAAK,eAAe,CACtD,CAAC;QACF,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAsB,CAAC;QAE9D,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CACb,yCAAyC,UAAU,yBAAyB,UAAU,IAAI,CAC3F,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,EAAU;IACnC,OAAO,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,EAAU;IACjC,OAAO,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACzC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAC5B,EAAqB,EACrB,SAAiB;IAEjB,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAEjC,2CAA2C;IAC3C,MAAM,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,EAAuB,CAAC;IAEpD,MAAM,EAAE,GAAG,sBAAsB,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAElE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACtB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAC7B,EAAqB,EACrB,SAAiB;IAEjB,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAEjC,4CAA4C;IAC5C,MAAM,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC;IACrE,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,EAAuB,CAAC;IAEpD,MAAM,EAAE,GAAG,sBAAsB,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAEnE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACtB,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,iBAAiB,CAAC,EAAqB;IAC9C,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;;;;GAIvB,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAgC,CAAC;IAExD,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,sBAAsB;IACtB,MAAM,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,EAAuB,CAAC;IACpD,OAAO,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,kBAAkB,CAAC,EAAqB;IAC/C,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;;;;GAIvB,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAgC,CAAC;IAExD,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,sBAAsB;IACtB,MAAM,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC,sCAAsC,CAAC,CAAC;IACrE,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,EAAuB,CAAC;IACpD,OAAO,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY;IAC1B,OAAO,MAAM,CAAC,UAAU,EAAE,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"id-generator.js","sourceRoot":"","sources":["../src/id-generator.ts"],"names":[],"mappings":"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"}
package/dist/import.d.ts CHANGED
@@ -25,6 +25,11 @@ export interface ImportOptions {
25
25
  * Path to meta.json for collision logging
26
26
  */
27
27
  metaPath?: string;
28
+ /**
29
+ * Force update these entity IDs even if timestamp hasn't changed
30
+ * Useful when file watcher detects content hash changes
31
+ */
32
+ forceUpdateIds?: string[];
28
33
  }
29
34
  export interface ImportResult {
30
35
  specs: {
@@ -65,7 +70,7 @@ export declare function detectChanges<T extends {
65
70
  id: string;
66
71
  uuid: string;
67
72
  updated_at: string;
68
- }>(existing: T[], incoming: T[]): ChangeDetection;
73
+ }>(existing: T[], incoming: T[], forceUpdateIds?: string[]): ChangeDetection;
69
74
  /**
70
75
  * Detect ID collisions (same ID, different UUID)
71
76
  * UUIDs are the source of truth for entity identity
@@ -1 +1 @@
1
- {"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../src/import.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../src/import.ts"],"names":[],"mappings":"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"}
package/dist/import.js CHANGED
@@ -13,10 +13,11 @@ import * as path from "path";
13
13
  * Detect changes between existing and incoming entities
14
14
  * Uses UUID as the source of truth for entity identity
15
15
  */
16
- export function detectChanges(existing, incoming) {
16
+ export function detectChanges(existing, incoming, forceUpdateIds = []) {
17
17
  // Map by UUID (the true identity)
18
18
  const existingByUUID = new Map(existing.map((e) => [e.uuid, e]));
19
19
  const incomingUUIDs = new Set(incoming.map((e) => e.uuid));
20
+ const forceUpdateSet = new Set(forceUpdateIds);
20
21
  const added = incoming
21
22
  .filter((e) => !existingByUUID.has(e.uuid))
22
23
  .map((e) => e.id);
@@ -28,8 +29,8 @@ export function detectChanges(existing, incoming) {
28
29
  for (const inc of incoming) {
29
30
  const ex = existingByUUID.get(inc.uuid);
30
31
  if (ex) {
31
- // Same entity (same UUID), check if content changed
32
- if (hasChanged(ex, inc)) {
32
+ // Same entity (same UUID), check if content changed or force update requested
33
+ if (forceUpdateSet.has(inc.id) || hasChanged(ex, inc)) {
33
34
  updated.push(inc.id);
34
35
  }
35
36
  else {
@@ -348,17 +349,24 @@ export function importSpecs(db, specs, changes, dryRun = false, skipRelationship
348
349
  */
349
350
  function syncIssueFeedback(db, issueId, feedbackJSONL) {
350
351
  // Delete all existing feedback for this issue
351
- const existingFeedback = listFeedback(db, { issue_id: issueId });
352
+ const existingFeedback = listFeedback(db, { from_id: issueId });
352
353
  for (const fb of existingFeedback) {
353
354
  deleteFeedback(db, fb.id);
354
355
  }
355
356
  // Create new feedback from JSONL
356
357
  if (feedbackJSONL && feedbackJSONL.length > 0) {
357
358
  for (const fb of feedbackJSONL) {
359
+ // Support legacy JSONL format (issue_id/spec_id) for backward compatibility
360
+ const fromId = fb.from_id || fb.issue_id;
361
+ const toId = fb.to_id || fb.spec_id;
362
+ if (!fromId || !toId) {
363
+ console.warn(`Skipping feedback ${fb.id}: missing from_id/to_id or issue_id/spec_id`);
364
+ continue;
365
+ }
358
366
  createFeedback(db, {
359
367
  id: fb.id,
360
- issue_id: fb.issue_id,
361
- spec_id: fb.spec_id,
368
+ from_id: fromId,
369
+ to_id: toId,
362
370
  feedback_type: fb.feedback_type,
363
371
  content: fb.content,
364
372
  agent: fb.agent,
@@ -404,7 +412,6 @@ export function importIssues(db, issues, changes, dryRun = false, skipRelationsh
404
412
  closed_at: issue.closed_at,
405
413
  });
406
414
  setTags(db, issue.id, "issue", issue.tags || []);
407
- syncIssueFeedback(db, issue.id, issue.feedback);
408
415
  added++;
409
416
  }
410
417
  }
@@ -442,7 +449,6 @@ export function importIssues(db, issues, changes, dryRun = false, skipRelationsh
442
449
  closed_at: issue.closed_at,
443
450
  });
444
451
  setTags(db, issue.id, "issue", issue.tags || []);
445
- syncIssueFeedback(db, issue.id, issue.feedback);
446
452
  updated++;
447
453
  }
448
454
  }
@@ -469,13 +475,21 @@ export function importIssues(db, issues, changes, dryRun = false, skipRelationsh
469
475
  deleteIssue(db, id);
470
476
  deleted++;
471
477
  }
478
+ // Sync feedback after all issues/specs are created/updated
479
+ // This ensures that feedback references to other issues are valid
480
+ for (const id of [...changes.added, ...changes.updated]) {
481
+ const issue = issues.find((i) => i.id === id);
482
+ if (issue) {
483
+ syncIssueFeedback(db, issue.id, issue.feedback);
484
+ }
485
+ }
472
486
  return { added, updated, deleted };
473
487
  }
474
488
  /**
475
489
  * Import both specs and issues from JSONL files
476
490
  */
477
491
  export async function importFromJSONL(db, options = {}) {
478
- const { inputDir = ".sudocode", specsFile = "specs.jsonl", issuesFile = "issues.jsonl", dryRun = false, resolveCollisions: shouldResolve = true, } = options;
492
+ const { inputDir = ".sudocode", specsFile = "specs.jsonl", issuesFile = "issues.jsonl", dryRun = false, resolveCollisions: shouldResolve = true, forceUpdateIds = [], } = options;
479
493
  const specsPath = path.join(inputDir, specsFile);
480
494
  const issuesPath = path.join(inputDir, issuesFile);
481
495
  // Read JSONL files
@@ -503,24 +517,66 @@ export async function importFromJSONL(db, options = {}) {
503
517
  // Use UUID to identify the correct entity to rename (in case of duplicate IDs)
504
518
  for (const collision of resolvedCollisions) {
505
519
  if (collision.resolution === "renumber" && collision.newId) {
520
+ const oldId = collision.id;
521
+ const newId = collision.newId;
506
522
  if (collision.type === "spec") {
507
- const spec = incomingSpecs.find((s) => s.id === collision.id && s.uuid === collision.uuid);
523
+ const spec = incomingSpecs.find((s) => s.id === oldId && s.uuid === collision.uuid);
508
524
  if (spec) {
509
- spec.id = collision.newId;
525
+ spec.id = newId;
526
+ }
527
+ // Update feedback references to this spec (to_id)
528
+ for (const issue of incomingIssues) {
529
+ if (issue.feedback) {
530
+ for (const fb of issue.feedback) {
531
+ const feedbackToId = fb.to_id || fb.spec_id;
532
+ if (feedbackToId === oldId) {
533
+ // Update both old and new field names for safety
534
+ if (fb.to_id)
535
+ fb.to_id = newId;
536
+ if (fb.spec_id)
537
+ fb.spec_id = newId;
538
+ }
539
+ }
540
+ }
510
541
  }
511
542
  }
512
543
  else if (collision.type === "issue") {
513
- const issue = incomingIssues.find((i) => i.id === collision.id && i.uuid === collision.uuid);
544
+ const issue = incomingIssues.find((i) => i.id === oldId && i.uuid === collision.uuid);
514
545
  if (issue) {
515
- issue.id = collision.newId;
546
+ issue.id = newId;
547
+ // Update feedback within this issue (from_id)
548
+ if (issue.feedback) {
549
+ for (const fb of issue.feedback) {
550
+ // Update both old and new field names for safety
551
+ if (fb.from_id)
552
+ fb.from_id = newId;
553
+ if (fb.issue_id)
554
+ fb.issue_id = newId;
555
+ }
556
+ }
557
+ }
558
+ // Update feedback references FROM this issue in other issues' feedback
559
+ for (const otherIssue of incomingIssues) {
560
+ if (otherIssue.feedback) {
561
+ for (const fb of otherIssue.feedback) {
562
+ const feedbackFromId = fb.from_id || fb.issue_id;
563
+ if (feedbackFromId === oldId) {
564
+ // Update both old and new field names for safety
565
+ if (fb.from_id)
566
+ fb.from_id = newId;
567
+ if (fb.issue_id)
568
+ fb.issue_id = newId;
569
+ }
570
+ }
571
+ }
516
572
  }
517
573
  }
518
574
  }
519
575
  }
520
576
  }
521
577
  // Detect changes (after collision resolution has modified incoming data)
522
- const specChanges = detectChanges(existingSpecs, incomingSpecs);
523
- const issueChanges = detectChanges(existingIssues, incomingIssues);
578
+ const specChanges = detectChanges(existingSpecs, incomingSpecs, forceUpdateIds);
579
+ const issueChanges = detectChanges(existingIssues, incomingIssues, forceUpdateIds);
524
580
  // Apply changes in transaction
525
581
  const result = {
526
582
  specs: { added: 0, updated: 0, deleted: 0 },
@@ -1 +1 @@
1
- {"version":3,"file":"import.js","sourceRoot":"","sources":["../src/import.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"import.js","sourceRoot":"","sources":["../src/import.ts"],"names":[],"mappings":"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"}