Conversation editor never revokes blob URLs of removed attachments
I maintainer di solito rispondono entro 2 giorni
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 25/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Ambito
- frontend
Direzione di ricerca
Start with ChatInputArea.changeAttachments, which already revokes dropped blob URLs, and compare it with useConversationDraft.changeAttachments, which the ConversationEditor piece editor calls without revoking anything. The attachment chip URLs are created in PromptEditor with URL.createObjectURL. Done means removing an attachment in the draft editor calls URL.revokeObjectURL right away. Pull request #3186 is already open against this issue, so review or build on that work rather than starting a parallel fix.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Describe the bug
In the conversation editor, removing an attachment from a media piece never revokes the attachment's blob object URL. The blob: URL and its File payload stay alive until the whole draft is discarded or the editor unmounts.
ChatInputArea.changeAttachments handles the same removal correctly by revoking dropped blob URLs, but the draft editor path (ConversationEditor piece editor calling useConversationDraft.changeAttachments) forwards the new attachment list straight through with no revocation. Attaching and removing a large file repeatedly during one editing session pins every dropped File in memory.
Steps/Code to Reproduce
- Open a conversation in the editor and pick a media piece.
- Attach a file (the attachment chip gets a
blob:URL fromURL.createObjectURLin PromptEditor). - Remove the attachment with the chip's dismiss button.
URL.revokeObjectURLis never called for that URL until the draft is discarded or the editor unmounts.
Repeat 2-3 in one session and the dropped Files accumulate.
Expected Results
Removing an attachment in the editor revokes its blob object URL immediately, the same way the chat composer does.
Actual Results
The URL stays valid and the File payload stays pinned until the draft is discarded or unmounted.
Screenshots
N/A
Versions
OS: macOS
Browser: Chrome
Python version: 3.14
PyRIT version: installed from main (66c41fa)
- Lingua principale
- Python
- Stelle
- 4.6k
- Fork
- 944
- Merge medio
- 2g 16h
- PR unite (30g)
- 350
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di microsoft/PyRIT
-
BUG: SQLInjectionOutputScorer misses standard inline comment bypasses ('-- and ' OR 1=1--)Forse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
microsoft/PyRIT#3204 · 1 commento ·
I maintainer di solito rispondono entro 2 giorni
-
BUG: label queries only return the final conversation of an attackForse già presa @u7k4rs6 l’ha presa 1 giorno fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
microsoft/PyRIT#3095 · 4 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 2 giorni
-
BUG Configuration keeps runtime-status errors after polling recoversForse già presa @joeyvictorino l’ha presa 5 giorni fa. ApertaBug: triage GUI help wanted
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
microsoft/PyRIT#2868 · 4 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 2 giorni
-
BUG: HTTPTarget sends conflicting Content-Length and Transfer-Encoding headersForse già presa @Kaap10 l’ha presa 9 giorni fa. ApertaBug: triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 35/100
microsoft/PyRIT#3202 · 1 commento ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 3/5 Mezza giornata Idoneità per principianti 25/100
I maintainer di solito rispondono entro 2 giorni
Tutte le issue di microsoft/PyRIT
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
aws-samples/sample-per-model-bedrock#243 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
FuRongJun-1999/dsh-memory#404 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
bug frontend
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
PennyLaneAI/catalyst#3337 ·
I maintainer di solito rispondono entro 1 giorno
-
Workflow.schedule stops when a cron deadline passes before sleepForse già presa @HuaTNA l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno