Skip to content

Fix enum comparisons with legacy Node type resolution - #97

Open
sophiehouser wants to merge 1 commit into
devfrom
fix/legacy-enum-type-resolution
Open

sophiehouser wants to merge 1 commit into
devfrom
fix/legacy-enum-type-resolution

Conversation

@sophiehouser

Copy link
Copy Markdown
Contributor

The SDK's legacy Node type resolution loads client responses from CommonJS declarations but public enums from ESM declarations. Direct status comparisons then trigger no-unsafe-enum-comparison. Point the legacy /types mapping at the same CommonJS declarations; runtime exports and modern resolution mappings stay unchanged.

Regression coverage compiles a consumer using the public package entry points under Node, Node16, NodeNext, and Bundler resolution, including ESM and CommonJS variants. It verifies that response statuses and imported enums share the same compiler symbol, since typechecking alone accepts the duplicate declarations.

Validation: typecheck, test-file ESLint, and all eight enum tests pass. A separate consumer lint check reproduces the comparison error with the old mapping and passes with the fix. No API calls or credentials are needed.

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