Automattic / Automattic/wp-codebox
Prevent checkpoint snapshots from recursively capturing artifact directories
- Lingua principale
- TypeScript
- Stelle
- 16
- Fork
- 4
- Merge medio
- 59m
- PR unite (30g)
- 131
Descrizione
## Problem
A recipe runtime whose `artifactsDirectory` is inside the working tree creates checkpoint snapshot artifacts under that directory. Restoring those checkpoints materializes the configured artifact tree into the runtime snapshot payload; later artifact collection emits a nested `artifacts/...` tree containing sibling runs, manifests, request-worker files, and snapshots. Parent bundle verification then reports those files as orphaned.
## Evidence
Confirmed while completing #2017 with one immutable checkpoint baseline per campaign. The final finding bundle's manifest correctly lists all six adversarial nested bundles, but `artifacts verify --bundle ` reports the recursively captured `artifacts/wordpress-adversarial-vulnerable/...` tree and checkpoint snapshots as orphaned. The standalone artifact verifier smoke passes.
## Expected
Checkpoint snapshot capture/restore must exclude host artifact storage by construction. Do not solve this with post-hoc deletion; preserve snapshot restore semantics and manifest integrity.
Refs #2017
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Inizia tracciando l’acquisizione e il ripristino degli snapshot del checkpoint quando artifactsDirectory si trova all’interno dell’albero di lavoro, quindi segui il modo in cui la raccolta degli artefatti crea il bundle finale. Riproduci lo scenario dell’issue ed esegui `artifacts verify --bundle `; il lavoro è completato quando l’archiviazione degli artefatti dell’host viene esclusa senza eliminazione post-hoc, mentre la semantica del ripristino degli snapshot e l’integrità del manifest rimangono intatte.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- typescript
- Ambito
- backend, devtools
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 55/100