@einja/dev-cli 0.1.40 → 0.1.41
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.
- package/README.md +89 -1
- package/dist/cli.js +1 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +71 -1
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/sync.d.ts.map +1 -1
- package/dist/commands/sync.js +187 -13
- package/dist/commands/sync.js.map +1 -1
- package/dist/lib/dependency-checker.d.ts.map +1 -1
- package/dist/lib/merger.d.ts +12 -0
- package/dist/lib/merger.d.ts.map +1 -1
- package/dist/lib/merger.js +28 -0
- package/dist/lib/merger.js.map +1 -1
- package/dist/lib/preset-update/cli-repo-detector.d.ts.map +1 -1
- package/dist/lib/preset-update/file-copier.d.ts.map +1 -1
- package/dist/lib/preset-update/preset-finder.d.ts.map +1 -1
- package/dist/lib/preset.d.ts.map +1 -1
- package/dist/lib/sync/category-validator.d.ts +1 -1
- package/dist/lib/sync/category-validator.d.ts.map +1 -1
- package/dist/lib/sync/category-validator.js +2 -1
- package/dist/lib/sync/category-validator.js.map +1 -1
- package/dist/lib/sync/category-validator.test.js +3 -1
- package/dist/lib/sync/category-validator.test.js.map +1 -1
- package/dist/lib/sync/conflict-reporter.d.ts.map +1 -1
- package/dist/lib/sync/diff-engine.d.ts.map +1 -1
- package/dist/lib/sync/file-filter.d.ts.map +1 -1
- package/dist/lib/sync/file-filter.js +1 -0
- package/dist/lib/sync/file-filter.js.map +1 -1
- package/dist/lib/sync/integration.test.js +255 -69
- package/dist/lib/sync/integration.test.js.map +1 -1
- package/dist/lib/sync/json-processor.d.ts +4 -4
- package/dist/lib/sync/json-processor.d.ts.map +1 -1
- package/dist/lib/sync/json-processor.js +11 -11
- package/dist/lib/sync/json-processor.js.map +1 -1
- package/dist/lib/sync/marker-processor.d.ts +60 -8
- package/dist/lib/sync/marker-processor.d.ts.map +1 -1
- package/dist/lib/sync/marker-processor.js +117 -26
- package/dist/lib/sync/marker-processor.js.map +1 -1
- package/dist/lib/sync/marker-processor.test.js +261 -40
- package/dist/lib/sync/marker-processor.test.js.map +1 -1
- package/dist/lib/sync/metadata-manager.d.ts +4 -0
- package/dist/lib/sync/metadata-manager.d.ts.map +1 -1
- package/dist/lib/sync/metadata-manager.js +15 -0
- package/dist/lib/sync/metadata-manager.js.map +1 -1
- package/dist/lib/sync/metadata-manager.test.js +68 -0
- package/dist/lib/sync/metadata-manager.test.js.map +1 -1
- package/dist/lib/sync/orphan-cleaner.d.ts +29 -0
- package/dist/lib/sync/orphan-cleaner.d.ts.map +1 -0
- package/dist/lib/sync/orphan-cleaner.js +80 -0
- package/dist/lib/sync/orphan-cleaner.js.map +1 -0
- package/dist/lib/sync/orphan-cleaner.test.d.ts +2 -0
- package/dist/lib/sync/orphan-cleaner.test.d.ts.map +1 -0
- package/dist/lib/sync/orphan-cleaner.test.js +169 -0
- package/dist/lib/sync/orphan-cleaner.test.js.map +1 -0
- package/dist/lib/sync/project-private-synchronizer.d.ts +52 -0
- package/dist/lib/sync/project-private-synchronizer.d.ts.map +1 -0
- package/dist/lib/sync/project-private-synchronizer.js +106 -0
- package/dist/lib/sync/project-private-synchronizer.js.map +1 -0
- package/dist/lib/sync/project-private-synchronizer.test.d.ts +2 -0
- package/dist/lib/sync/project-private-synchronizer.test.d.ts.map +1 -0
- package/dist/lib/sync/project-private-synchronizer.test.js +348 -0
- package/dist/lib/sync/project-private-synchronizer.test.js.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/sync.d.ts +36 -6
- package/dist/types/sync.d.ts.map +1 -1
- package/dist/types/sync.js +2 -2
- package/dist/types/sync.js.map +1 -1
- package/package.json +5 -4
- package/presets/default/.claude/agents/einja/Explore.md +140 -0
- package/presets/default/.claude/agents/einja/backend-architect.md +4 -0
- package/presets/default/.claude/agents/einja/codex-agent.md +4 -0
- package/presets/default/.claude/agents/einja/design-engineer.md +4 -0
- package/presets/default/.claude/agents/einja/docs/docs-updater.md +4 -0
- package/presets/default/.claude/agents/einja/frontend-architect.md +4 -0
- package/presets/default/.claude/agents/einja/frontend-coder.md +4 -0
- package/presets/default/.claude/agents/einja/git/conflict-resolver.md +4 -0
- package/presets/default/.claude/agents/einja/specs/spec-design-generator.md +4 -1
- package/presets/default/.claude/agents/einja/specs/spec-qa-generator.md +4 -0
- package/presets/default/.claude/agents/einja/specs/spec-requirements-generator.md +4 -1
- package/presets/default/.claude/agents/einja/specs/spec-tasks-generator.md +6 -2
- package/presets/default/.claude/agents/einja/specs/spec-tasks-validator.md +4 -0
- package/presets/default/.claude/agents/einja/task/task-executer.md +57 -115
- package/presets/default/.claude/agents/einja/task/task-modification-analyzer.md +4 -0
- package/presets/default/.claude/agents/einja/task/task-qa.md +4 -0
- package/presets/default/.claude/agents/einja/task/task-reviewer.md +4 -0
- package/presets/default/.claude/commands/einja/einja-sync.md +5 -1
- package/presets/default/.claude/commands/einja/frontend-implement.md +3 -1
- package/presets/default/.claude/commands/einja/issue-exec.md +403 -0
- package/presets/default/.claude/commands/einja/spec-create.md +15 -1
- package/presets/default/.claude/commands/einja/start-dev.md +4 -0
- package/presets/default/.claude/commands/einja/sync-cursor-commands.md +4 -0
- package/presets/default/.claude/commands/einja/task-exec.md +106 -14
- package/presets/default/.claude/commands/einja/update-docs-by-task-specs.md +4 -0
- package/presets/default/.claude/hooks/einja/plan-mode-skill-loader.sh +23 -0
- package/presets/default/.claude/settings.json +15 -1
- package/presets/default/.claude/skills/einja-conflict-resolver/SKILL.md +4 -0
- package/presets/default/.claude/skills/einja-general-context-loader/SKILL.md +4 -0
- package/presets/default/.claude/skills/einja-output-format/SKILL.md +4 -0
- package/presets/default/.claude/skills/einja-project-overview/SKILL.md +7 -3
- package/presets/default/.claude/skills/einja-skill-creator/SKILL.md +266 -274
- package/presets/default/.claude/skills/einja-skill-creator/agents/analyzer.md +274 -0
- package/presets/default/.claude/skills/einja-skill-creator/agents/comparator.md +202 -0
- package/presets/default/.claude/skills/einja-skill-creator/agents/grader.md +195 -0
- package/presets/default/.claude/skills/einja-skill-creator/assets/eval_review.html +146 -0
- package/presets/default/.claude/skills/einja-skill-creator/eval-viewer/generate_review.py +471 -0
- package/presets/default/.claude/skills/einja-skill-creator/eval-viewer/viewer.html +1325 -0
- package/presets/default/.claude/skills/einja-skill-creator/references/schemas.md +430 -0
- package/presets/default/.claude/skills/einja-skill-creator/scripts/aggregate_benchmark.py +154 -0
- package/presets/default/.claude/skills/einja-skill-creator/scripts/generate_report.py +265 -0
- package/presets/default/.claude/skills/einja-skill-creator/scripts/improve_description.py +252 -0
- package/presets/default/.claude/skills/einja-skill-creator/scripts/init_skill.py +13 -19
- package/presets/default/.claude/skills/einja-skill-creator/scripts/package_skill.py +36 -7
- package/presets/default/.claude/skills/einja-skill-creator/scripts/run_eval.py +310 -0
- package/presets/default/.claude/skills/einja-skill-creator/scripts/run_loop.py +295 -0
- package/presets/default/.claude/skills/einja-skill-creator/scripts/utils.py +48 -0
- package/presets/default/.claude/skills/einja-spec-context-loader/SKILL.md +4 -0
- package/presets/default/.claude/skills/einja-task-commit/SKILL.md +4 -0
- package/presets/default/.claude/skills/einja-task-qa/SKILL.md +4 -0
- package/presets/default/.envrc +5 -0
- package/presets/default/.mcp.json +2 -12
- package/presets/default/CLAUDE.md.template +26 -4
- package/presets/default/docs/einja/example/specs/issues/issue999-example-task/tasks.md +1 -1
- package/presets/default/docs/einja/instructions/deployment-setup.md +3 -8
- package/presets/default/docs/einja/instructions/environment-setup.md +3 -8
- package/presets/default/docs/einja/instructions/issue-exec-workflow.md +276 -0
- package/presets/default/docs/einja/instructions/local-server-environment-and-worktree.md +70 -8
- package/presets/default/docs/einja/instructions/neon-cli-reference.md +3 -8
- package/presets/default/docs/einja/instructions/task-execute.md +23 -28
- package/presets/default/docs/einja/instructions/vercel-cli-reference.md +17 -10
- package/presets/default/docs/einja/steering/README.md +11 -11
- package/presets/default/docs/einja/steering/acceptance-criteria-and-qa-guide.md +3 -8
- package/presets/default/docs/einja/steering/architecture.md +3 -8
- package/presets/default/docs/einja/steering/branch-strategy.md +63 -70
- package/presets/default/docs/einja/steering/commit-rules.md +3 -8
- package/presets/default/docs/einja/steering/db-schema-design.md +3 -8
- package/presets/default/docs/einja/steering/development/api-development.md +3 -8
- package/presets/default/docs/einja/steering/development/backend-architecture.md +3 -8
- package/presets/default/docs/einja/steering/development/coding-standards.md +723 -0
- package/presets/default/docs/einja/steering/development/component-design.md +502 -0
- package/presets/default/docs/einja/steering/development/database-guidelines.md +2 -2
- package/presets/default/docs/einja/steering/development/frontend-development.md +3 -8
- package/presets/default/docs/einja/steering/development/playwright-guidelines.md +59 -0
- package/presets/default/docs/einja/steering/development/review-guidelines.md +3 -8
- package/presets/default/docs/einja/steering/development/testing-strategy.md +3 -8
- package/presets/default/docs/einja/steering/development-workflow.md +71 -124
- package/presets/default/docs/einja/steering/infrastructure/deployment.md +49 -55
- package/presets/default/docs/einja/steering/infrastructure/environment-variables.md +4 -8
- package/presets/default/docs/einja/steering/product.md +3 -8
- package/presets/default/docs/einja/steering/task-management.md +14 -98
- package/presets/default/scripts/ensure-serena.sh +75 -0
- package/presets/default/scripts/env-rotate-secrets.ts +336 -0
- package/presets/default/scripts/env-show.ts +130 -0
- package/presets/default/scripts/env.ts +479 -0
- package/presets/default/scripts/init.sh +92 -0
- package/presets/default/scripts/lib/env-common.ts +108 -0
- package/presets/default/scripts/lib/worktree-config.ts +64 -0
- package/presets/default/scripts/setup-dev.ts +640 -0
- package/presets/default/scripts/stop-serena.sh +25 -0
- package/presets/default/scripts/worktree/dev.ts +872 -0
- package/dist/lib/sync/seed-synchronizer.d.ts +0 -27
- package/dist/lib/sync/seed-synchronizer.d.ts.map +0 -1
- package/dist/lib/sync/seed-synchronizer.js +0 -72
- package/dist/lib/sync/seed-synchronizer.js.map +0 -1
- package/dist/lib/sync/seed-synchronizer.test.d.ts +0 -2
- package/dist/lib/sync/seed-synchronizer.test.d.ts.map +0 -1
- package/dist/lib/sync/seed-synchronizer.test.js +0 -147
- package/dist/lib/sync/seed-synchronizer.test.js.map +0 -1
- package/presets/default/.claude/skills/einja-api-development/SKILL.md +0 -14
- package/presets/default/.claude/skills/einja-backend-architecture/SKILL.md +0 -18
- package/presets/default/.claude/skills/einja-coding-standards/SKILL.md +0 -132
- package/presets/default/.claude/skills/einja-coding-standards/references/import-conventions.md +0 -69
- package/presets/default/.claude/skills/einja-coding-standards/references/naming-conventions.md +0 -107
- package/presets/default/.claude/skills/einja-coding-standards/references/prohibited-patterns.md +0 -169
- package/presets/default/.claude/skills/einja-coding-standards/references/typescript-rules.md +0 -247
- package/presets/default/.claude/skills/einja-component-design/SKILL.md +0 -109
- package/presets/default/.claude/skills/einja-component-design/references/directory-structure.md +0 -117
- package/presets/default/.claude/skills/einja-component-design/references/props-patterns.md +0 -159
- package/presets/default/.claude/skills/einja-component-design/references/styling-guide.md +0 -122
- package/presets/default/.claude/skills/einja-frontend-development/SKILL.md +0 -14
- package/presets/default/docs/einja/instructions/task-vibe-kanban-loop.md +0 -565
|
@@ -2,7 +2,7 @@ import { describe, expect, it } from "vitest";
|
|
|
2
2
|
import { ConflictReporter } from "./conflict-reporter.js";
|
|
3
3
|
import { DiffEngine } from "./diff-engine.js";
|
|
4
4
|
import { MarkerProcessor } from "./marker-processor.js";
|
|
5
|
-
import {
|
|
5
|
+
import { ProjectPrivateSynchronizer } from "./project-private-synchronizer.js";
|
|
6
6
|
/**
|
|
7
7
|
* タスクグループ1.3: 3方向マージエンジンとコンフリクト検出の統合テスト
|
|
8
8
|
*
|
|
@@ -316,20 +316,20 @@ Line 3`;
|
|
|
316
316
|
});
|
|
317
317
|
});
|
|
318
318
|
/**
|
|
319
|
-
* MarkerProcessor と
|
|
319
|
+
* MarkerProcessor と ProjectPrivateSynchronizer の統合テスト
|
|
320
320
|
*
|
|
321
321
|
* 検証シナリオ:
|
|
322
|
-
* - 初回sync →
|
|
323
|
-
* - 2回目sync →
|
|
324
|
-
* -
|
|
325
|
-
* -
|
|
322
|
+
* - 初回sync → project-privateセクションが追加される
|
|
323
|
+
* - 2回目sync → project-privateセクションが保持される(上書きされない)
|
|
324
|
+
* - project-privateセクション削除後のsync → 空のテンプレートが再追加される
|
|
325
|
+
* - project-privateセクション内を編集後のsync → 編集内容が保持される
|
|
326
326
|
*/
|
|
327
|
-
describe("MarkerProcessor と
|
|
327
|
+
describe("MarkerProcessor と ProjectPrivateSynchronizer の統合テスト", () => {
|
|
328
328
|
const markerProcessor = new MarkerProcessor();
|
|
329
|
-
const
|
|
329
|
+
const projectPrivateSynchronizer = new ProjectPrivateSynchronizer();
|
|
330
330
|
describe("sync フロー全体のテスト", () => {
|
|
331
|
-
it("初回sync: ローカルに
|
|
332
|
-
// Given: ローカルファイル(
|
|
331
|
+
it("初回sync: ローカルにproject-privateがない場合、テンプレートのproject-privateが追加される", () => {
|
|
332
|
+
// Given: ローカルファイル(project-privateなし)
|
|
333
333
|
const localContent = `# ドキュメント
|
|
334
334
|
|
|
335
335
|
<!-- @einja:managed:start -->
|
|
@@ -341,7 +341,7 @@ describe("MarkerProcessor と SeedSynchronizer の統合テスト", () => {
|
|
|
341
341
|
## ローカル固有のセクション
|
|
342
342
|
|
|
343
343
|
ローカル固有の内容です。`;
|
|
344
|
-
// Given: テンプレートファイル(managedと
|
|
344
|
+
// Given: テンプレートファイル(managedとproject-privateあり)
|
|
345
345
|
const templateContent = `# ドキュメント
|
|
346
346
|
|
|
347
347
|
<!-- @einja:managed:start -->
|
|
@@ -352,29 +352,29 @@ describe("MarkerProcessor と SeedSynchronizer の統合テスト", () => {
|
|
|
352
352
|
|
|
353
353
|
---
|
|
354
354
|
|
|
355
|
-
<!-- @einja:
|
|
355
|
+
<!-- @einja:project-private:start id="project-settings" -->
|
|
356
356
|
## プロジェクト固有の設定
|
|
357
357
|
|
|
358
358
|
<!-- ここにプロジェクト固有の内容を追加 -->
|
|
359
|
-
<!-- @einja:
|
|
359
|
+
<!-- @einja:project-private:end -->`;
|
|
360
360
|
// When: managed同期を実行
|
|
361
361
|
const localSections = markerProcessor.parseMarkers(localContent);
|
|
362
362
|
const afterManagedSync = markerProcessor.replaceManaged(localSections, templateContent);
|
|
363
|
-
// When:
|
|
364
|
-
const result =
|
|
363
|
+
// When: project-private同期を実行
|
|
364
|
+
const result = projectPrivateSynchronizer.syncProjectPrivateSections(afterManagedSync, templateContent);
|
|
365
365
|
// Then: managedセクションはテンプレートで更新される
|
|
366
366
|
expect(result).toContain("これは更新された共通ルールです。");
|
|
367
367
|
expect(result).not.toContain("これは共通ルールです。");
|
|
368
368
|
// Then: ローカル固有セクションは保持される
|
|
369
369
|
expect(result).toContain("## ローカル固有のセクション");
|
|
370
370
|
expect(result).toContain("ローカル固有の内容です。");
|
|
371
|
-
// Then:
|
|
372
|
-
expect(result).toContain('<!-- @einja:
|
|
371
|
+
// Then: project-privateセクションが追加される
|
|
372
|
+
expect(result).toContain('<!-- @einja:project-private:start id="project-settings" -->');
|
|
373
373
|
expect(result).toContain("## プロジェクト固有の設定");
|
|
374
|
-
expect(result).toContain("<!-- @einja:
|
|
374
|
+
expect(result).toContain("<!-- @einja:project-private:end -->");
|
|
375
375
|
});
|
|
376
|
-
it("2回目sync: 既存の
|
|
377
|
-
// Given: ローカルファイル(編集済み
|
|
376
|
+
it("2回目sync: 既存のproject-privateセクションは上書きされない", () => {
|
|
377
|
+
// Given: ローカルファイル(編集済みproject-privateあり)
|
|
378
378
|
const localContent = `# ドキュメント
|
|
379
379
|
|
|
380
380
|
<!-- @einja:managed:start -->
|
|
@@ -385,13 +385,13 @@ describe("MarkerProcessor と SeedSynchronizer の統合テスト", () => {
|
|
|
385
385
|
|
|
386
386
|
---
|
|
387
387
|
|
|
388
|
-
<!-- @einja:
|
|
388
|
+
<!-- @einja:project-private:start id="project-settings" -->
|
|
389
389
|
## プロジェクト固有の設定
|
|
390
390
|
|
|
391
391
|
このプロジェクトではXXXを使用します。
|
|
392
392
|
カスタム設定が追加されています。
|
|
393
|
-
<!-- @einja:
|
|
394
|
-
// Given: テンプレートファイル(空の
|
|
393
|
+
<!-- @einja:project-private:end -->`;
|
|
394
|
+
// Given: テンプレートファイル(空のproject-privateテンプレート)
|
|
395
395
|
const templateContent = `# ドキュメント
|
|
396
396
|
|
|
397
397
|
<!-- @einja:managed:start -->
|
|
@@ -402,25 +402,25 @@ describe("MarkerProcessor と SeedSynchronizer の統合テスト", () => {
|
|
|
402
402
|
|
|
403
403
|
---
|
|
404
404
|
|
|
405
|
-
<!-- @einja:
|
|
405
|
+
<!-- @einja:project-private:start id="project-settings" -->
|
|
406
406
|
## プロジェクト固有の設定
|
|
407
407
|
|
|
408
408
|
<!-- ここにプロジェクト固有の内容を追加 -->
|
|
409
|
-
<!-- @einja:
|
|
409
|
+
<!-- @einja:project-private:end -->`;
|
|
410
410
|
// When: managed同期を実行
|
|
411
411
|
const localSections = markerProcessor.parseMarkers(localContent);
|
|
412
412
|
const afterManagedSync = markerProcessor.replaceManaged(localSections, templateContent);
|
|
413
|
-
// When:
|
|
414
|
-
const result =
|
|
413
|
+
// When: project-private同期を実行
|
|
414
|
+
const result = projectPrivateSynchronizer.syncProjectPrivateSections(afterManagedSync, templateContent);
|
|
415
415
|
// Then: managedセクションは更新される
|
|
416
416
|
expect(result).toContain("これは更新された共通ルールです(新機能追加)。");
|
|
417
|
-
// Then:
|
|
417
|
+
// Then: project-privateセクションのローカル編集内容は保持される
|
|
418
418
|
expect(result).toContain("このプロジェクトではXXXを使用します。");
|
|
419
419
|
expect(result).toContain("カスタム設定が追加されています。");
|
|
420
420
|
expect(result).not.toContain("<!-- ここにプロジェクト固有の内容を追加 -->");
|
|
421
421
|
});
|
|
422
|
-
it("
|
|
423
|
-
// Given: ローカルファイル(
|
|
422
|
+
it("project-privateセクション削除後のsync: 空のテンプレートが再追加される", () => {
|
|
423
|
+
// Given: ローカルファイル(project-privateを削除した状態)
|
|
424
424
|
const localContent = `# ドキュメント
|
|
425
425
|
|
|
426
426
|
<!-- @einja:managed:start -->
|
|
@@ -432,7 +432,7 @@ describe("MarkerProcessor と SeedSynchronizer の統合テスト", () => {
|
|
|
432
432
|
## ユーザーが追加したセクション
|
|
433
433
|
|
|
434
434
|
ユーザーの独自コンテンツ`;
|
|
435
|
-
// Given: テンプレートファイル(
|
|
435
|
+
// Given: テンプレートファイル(project-privateあり)
|
|
436
436
|
const templateContent = `# ドキュメント
|
|
437
437
|
|
|
438
438
|
<!-- @einja:managed:start -->
|
|
@@ -443,70 +443,70 @@ describe("MarkerProcessor と SeedSynchronizer の統合テスト", () => {
|
|
|
443
443
|
|
|
444
444
|
---
|
|
445
445
|
|
|
446
|
-
<!-- @einja:
|
|
446
|
+
<!-- @einja:project-private:start id="project-settings" -->
|
|
447
447
|
## プロジェクト固有の設定
|
|
448
448
|
|
|
449
449
|
<!-- ここにプロジェクト固有の内容を追加 -->
|
|
450
|
-
<!-- @einja:
|
|
450
|
+
<!-- @einja:project-private:end -->`;
|
|
451
451
|
// When: managed同期を実行
|
|
452
452
|
const localSections = markerProcessor.parseMarkers(localContent);
|
|
453
453
|
const afterManagedSync = markerProcessor.replaceManaged(localSections, templateContent);
|
|
454
|
-
// When:
|
|
455
|
-
const result =
|
|
454
|
+
// When: project-private同期を実行
|
|
455
|
+
const result = projectPrivateSynchronizer.syncProjectPrivateSections(afterManagedSync, templateContent);
|
|
456
456
|
// Then: ユーザーが追加したセクションは保持される
|
|
457
457
|
expect(result).toContain("## ユーザーが追加したセクション");
|
|
458
458
|
expect(result).toContain("ユーザーの独自コンテンツ");
|
|
459
|
-
// Then: 空の
|
|
460
|
-
expect(result).toContain('<!-- @einja:
|
|
459
|
+
// Then: 空のproject-privateテンプレートが再追加される
|
|
460
|
+
expect(result).toContain('<!-- @einja:project-private:start id="project-settings" -->');
|
|
461
461
|
expect(result).toContain("## プロジェクト固有の設定");
|
|
462
462
|
expect(result).toContain("<!-- ここにプロジェクト固有の内容を追加 -->");
|
|
463
|
-
expect(result).toContain("<!-- @einja:
|
|
463
|
+
expect(result).toContain("<!-- @einja:project-private:end -->");
|
|
464
464
|
});
|
|
465
|
-
it("新しい
|
|
466
|
-
// Given: ローカルファイル(
|
|
465
|
+
it("新しいproject-privateセクションがテンプレートに追加された場合、既存project-privateは保持しつつ新project-privateが追加される", () => {
|
|
466
|
+
// Given: ローカルファイル(pp-1のみ、編集済み)
|
|
467
467
|
const localContent = `# ドキュメント
|
|
468
468
|
|
|
469
469
|
<!-- @einja:managed:start -->
|
|
470
470
|
## 共通ルール
|
|
471
471
|
<!-- @einja:managed:end -->
|
|
472
472
|
|
|
473
|
-
<!-- @einja:
|
|
473
|
+
<!-- @einja:project-private:start id="pp-1" -->
|
|
474
474
|
## 設定1
|
|
475
475
|
|
|
476
476
|
ローカルで編集された設定1
|
|
477
|
-
<!-- @einja:
|
|
478
|
-
// Given: テンプレートファイル(
|
|
477
|
+
<!-- @einja:project-private:end -->`;
|
|
478
|
+
// Given: テンプレートファイル(pp-1とpp-2)
|
|
479
479
|
const templateContent = `# ドキュメント
|
|
480
480
|
|
|
481
481
|
<!-- @einja:managed:start -->
|
|
482
482
|
## 共通ルール(更新)
|
|
483
483
|
<!-- @einja:managed:end -->
|
|
484
484
|
|
|
485
|
-
<!-- @einja:
|
|
485
|
+
<!-- @einja:project-private:start id="pp-1" -->
|
|
486
486
|
## 設定1
|
|
487
487
|
|
|
488
488
|
テンプレートの設定1
|
|
489
|
-
<!-- @einja:
|
|
489
|
+
<!-- @einja:project-private:end -->
|
|
490
490
|
|
|
491
|
-
<!-- @einja:
|
|
491
|
+
<!-- @einja:project-private:start id="pp-2" -->
|
|
492
492
|
## 設定2(新規)
|
|
493
493
|
|
|
494
|
-
新しい
|
|
495
|
-
<!-- @einja:
|
|
494
|
+
新しいproject-privateセクション
|
|
495
|
+
<!-- @einja:project-private:end -->`;
|
|
496
496
|
// When: managed同期を実行
|
|
497
497
|
const localSections = markerProcessor.parseMarkers(localContent);
|
|
498
498
|
const afterManagedSync = markerProcessor.replaceManaged(localSections, templateContent);
|
|
499
|
-
// When:
|
|
500
|
-
const result =
|
|
499
|
+
// When: project-private同期を実行
|
|
500
|
+
const result = projectPrivateSynchronizer.syncProjectPrivateSections(afterManagedSync, templateContent);
|
|
501
501
|
// Then: managedは更新される
|
|
502
502
|
expect(result).toContain("## 共通ルール(更新)");
|
|
503
|
-
// Then: 既存の
|
|
503
|
+
// Then: 既存のpp-1はローカル編集内容が保持される
|
|
504
504
|
expect(result).toContain("ローカルで編集された設定1");
|
|
505
505
|
expect(result).not.toContain("テンプレートの設定1");
|
|
506
|
-
// Then: 新しい
|
|
507
|
-
expect(result).toContain('<!-- @einja:
|
|
506
|
+
// Then: 新しいpp-2は追加される
|
|
507
|
+
expect(result).toContain('<!-- @einja:project-private:start id="pp-2" -->');
|
|
508
508
|
expect(result).toContain("## 設定2(新規)");
|
|
509
|
-
expect(result).toContain("新しい
|
|
509
|
+
expect(result).toContain("新しいproject-privateセクション");
|
|
510
510
|
});
|
|
511
511
|
});
|
|
512
512
|
describe("バリデーションとsync連携", () => {
|
|
@@ -518,18 +518,18 @@ describe("MarkerProcessor と SeedSynchronizer の統合テスト", () => {
|
|
|
518
518
|
共通部分
|
|
519
519
|
<!-- @einja:managed:end -->
|
|
520
520
|
|
|
521
|
-
<!-- @einja:
|
|
521
|
+
<!-- @einja:project-private:start id="custom" -->
|
|
522
522
|
カスタム部分
|
|
523
|
-
<!-- @einja:
|
|
523
|
+
<!-- @einja:project-private:end -->`;
|
|
524
524
|
const templateContent = `# ドキュメント
|
|
525
525
|
|
|
526
526
|
<!-- @einja:managed:start -->
|
|
527
527
|
共通部分(更新)
|
|
528
528
|
<!-- @einja:managed:end -->
|
|
529
529
|
|
|
530
|
-
<!-- @einja:
|
|
530
|
+
<!-- @einja:project-private:start id="custom" -->
|
|
531
531
|
カスタム部分テンプレート
|
|
532
|
-
<!-- @einja:
|
|
532
|
+
<!-- @einja:project-private:end -->`;
|
|
533
533
|
// When: バリデーションを実行
|
|
534
534
|
const localValidation = markerProcessor.validateMarkers(localContent);
|
|
535
535
|
const templateValidation = markerProcessor.validateMarkers(templateContent);
|
|
@@ -539,35 +539,35 @@ describe("MarkerProcessor と SeedSynchronizer の統合テスト", () => {
|
|
|
539
539
|
// When: sync実行
|
|
540
540
|
const localSections = markerProcessor.parseMarkers(localContent);
|
|
541
541
|
const afterManagedSync = markerProcessor.replaceManaged(localSections, templateContent);
|
|
542
|
-
const result =
|
|
542
|
+
const result = projectPrivateSynchronizer.syncProjectPrivateSections(afterManagedSync, templateContent);
|
|
543
543
|
// Then: 正しく同期される
|
|
544
544
|
expect(result).toContain("共通部分(更新)");
|
|
545
545
|
expect(result).toContain("カスタム部分");
|
|
546
546
|
expect(result).not.toContain("カスタム部分テンプレート");
|
|
547
547
|
});
|
|
548
548
|
it("バリデーションエラー時はsyncを実行しない", () => {
|
|
549
|
-
// Given: 不正なマーカー構造のファイル(
|
|
549
|
+
// Given: 不正なマーカー構造のファイル(project-privateにIDなし)
|
|
550
550
|
const invalidContent = `# ドキュメント
|
|
551
551
|
|
|
552
|
-
<!-- @einja:
|
|
552
|
+
<!-- @einja:project-private:start -->
|
|
553
553
|
カスタム部分
|
|
554
|
-
<!-- @einja:
|
|
554
|
+
<!-- @einja:project-private:end -->`;
|
|
555
555
|
// When: バリデーションを実行
|
|
556
556
|
const validation = markerProcessor.validateMarkers(invalidContent);
|
|
557
557
|
// Then: バリデーション失敗
|
|
558
558
|
expect(validation.valid).toBe(false);
|
|
559
|
-
expect(validation.errors.some((e) => e.type === "
|
|
559
|
+
expect(validation.errors.some((e) => e.type === "project_private_without_id")).toBe(true);
|
|
560
560
|
// syncは実行しない(呼び出さない)
|
|
561
561
|
});
|
|
562
562
|
it("ネストエラーの検出", () => {
|
|
563
|
-
// Given: managed内に
|
|
563
|
+
// Given: managed内にproject-privateがネストされている不正な構造
|
|
564
564
|
const invalidContent = `# ドキュメント
|
|
565
565
|
|
|
566
566
|
<!-- @einja:managed:start -->
|
|
567
567
|
共通部分
|
|
568
|
-
<!-- @einja:
|
|
569
|
-
ネストされた
|
|
570
|
-
<!-- @einja:
|
|
568
|
+
<!-- @einja:project-private:start id="nested" -->
|
|
569
|
+
ネストされたproject-private
|
|
570
|
+
<!-- @einja:project-private:end -->
|
|
571
571
|
<!-- @einja:managed:end -->`;
|
|
572
572
|
// When: バリデーションを実行
|
|
573
573
|
const validation = markerProcessor.validateMarkers(invalidContent);
|
|
@@ -584,7 +584,7 @@ describe("MarkerProcessor と SeedSynchronizer の統合テスト", () => {
|
|
|
584
584
|
|
|
585
585
|
共通ルールです。`;
|
|
586
586
|
// When: マーカーなしファイルの同期
|
|
587
|
-
const result =
|
|
587
|
+
const result = projectPrivateSynchronizer.syncUnmarkedFile(localExists, templateContent);
|
|
588
588
|
// Then: テンプレート内容が返される
|
|
589
589
|
expect(result).toBe(templateContent);
|
|
590
590
|
});
|
|
@@ -595,10 +595,196 @@ describe("MarkerProcessor と SeedSynchronizer の統合テスト", () => {
|
|
|
595
595
|
|
|
596
596
|
共通ルールです。`;
|
|
597
597
|
// When: マーカーなしファイルの同期
|
|
598
|
-
const result =
|
|
598
|
+
const result = projectPrivateSynchronizer.syncUnmarkedFile(localExists, templateContent);
|
|
599
599
|
// Then: nullが返される(ローカルをそのまま保持)
|
|
600
600
|
expect(result).toBeNull();
|
|
601
601
|
});
|
|
602
602
|
});
|
|
603
603
|
});
|
|
604
|
+
/**
|
|
605
|
+
* legacy @einja:seed E2Eマイグレーションテスト
|
|
606
|
+
*
|
|
607
|
+
* 旧 @einja:seed マーカーが @einja:project-private に正しくマイグレーションされ、
|
|
608
|
+
* 既存のsyncフロー(parseMarkers → replaceManaged → syncProjectPrivateSections 等)で
|
|
609
|
+
* 期待通りに処理されることを検証する。
|
|
610
|
+
*/
|
|
611
|
+
describe("legacy @einja:seed E2Eマイグレーション", () => {
|
|
612
|
+
const markerProcessor = new MarkerProcessor();
|
|
613
|
+
const projectPrivateSynchronizer = new ProjectPrivateSynchronizer();
|
|
614
|
+
const diffEngine = new DiffEngine();
|
|
615
|
+
/**
|
|
616
|
+
* hasMarkers相当のヘルパー関数
|
|
617
|
+
* ファイル内容にeinja管理マーカーが含まれるか判定する
|
|
618
|
+
*/
|
|
619
|
+
function hasMarkers(content) {
|
|
620
|
+
return (content.includes("@einja:managed:start") ||
|
|
621
|
+
content.includes("@einja:project-private:start") ||
|
|
622
|
+
content.includes("@einja:seed:start"));
|
|
623
|
+
}
|
|
624
|
+
describe("hasMarkers() 相当のテスト", () => {
|
|
625
|
+
it("@einja:seed:start を含む → true", () => {
|
|
626
|
+
const content = `# ドキュメント
|
|
627
|
+
|
|
628
|
+
<!-- @einja:seed:start id="setting" -->
|
|
629
|
+
シード内容
|
|
630
|
+
<!-- @einja:seed:end -->`;
|
|
631
|
+
expect(hasMarkers(content)).toBe(true);
|
|
632
|
+
});
|
|
633
|
+
it("@einja:project-private:start を含む → true", () => {
|
|
634
|
+
const content = `# ドキュメント
|
|
635
|
+
|
|
636
|
+
<!-- @einja:project-private:start id="setting" -->
|
|
637
|
+
PP内容
|
|
638
|
+
<!-- @einja:project-private:end -->`;
|
|
639
|
+
expect(hasMarkers(content)).toBe(true);
|
|
640
|
+
});
|
|
641
|
+
it("@einja:managed:start のみ → true", () => {
|
|
642
|
+
const content = `# ドキュメント
|
|
643
|
+
|
|
644
|
+
<!-- @einja:managed:start -->
|
|
645
|
+
管理部分
|
|
646
|
+
<!-- @einja:managed:end -->`;
|
|
647
|
+
expect(hasMarkers(content)).toBe(true);
|
|
648
|
+
});
|
|
649
|
+
it("マーカーなし → false", () => {
|
|
650
|
+
const content = `# ドキュメント
|
|
651
|
+
|
|
652
|
+
通常のテキストです。マーカーは含まれていません。`;
|
|
653
|
+
expect(hasMarkers(content)).toBe(false);
|
|
654
|
+
});
|
|
655
|
+
});
|
|
656
|
+
describe("E2Eマイグレーションフロー", () => {
|
|
657
|
+
it("legacy seed入力 → マイグレーション → parseMarkers → replaceManaged → 正常出力", () => {
|
|
658
|
+
// Given: ローカルファイル(managed + legacy seed を含むMarkdown)
|
|
659
|
+
const localContent = `# ドキュメント
|
|
660
|
+
|
|
661
|
+
<!-- @einja:managed:start -->
|
|
662
|
+
## 共通ルール
|
|
663
|
+
|
|
664
|
+
旧バージョンの共通ルールです。
|
|
665
|
+
<!-- @einja:managed:end -->
|
|
666
|
+
|
|
667
|
+
<!-- @einja:seed:start id="project-config" -->
|
|
668
|
+
## プロジェクト固有設定
|
|
669
|
+
|
|
670
|
+
ユーザーが編集したプロジェクト設定です。
|
|
671
|
+
<!-- @einja:seed:end -->`;
|
|
672
|
+
// Given: テンプレートファイル(managed + project-private)
|
|
673
|
+
const templateContent = `# ドキュメント
|
|
674
|
+
|
|
675
|
+
<!-- @einja:managed:start -->
|
|
676
|
+
## 共通ルール
|
|
677
|
+
|
|
678
|
+
新バージョンの共通ルールです。
|
|
679
|
+
<!-- @einja:managed:end -->
|
|
680
|
+
|
|
681
|
+
<!-- @einja:project-private:start id="project-config" -->
|
|
682
|
+
## プロジェクト固有設定
|
|
683
|
+
|
|
684
|
+
<!-- デフォルトの設定テンプレート -->
|
|
685
|
+
<!-- @einja:project-private:end -->`;
|
|
686
|
+
// When: legacy seedマーカーをマイグレーション
|
|
687
|
+
const migrated = markerProcessor.migrateLegacySeedMarkers(localContent);
|
|
688
|
+
// When: managed同期を実行
|
|
689
|
+
const localSections = markerProcessor.parseMarkers(migrated);
|
|
690
|
+
const afterManagedSync = markerProcessor.replaceManaged(localSections, templateContent);
|
|
691
|
+
// When: project-private同期を実行
|
|
692
|
+
const result = projectPrivateSynchronizer.syncProjectPrivateSections(afterManagedSync, templateContent);
|
|
693
|
+
// Then: managed部分はテンプレートで置換される
|
|
694
|
+
expect(result).toContain("新バージョンの共通ルールです。");
|
|
695
|
+
expect(result).not.toContain("旧バージョンの共通ルールです。");
|
|
696
|
+
// Then: project-private部分はローカル版(ユーザー編集内容)を保持
|
|
697
|
+
expect(result).toContain("ユーザーが編集したプロジェクト設定です。");
|
|
698
|
+
expect(result).not.toContain("<!-- デフォルトの設定テンプレート -->");
|
|
699
|
+
});
|
|
700
|
+
it("legacy seed + managed混在 → マイグレーション後にmanaged置換 + PP保持", () => {
|
|
701
|
+
// Given: ローカルファイル(managed + legacy seed混在)
|
|
702
|
+
const localContent = `<!-- @einja:managed:start -->
|
|
703
|
+
旧managed
|
|
704
|
+
<!-- @einja:managed:end -->
|
|
705
|
+
|
|
706
|
+
<!-- @einja:seed:start id="pp" -->
|
|
707
|
+
ユーザー内容
|
|
708
|
+
<!-- @einja:seed:end -->`;
|
|
709
|
+
// Given: テンプレートファイル
|
|
710
|
+
const templateContent = `<!-- @einja:managed:start -->
|
|
711
|
+
新managed
|
|
712
|
+
<!-- @einja:managed:end -->
|
|
713
|
+
|
|
714
|
+
<!-- @einja:project-private:start id="pp" -->
|
|
715
|
+
デフォルト
|
|
716
|
+
<!-- @einja:project-private:end -->`;
|
|
717
|
+
// When: migrate → parse → replaceManaged → syncProjectPrivateSections
|
|
718
|
+
const migrated = markerProcessor.migrateLegacySeedMarkers(localContent);
|
|
719
|
+
const localSections = markerProcessor.parseMarkers(migrated);
|
|
720
|
+
const afterManagedSync = markerProcessor.replaceManaged(localSections, templateContent);
|
|
721
|
+
const result = projectPrivateSynchronizer.syncProjectPrivateSections(afterManagedSync, templateContent);
|
|
722
|
+
// Then: managed=新版
|
|
723
|
+
expect(result).toContain("新managed");
|
|
724
|
+
expect(result).not.toContain("旧managed");
|
|
725
|
+
// Then: project-private=ユーザー内容のまま
|
|
726
|
+
expect(result).toContain("ユーザー内容");
|
|
727
|
+
expect(result).not.toContain("デフォルト");
|
|
728
|
+
});
|
|
729
|
+
it("legacy seed(managedなし)→ マイグレーション後に3方向マージ + PP保持", () => {
|
|
730
|
+
// Given: ローカルファイル(本文 + legacy seed)
|
|
731
|
+
const localContent = `# ガイド
|
|
732
|
+
|
|
733
|
+
ローカルで追加した行です。
|
|
734
|
+
|
|
735
|
+
<!-- @einja:seed:start id="notes" -->
|
|
736
|
+
ユーザーのメモ
|
|
737
|
+
<!-- @einja:seed:end -->`;
|
|
738
|
+
// Given: テンプレートファイル(更新された本文 + project-private)
|
|
739
|
+
const templateContent = `# ガイド
|
|
740
|
+
|
|
741
|
+
テンプレートで更新された行です。
|
|
742
|
+
|
|
743
|
+
<!-- @einja:project-private:start id="notes" -->
|
|
744
|
+
デフォルトメモ
|
|
745
|
+
<!-- @einja:project-private:end -->`;
|
|
746
|
+
// Given: ベースファイル(元の本文 + project-private)
|
|
747
|
+
const baseContent = `# ガイド
|
|
748
|
+
|
|
749
|
+
元の行です。
|
|
750
|
+
|
|
751
|
+
<!-- @einja:project-private:start id="notes" -->
|
|
752
|
+
デフォルトメモ
|
|
753
|
+
<!-- @einja:project-private:end -->`;
|
|
754
|
+
// When: legacy seedマーカーをマイグレーション
|
|
755
|
+
const migrated = markerProcessor.migrateLegacySeedMarkers(localContent);
|
|
756
|
+
// When: syncProjectPrivateOnlyFileで3方向マージ + PP保持
|
|
757
|
+
const result = projectPrivateSynchronizer.syncProjectPrivateOnlyFile(migrated, templateContent, baseContent, diffEngine);
|
|
758
|
+
// Then: 本文はテンプレート更新が反映される
|
|
759
|
+
expect(result.content).toContain("テンプレートで更新された行です。");
|
|
760
|
+
// Then: PP部分はローカル版(ユーザーのメモ)が保持される
|
|
761
|
+
expect(result.content).toContain("ユーザーのメモ");
|
|
762
|
+
expect(result.content).not.toContain("デフォルトメモ");
|
|
763
|
+
});
|
|
764
|
+
it("validateMarkers() + migration: legacy seed → マイグレーション → バリデーション通過", () => {
|
|
765
|
+
// Given: legacy seedマーカーを含むファイル
|
|
766
|
+
const legacyContent = `# ドキュメント
|
|
767
|
+
|
|
768
|
+
<!-- @einja:managed:start -->
|
|
769
|
+
共通部分
|
|
770
|
+
<!-- @einja:managed:end -->
|
|
771
|
+
|
|
772
|
+
<!-- @einja:seed:start id="custom" -->
|
|
773
|
+
カスタム部分
|
|
774
|
+
<!-- @einja:seed:end -->`;
|
|
775
|
+
// When: マイグレーションを実行
|
|
776
|
+
const migrated = markerProcessor.migrateLegacySeedMarkers(legacyContent);
|
|
777
|
+
// Then: マイグレーション後のマーカーが正しい形式になっている
|
|
778
|
+
expect(migrated).toContain("@einja:project-private:start");
|
|
779
|
+
expect(migrated).toContain("@einja:project-private:end");
|
|
780
|
+
expect(migrated).not.toContain("@einja:seed:start");
|
|
781
|
+
expect(migrated).not.toContain("@einja:seed:end");
|
|
782
|
+
// When: バリデーションを実行
|
|
783
|
+
const validation = markerProcessor.validateMarkers(migrated);
|
|
784
|
+
// Then: バリデーション通過
|
|
785
|
+
expect(validation.valid).toBe(true);
|
|
786
|
+
expect(validation.errors).toHaveLength(0);
|
|
787
|
+
});
|
|
788
|
+
});
|
|
789
|
+
});
|
|
604
790
|
//# 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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"}
|
|
@@ -7,7 +7,7 @@ export declare class JsonProcessor {
|
|
|
7
7
|
/**
|
|
8
8
|
* JSONをマージする
|
|
9
9
|
* - managed パス: テンプレート値で上書き
|
|
10
|
-
* -
|
|
10
|
+
* - project-private パス: ローカル優先(キーが存在しない場合のみコピー)
|
|
11
11
|
* - その他: ディープマージ(テンプレートの新規キーも追加)
|
|
12
12
|
*
|
|
13
13
|
* @param templateJson - テンプレート版のJSON
|
|
@@ -61,14 +61,14 @@ export declare class JsonProcessor {
|
|
|
61
61
|
*/
|
|
62
62
|
private isPathManaged;
|
|
63
63
|
/**
|
|
64
|
-
* パスが
|
|
64
|
+
* パスがproject-privateかどうか判定
|
|
65
65
|
*
|
|
66
66
|
* @param filePath - ファイルパス
|
|
67
67
|
* @param keyPath - JSONパス
|
|
68
68
|
* @param jsonPaths - JSONパス設定
|
|
69
|
-
* @returns
|
|
69
|
+
* @returns project-privateの場合true
|
|
70
70
|
*/
|
|
71
|
-
private
|
|
71
|
+
private isPathProjectPrivate;
|
|
72
72
|
/**
|
|
73
73
|
* オブジェクトかどうか判定
|
|
74
74
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-processor.d.ts","sourceRoot":"","sources":["../../../src/lib/sync/json-processor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"json-processor.d.ts","sourceRoot":"","sources":["../../../src/lib/sync/json-processor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD;;;GAGG;AACH,qBAAa,aAAa;IACxB;;;;;;;;;;;OAWG;IACH,SAAS,CACP,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EACzC,SAAS,EAAE,eAAe,EAC1B,QAAQ,EAAE,MAAM,GACf,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAU1B;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAiBtB;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAgBtB;;;;;OAKG;IACH,OAAO,CAAC,SAAS;IAkBjB;;;;;;;;;OASG;IACH,OAAO,CAAC,kBAAkB;IAkD1B;;;;;;;OAOG;IACH,OAAO,CAAC,aAAa;IAOrB;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;IAM5B;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;CAGjB"}
|