Repository navigation
deploy: a key S3 keeps on delete is never counted as removed - #640
Merged
Merged
Conversation
DeleteObjects answers 200 when S3 keeps some keys and names them in Errors (Codex on #639). deleteKeys returns them: a document the build no longer has that S3 kept fails the publish, like a failed PUT; an asset the prune could not delete is a warning, left for the next prune, and the count says what was deleted. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
jthingelstad
marked this pull request as ready for review
October 21, 2026 08:06
jthingelstad
enabled auto-merge (rebase)
October 21, 2026 08:06
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Owner
Author
|
Deployed to production 2026-10-21T08:15:06Z (2026-10-21 03:15:06 CDT).
|
jthingelstad
pushed a commit
that referenced
this pull request
Oct 21, 2026
The order in infra/AGENTS.md and the ship skill left out the first migrations (--create) and the public statistics snapshot, which stops a platform deploy when it fails (Codex on #637). #640 had added its measurements and the delete handling to #639's merged note; they move to a note of their own, since a merged note is history. Co-Authored-By: Claude Opus 5.5 <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A follow-up to #639 that answers its Codex finding and records the measured timings.
The finding (P2). DeleteObjects answers HTTP 200 even when S3 keeps some of the keys, and lists those in
Errors.publish()ignored that response, counted every key as removed and dropped it from the record. The prune did the same.The fix.
deleteKeysinlib/site-publish.mjsreturns the keys S3 kept.services/mcp/test/site-publish.test.mjsadds "a key S3 kept on delete is never counted as removed".Measured. These are the site-lane deploy records before and after #639:
The first deploy after #639 had no publish record yet, so it confirmed about 1,470 matching files with HEAD. From the next deploy on, the record covers them. The note (
docs/notes/2026-10-21-site-publish.md) carries these numbers and the live header read-back.Checks:
npm run verifypasses on Node 24.e2e-neededprinted false.🤖 Generated with Claude Code