feat: pre-compact-commit を opt-in 化し stash スナップショット方式に書換(#110、v0.60.0)#125
Merged
Conversation
- standard/full の既定を false に変更(全プロファイル opt-in。保存済み config の明示的有効化は維持) - git add -A + commit を廃止し git stash create/store へ(履歴汚染・untracked 巻き込みを解消) - stash create の異常出力を弾く hex プレフィックスガード付き - 表示名を Pre-compact Snapshot に変更、README/docs/i18n/テストを追随 Closes #110
There was a problem hiding this comment.
Pull request overview
PreCompact 時に git add -A && git commit を作っていた pre-compact-commit を、全プロファイル既定 OFF の opt-in に変更し、ブランチ履歴を汚さない git stash create/store ベースの「snapshot」方式へ置き換える PR です(#110 / v0.60.0)。現行 Claude Code の native checkpoint/rewind 前提では、既定有効の副作用(untracked 巻き込み・履歴汚染)が勝つため、それを解消する方向の変更になっています。
Changes:
- standard/full の
ENABLE_PRE_COMPACT_COMMITをfalseに変更し、feature 側の profile default も全てfalseに統一(opt-in 化) - PreCompact 実装を
git stash create+git stash store -m 'pre-compact snapshot'に置換し、コミット作成とgit add -Aを撤廃 - 表示名/ドキュメント/i18n/ユニットテスト・フィクスチャを新仕様(snapshot)に追随
Reviewed changes
Copilot reviewed 14 out of 14 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| wizard/registry.sh | フック選択 UI の表示名を「Pre-compact Snapshot」に更新 |
| tests/unit/test-runtime-hooks.sh | PreCompact コマンドが stash create/store 方式であることを静的に検証するテストへ更新 |
| tests/unit/test-hook-fixtures.sh | 実行フィクスチャを stash スナップショット挙動(stash 生成・履歴不変・worktree 不変)に合わせて更新 |
| README.md | 日本語 README の機能説明を snapshot(opt-in)前提に書き換え |
| README.en.md | 英語 README の hooks 説明を snapshot(opt-in)前提に更新 |
| profiles/standard.conf | standard の既定を ENABLE_PRE_COMPACT_COMMIT=false に変更 |
| profiles/full.conf | full の既定を ENABLE_PRE_COMPACT_COMMIT=false に変更 |
| i18n/ja/strings.sh | 日本語のフック説明文言を snapshot に更新 |
| i18n/en/strings.sh | 英語のフック説明文言を snapshot に更新 |
| features/pre-compact-commit/hooks.json | PreCompact 実装を stash create/store に置換(コミット作成を廃止) |
| features/pre-compact-commit/feature.json | displayName/description と profiles default を opt-in(全 profile false)に更新 |
| docs/wizard-config-mapping.md | 日本語の config マッピング説明を snapshot/opt-in 前提に更新 |
| docs/wizard-config-mapping.en.md | 英語の config マッピング説明を snapshot/opt-in 前提に更新 |
| CHANGELOG.md | v0.60.0 の変更点として opt-in 化 + stash 方式への移行を追記 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
概要
LLM 性能監査計画 #121 の P1-04(#110)。PreCompact での
git add -A自動コミットを、全プロファイル opt-in の stash スナップショットに置き換える。変更内容
ENABLE_PRE_COMPACT_COMMITを false に(minimal は元から false)。現行 Claude Code はネイティブ checkpoint / rewind を備え、compaction でファイルは失われないため、既定有効の利益よりgit add -Aの害(untracked 機微ファイル巻き込み・checkpoint コミットの履歴汚染・squash 時の混入)が上回るgit stash create+git stash store -m 'pre-compact snapshot'。ブランチ履歴にコミットを作らず、作業ツリー・ステージ・untracked に一切触れない。復元はgit stash apply。rebase コンフリクト中などに stash create が異常出力を返すケースに備えた hex プレフィックスガード付き検証
Closes #110