#1 made a shared proxy's accumulated export shape durable via a <emitted-path>.shape.json sidecar, seeded into ctx.proxies on the first touch of that proxy id in a run.
A cache produced by an earlier release has no sidecars. On the first build against such a cache there is nothing to seed from, so the accumulator starts empty and each proxy is rewritten with only the shapes of the importers that run happens to walk — the pre-#1 narrowing behaviour, exactly once. From the second build onward the sidecars exist and the behaviour is correct.
Same applies to a sidecar that was deleted or corrupted by hand.
This is a migration wrinkle rather than a regression, but it is silent: the symptom is a SyntaxError: does not provide an export named 'x' at load, from a build that reported success. Worth either detecting a sidecar-less proxy artifact and forcing a full walk, or documenting "clear the cache once when upgrading past this version".
🤖 Filed with Claude Code
#1 made a shared proxy's accumulated export shape durable via a
<emitted-path>.shape.jsonsidecar, seeded intoctx.proxieson the first touch of that proxy id in a run.A cache produced by an earlier release has no sidecars. On the first build against such a cache there is nothing to seed from, so the accumulator starts empty and each proxy is rewritten with only the shapes of the importers that run happens to walk — the pre-#1 narrowing behaviour, exactly once. From the second build onward the sidecars exist and the behaviour is correct.
Same applies to a sidecar that was deleted or corrupted by hand.
This is a migration wrinkle rather than a regression, but it is silent: the symptom is a
SyntaxError: does not provide an export named 'x'at load, from a build that reported success. Worth either detecting a sidecar-less proxy artifact and forcing a full walk, or documenting "clear the cache once when upgrading past this version".🤖 Filed with Claude Code