ab935e992c
Address review of the in-place loader: the directory-subtree filter had two regressions vs the old mirror. - It only rewrote files under the entry's package root, so a `dist/` entry importing `../../shared/helper.ts` (or a symlink-escaping sibling) left that module's legacy `@(scope)/pi-*` / `@sinclair/typebox` imports un-rewritten. - `findExtensionRoot` walked up to the nearest package.json, which for an ad-hoc extension under a project (e.g. `/repo/.omp/extensions/foo.ts`) resolved to the project root — so the permanent onLoad hook would then rewrite unrelated project/host source imported later. Replace the directory filter with a precise scope: pre-walk the entry's relative-import graph (static + dynamic `./`/`../` specifiers), collect each module's realpath, and build the onLoad filter as an exact-path alternation of just those modules. This matches exactly the set the old mirror tracked (minus the copy): it covers `../src`/symlinked siblings and never touches the host, other extensions, node_modules deps, or unrelated project files. Adds a regression test that a non-imported sibling stays outside the rewrite scope, and renames the ../src test to reflect graph-following.