MaixVision 删除 PC 文件夹无确认、不进回收站、无撤销,导致大量数据永久丢失

Aperta
#220 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
25/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
electron, python
Ambito
desktop, security

Direzione di ricerca

Start by locating MaixVision’s file panel deletion handler and tracing how it distinguishes PC paths from device paths; the report identifies recursive rmdir as the behavior to investigate. Review the project’s deletion tests or add coverage for confirmation, trash handling, project-root limits, and batch deletion. Done means PC deletions are recoverable and scoped to the project, with clear confirmation and undo behavior.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

环境

  • Windows 11 Home China (10.0.26200)
  • MaixVision 1.2.3(D:\maixVision)
  • C: 为 BitLocker 加密的 NVMe SSD

问题

MaixVision 文件面板删除电脑本地文件夹时直接 rmdir 递归永久删除:

  • 没有确认对话框
  • 不进 Windows 回收站
  • 没有撤销
  • UI 未区分“设备文件系统”和“电脑文件系统”

证据

%APPDATA%\maixvision\logs\main.log:
[2026-11-04 00:37:13.666] [error] (main) [delete file]: Error: EBUSY: resource busy or locked, rmdir 'C:\Users<user>\Desktop\SmartCar'
Windows USN 日志同一时刻有 1,600+ 条 FILE_DELETE,回收站无对应条目。

影响

桌面真实资料被永久删除;Windows 11 + SSD TRIM + BitLocker 导致无法恢复。

期望

  1. 删除前二次确认;
  2. 删除电脑文件走系统回收站(Electron shell.trashItem / fs.trashItem);
  3. 支持撤销;
  4. UI 明确区分 PC 文件系统与设备文件系统;
  5. 限制只能删除当前项目根目录内的文件;
  6. 批量删除显示待删清单和数量。
Lingua principale
Python
Stelle
872
Fork
129
Merge medio
2h 5m
PR unite (30g)
1

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di sipeed/MaixPy

Tutte le issue di sipeed/MaixPy

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.