Skip to content

Regression: #5924/#5927 namespace-member fixtures fail again as of 4500b5de4 (main) #5986

Description

@proggeramlug

Found while re-verifying PR #5923's fixtures on latest main before landing a follow-up fix (#5985).

Repro

test-files/test_issue_5924_namespace_reexport_origin_name_collision.ts and test-files/test_issue_5927_order_a.ts / test_issue_5927_order_b.ts (already in the repo from PR #5923, merged as 18b90ead4) now MISMATCH against Node on current main:

=== test_issue_5924_namespace_reexport_origin_name_collision.ts: MISMATCH ===
--- node ---
NsA-Service
NsB-Service
--- perry ---
[Function: a]
[Function: Service]
=== test_issue_5927_order_a.ts: MISMATCH ===
--- node ---
plain-omit
namespace-omit
--- perry ---
plain-omit
[Function: omit]

Both were passing (verified MATCH) as of 18b90ead4 (PR #5923's merge commit). They fail identically on main as of 4500b5de4, confirmed on a clean checkout with no other changes — this is not caused by anything in my own in-flight work (PR #5985), which I isolated by testing its parent commit standalone.

Regression window

git log --oneline 18b90ead4..4500b5de4 -- crates/ (9 commits touching codegen/HIR/compile). Two stand out as the most likely cause, though I haven't bisected precisely:

The output shape ([Function: a] / [Function: Service] / [Function: omit] instead of the resolved string/dispatched-call results) suggests something is now returning an unresolved/wrong function reference instead of correctly dispatching through the namespace-member resolution path — consistent with a regression in the same namespace_member_prefixes/namespace_member_origin_names area #5922/#5924/#5927 fixed, or in whatever 645e5f183 changed for "scope-local class renames."

Impact

This currently blocks a clean re-verification of PR #5923's fixtures on top-of-main and would silently reintroduce #5924/#5927's exact symptom for any real program hitting that shape (e.g. sst/opencode's provider.ts, the original repro source for both issues).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions