Skip to content

Phase 2: Git-aware Update(差分更新機能)#34

Merged
Kewton merged 11 commits into
mainfrom
develop
Mar 20, 2026
Merged

Phase 2: Git-aware Update(差分更新機能)#34
Kewton merged 11 commits into
mainfrom
develop

Conversation

@Kewton
Copy link
Copy Markdown
Owner

@Kewton Kewton commented Mar 20, 2026

Summary

  • Phase 2の全機能を実装し、UAT全パスを確認した統合リリース
  • manifest比較による差分検知エンジン
  • tantivy インデックスのドキュメント単位差分更新
  • update コマンド実装(インクリメンタル更新)
  • Phase 2 E2E統合テスト(7シナリオ)
  • updateコマンドのインデックス未作成時エラー修正

含まれるIssue/PR

品質チェック

  • cargo build: Pass
  • cargo clippy --all-targets -- -D warnings: Pass (0 warnings)
  • cargo test --all: Pass
  • cargo fmt --all -- --check: Pass

UAT結果

Test plan

  • 全Issue UAT合格済み
  • 統合ビルド・テスト全パス
  • mainブランチでの最終確認

🤖 Generated with Claude Code

Kewton and others added 11 commits March 20, 2026 12:47
- DiffResult構造体(added/modified/deleted/unchanged)
- detect_changes関数(manifest vs ファイルシステム比較)
- .cmindexignore対応、拡張子フィルタ(.md)
- Manifest::load_or_default追加
- 13テスト追加(追加/変更/削除/未変更/混合/ラウンドトリップ等)

Closes #25

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
feat: 差分検知エンジン実装
- incremental_update関数(diff→tantivy差分更新→manifest更新)
- delete_by_path(pathフィールドのterm削除)
- Manifest::remove_by_path, replace_entry追加
- UpdateSummary構造体(追加/変更/削除/未変更の件数・セクション数)
- CLIのupdateコマンドスタブからincremental_update呼び出し
- 統合テスト追加(tests/incremental_update.rs)
- 170テスト全パス

Closes #26

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
feat: tantivy インデックス差分更新実装
- state更新時のsaturating_subでアンダーフロー防止+警告ログ
- compute_dir_sizeにfollow_links(false)追加
- 変更なし時のメッセージ改善
- updateコマンドのE2Eテスト拡充(8テスト)

Closes #27

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- ファイル追加後のupdate→search検証
- ファイル変更後のupdate→search検証
- ファイル削除後のupdate→search検証
- 変更なし時のupdateメッセージ検証
- インデックス未作成時のupdate→index自動フォールバック
- update後のstatus件数検証
- .cmindexignore動的追加後のupdate検証
- 共有ヘルパー関数追加(run_index, run_update, run_search, run_status_json, parse_jsonl, run_search_jsonl)

Closes #28

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
test: Phase 2 E2E統合テスト追加
- フォールバック(自動フルインデックス)を廃止
- IndexNotFound / SchemaVersionMismatch / IndexCorrupted エラーバリアント追加
- インデックス未作成時: "No index found. Run `commandindex index`..." (exit 1)
- スキーマ不一致時: "Index schema version mismatch..." (exit 1)
- インデックス破損時: "Failed to read index state..." (exit 1)
- 関連テスト3件をエラー終了期待に修正

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@Kewton Kewton merged commit d200899 into main Mar 20, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant