@seanmars/tospec 0.12.0 → 0.14.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 (201) hide show
  1. package/CHANGELOG.md +233 -0
  2. package/README.md +20 -7
  3. package/assets/dashboard/app.js +6 -0
  4. package/assets/dashboard/style.css +42 -5
  5. package/dist/cli/index.d.ts.map +1 -1
  6. package/dist/cli/index.js +39 -16
  7. package/dist/cli/index.js.map +1 -1
  8. package/dist/commands/config.d.ts.map +1 -1
  9. package/dist/commands/config.js +21 -16
  10. package/dist/commands/config.js.map +1 -1
  11. package/dist/commands/dashboard.d.ts +95 -8
  12. package/dist/commands/dashboard.d.ts.map +1 -1
  13. package/dist/commands/dashboard.js +256 -31
  14. package/dist/commands/dashboard.js.map +1 -1
  15. package/dist/commands/decision.d.ts.map +1 -1
  16. package/dist/commands/decision.js +1 -13
  17. package/dist/commands/decision.js.map +1 -1
  18. package/dist/commands/validate.d.ts.map +1 -1
  19. package/dist/commands/validate.js +80 -44
  20. package/dist/commands/validate.js.map +1 -1
  21. package/dist/commands/workflow/instructions.d.ts +0 -2
  22. package/dist/commands/workflow/instructions.d.ts.map +1 -1
  23. package/dist/commands/workflow/instructions.js +3 -38
  24. package/dist/commands/workflow/instructions.js.map +1 -1
  25. package/dist/commands/workflow/shared.d.ts +0 -3
  26. package/dist/commands/workflow/shared.d.ts.map +1 -1
  27. package/dist/commands/workflow/shared.js.map +1 -1
  28. package/dist/core/archive.d.ts +11 -2
  29. package/dist/core/archive.d.ts.map +1 -1
  30. package/dist/core/archive.js +110 -111
  31. package/dist/core/archive.js.map +1 -1
  32. package/dist/core/artifact-graph/instruction-loader.d.ts +0 -5
  33. package/dist/core/artifact-graph/instruction-loader.d.ts.map +1 -1
  34. package/dist/core/artifact-graph/instruction-loader.js +37 -40
  35. package/dist/core/artifact-graph/instruction-loader.js.map +1 -1
  36. package/dist/core/artifact-graph/resolver.d.ts +27 -1
  37. package/dist/core/artifact-graph/resolver.d.ts.map +1 -1
  38. package/dist/core/artifact-graph/resolver.js +114 -127
  39. package/dist/core/artifact-graph/resolver.js.map +1 -1
  40. package/dist/core/artifact-graph/schema.d.ts.map +1 -1
  41. package/dist/core/artifact-graph/schema.js +22 -0
  42. package/dist/core/artifact-graph/schema.js.map +1 -1
  43. package/dist/core/change-metadata/schema.d.ts +1 -0
  44. package/dist/core/change-metadata/schema.d.ts.map +1 -1
  45. package/dist/core/change-metadata/schema.js +7 -0
  46. package/dist/core/change-metadata/schema.js.map +1 -1
  47. package/dist/core/change-presenter.d.ts +0 -1
  48. package/dist/core/change-presenter.d.ts.map +1 -1
  49. package/dist/core/change-presenter.js +4 -21
  50. package/dist/core/change-presenter.js.map +1 -1
  51. package/dist/core/command-generation/adapters/index.d.ts +9 -1
  52. package/dist/core/command-generation/adapters/index.d.ts.map +1 -1
  53. package/dist/core/command-generation/adapters/index.js +10 -1
  54. package/dist/core/command-generation/adapters/index.js.map +1 -1
  55. package/dist/core/command-generation/index.d.ts +2 -2
  56. package/dist/core/command-generation/index.d.ts.map +1 -1
  57. package/dist/core/command-generation/index.js +2 -2
  58. package/dist/core/command-generation/index.js.map +1 -1
  59. package/dist/core/config.d.ts +0 -4
  60. package/dist/core/config.d.ts.map +1 -1
  61. package/dist/core/config.js +0 -4
  62. package/dist/core/config.js.map +1 -1
  63. package/dist/core/converters/json-converter.d.ts +0 -1
  64. package/dist/core/converters/json-converter.d.ts.map +1 -1
  65. package/dist/core/converters/json-converter.js +3 -17
  66. package/dist/core/converters/json-converter.js.map +1 -1
  67. package/dist/core/dashboard-activity.d.ts.map +1 -1
  68. package/dist/core/dashboard-activity.js +2 -8
  69. package/dist/core/dashboard-activity.js.map +1 -1
  70. package/dist/core/dashboard-data.d.ts +12 -6
  71. package/dist/core/dashboard-data.d.ts.map +1 -1
  72. package/dist/core/dashboard-data.js +13 -44
  73. package/dist/core/dashboard-data.js.map +1 -1
  74. package/dist/core/global-config.d.ts +59 -16
  75. package/dist/core/global-config.d.ts.map +1 -1
  76. package/dist/core/global-config.js +99 -41
  77. package/dist/core/global-config.js.map +1 -1
  78. package/dist/core/id.d.ts +0 -8
  79. package/dist/core/id.d.ts.map +1 -1
  80. package/dist/core/id.js +0 -19
  81. package/dist/core/id.js.map +1 -1
  82. package/dist/core/init.d.ts +0 -1
  83. package/dist/core/init.d.ts.map +1 -1
  84. package/dist/core/init.js +13 -23
  85. package/dist/core/init.js.map +1 -1
  86. package/dist/core/list.d.ts.map +1 -1
  87. package/dist/core/list.js +3 -34
  88. package/dist/core/list.js.map +1 -1
  89. package/dist/core/migrate.js +9 -15
  90. package/dist/core/migrate.js.map +1 -1
  91. package/dist/core/parsers/markdown-parser.d.ts +11 -1
  92. package/dist/core/parsers/markdown-parser.d.ts.map +1 -1
  93. package/dist/core/parsers/markdown-parser.js +25 -13
  94. package/dist/core/parsers/markdown-parser.js.map +1 -1
  95. package/dist/core/planning-home.d.ts +6 -0
  96. package/dist/core/planning-home.d.ts.map +1 -1
  97. package/dist/core/planning-home.js +6 -1
  98. package/dist/core/planning-home.js.map +1 -1
  99. package/dist/core/project-config.d.ts +17 -26
  100. package/dist/core/project-config.d.ts.map +1 -1
  101. package/dist/core/project-config.js +24 -138
  102. package/dist/core/project-config.js.map +1 -1
  103. package/dist/core/root-selection.d.ts.map +1 -1
  104. package/dist/core/root-selection.js +2 -15
  105. package/dist/core/root-selection.js.map +1 -1
  106. package/dist/core/shared/index.d.ts +1 -1
  107. package/dist/core/shared/index.d.ts.map +1 -1
  108. package/dist/core/shared/index.js +1 -1
  109. package/dist/core/shared/index.js.map +1 -1
  110. package/dist/core/shared/skill-generation.js +3 -3
  111. package/dist/core/shared/skill-generation.js.map +1 -1
  112. package/dist/core/shared/tool-detection.d.ts +9 -6
  113. package/dist/core/shared/tool-detection.d.ts.map +1 -1
  114. package/dist/core/shared/tool-detection.js +9 -9
  115. package/dist/core/shared/tool-detection.js.map +1 -1
  116. package/dist/core/spec-presenter.d.ts.map +1 -1
  117. package/dist/core/spec-presenter.js.map +1 -1
  118. package/dist/core/specs-apply.d.ts +0 -31
  119. package/dist/core/specs-apply.d.ts.map +1 -1
  120. package/dist/core/specs-apply.js +0 -102
  121. package/dist/core/specs-apply.js.map +1 -1
  122. package/dist/core/templates/fragments/verify.d.ts +12 -11
  123. package/dist/core/templates/fragments/verify.d.ts.map +1 -1
  124. package/dist/core/templates/fragments/verify.js +22 -15
  125. package/dist/core/templates/fragments/verify.js.map +1 -1
  126. package/dist/core/templates/workflows/apply.d.ts +2 -2
  127. package/dist/core/templates/workflows/apply.js +10 -10
  128. package/dist/core/templates/workflows/apply.js.map +1 -1
  129. package/dist/core/templates/workflows/archive.d.ts.map +1 -1
  130. package/dist/core/templates/workflows/archive.js +30 -20
  131. package/dist/core/templates/workflows/archive.js.map +1 -1
  132. package/dist/core/templates/workflows/propose.js +2 -2
  133. package/dist/core/templates/workflows/sync.d.ts +4 -3
  134. package/dist/core/templates/workflows/sync.d.ts.map +1 -1
  135. package/dist/core/templates/workflows/sync.js +30 -13
  136. package/dist/core/templates/workflows/sync.js.map +1 -1
  137. package/dist/core/templates/workflows/update.js +1 -1
  138. package/dist/core/update.d.ts.map +1 -1
  139. package/dist/core/update.js +10 -15
  140. package/dist/core/update.js.map +1 -1
  141. package/dist/core/user-state-migration.d.ts +58 -0
  142. package/dist/core/user-state-migration.d.ts.map +1 -0
  143. package/dist/core/user-state-migration.js +107 -0
  144. package/dist/core/user-state-migration.js.map +1 -0
  145. package/dist/core/validation/section-validator.d.ts.map +1 -1
  146. package/dist/core/validation/section-validator.js +3 -16
  147. package/dist/core/validation/section-validator.js.map +1 -1
  148. package/dist/core/validation/validator.d.ts +0 -9
  149. package/dist/core/validation/validator.d.ts.map +1 -1
  150. package/dist/core/validation/validator.js +86 -115
  151. package/dist/core/validation/validator.js.map +1 -1
  152. package/dist/utils/change-metadata.d.ts +18 -0
  153. package/dist/utils/change-metadata.d.ts.map +1 -1
  154. package/dist/utils/change-metadata.js +39 -0
  155. package/dist/utils/change-metadata.js.map +1 -1
  156. package/dist/utils/change-utils.d.ts.map +1 -1
  157. package/dist/utils/change-utils.js +3 -6
  158. package/dist/utils/change-utils.js.map +1 -1
  159. package/dist/utils/file-system.d.ts +17 -19
  160. package/dist/utils/file-system.d.ts.map +1 -1
  161. package/dist/utils/file-system.js +41 -189
  162. package/dist/utils/file-system.js.map +1 -1
  163. package/dist/utils/frontmatter.d.ts +22 -0
  164. package/dist/utils/frontmatter.d.ts.map +1 -0
  165. package/dist/utils/frontmatter.js +39 -0
  166. package/dist/utils/frontmatter.js.map +1 -0
  167. package/dist/utils/item-discovery.d.ts +7 -0
  168. package/dist/utils/item-discovery.d.ts.map +1 -1
  169. package/dist/utils/item-discovery.js +13 -23
  170. package/dist/utils/item-discovery.js.map +1 -1
  171. package/dist/utils/link.d.ts +3 -1
  172. package/dist/utils/link.d.ts.map +1 -1
  173. package/dist/utils/link.js +4 -14
  174. package/dist/utils/link.js.map +1 -1
  175. package/dist/utils/spec-files.d.ts +19 -0
  176. package/dist/utils/spec-files.d.ts.map +1 -0
  177. package/dist/utils/spec-files.js +44 -0
  178. package/dist/utils/spec-files.js.map +1 -0
  179. package/dist/utils/task-progress.d.ts +0 -1
  180. package/dist/utils/task-progress.d.ts.map +1 -1
  181. package/dist/utils/task-progress.js +5 -6
  182. package/dist/utils/task-progress.js.map +1 -1
  183. package/package.json +11 -2
  184. package/schemas/issue/schema.yaml +6 -3
  185. package/schemas/sdd/schema.yaml +15 -2
  186. package/dist/core/references.d.ts +0 -40
  187. package/dist/core/references.d.ts.map +0 -1
  188. package/dist/core/references.js +0 -11
  189. package/dist/core/references.js.map +0 -1
  190. package/dist/utils/command-references.d.ts +0 -18
  191. package/dist/utils/command-references.d.ts.map +0 -1
  192. package/dist/utils/command-references.js +0 -20
  193. package/dist/utils/command-references.js.map +0 -1
  194. package/dist/utils/index.d.ts +0 -6
  195. package/dist/utils/index.d.ts.map +0 -1
  196. package/dist/utils/index.js +0 -9
  197. package/dist/utils/index.js.map +0 -1
  198. package/dist/utils/shell-detection.d.ts +0 -20
  199. package/dist/utils/shell-detection.d.ts.map +0 -1
  200. package/dist/utils/shell-detection.js +0 -41
  201. package/dist/utils/shell-detection.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../../src/core/validation/validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../../src/core/validation/validator.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,24 @@ export declare function writeChangeMetadata(changeDir: string, metadata: ChangeM
35
35
  * @throws ChangeMetadataError if the file exists but is invalid
36
36
  */
37
37
  export declare function readChangeMetadata(changeDir: string, projectRoot?: string): ChangeMetadata | null;
38
+ /**
39
+ * Reads the `skip_specs` declaration without going through the full metadata
40
+ * validation, so a bad value can be *reported* rather than taking the whole
41
+ * read down with it.
42
+ *
43
+ * readChangeMetadata throws on any Zod failure, which would turn a mistyped
44
+ * skip_specs into an opaque metadata error — or, if the caller swallows it,
45
+ * into the very "must have at least one delta" message the marker exists to
46
+ * suppress. Neither tells the user what is actually wrong. This reads the one
47
+ * key directly and hands the caller a reason to surface.
48
+ *
49
+ * Lives next to readChangeMetadata on purpose: two readers of the same file
50
+ * belong in one module, where they can't drift apart unnoticed.
51
+ */
52
+ export declare function readSkipSpecsMarker(changeDir: string): {
53
+ declared: boolean;
54
+ invalidReason?: string;
55
+ };
38
56
  export interface ResolveSchemaForChangeOptions {
39
57
  metadata?: ChangeMetadata | null;
40
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"change-metadata.d.ts","sourceRoot":"","sources":["../../src/utils/change-metadata.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAI7F,eAAO,MAAM,iBAAiB,iBAAiB,CAAC;AAEhD;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;aAG1B,YAAY,EAAE,MAAM;aACpB,KAAK,CAAC,EAAE,KAAK;gBAF7B,OAAO,EAAE,MAAM,EACC,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,KAAK,YAAA;CAKhC;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,MAAM,EAClB,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM,CAQR;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,cAAc,EACxB,WAAW,CAAC,EAAE,MAAM,GACnB,IAAI,CA2BN;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,WAAW,CAAC,EAAE,MAAM,GACnB,cAAc,GAAG,IAAI,CAkDvB;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;CAClC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,cAAc,CAAC,EAAE,MAAM,EACvB,mBAAmB,CAAC,EAAE,MAAM,EAC5B,OAAO,GAAE,6BAAkC,GAC1C,MAAM,CA2BR"}
1
+ {"version":3,"file":"change-metadata.d.ts","sourceRoot":"","sources":["../../src/utils/change-metadata.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAI7F,eAAO,MAAM,iBAAiB,iBAAiB,CAAC;AAEhD;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;aAG1B,YAAY,EAAE,MAAM;aACpB,KAAK,CAAC,EAAE,KAAK;gBAF7B,OAAO,EAAE,MAAM,EACC,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,KAAK,YAAA;CAKhC;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,MAAM,EAClB,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM,CAQR;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,cAAc,EACxB,WAAW,CAAC,EAAE,MAAM,GACnB,IAAI,CA2BN;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,WAAW,CAAC,EAAE,MAAM,GACnB,cAAc,GAAG,IAAI,CAkDvB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG;IACtD,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAuBA;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;CAClC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,cAAc,CAAC,EAAE,MAAM,EACvB,mBAAmB,CAAC,EAAE,MAAM,EAC5B,OAAO,GAAE,6BAAkC,GAC1C,MAAM,CA2BR"}
@@ -101,6 +101,45 @@ export function readChangeMetadata(changeDir, projectRoot) {
101
101
  }
102
102
  return parseResult.data;
103
103
  }
104
+ /**
105
+ * Reads the `skip_specs` declaration without going through the full metadata
106
+ * validation, so a bad value can be *reported* rather than taking the whole
107
+ * read down with it.
108
+ *
109
+ * readChangeMetadata throws on any Zod failure, which would turn a mistyped
110
+ * skip_specs into an opaque metadata error — or, if the caller swallows it,
111
+ * into the very "must have at least one delta" message the marker exists to
112
+ * suppress. Neither tells the user what is actually wrong. This reads the one
113
+ * key directly and hands the caller a reason to surface.
114
+ *
115
+ * Lives next to readChangeMetadata on purpose: two readers of the same file
116
+ * belong in one module, where they can't drift apart unnoticed.
117
+ */
118
+ export function readSkipSpecsMarker(changeDir) {
119
+ const metaPath = path.join(changeDir, METADATA_FILENAME);
120
+ if (!fs.existsSync(metaPath))
121
+ return { declared: false };
122
+ let parsed;
123
+ try {
124
+ parsed = yaml.parse(fs.readFileSync(metaPath, 'utf-8'));
125
+ }
126
+ catch {
127
+ // Unparseable YAML is readChangeMetadata's error to report, not ours.
128
+ return { declared: false };
129
+ }
130
+ if (parsed === null || typeof parsed !== 'object')
131
+ return { declared: false };
132
+ const raw = parsed.skip_specs;
133
+ if (raw === undefined)
134
+ return { declared: false };
135
+ if (typeof raw !== 'boolean') {
136
+ return {
137
+ declared: false,
138
+ invalidReason: `skip_specs must be true or false, found ${JSON.stringify(raw)}.`,
139
+ };
140
+ }
141
+ return { declared: raw };
142
+ }
104
143
  /**
105
144
  * Resolves the schema for a change, with explicit override taking precedence.
106
145
  *
@@ -1 +1 @@
1
- {"version":3,"file":"change-metadata.js","sourceRoot":"","sources":["../../src/utils/change-metadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"change-metadata.js","sourceRoot":"","sources":["../../src/utils/change-metadata.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"change-utils.d.ts","sourceRoot":"","sources":["../../src/utils/change-utils.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAUvE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;IAC/D,wHAAwH;IACxH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,oFAAoF;IACpF,MAAM,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAiCjE;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,YAAY,CAChC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,kBAAkB,CAAC,CAsE7B"}
1
+ {"version":3,"file":"change-utils.d.ts","sourceRoot":"","sources":["../../src/utils/change-utils.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAUvE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;IAC/D,wHAAwH;IACxH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,oFAAoF;IACpF,MAAM,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAiCjE;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,YAAY,CAChC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,kBAAkB,CAAC,CAoE7B"}
@@ -2,7 +2,7 @@ import path from 'path';
2
2
  import { FileSystemUtils } from './file-system.js';
3
3
  import { formatTimestamp, formatLocalDate } from './timestamp.js';
4
4
  import { writeChangeMetadata, validateSchemaName } from './change-metadata.js';
5
- import { readProjectConfig } from '../core/project-config.js';
5
+ import { readProjectConfig, resolveConfigFileInDir } from '../core/project-config.js';
6
6
  import { isKebabId } from '../core/id.js';
7
7
  import { resolveSchema, loadTemplate } from '../core/artifact-graph/index.js';
8
8
  const DEFAULT_SCHEMA = 'sdd';
@@ -127,11 +127,8 @@ export async function createChange(projectRoot, name, options = {}) {
127
127
  await FileSystemUtils.createDirectory(changeDir);
128
128
  await FileSystemUtils.createDirectory(path.join(tospecDir, 'specs'));
129
129
  await FileSystemUtils.createDirectory(path.join(tospecDir, 'changes', 'archive'));
130
- const configPath = path.join(tospecDir, 'config.yaml');
131
- const configYmlPath = path.join(tospecDir, 'config.yml');
132
- if (!(await FileSystemUtils.fileExists(configPath)) &&
133
- !(await FileSystemUtils.fileExists(configYmlPath))) {
134
- await FileSystemUtils.writeFile(configPath, `schema: ${defaultSchema}\n`);
130
+ if (!resolveConfigFileInDir(tospecDir)) {
131
+ await FileSystemUtils.writeFile(path.join(tospecDir, 'config.yaml'), `schema: ${defaultSchema}\n`);
135
132
  }
136
133
  // Write metadata file with schema and creation date
137
134
  const today = formatLocalDate();
@@ -1 +1 @@
1
- {"version":3,"file":"change-utils.js","sourceRoot":"","sources":["../../src/utils/change-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"change-utils.js","sourceRoot":"","sources":["../../src/utils/change-utils.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,20 @@
1
+ /**
2
+ * Most-recent mtime of any file under `dirPath` (recursive), falling back to
3
+ * the directory's own mtime when it holds no files.
4
+ *
5
+ * Shared by `tospec list --sort recent` and the dashboard so both rank changes
6
+ * by the same clock; they used to walk separately and could disagree.
7
+ * ponytail: recursive walk; fine at repo scale (dozens of changes).
8
+ */
9
+ export declare function getLastModified(dirPath: string): Promise<Date>;
10
+ /**
11
+ * The artifact identity rule: the directory name following a `specs` or
12
+ * `changes` segment, falling back to the filename without its extension.
13
+ *
14
+ * Shared by the validator and the JSON converter so a report's `path` and the
15
+ * JSON `name` always agree on what a given file is called.
16
+ */
17
+ export declare function extractNameFromPath(filePath: string): string;
1
18
  export declare class FileSystemUtils {
2
19
  /**
3
20
  * Converts a path to use forward slashes (POSIX style).
@@ -14,28 +31,9 @@ export declare class FileSystemUtils {
14
31
  static joinPath(basePath: string, ...segments: string[]): string;
15
32
  static createDirectory(dirPath: string): Promise<void>;
16
33
  static fileExists(filePath: string): Promise<boolean>;
17
- /**
18
- * Finds the first existing parent directory by walking up the directory tree.
19
- * @param dirPath Starting directory path
20
- * @returns The first existing directory path, or null if root is reached without finding one
21
- */
22
- private static findFirstExistingDirectory;
23
- static canWriteFile(filePath: string): Promise<boolean>;
24
34
  static directoryExists(dirPath: string): Promise<boolean>;
25
35
  static writeFile(filePath: string, content: string): Promise<void>;
26
36
  static readFile(filePath: string): Promise<string>;
27
- static updateFileWithMarkers(filePath: string, content: string, startMarker: string, endMarker: string): Promise<void>;
28
37
  static ensureWritePermissions(dirPath: string): Promise<boolean>;
29
38
  }
30
- /**
31
- * Removes a marker block from file content.
32
- * Only removes markers that are on their own lines (ignores inline mentions).
33
- * Cleans up double blank lines that may result from removal.
34
- *
35
- * @param content - File content with markers
36
- * @param startMarker - The start marker string
37
- * @param endMarker - The end marker string
38
- * @returns Content with marker block removed, or original content if markers not found/invalid
39
- */
40
- export declare function removeMarkerBlock(content: string, startMarker: string, endMarker: string): string;
41
39
  //# sourceMappingURL=file-system.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-system.d.ts","sourceRoot":"","sources":["../../src/utils/file-system.ts"],"names":[],"mappings":"AAgFA,qBAAa,eAAe;IAC1B;;;OAGG;IACH,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAIrC;;;OAGG;IACH,MAAM,CAAC,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAa3D,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAIhC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAMhC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM;WAiBnD,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;WAI/C,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAY3D;;;;OAIG;mBACkB,0BAA0B;WA8BlC,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;WAiChD,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;WAYlD,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;WAM3D,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;WAI3C,qBAAqB,CAChC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC;WAiCH,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAsCvE;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,MAAM,CAuCR"}
1
+ {"version":3,"file":"file-system.d.ts","sourceRoot":"","sources":["../../src/utils/file-system.ts"],"names":[],"mappings":"AAKA;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBpE;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAY5D;AAED,qBAAa,eAAe;IAC1B;;;OAGG;IACH,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAIrC;;;OAGG;IACH,MAAM,CAAC,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAa3D,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAIhC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAMhC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM;WAiBnD,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;WAI/C,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;WAY9C,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;WAYlD,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;WAM3D,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;WAI3C,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAsCvE"}
@@ -1,65 +1,51 @@
1
1
  import * as nodeFs from 'fs';
2
2
  import path from 'path';
3
3
  const fs = nodeFs.promises;
4
- const { constants: fsConstants } = nodeFs;
5
- function hasOwnerGroupOrOtherWriteBit(stats) {
6
- return (stats.mode & 0o222) !== 0;
7
- }
8
- function hasOwnerGroupOrOtherExecuteBit(stats) {
9
- return (stats.mode & 0o111) !== 0;
10
- }
11
- async function hasWritableModeAndAccess(targetPath) {
12
- try {
13
- const stats = await fs.stat(targetPath);
14
- // POSIX root can often write despite mode bits, but Tospec should respect
15
- // explicit read-only file/directory modes when deciding whether an install
16
- // path is user-writable. This also keeps permission checks deterministic in
17
- // root-run CI containers. On Windows, chmod mode bits are not authoritative,
18
- // so rely on fs.access below.
19
- if (process.platform !== 'win32' && !hasOwnerGroupOrOtherWriteBit(stats)) {
20
- return false;
21
- }
22
- if (process.platform !== 'win32' && stats.isDirectory() && !hasOwnerGroupOrOtherExecuteBit(stats)) {
23
- return false;
24
- }
25
- const accessMode = stats.isDirectory()
26
- ? fsConstants.W_OK | fsConstants.X_OK
27
- : fsConstants.W_OK;
28
- await fs.access(targetPath, accessMode);
29
- return true;
30
- }
31
- catch {
32
- return false;
33
- }
34
- }
35
- function isMarkerOnOwnLine(content, markerIndex, markerLength) {
36
- let leftIndex = markerIndex - 1;
37
- while (leftIndex >= 0 && content[leftIndex] !== '\n') {
38
- const char = content[leftIndex];
39
- if (char !== ' ' && char !== '\t' && char !== '\r') {
40
- return false;
41
- }
42
- leftIndex--;
43
- }
44
- let rightIndex = markerIndex + markerLength;
45
- while (rightIndex < content.length && content[rightIndex] !== '\n') {
46
- const char = content[rightIndex];
47
- if (char !== ' ' && char !== '\t' && char !== '\r') {
48
- return false;
49
- }
50
- rightIndex++;
4
+ /**
5
+ * Most-recent mtime of any file under `dirPath` (recursive), falling back to
6
+ * the directory's own mtime when it holds no files.
7
+ *
8
+ * Shared by `tospec list --sort recent` and the dashboard so both rank changes
9
+ * by the same clock; they used to walk separately and could disagree.
10
+ * ponytail: recursive walk; fine at repo scale (dozens of changes).
11
+ */
12
+ export async function getLastModified(dirPath) {
13
+ let latest = null;
14
+ async function walk(dir) {
15
+ const entries = await fs.readdir(dir, { withFileTypes: true });
16
+ // Entries are independent and `latest` is an order-insensitive max, so the
17
+ // stats fan out instead of running one await at a time.
18
+ await Promise.all(entries.map(async (entry) => {
19
+ const full = path.join(dir, entry.name);
20
+ if (entry.isDirectory()) {
21
+ await walk(full);
22
+ return;
23
+ }
24
+ const { mtimeMs } = await fs.stat(full);
25
+ if (latest === null || mtimeMs > latest)
26
+ latest = mtimeMs;
27
+ }));
51
28
  }
52
- return true;
29
+ await walk(dirPath);
30
+ return latest === null ? (await fs.stat(dirPath)).mtime : new Date(latest);
53
31
  }
54
- function findMarkerIndex(content, marker, fromIndex = 0) {
55
- let currentIndex = content.indexOf(marker, fromIndex);
56
- while (currentIndex !== -1) {
57
- if (isMarkerOnOwnLine(content, currentIndex, marker.length)) {
58
- return currentIndex;
32
+ /**
33
+ * The artifact identity rule: the directory name following a `specs` or
34
+ * `changes` segment, falling back to the filename without its extension.
35
+ *
36
+ * Shared by the validator and the JSON converter so a report's `path` and the
37
+ * JSON `name` always agree on what a given file is called.
38
+ */
39
+ export function extractNameFromPath(filePath) {
40
+ const parts = FileSystemUtils.toPosixPath(filePath).split('/');
41
+ for (let i = parts.length - 1; i >= 0; i--) {
42
+ if ((parts[i] === 'specs' || parts[i] === 'changes') && i < parts.length - 1) {
43
+ return parts[i + 1];
59
44
  }
60
- currentIndex = content.indexOf(marker, currentIndex + marker.length);
61
45
  }
62
- return -1;
46
+ const fileName = parts[parts.length - 1] ?? '';
47
+ const dotIndex = fileName.lastIndexOf('.');
48
+ return dotIndex > 0 ? fileName.slice(0, dotIndex) : fileName;
63
49
  }
64
50
  export class FileSystemUtils {
65
51
  /**
@@ -123,68 +109,6 @@ export class FileSystemUtils {
123
109
  return false;
124
110
  }
125
111
  }
126
- /**
127
- * Finds the first existing parent directory by walking up the directory tree.
128
- * @param dirPath Starting directory path
129
- * @returns The first existing directory path, or null if root is reached without finding one
130
- */
131
- static async findFirstExistingDirectory(dirPath) {
132
- let currentDir = dirPath;
133
- while (true) {
134
- try {
135
- const stats = await fs.stat(currentDir);
136
- if (stats.isDirectory()) {
137
- return currentDir;
138
- }
139
- // Path component exists but is not a directory (edge case)
140
- console.debug(`Path component ${currentDir} exists but is not a directory`);
141
- return null;
142
- }
143
- catch (error) {
144
- if (error.code === 'ENOENT') {
145
- // Directory doesn't exist, move up one level
146
- const parentDir = path.dirname(currentDir);
147
- if (parentDir === currentDir) {
148
- // Reached filesystem root without finding existing directory
149
- return null;
150
- }
151
- currentDir = parentDir;
152
- }
153
- else {
154
- // Unexpected error (permissions, I/O error, etc.)
155
- console.debug(`Error checking directory ${currentDir}: ${error.message}`);
156
- return null;
157
- }
158
- }
159
- }
160
- }
161
- static async canWriteFile(filePath) {
162
- try {
163
- const stats = await fs.stat(filePath);
164
- if (stats.isDirectory()) {
165
- return hasWritableModeAndAccess(filePath);
166
- }
167
- if (!stats.isFile()) {
168
- return true;
169
- }
170
- return hasWritableModeAndAccess(filePath);
171
- }
172
- catch (error) {
173
- if (error.code === 'ENOENT') {
174
- // File doesn't exist - find first existing parent directory and check its permissions
175
- const parentDir = path.dirname(filePath);
176
- const existingDir = await this.findFirstExistingDirectory(parentDir);
177
- if (existingDir === null) {
178
- // No existing parent directory found (edge case)
179
- return false;
180
- }
181
- // Check if the existing parent directory is writable.
182
- return hasWritableModeAndAccess(existingDir);
183
- }
184
- console.debug(`Unable to determine write permissions for ${filePath}: ${error.message}`);
185
- return false;
186
- }
187
- }
188
112
  static async directoryExists(dirPath) {
189
113
  try {
190
114
  const stats = await fs.stat(dirPath);
@@ -205,34 +129,6 @@ export class FileSystemUtils {
205
129
  static async readFile(filePath) {
206
130
  return await fs.readFile(filePath, 'utf-8');
207
131
  }
208
- static async updateFileWithMarkers(filePath, content, startMarker, endMarker) {
209
- let existingContent = '';
210
- if (await this.fileExists(filePath)) {
211
- existingContent = await this.readFile(filePath);
212
- const startIndex = findMarkerIndex(existingContent, startMarker);
213
- const endIndex = startIndex !== -1
214
- ? findMarkerIndex(existingContent, endMarker, startIndex + startMarker.length)
215
- : findMarkerIndex(existingContent, endMarker);
216
- if (startIndex !== -1 && endIndex !== -1) {
217
- if (endIndex < startIndex) {
218
- throw new Error(`Invalid marker state in ${filePath}. End marker appears before start marker.`);
219
- }
220
- const before = existingContent.substring(0, startIndex);
221
- const after = existingContent.substring(endIndex + endMarker.length);
222
- existingContent = before + startMarker + '\n' + content + '\n' + endMarker + after;
223
- }
224
- else if (startIndex === -1 && endIndex === -1) {
225
- existingContent = startMarker + '\n' + content + '\n' + endMarker + '\n\n' + existingContent;
226
- }
227
- else {
228
- throw new Error(`Invalid marker state in ${filePath}. Found start: ${startIndex !== -1}, Found end: ${endIndex !== -1}`);
229
- }
230
- }
231
- else {
232
- existingContent = startMarker + '\n' + content + '\n' + endMarker;
233
- }
234
- await this.writeFile(filePath, existingContent);
235
- }
236
132
  static async ensureWritePermissions(dirPath) {
237
133
  try {
238
134
  // If directory doesn't exist, check parent directory permissions
@@ -273,48 +169,4 @@ export class FileSystemUtils {
273
169
  }
274
170
  }
275
171
  }
276
- /**
277
- * Removes a marker block from file content.
278
- * Only removes markers that are on their own lines (ignores inline mentions).
279
- * Cleans up double blank lines that may result from removal.
280
- *
281
- * @param content - File content with markers
282
- * @param startMarker - The start marker string
283
- * @param endMarker - The end marker string
284
- * @returns Content with marker block removed, or original content if markers not found/invalid
285
- */
286
- export function removeMarkerBlock(content, startMarker, endMarker) {
287
- const startIndex = findMarkerIndex(content, startMarker);
288
- const endIndex = startIndex !== -1
289
- ? findMarkerIndex(content, endMarker, startIndex + startMarker.length)
290
- : findMarkerIndex(content, endMarker);
291
- if (startIndex === -1 || endIndex === -1 || endIndex <= startIndex) {
292
- return content;
293
- }
294
- // Find the start of the line containing the start marker
295
- let lineStart = startIndex;
296
- while (lineStart > 0 && content[lineStart - 1] !== '\n') {
297
- lineStart--;
298
- }
299
- // Find the end of the line containing the end marker
300
- let lineEnd = endIndex + endMarker.length;
301
- while (lineEnd < content.length && content[lineEnd] !== '\n') {
302
- lineEnd++;
303
- }
304
- // Include the trailing newline if present
305
- if (lineEnd < content.length && content[lineEnd] === '\n') {
306
- lineEnd++;
307
- }
308
- const before = content.substring(0, lineStart);
309
- const after = content.substring(lineEnd);
310
- // Clean up double blank lines (handle both Unix \n and Windows \r\n)
311
- let result = before + after;
312
- result = result.replace(/(\r?\n){3,}/g, '\n\n');
313
- // Trim trailing whitespace but preserve leading whitespace and original newline style
314
- if (result.trimEnd() === '') {
315
- return '';
316
- }
317
- const newline = content.includes('\r\n') ? '\r\n' : '\n';
318
- return result.trimEnd() + newline;
319
- }
320
172
  //# sourceMappingURL=file-system.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-system.js","sourceRoot":"","sources":["../../src/utils/file-system.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,IAAI,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC;AAC3B,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;AAE1C,SAAS,4BAA4B,CAAC,KAAmB;IACvD,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,8BAA8B,CAAC,KAAmB;IACzD,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED,KAAK,UAAU,wBAAwB,CAAC,UAAkB;IACxD,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAExC,0EAA0E;QAC1E,2EAA2E;QAC3E,4EAA4E;QAC5E,6EAA6E;QAC7E,8BAA8B;QAC9B,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC,EAAE,CAAC;YACzE,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,8BAA8B,CAAC,KAAK,CAAC,EAAE,CAAC;YAClG,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE;YACpC,CAAC,CAAC,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI;YACrC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;QACrB,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAe,EAAE,WAAmB,EAAE,YAAoB;IACnF,IAAI,SAAS,GAAG,WAAW,GAAG,CAAC,CAAC;IAChC,OAAO,SAAS,IAAI,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC;QACrD,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAChC,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YACnD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,SAAS,EAAE,CAAC;IACd,CAAC;IAED,IAAI,UAAU,GAAG,WAAW,GAAG,YAAY,CAAC;IAC5C,OAAO,UAAU,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,EAAE,CAAC;QACnE,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QACjC,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YACnD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,UAAU,EAAE,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,eAAe,CACtB,OAAe,EACf,MAAc,EACd,SAAS,GAAG,CAAC;IAEb,IAAI,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAEtD,OAAO,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;QAC3B,IAAI,iBAAiB,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5D,OAAO,YAAY,CAAC;QACtB,CAAC;QAED,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC;AAED,MAAM,OAAO,eAAe;IAC1B;;;OAGG;IACH,MAAM,CAAC,WAAW,CAAC,CAAS;QAC1B,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,wBAAwB,CAAC,UAAkB;QAChD,IAAI,CAAC;YACH,yEAAyE;YACzE,OAAO,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC;gBACH,OAAO,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YACzC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,iBAAiB,CAAC,QAAgB;QAC/C,OAAO,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACvE,CAAC;IAEO,MAAM,CAAC,iBAAiB,CAAC,QAAkB;QACjD,OAAO,QAAQ;aACZ,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;aAC9C,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,QAAgB,EAAE,GAAG,QAAkB;QACrD,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAE5D,IAAI,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC1D,OAAO,kBAAkB,CAAC,MAAM;gBAC9B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE,GAAG,kBAAkB,CAAC;gBAC5D,CAAC,CAAC,kBAAkB,CAAC;QACzB,CAAC;QAED,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAEnD,OAAO,kBAAkB,CAAC,MAAM;YAC9B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,kBAAkB,CAAC;YACvD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,OAAe;QAC1C,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,QAAgB;QACtC,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC5B,OAAO,CAAC,KAAK,CAAC,qCAAqC,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACnF,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,OAAe;QAC7D,IAAI,UAAU,GAAG,OAAO,CAAC;QAEzB,OAAO,IAAI,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACxC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;oBACxB,OAAO,UAAU,CAAC;gBACpB,CAAC;gBACD,2DAA2D;gBAC3D,OAAO,CAAC,KAAK,CAAC,kBAAkB,UAAU,gCAAgC,CAAC,CAAC;gBAC5E,OAAO,IAAI,CAAC;YACd,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC5B,6CAA6C;oBAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBAC3C,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;wBAC7B,6DAA6D;wBAC7D,OAAO,IAAI,CAAC;oBACd,CAAC;oBACD,UAAU,GAAG,SAAS,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACN,kDAAkD;oBAClD,OAAO,CAAC,KAAK,CAAC,4BAA4B,UAAU,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC1E,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,QAAgB;QACxC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAEtC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,OAAO,wBAAwB,CAAC,QAAQ,CAAC,CAAC;YAC5C,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;gBACpB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,OAAO,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC5B,sFAAsF;gBACtF,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACzC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC;gBAErE,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;oBACzB,iDAAiD;oBACjD,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,sDAAsD;gBACtD,OAAO,wBAAwB,CAAC,WAAW,CAAC,CAAC;YAC/C,CAAC;YAED,OAAO,CAAC,KAAK,CAAC,6CAA6C,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACzF,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,OAAe;QAC1C,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACrC,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC5B,OAAO,CAAC,KAAK,CAAC,0CAA0C,OAAO,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACvF,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,QAAgB,EAAE,OAAe;QACtD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnC,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QAChC,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAgB;QACpC,OAAO,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAChC,QAAgB,EAChB,OAAe,EACf,WAAmB,EACnB,SAAiB;QAEjB,IAAI,eAAe,GAAG,EAAE,CAAC;QAEzB,IAAI,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,eAAe,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAEhD,MAAM,UAAU,GAAG,eAAe,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;YACjE,MAAM,QAAQ,GAAG,UAAU,KAAK,CAAC,CAAC;gBAChC,CAAC,CAAC,eAAe,CAAC,eAAe,EAAE,SAAS,EAAE,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC;gBAC9E,CAAC,CAAC,eAAe,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;YAEhD,IAAI,UAAU,KAAK,CAAC,CAAC,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;gBACzC,IAAI,QAAQ,GAAG,UAAU,EAAE,CAAC;oBAC1B,MAAM,IAAI,KAAK,CACb,2BAA2B,QAAQ,2CAA2C,CAC/E,CAAC;gBACJ,CAAC;gBAED,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;gBACxD,MAAM,KAAK,GAAG,eAAe,CAAC,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;gBACrE,eAAe,GAAG,MAAM,GAAG,WAAW,GAAG,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,CAAC;YACrF,CAAC;iBAAM,IAAI,UAAU,KAAK,CAAC,CAAC,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;gBAChD,eAAe,GAAG,WAAW,GAAG,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,eAAe,CAAC;YAC/F,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,kBAAkB,UAAU,KAAK,CAAC,CAAC,gBAAgB,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;YAC3H,CAAC;QACH,CAAC;aAAM,CAAC;YACN,eAAe,GAAG,WAAW,GAAG,IAAI,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;QACpE,CAAC;QAED,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,OAAe;QACjD,IAAI,CAAC;YACH,iEAAiE;YACjE,IAAI,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACxC,IAAI,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC3C,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;gBACxC,CAAC;gBACD,OAAO,MAAM,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;YACtD,CAAC;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9G,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAEjC,gFAAgF;YAChF,+CAA+C;YAC/C,MAAM,UAAU,GAAG,CAAC,CAAC;YACrB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;gBACtD,IAAI,CAAC;oBACH,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAC1B,MAAM;gBACR,CAAC;gBAAC,OAAO,WAAgB,EAAE,CAAC;oBAC1B,IAAI,OAAO,KAAK,UAAU,GAAG,CAAC,EAAE,CAAC;wBAC/B,iFAAiF;wBACjF,sEAAsE;wBACtE,OAAO,CAAC,KAAK,CAAC,gCAAgC,QAAQ,KAAK,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;oBACpF,CAAC;yBAAM,CAAC;wBACN,2DAA2D;wBAC3D,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;oBAC1D,CAAC;gBACH,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,wCAAwC,OAAO,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACnF,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;CACF;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAAe,EACf,WAAmB,EACnB,SAAiB;IAEjB,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,UAAU,KAAK,CAAC,CAAC;QAChC,CAAC,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,EAAE,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC;QACtE,CAAC,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAExC,IAAI,UAAU,KAAK,CAAC,CAAC,IAAI,QAAQ,KAAK,CAAC,CAAC,IAAI,QAAQ,IAAI,UAAU,EAAE,CAAC;QACnE,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,yDAAyD;IACzD,IAAI,SAAS,GAAG,UAAU,CAAC;IAC3B,OAAO,SAAS,GAAG,CAAC,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACxD,SAAS,EAAE,CAAC;IACd,CAAC;IAED,qDAAqD;IACrD,IAAI,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC;IAC1C,OAAO,OAAO,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;QAC7D,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,0CAA0C;IAC1C,IAAI,OAAO,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;QAC1D,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAEzC,qEAAqE;IACrE,IAAI,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;IAC5B,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IAEhD,sFAAsF;IACtF,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC;QAC5B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IACzD,OAAO,MAAM,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"file-system.js","sourceRoot":"","sources":["../../src/utils/file-system.ts"],"names":[],"mappings":"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"}