Skip to content

fix: improve detailed delete outcome classification - #1557

Merged
ferhatelmas merged 2 commits into
masterfrom
ferhat/lifecycle-1
Oct 20, 2026
Merged

ferhatelmas merged 2 commits into
masterfrom
ferhat/lifecycle-1

Conversation

@ferhatelmas

Copy link
Copy Markdown
Member

What kind of change does this PR introduce?

Bug fix

What is the current behavior?

Detailed deletion returns per-key outcomes without cancellation.
S3 marks every per-key error as FAILED and request failures as UNKNOWN and file errors are always UNKNOWN.
An XML-invalid key can fail an entire S3 batch.

What is the new behavior?

Both backends support cancellation and distinguish definite failures from uncertain outcomes. S3 keeps retry/timeout ambiguity as UNKNOWN, treats NoSuchKey as success and sends XML-invalid keys individually.
File deletion treats overlong paths as absent and stops starting work after cancellation while preserving completed results.

Additional context

Related to #1380

Copilot AI balanced review requested due to automatic review settings October 19, 2026 17:58
@ferhatelmas
ferhatelmas requested a review from a team as a code owner October 19, 2026 17:58

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nothing blocking. The comments below are optional suggestions. There is no need to push a fix for them before merging.

Comment thread src/storage/backend/file.ts Resolved
@coveralls

coveralls commented Oct 19, 2026 •

Copy link
Copy Markdown

Coverage Report for CI Build 39396875695

Coverage increased (+0.04%) to 85.804%

Details

  • Coverage increased (+0.04%) from the base build.
  • Patch coverage: 37 of 37 lines across 2 files are fully covered (100%).
  • No coverage regressions found.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

No coverage regressions found.


Coverage Stats

Coverage Status
Relevant Lines: 15111
Covered Lines: 13392
Line Coverage: 88.62%
Relevant Branches: 9536
Covered Branches: 7756
Branch Coverage: 81.33%
Branches in Coverage %: Yes
Coverage Strength: 869.05 hits per line

💛 - Coveralls

Signed-off-by: Ferhat Elmas <elmas.ferhat@gmail.com>
Signed-off-by: Ferhat Elmas <elmas.ferhat@gmail.com>
@ferhatelmas
ferhatelmas enabled auto-merge (squash) October 20, 2026 08:58
@ferhatelmas
ferhatelmas merged commit a302235 into master Oct 20, 2026
32 of 33 checks passed
@ferhatelmas
ferhatelmas deleted the ferhat/lifecycle-1 branch October 20, 2026 09:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants