Skip to content

Conversation

@ANtutov
Copy link

@ANtutov ANtutov commented Nov 22, 2025

The error handling in share/availability/full/availability.go used a disjunction combined with a conjunction without explicit parentheses, relying on Go’s operator precedence where && binds tighter than ||. As a result, shwap.ErrNotFound was always mapped to share.ErrNotAvailable even when the same error chain also contained a *byzantine.ErrByzantine via errors.Join, which could mask Byzantine faults as mere unavailability. This change groups the NotFound and DeadlineExceeded checks together and only maps to ErrNotAvailable if neither condition is accompanied by a Byzantine error. The intended behavior aligns with tests expecting NotFound and DeadlineExceeded to map to ErrNotAvailable while propagating Byzantine errors distinctly.

@github-actions github-actions bot added the external Issues created by non node team members label Nov 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

external Issues created by non node team members

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant