You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
core: fold the rest of extension resolution (TOML read, bare-name gating, spec build) into Rust #1111
The core exposes a resolution plan over argv plus config contents; each launcher answers "where is package X installed on this host" and hands the answer back; the core builds the path::entrypoint specs and the --extension flags.
Why it was split off
Crosses three TOML parsers (tomllib / smol-toml / the toml crate) whose error surfaces differ, and the SDK constructor's config= path also reaches this code, so which errors come from the launcher versus the core must stay identical.
The is_bare_name suffix lists differ (.pyd vs .node), so it is not pure duplication.
I will implement only Slice A in the first PR, with its own sub-issue and Fixes #<slice-issue> link. The later slices will be stacked or based on the landed core contract as appropriate.
All four slices are merged: #1119 (core plan contract), #1120 (Python), #1121 (TypeScript), #1122 (programmatic path + parity cleanup). Extension resolution now plans once in dirsql::extension_resolution; each host keeps only its package lookup.
Activity
thekevinscott commentedon Sep 17, 2026
Proposed M-or-smaller slice plan:
I will implement only Slice A in the first PR, with its own sub-issue and
Fixes #<slice-issue>link. The later slices will be stacked or based on the landed core contract as appropriate.thekevinbot commentedon Sep 18, 2026
All four slices are merged: #1119 (core plan contract), #1120 (Python), #1121 (TypeScript), #1122 (programmatic path + parity cleanup). Extension resolution now plans once in
dirsql::extension_resolution; each host keeps only its package lookup.