@einja/dev-cli 0.1.9 → 0.1.10

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 (223) hide show
  1. package/README.md +30 -2
  2. package/dist/cli.js +3 -6
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/init.d.ts.map +1 -1
  5. package/dist/commands/init.js +11 -6
  6. package/dist/commands/init.js.map +1 -1
  7. package/dist/commands/list.js +1 -1
  8. package/dist/commands/list.js.map +1 -1
  9. package/dist/commands/sync.d.ts.map +1 -1
  10. package/dist/commands/sync.js +69 -7
  11. package/dist/commands/sync.js.map +1 -1
  12. package/dist/commands/sync.test.js +11 -25
  13. package/dist/commands/sync.test.js.map +1 -1
  14. package/dist/commands/task-loop/index.d.ts.map +1 -1
  15. package/dist/commands/task-loop/index.js +5 -2
  16. package/dist/commands/task-loop/index.js.map +1 -1
  17. package/dist/commands/task-loop/lib/__mocks__/child-process.mock.d.ts +227 -0
  18. package/dist/commands/task-loop/lib/__mocks__/child-process.mock.d.ts.map +1 -0
  19. package/dist/commands/task-loop/lib/__mocks__/child-process.mock.js +351 -0
  20. package/dist/commands/task-loop/lib/__mocks__/child-process.mock.js.map +1 -0
  21. package/dist/commands/task-loop/lib/__mocks__/sample-issues.d.ts +46 -0
  22. package/dist/commands/task-loop/lib/__mocks__/sample-issues.d.ts.map +1 -0
  23. package/dist/commands/task-loop/lib/__mocks__/sample-issues.js +224 -0
  24. package/dist/commands/task-loop/lib/__mocks__/sample-issues.js.map +1 -0
  25. package/dist/commands/task-loop/lib/branch-manager.d.ts.map +1 -1
  26. package/dist/commands/task-loop/lib/branch-manager.js +14 -8
  27. package/dist/commands/task-loop/lib/branch-manager.js.map +1 -1
  28. package/dist/commands/task-loop/lib/branch-manager.test.d.ts +2 -0
  29. package/dist/commands/task-loop/lib/branch-manager.test.d.ts.map +1 -0
  30. package/dist/commands/task-loop/lib/branch-manager.test.js +539 -0
  31. package/dist/commands/task-loop/lib/branch-manager.test.js.map +1 -0
  32. package/dist/commands/task-loop/lib/conflict-handler.js +1 -1
  33. package/dist/commands/task-loop/lib/conflict-handler.js.map +1 -1
  34. package/dist/commands/task-loop/lib/dependency-resolver.test.d.ts +2 -0
  35. package/dist/commands/task-loop/lib/dependency-resolver.test.d.ts.map +1 -0
  36. package/dist/commands/task-loop/lib/dependency-resolver.test.js +1129 -0
  37. package/dist/commands/task-loop/lib/dependency-resolver.test.js.map +1 -0
  38. package/dist/commands/task-loop/lib/gh-setup.d.ts.map +1 -1
  39. package/dist/commands/task-loop/lib/gh-setup.js.map +1 -1
  40. package/dist/commands/task-loop/lib/github-client.d.ts.map +1 -1
  41. package/dist/commands/task-loop/lib/github-client.js +3 -3
  42. package/dist/commands/task-loop/lib/github-client.js.map +1 -1
  43. package/dist/commands/task-loop/lib/github-client.test.d.ts +2 -0
  44. package/dist/commands/task-loop/lib/github-client.test.d.ts.map +1 -0
  45. package/dist/commands/task-loop/lib/github-client.test.js +377 -0
  46. package/dist/commands/task-loop/lib/github-client.test.js.map +1 -0
  47. package/dist/commands/task-loop/lib/issue-parser.js +4 -4
  48. package/dist/commands/task-loop/lib/issue-parser.js.map +1 -1
  49. package/dist/commands/task-loop/lib/issue-parser.test.d.ts +2 -0
  50. package/dist/commands/task-loop/lib/issue-parser.test.d.ts.map +1 -0
  51. package/dist/commands/task-loop/lib/issue-parser.test.js +854 -0
  52. package/dist/commands/task-loop/lib/issue-parser.test.js.map +1 -0
  53. package/dist/commands/task-loop/lib/pull-request-manager.d.ts +35 -0
  54. package/dist/commands/task-loop/lib/pull-request-manager.d.ts.map +1 -0
  55. package/dist/commands/task-loop/lib/pull-request-manager.js +150 -0
  56. package/dist/commands/task-loop/lib/pull-request-manager.js.map +1 -0
  57. package/dist/commands/task-loop/lib/task-number-utils.d.ts +10 -4
  58. package/dist/commands/task-loop/lib/task-number-utils.d.ts.map +1 -1
  59. package/dist/commands/task-loop/lib/task-number-utils.js +19 -10
  60. package/dist/commands/task-loop/lib/task-number-utils.js.map +1 -1
  61. package/dist/commands/task-loop/lib/task-number-utils.test.d.ts +2 -0
  62. package/dist/commands/task-loop/lib/task-number-utils.test.d.ts.map +1 -0
  63. package/dist/commands/task-loop/lib/task-number-utils.test.js +379 -0
  64. package/dist/commands/task-loop/lib/task-number-utils.test.js.map +1 -0
  65. package/dist/commands/task-loop/lib/task-state-manager.d.ts.map +1 -1
  66. package/dist/commands/task-loop/lib/task-state-manager.js +1 -1
  67. package/dist/commands/task-loop/lib/task-state-manager.js.map +1 -1
  68. package/dist/commands/task-loop/lib/task-state-manager.test.d.ts +2 -0
  69. package/dist/commands/task-loop/lib/task-state-manager.test.d.ts.map +1 -0
  70. package/dist/commands/task-loop/lib/task-state-manager.test.js +541 -0
  71. package/dist/commands/task-loop/lib/task-state-manager.test.js.map +1 -0
  72. package/dist/lib/mcp-config.d.ts.map +1 -1
  73. package/dist/lib/mcp-config.js +8 -4
  74. package/dist/lib/mcp-config.js.map +1 -1
  75. package/dist/lib/mcp-config.test.js +2 -2
  76. package/dist/lib/mcp-config.test.js.map +1 -1
  77. package/dist/lib/merger.d.ts.map +1 -1
  78. package/dist/lib/merger.js.map +1 -1
  79. package/dist/lib/preset-update/cli-repo-detector.test.js.map +1 -1
  80. package/dist/lib/preset-update/file-copier.d.ts +2 -0
  81. package/dist/lib/preset-update/file-copier.d.ts.map +1 -1
  82. package/dist/lib/preset-update/file-copier.js +12 -8
  83. package/dist/lib/preset-update/file-copier.js.map +1 -1
  84. package/dist/lib/preset-update/file-copier.test.js +36 -5
  85. package/dist/lib/preset-update/file-copier.test.js.map +1 -1
  86. package/dist/lib/preset-update/preset-finder.d.ts +1 -1
  87. package/dist/lib/preset-update/preset-finder.d.ts.map +1 -1
  88. package/dist/lib/preset-update/preset-finder.js +1 -1
  89. package/dist/lib/preset-update/preset-finder.js.map +1 -1
  90. package/dist/lib/preset-update/preset-finder.test.js +11 -11
  91. package/dist/lib/preset-update/preset-finder.test.js.map +1 -1
  92. package/dist/lib/preset.js +3 -3
  93. package/dist/lib/preset.js.map +1 -1
  94. package/dist/lib/sync/backup-manager.d.ts.map +1 -1
  95. package/dist/lib/sync/backup-manager.js +1 -1
  96. package/dist/lib/sync/backup-manager.js.map +1 -1
  97. package/dist/lib/sync/backup-manager.test.js +2 -2
  98. package/dist/lib/sync/backup-manager.test.js.map +1 -1
  99. package/dist/lib/sync/batch-processor.d.ts.map +1 -1
  100. package/dist/lib/sync/batch-processor.js.map +1 -1
  101. package/dist/lib/sync/batch-processor.test.js.map +1 -1
  102. package/dist/lib/sync/category-validator.d.ts.map +1 -1
  103. package/dist/lib/sync/category-validator.js.map +1 -1
  104. package/dist/lib/sync/category-validator.test.js +2 -11
  105. package/dist/lib/sync/category-validator.test.js.map +1 -1
  106. package/dist/lib/sync/conflict-reporter.d.ts.map +1 -1
  107. package/dist/lib/sync/conflict-reporter.js +1 -2
  108. package/dist/lib/sync/conflict-reporter.js.map +1 -1
  109. package/dist/lib/sync/conflict-reporter.test.js +2 -7
  110. package/dist/lib/sync/conflict-reporter.test.js.map +1 -1
  111. package/dist/lib/sync/diff-engine.d.ts.map +1 -1
  112. package/dist/lib/sync/diff-engine.js +2 -4
  113. package/dist/lib/sync/diff-engine.js.map +1 -1
  114. package/dist/lib/sync/diff-engine.test.js.map +1 -1
  115. package/dist/lib/sync/file-filter.d.ts.map +1 -1
  116. package/dist/lib/sync/file-filter.js +26 -3
  117. package/dist/lib/sync/file-filter.js.map +1 -1
  118. package/dist/lib/sync/file-filter.test.js +26 -2
  119. package/dist/lib/sync/file-filter.test.js.map +1 -1
  120. package/dist/lib/sync/hash-cache.d.ts.map +1 -1
  121. package/dist/lib/sync/hash-cache.js.map +1 -1
  122. package/dist/lib/sync/hash-cache.test.js +2 -2
  123. package/dist/lib/sync/hash-cache.test.js.map +1 -1
  124. package/dist/lib/sync/integration.test.js +289 -2
  125. package/dist/lib/sync/integration.test.js.map +1 -1
  126. package/dist/lib/sync/marker-processor.d.ts +34 -10
  127. package/dist/lib/sync/marker-processor.d.ts.map +1 -1
  128. package/dist/lib/sync/marker-processor.js +142 -41
  129. package/dist/lib/sync/marker-processor.js.map +1 -1
  130. package/dist/lib/sync/marker-processor.test.js +134 -1
  131. package/dist/lib/sync/marker-processor.test.js.map +1 -1
  132. package/dist/lib/sync/metadata-manager.d.ts.map +1 -1
  133. package/dist/lib/sync/metadata-manager.js.map +1 -1
  134. package/dist/lib/sync/metadata-manager.test.js +4 -6
  135. package/dist/lib/sync/metadata-manager.test.js.map +1 -1
  136. package/dist/lib/sync/performance.test.js +2 -2
  137. package/dist/lib/sync/performance.test.js.map +1 -1
  138. package/dist/lib/sync/seed-synchronizer.d.ts +27 -0
  139. package/dist/lib/sync/seed-synchronizer.d.ts.map +1 -0
  140. package/dist/lib/sync/seed-synchronizer.js +72 -0
  141. package/dist/lib/sync/seed-synchronizer.js.map +1 -0
  142. package/dist/lib/sync/seed-synchronizer.test.d.ts +2 -0
  143. package/dist/lib/sync/seed-synchronizer.test.d.ts.map +1 -0
  144. package/dist/lib/sync/seed-synchronizer.test.js +147 -0
  145. package/dist/lib/sync/seed-synchronizer.test.js.map +1 -0
  146. package/dist/types/index.d.ts.map +1 -1
  147. package/dist/types/preset-update.d.ts +1 -1
  148. package/dist/types/sync.d.ts +4 -2
  149. package/dist/types/sync.d.ts.map +1 -1
  150. package/dist/types/sync.js.map +1 -1
  151. package/package.json +1 -1
  152. package/presets/default/.claude/agents/einja/backend-architect.md +1131 -0
  153. package/presets/{minimal/.claude/agents/einja/frontend → default/.claude/agents/einja}/design-engineer.md +1 -1
  154. package/presets/{minimal/.claude/agents/einja/frontend → default/.claude/agents/einja}/frontend-architect.md +1 -1
  155. package/presets/{minimal/.claude/agents/einja/frontend → default/.claude/agents/einja}/frontend-coder.md +1 -37
  156. package/presets/{minimal → default}/.claude/agents/einja/task/task-committer.md +12 -6
  157. package/presets/{minimal → default}/.claude/agents/einja/task/task-executer.md +9 -9
  158. package/presets/{minimal → default}/.claude/commands/einja/frontend-implement.md +1 -1
  159. package/presets/{minimal → default}/.claude/commands/einja/update-docs-by-task-specs.md +6 -6
  160. package/presets/{minimal/.claude/skills/einja/api-development → default/.claude/skills/einja-api-development}/SKILL.md +5 -5
  161. package/presets/{minimal/.claude/skills/einja/backend-architecture → default/.claude/skills/einja-backend-architecture}/SKILL.md +5 -5
  162. package/presets/{minimal/.claude/skills/einja/coding-standards → default/.claude/skills/einja-coding-standards}/SKILL.md +6 -6
  163. package/presets/{minimal/.claude/skills/einja/component-design → default/.claude/skills/einja-component-design}/SKILL.md +6 -6
  164. package/presets/{minimal/.claude/skills/einja/frontend-development → default/.claude/skills/einja-frontend-development}/SKILL.md +5 -5
  165. package/presets/{minimal/.claude/skills/einja/output-format → default/.claude/skills/einja-output-format}/SKILL.md +54 -5
  166. package/presets/{minimal → default}/preset.yaml +1 -1
  167. package/presets/{minimal → default}/symlinks.json +10 -10
  168. package/scaffolds/CLAUDE.md.template +4 -4
  169. package/scaffolds/steering/README.md +42 -0
  170. package/scaffolds/steering/acceptance-criteria-and-qa-guide.md +11 -0
  171. package/scaffolds/steering/architecture.md +11 -0
  172. package/scaffolds/steering/branch-strategy.md +11 -0
  173. package/scaffolds/steering/commit-rules.md +12 -1
  174. package/scaffolds/steering/db-schema-design.md +11 -0
  175. package/scaffolds/steering/development/api-development.md +15 -4
  176. package/scaffolds/steering/development/backend-architecture.md +11 -0
  177. package/scaffolds/steering/development/frontend-development.md +11 -0
  178. package/scaffolds/steering/development/review-guidelines.md +11 -0
  179. package/scaffolds/steering/development/testing-strategy.md +85 -0
  180. package/scaffolds/steering/development-workflow.md +11 -0
  181. package/scaffolds/steering/infrastructure/deployment.md +11 -0
  182. package/scaffolds/steering/infrastructure/environment-variables.md +11 -0
  183. package/scaffolds/steering/product.md +11 -0
  184. package/scaffolds/steering/task-management.md +11 -0
  185. /package/presets/{minimal → default}/.claude/agents/einja/docs/docs-updater.md +0 -0
  186. /package/presets/{minimal → default}/.claude/agents/einja/git/conflict-resolver.md +0 -0
  187. /package/presets/{minimal → default}/.claude/agents/einja/specs/spec-design-generator.md +0 -0
  188. /package/presets/{minimal → default}/.claude/agents/einja/specs/spec-qa-generator.md +0 -0
  189. /package/presets/{minimal → default}/.claude/agents/einja/specs/spec-requirements-generator.md +0 -0
  190. /package/presets/{minimal → default}/.claude/agents/einja/specs/spec-tasks-generator.md +0 -0
  191. /package/presets/{minimal → default}/.claude/agents/einja/task/task-modification-analyzer.md +0 -0
  192. /package/presets/{minimal → default}/.claude/agents/einja/task/task-qa.md +0 -0
  193. /package/presets/{minimal → default}/.claude/agents/einja/task/task-reviewer.md +0 -0
  194. /package/presets/{minimal → default}/.claude/commands/einja/spec-create.md +0 -0
  195. /package/presets/{minimal → default}/.claude/commands/einja/start-dev.md +0 -0
  196. /package/presets/{minimal → default}/.claude/commands/einja/sync-cursor-commands.md +0 -0
  197. /package/presets/{minimal → default}/.claude/commands/einja/task-exec.md +0 -0
  198. /package/presets/{minimal → default}/.claude/hooks/einja/biome-format.sh +0 -0
  199. /package/presets/{minimal → default}/.claude/hooks/einja/design-doc-check.sh +0 -0
  200. /package/presets/{minimal → default}/.claude/hooks/einja/detect-secrets.sh +0 -0
  201. /package/presets/{minimal → default}/.claude/hooks/einja/large-file-warning.sh +0 -0
  202. /package/presets/{minimal → default}/.claude/hooks/einja/playwright-resize.sh +0 -0
  203. /package/presets/{minimal → default}/.claude/hooks/einja/typecheck.sh +0 -0
  204. /package/presets/{minimal → default}/.claude/hooks/einja/unset-volta-recursion.sh +0 -0
  205. /package/presets/{minimal → default}/.claude/hooks/einja/validate-git-commit.sh +0 -0
  206. /package/presets/{minimal → default}/.claude/hooks/einja/warn-index-ts.sh +0 -0
  207. /package/presets/{minimal → default}/.claude/hooks/einja/warn-relative-import.sh +0 -0
  208. /package/presets/{minimal → default}/.claude/settings.json +0 -0
  209. /package/presets/{minimal/.claude/skills/einja/coding-standards → default/.claude/skills/einja-coding-standards}/reference/naming-conventions.md +0 -0
  210. /package/presets/{minimal/.claude/skills/einja/coding-standards → default/.claude/skills/einja-coding-standards}/reference/prohibited-patterns.md +0 -0
  211. /package/presets/{minimal/.claude/skills/einja/coding-standards → default/.claude/skills/einja-coding-standards}/reference/typescript-rules.md +0 -0
  212. /package/presets/{minimal/.claude/skills/einja/component-design → default/.claude/skills/einja-component-design}/reference/directory-structure.md +0 -0
  213. /package/presets/{minimal/.claude/skills/einja/component-design → default/.claude/skills/einja-component-design}/reference/props-patterns.md +0 -0
  214. /package/presets/{minimal/.claude/skills/einja/component-design → default/.claude/skills/einja-component-design}/reference/styling-guide.md +0 -0
  215. /package/presets/{minimal/.claude/skills/einja/conflict-resolver → default/.claude/skills/einja-conflict-resolver}/SKILL.md +0 -0
  216. /package/presets/{minimal/.claude/skills/einja/general-context-loader → default/.claude/skills/einja-general-context-loader}/SKILL.md +0 -0
  217. /package/presets/{minimal/.claude/skills/einja/spec-context-loader → default/.claude/skills/einja-spec-context-loader}/SKILL.md +0 -0
  218. /package/presets/{minimal/.claude/skills/einja/task-commit → default/.claude/skills/einja-task-commit}/SKILL.md +0 -0
  219. /package/presets/{minimal/.claude/skills/einja/task-qa → default/.claude/skills/einja-task-qa}/SKILL.md +0 -0
  220. /package/presets/{minimal/.claude/skills/einja/task-qa → default/.claude/skills/einja-task-qa}/reference/failure-patterns.md +0 -0
  221. /package/presets/{minimal/.claude/skills/einja/task-qa → default/.claude/skills/einja-task-qa}/reference/troubleshooting.md +0 -0
  222. /package/presets/{minimal/.claude/skills/einja/task-qa → default/.claude/skills/einja-task-qa}/reference/usage-patterns.md +0 -0
  223. /package/presets/{minimal/.claude/skills/einja/task-qa → default/.claude/skills/einja-task-qa}/templates/qa-test-template.md +0 -0
@@ -1,6 +1,8 @@
1
1
  import { describe, expect, it } from "vitest";
2
2
  import { ConflictReporter } from "./conflict-reporter.js";
3
3
  import { DiffEngine } from "./diff-engine.js";
4
+ import { MarkerProcessor } from "./marker-processor.js";
5
+ import { SeedSynchronizer } from "./seed-synchronizer.js";
4
6
  /**
5
7
  * タスクグループ1.3: 3方向マージエンジンとコンフリクト検出の統合テスト
6
8
  *
@@ -46,8 +48,7 @@ describe("DiffEngine と ConflictReporter の統合テスト", () => {
46
48
  expect(result.success).toBe(false);
47
49
  expect(result.conflicts).toHaveLength(2);
48
50
  // Then: 両方のコンフリクトにマーカーが挿入される
49
- const markerCount = (result.content.match(/<<<<<<< LOCAL/g) || [])
50
- .length;
51
+ const markerCount = (result.content.match(/<<<<<<< LOCAL/g) || []).length;
51
52
  expect(markerCount).toBe(2);
52
53
  });
53
54
  it("コンフリクトがない場合、マーカーは挿入されない", () => {
@@ -314,4 +315,290 @@ Line 3`;
314
315
  });
315
316
  });
316
317
  });
318
+ /**
319
+ * MarkerProcessor と SeedSynchronizer の統合テスト
320
+ *
321
+ * 検証シナリオ:
322
+ * - 初回sync → seedセクションが追加される
323
+ * - 2回目sync → seedセクションが保持される(上書きされない)
324
+ * - seedセクション削除後のsync → 空のテンプレートが再追加される
325
+ * - seedセクション内を編集後のsync → 編集内容が保持される
326
+ */
327
+ describe("MarkerProcessor と SeedSynchronizer の統合テスト", () => {
328
+ const markerProcessor = new MarkerProcessor();
329
+ const seedSynchronizer = new SeedSynchronizer();
330
+ describe("sync フロー全体のテスト", () => {
331
+ it("初回sync: ローカルにseedがない場合、テンプレートのseedが追加される", () => {
332
+ // Given: ローカルファイル(seedなし)
333
+ const localContent = `# ドキュメント
334
+
335
+ <!-- @einja:managed:start -->
336
+ ## 共通ルール
337
+
338
+ これは共通ルールです。
339
+ <!-- @einja:managed:end -->
340
+
341
+ ## ローカル固有のセクション
342
+
343
+ ローカル固有の内容です。`;
344
+ // Given: テンプレートファイル(managedとseedあり)
345
+ const templateContent = `# ドキュメント
346
+
347
+ <!-- @einja:managed:start -->
348
+ ## 共通ルール
349
+
350
+ これは更新された共通ルールです。
351
+ <!-- @einja:managed:end -->
352
+
353
+ ---
354
+
355
+ <!-- @einja:seed:start id="project-settings" -->
356
+ ## プロジェクト固有の設定
357
+
358
+ <!-- ここにプロジェクト固有の内容を追加 -->
359
+ <!-- @einja:seed:end -->`;
360
+ // When: managed同期を実行
361
+ const localSections = markerProcessor.parseMarkers(localContent);
362
+ const afterManagedSync = markerProcessor.replaceManaged(localSections, templateContent);
363
+ // When: seed同期を実行
364
+ const result = seedSynchronizer.syncSeeds(afterManagedSync, templateContent);
365
+ // Then: managedセクションはテンプレートで更新される
366
+ expect(result).toContain("これは更新された共通ルールです。");
367
+ expect(result).not.toContain("これは共通ルールです。");
368
+ // Then: ローカル固有セクションは保持される
369
+ expect(result).toContain("## ローカル固有のセクション");
370
+ expect(result).toContain("ローカル固有の内容です。");
371
+ // Then: seedセクションが追加される
372
+ expect(result).toContain('<!-- @einja:seed:start id="project-settings" -->');
373
+ expect(result).toContain("## プロジェクト固有の設定");
374
+ expect(result).toContain("<!-- @einja:seed:end -->");
375
+ });
376
+ it("2回目sync: 既存のseedセクションは上書きされない", () => {
377
+ // Given: ローカルファイル(編集済みseedあり)
378
+ const localContent = `# ドキュメント
379
+
380
+ <!-- @einja:managed:start -->
381
+ ## 共通ルール
382
+
383
+ これは共通ルールです。
384
+ <!-- @einja:managed:end -->
385
+
386
+ ---
387
+
388
+ <!-- @einja:seed:start id="project-settings" -->
389
+ ## プロジェクト固有の設定
390
+
391
+ このプロジェクトではXXXを使用します。
392
+ カスタム設定が追加されています。
393
+ <!-- @einja:seed:end -->`;
394
+ // Given: テンプレートファイル(空のseedテンプレート)
395
+ const templateContent = `# ドキュメント
396
+
397
+ <!-- @einja:managed:start -->
398
+ ## 共通ルール
399
+
400
+ これは更新された共通ルールです(新機能追加)。
401
+ <!-- @einja:managed:end -->
402
+
403
+ ---
404
+
405
+ <!-- @einja:seed:start id="project-settings" -->
406
+ ## プロジェクト固有の設定
407
+
408
+ <!-- ここにプロジェクト固有の内容を追加 -->
409
+ <!-- @einja:seed:end -->`;
410
+ // When: managed同期を実行
411
+ const localSections = markerProcessor.parseMarkers(localContent);
412
+ const afterManagedSync = markerProcessor.replaceManaged(localSections, templateContent);
413
+ // When: seed同期を実行
414
+ const result = seedSynchronizer.syncSeeds(afterManagedSync, templateContent);
415
+ // Then: managedセクションは更新される
416
+ expect(result).toContain("これは更新された共通ルールです(新機能追加)。");
417
+ // Then: seedセクションのローカル編集内容は保持される
418
+ expect(result).toContain("このプロジェクトではXXXを使用します。");
419
+ expect(result).toContain("カスタム設定が追加されています。");
420
+ expect(result).not.toContain("<!-- ここにプロジェクト固有の内容を追加 -->");
421
+ });
422
+ it("seedセクション削除後のsync: 空のテンプレートが再追加される", () => {
423
+ // Given: ローカルファイル(seedを削除した状態)
424
+ const localContent = `# ドキュメント
425
+
426
+ <!-- @einja:managed:start -->
427
+ ## 共通ルール
428
+
429
+ これは共通ルールです。
430
+ <!-- @einja:managed:end -->
431
+
432
+ ## ユーザーが追加したセクション
433
+
434
+ ユーザーの独自コンテンツ`;
435
+ // Given: テンプレートファイル(seedあり)
436
+ const templateContent = `# ドキュメント
437
+
438
+ <!-- @einja:managed:start -->
439
+ ## 共通ルール
440
+
441
+ これは共通ルールです。
442
+ <!-- @einja:managed:end -->
443
+
444
+ ---
445
+
446
+ <!-- @einja:seed:start id="project-settings" -->
447
+ ## プロジェクト固有の設定
448
+
449
+ <!-- ここにプロジェクト固有の内容を追加 -->
450
+ <!-- @einja:seed:end -->`;
451
+ // When: managed同期を実行
452
+ const localSections = markerProcessor.parseMarkers(localContent);
453
+ const afterManagedSync = markerProcessor.replaceManaged(localSections, templateContent);
454
+ // When: seed同期を実行
455
+ const result = seedSynchronizer.syncSeeds(afterManagedSync, templateContent);
456
+ // Then: ユーザーが追加したセクションは保持される
457
+ expect(result).toContain("## ユーザーが追加したセクション");
458
+ expect(result).toContain("ユーザーの独自コンテンツ");
459
+ // Then: 空のseedテンプレートが再追加される
460
+ expect(result).toContain('<!-- @einja:seed:start id="project-settings" -->');
461
+ expect(result).toContain("## プロジェクト固有の設定");
462
+ expect(result).toContain("<!-- ここにプロジェクト固有の内容を追加 -->");
463
+ expect(result).toContain("<!-- @einja:seed:end -->");
464
+ });
465
+ it("新しいseedセクションがテンプレートに追加された場合、既存seedは保持しつつ新seedが追加される", () => {
466
+ // Given: ローカルファイル(seed-1のみ、編集済み)
467
+ const localContent = `# ドキュメント
468
+
469
+ <!-- @einja:managed:start -->
470
+ ## 共通ルール
471
+ <!-- @einja:managed:end -->
472
+
473
+ <!-- @einja:seed:start id="seed-1" -->
474
+ ## 設定1
475
+
476
+ ローカルで編集された設定1
477
+ <!-- @einja:seed:end -->`;
478
+ // Given: テンプレートファイル(seed-1とseed-2)
479
+ const templateContent = `# ドキュメント
480
+
481
+ <!-- @einja:managed:start -->
482
+ ## 共通ルール(更新)
483
+ <!-- @einja:managed:end -->
484
+
485
+ <!-- @einja:seed:start id="seed-1" -->
486
+ ## 設定1
487
+
488
+ テンプレートの設定1
489
+ <!-- @einja:seed:end -->
490
+
491
+ <!-- @einja:seed:start id="seed-2" -->
492
+ ## 設定2(新規)
493
+
494
+ 新しいseedセクション
495
+ <!-- @einja:seed:end -->`;
496
+ // When: managed同期を実行
497
+ const localSections = markerProcessor.parseMarkers(localContent);
498
+ const afterManagedSync = markerProcessor.replaceManaged(localSections, templateContent);
499
+ // When: seed同期を実行
500
+ const result = seedSynchronizer.syncSeeds(afterManagedSync, templateContent);
501
+ // Then: managedは更新される
502
+ expect(result).toContain("## 共通ルール(更新)");
503
+ // Then: 既存のseed-1はローカル編集内容が保持される
504
+ expect(result).toContain("ローカルで編集された設定1");
505
+ expect(result).not.toContain("テンプレートの設定1");
506
+ // Then: 新しいseed-2は追加される
507
+ expect(result).toContain('<!-- @einja:seed:start id="seed-2" -->');
508
+ expect(result).toContain("## 設定2(新規)");
509
+ expect(result).toContain("新しいseedセクション");
510
+ });
511
+ });
512
+ describe("バリデーションとsync連携", () => {
513
+ it("バリデーション成功 → sync実行の流れ", () => {
514
+ // Given: 正しいマーカー構造のファイル
515
+ const localContent = `# ドキュメント
516
+
517
+ <!-- @einja:managed:start -->
518
+ 共通部分
519
+ <!-- @einja:managed:end -->
520
+
521
+ <!-- @einja:seed:start id="custom" -->
522
+ カスタム部分
523
+ <!-- @einja:seed:end -->`;
524
+ const templateContent = `# ドキュメント
525
+
526
+ <!-- @einja:managed:start -->
527
+ 共通部分(更新)
528
+ <!-- @einja:managed:end -->
529
+
530
+ <!-- @einja:seed:start id="custom" -->
531
+ カスタム部分テンプレート
532
+ <!-- @einja:seed:end -->`;
533
+ // When: バリデーションを実行
534
+ const localValidation = markerProcessor.validateMarkers(localContent);
535
+ const templateValidation = markerProcessor.validateMarkers(templateContent);
536
+ // Then: 両方ともバリデーション成功
537
+ expect(localValidation.valid).toBe(true);
538
+ expect(templateValidation.valid).toBe(true);
539
+ // When: sync実行
540
+ const localSections = markerProcessor.parseMarkers(localContent);
541
+ const afterManagedSync = markerProcessor.replaceManaged(localSections, templateContent);
542
+ const result = seedSynchronizer.syncSeeds(afterManagedSync, templateContent);
543
+ // Then: 正しく同期される
544
+ expect(result).toContain("共通部分(更新)");
545
+ expect(result).toContain("カスタム部分");
546
+ expect(result).not.toContain("カスタム部分テンプレート");
547
+ });
548
+ it("バリデーションエラー時はsyncを実行しない", () => {
549
+ // Given: 不正なマーカー構造のファイル(seedにIDなし)
550
+ const invalidContent = `# ドキュメント
551
+
552
+ <!-- @einja:seed:start -->
553
+ カスタム部分
554
+ <!-- @einja:seed:end -->`;
555
+ // When: バリデーションを実行
556
+ const validation = markerProcessor.validateMarkers(invalidContent);
557
+ // Then: バリデーション失敗
558
+ expect(validation.valid).toBe(false);
559
+ expect(validation.errors.some((e) => e.type === "seed_without_id")).toBe(true);
560
+ // syncは実行しない(呼び出さない)
561
+ });
562
+ it("ネストエラーの検出", () => {
563
+ // Given: managed内にseedがネストされている不正な構造
564
+ const invalidContent = `# ドキュメント
565
+
566
+ <!-- @einja:managed:start -->
567
+ 共通部分
568
+ <!-- @einja:seed:start id="nested" -->
569
+ ネストされたseed
570
+ <!-- @einja:seed:end -->
571
+ <!-- @einja:managed:end -->`;
572
+ // When: バリデーションを実行
573
+ const validation = markerProcessor.validateMarkers(invalidContent);
574
+ // Then: ネストエラーが検出される
575
+ expect(validation.valid).toBe(false);
576
+ expect(validation.errors.some((e) => e.type === "nested")).toBe(true);
577
+ });
578
+ });
579
+ describe("マーカーなしファイルの処理", () => {
580
+ it("ローカルにファイルが存在しない場合、テンプレート内容が使用される", () => {
581
+ // Given: ローカルにファイルが存在しない
582
+ const localExists = false;
583
+ const templateContent = `# 新しいドキュメント
584
+
585
+ 共通ルールです。`;
586
+ // When: マーカーなしファイルの同期
587
+ const result = seedSynchronizer.syncUnmarkedFile(localExists, templateContent);
588
+ // Then: テンプレート内容が返される
589
+ expect(result).toBe(templateContent);
590
+ });
591
+ it("ローカルにファイルが存在する場合、何もしない(nullが返る)", () => {
592
+ // Given: ローカルにファイルが存在する
593
+ const localExists = true;
594
+ const templateContent = `# 新しいドキュメント
595
+
596
+ 共通ルールです。`;
597
+ // When: マーカーなしファイルの同期
598
+ const result = seedSynchronizer.syncUnmarkedFile(localExists, templateContent);
599
+ // Then: nullが返される(ローカルをそのまま保持)
600
+ expect(result).toBeNull();
601
+ });
602
+ });
603
+ });
317
604
  //# sourceMappingURL=integration.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"integration.test.js","sourceRoot":"","sources":["../../../src/lib/sync/integration.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"integration.test.js","sourceRoot":"","sources":["../../../src/lib/sync/integration.test.ts"],"names":[],"mappings":"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"}
@@ -1,24 +1,34 @@
1
1
  import type { MarkerSection, MarkerValidationResult } from "../../types/sync.js";
2
2
  /**
3
- * @einja:managedマーカーの処理を行うクラス
3
+ * @einja:managedおよび@einja:seedマーカーの処理を行うクラス
4
4
  * マーカーをパースしてセクションを分離し、検証・置換処理を提供します。
5
5
  */
6
6
  export declare class MarkerProcessor {
7
7
  /**
8
- * Markdownファイル用のマーカーパターン
8
+ * Markdownファイル用のmanagedマーカーパターン(ID属性オプショナル)
9
9
  */
10
- private static readonly MARKDOWN_START_PATTERN;
11
- private static readonly MARKDOWN_END_PATTERN;
10
+ private static readonly MARKDOWN_MANAGED_START_PATTERN;
11
+ private static readonly MARKDOWN_MANAGED_END_PATTERN;
12
12
  /**
13
- * YAML/JSONファイル用のマーカーパターン
13
+ * Markdownファイル用のseedマーカーパターン(ID属性はオプショナルだが、検証で必須チェック)
14
14
  */
15
- private static readonly YAML_START_PATTERN;
16
- private static readonly YAML_END_PATTERN;
15
+ private static readonly MARKDOWN_SEED_START_PATTERN;
16
+ private static readonly MARKDOWN_SEED_END_PATTERN;
17
+ /**
18
+ * YAML/JSONファイル用のmanagedマーカーパターン(ID属性オプショナル)
19
+ */
20
+ private static readonly YAML_MANAGED_START_PATTERN;
21
+ private static readonly YAML_MANAGED_END_PATTERN;
22
+ /**
23
+ * YAML/JSONファイル用のseedマーカーパターン(ID属性はオプショナルだが、検証で必須チェック)
24
+ */
25
+ private static readonly YAML_SEED_START_PATTERN;
26
+ private static readonly YAML_SEED_END_PATTERN;
17
27
  /**
18
28
  * ファイル内容をパースしてマーカーセクションに分離する
19
29
  *
20
30
  * @param content - ファイル内容
21
- * @returns セクション配列(managedunmanagedが交互に配置される)
31
+ * @returns セクション配列(managed/seed/unmanagedが配置される)
22
32
  */
23
33
  parseMarkers(content: string): MarkerSection[];
24
34
  /**
@@ -37,14 +47,28 @@ export declare class MarkerProcessor {
37
47
  */
38
48
  replaceManaged(localSections: MarkerSection[], templateContent: string): string;
39
49
  /**
40
- * 行がマーカー開始かどうかを判定する
50
+ * 行がマーカー開始かどうかを判定し、種別とIDを返す
51
+ *
52
+ * @param line - 行内容
53
+ * @returns マーカー情報(種別、ID)またはnull
54
+ */
55
+ private parseStartMarker;
56
+ /**
57
+ * 行がマーカー終了かどうかを判定し、種別を返す
58
+ *
59
+ * @param line - 行内容
60
+ * @returns マーカー種別またはnull
61
+ */
62
+ private parseEndMarker;
63
+ /**
64
+ * 行がマーカー開始かどうかを判定する(後方互換性のため残す)
41
65
  *
42
66
  * @param line - 行内容
43
67
  * @returns マーカー開始の場合true
44
68
  */
45
69
  private isStartMarker;
46
70
  /**
47
- * 行がマーカー終了かどうかを判定する
71
+ * 行がマーカー終了かどうかを判定する(後方互換性のため残す)
48
72
  *
49
73
  * @param line - 行内容
50
74
  * @returns マーカー終了の場合true
@@ -1 +1 @@
1
- {"version":3,"file":"marker-processor.d.ts","sourceRoot":"","sources":["../../../src/lib/sync/marker-processor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGX,aAAa,EACb,sBAAsB,EACtB,MAAM,qBAAqB,CAAC;AAE7B;;;GAGG;AACH,qBAAa,eAAe;IAC3B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CACP;IACvC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CACP;IAErC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAsC;IAChF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAoC;IAE5E;;;;;OAKG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,EAAE;IA+E9C;;;;;OAKG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,sBAAsB;IAqDxD;;;;;;OAMG;IACH,cAAc,CACb,aAAa,EAAE,aAAa,EAAE,EAC9B,eAAe,EAAE,MAAM,GACrB,MAAM;IAqCT;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAOrB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;CAMnB"}
1
+ {"version":3,"file":"marker-processor.d.ts","sourceRoot":"","sources":["../../../src/lib/sync/marker-processor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,aAAa,EACb,sBAAsB,EACvB,MAAM,qBAAqB,CAAC;AAE7B;;;GAGG;AACH,qBAAa,eAAe;IAC1B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,8BAA8B,CACM;IAC5D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,4BAA4B,CAAuC;IAE3F;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,2BAA2B,CACM;IACzD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAoC;IAErF;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CACO;IACzD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAoC;IAEpF;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAuD;IACtG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAiC;IAE9E;;;;;OAKG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,EAAE;IAmF9C;;;;;OAKG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,sBAAsB;IA0FxD;;;;;;OAMG;IACH,cAAc,CAAC,aAAa,EAAE,aAAa,EAAE,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM;IAqC/E;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IA8BxB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAwBtB;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAIrB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;CAGpB"}