Review of PR #3200 found that scripts/run-claude-observation-benchmark.sh publishes its validated result and evidence index with two separate moves. If the second move fails, or an interrupt arrives after the result move, the new result remains unindexed. A subsequent run refuses the existing result path and the evidence directory validator rejects the orphan.
Review comment: #3200 (comment)
Fix failure/interruption cleanup for only the newly published result. Preserve the authoritative existing index and historical artifacts, create no rollback copies, and avoid deleting the result if the index was successfully published immediately before interruption. Verify failed index publication and interruption around both moves, plus successful publication/retry behavior.
Filed before the follow-up edit.
Resolution: Merged via #3141. Publication cleanup consults the authoritative index and removes only an unpublished new result. Seven behavioral tests cover failed index moves, retries, both interrupt boundaries, prior results and malformed/unreadable indexes.
Review of PR #3200 found that
scripts/run-claude-observation-benchmark.shpublishes its validated result and evidence index with two separate moves. If the second move fails, or an interrupt arrives after the result move, the new result remains unindexed. A subsequent run refuses the existing result path and the evidence directory validator rejects the orphan.Review comment: #3200 (comment)
Fix failure/interruption cleanup for only the newly published result. Preserve the authoritative existing index and historical artifacts, create no rollback copies, and avoid deleting the result if the index was successfully published immediately before interruption. Verify failed index publication and interruption around both moves, plus successful publication/retry behavior.
Filed before the follow-up edit.
Resolution: Merged via #3141. Publication cleanup consults the authoritative index and removes only an unpublished new result. Seven behavioral tests cover failed index moves, retries, both interrupt boundaries, prior results and malformed/unreadable indexes.