Skip to content

refactor: libの不要な失敗ガードと重複検証を整理する - #99

Merged
milkeclair merged 5 commits into
mainfrom
refactor/core-guards
Nov 15, 2026
Merged

milkeclair merged 5 commits into
mainfrom
refactor/core-guards

Conversation

@milkeclair

@milkeclair milkeclair commented Nov 15, 2026 •

Copy link
Copy Markdown
Owner

やったこと

  • Refs 防御的すぎる|| return 1をやめたい #96
  • z.update配下のz.arg.named直後にある、到達しない失敗分岐を削除します。未指定値でも成功して空のREPLYを返す契約は直接テストします。
  • 整数・truthy/falsy判定の重複検査を整理し、更新用コピーのファイル別事前検査をcpの失敗判定へまとめます。
  • 常に成功する補完job取消への失敗ガードと、tarと重複するアーカイブ存在確認を削除します。取消処理のテストも、実際の関数契約に合わせて修正します。
  • コピー元・出力先、上書き防止、切替と復旧に必要なチェックは操作の境界で維持し、AGENTS.mdに判断基準を記載します。

やらないこと

  • named && localを含む既存の宣言書式・getterの代入書式を維持します。
  • mod側の整理は #100 です。両PRは独立してmainへ適用できます。

動作確認

  • WSLのworktreeでZ_ROOTを設定し、testディレクトリからz.t -c lib/arg lib/common/is lib/int/is lib/updateを実行。221件成功。追加整理後のz.t -c lib/updateも76件成功。
  • 変更したZshファイルのzsh -nとgit diff --checkを確認。
  • 書式を復元した最終コミットに対して、CIのZsh全1,100件とrelease・lockfile検査が成功。
  • 画面を持たないライブラリの変更のため、実行画面の画像は添付していません。

その他

  • コピー途中の失敗では準備領域に途中結果が残る場合があります。z.updateはコピー失敗で切替を止め、always節で作業領域を除去します。
  • 述語の不一致・循環依存・読み取り失敗・置換の復旧など、後続の判断に必要な終了ステータスは維持しています。

@milkeclair milkeclair changed the title refactor: libの過剰な成功判定と重複検証を整理する refactor: libの不要な失敗ガードと重複検証を整理する Nov 15, 2026
@milkeclair
milkeclair marked this pull request as ready for review November 15, 2026 04:50
@milkeclair
milkeclair merged commit de79c11 into main Nov 15, 2026
3 checks passed
@milkeclair
milkeclair deleted the refactor/core-guards branch November 15, 2026 04:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant