Skip to content

rm を確認なしにできる範囲を,狭く安全な形で考え直す #248

Open

Description

@furedea-agent

要約

候補の案

案 中身
A. コマンド全体が rm 1 つだけ 前後に何もない (;,&&,|,リダイレクト,代入なし) rm で,対象がすべて信頼できる一時領域の絶対パスを普通の文字だけで書いたもののときだけ許可.再帰削除は今までどおり拒否
B. 確認のまま 何もしない.エージェントには git rm や一時ファイルを残す運用を勧める

これまでに見つかった穴の種類 (A でも塞ぐべきもの)

  • 引用・エスケープ・行継続・ブレース展開・zsh の =name や配列展開による,フックとシェルの読み違い
  • 同じコマンド内の書き込み,リンクの作成,xargs の置き換え,HOME などの書き換え
  • 一時領域のルート自体がリンクになっている場合
  • git の判定 (パターン,フィルタ,assume-unchanged) — A では git の判定を使わない

受け入れ条件

  • 案を決める
  • A にするなら,上の種類ごとに回帰テストがあり,Codex の adversarial review で high が出ない
経緯

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions