Open shimajima-eiji opened 4 months ago
問題点1は素直に、キャッシュファイルを対象にLLM呼び出しをしようとするとブロックされる、で暫定対応。ただし、TextDocumentContentProvider を使ってLLM応答結果を実ファイルではなく疑似ファイルとして扱うのが正しそう。バックアップ設定をした場合に限りそのタイミングで実ファイルに書き出す、とか。
問題点2は、ファイルに対する変更である vscode.workspace.fs.writeFile ではなく今開いているVSCodeエディタ画面に対する操作である vscode.TextEditor.edit (またはWorkspaceEdit) を使うことが考えられる。dutryでも編集結果が反映される。 後者を使うとdiffタブとは別にLLM応答ファイルがエディタウィンドウで開かれてしまう。あまりに誤操作のもとになる。
問題点1を先に考察し、その結果を元に2の実現方法を考えるのが良いか。
運用側で対処してほしい問題ではありますが「誤ってtempファイル側を操作していた」という事は考えられるため、何かしらの対応またはアナウンスが必要かもしれません。
現象・再現手順
Simple-Text-Refineを使っていくうちに、
.vscode/(翻訳元ファイル名)
を直接編集していることに気づかず、見た目に動いていないような挙動になってしまっているという現象がありました操作としては、 以下を実施しています