Skip to content

fix(error): define stable classification contract - #158

Merged
0x676e67 merged 2 commits into
demo/stable-error-hierarchy-111from
demo/stabilize-error-contract-111
Aug 5, 2026
Merged

fix(error): define stable classification contract#158
0x676e67 merged 2 commits into
demo/stable-error-hierarchy-111from
demo/stabilize-error-contract-111

Conversation

@0x676e67

@0x676e67 0x676e67 commented Aug 3, 2026

Copy link
Copy Markdown
Collaborator

Ruby exception selection now uses binding-owned priority lists instead of the mapping macro's declaration order. Request details keep the published reset, timeout, proxy connect, connect, and request fallback order, while every matching predicate remains available.

The contract also reserves diagnostic-only predicates. This lets upstream's new is_dns() become dns? later without changing existing DNS failures from ConnectError to another exception class. Local TLS, proxy, and timeout tests verify the upstream facts without using external services.

@0x676e67
0x676e67 merged commit fc6c254 into demo/stable-error-hierarchy-111 Aug 5, 2026
10 checks passed
@0x676e67
0x676e67 deleted the demo/stabilize-error-contract-111 branch August 5, 2026 03:14
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.

1 participant