- docker.ts/browser.ts: log.warn when user binds are skipped due to
protected skill mount conflicts, so maintainers can see the decision
- e2e-sandbox-bind-conflict.mjs: replace execSync shell-string with
spawnSync argv-based sudo docker calls
- demo-sandbox-bind-filter.mjs: removed (stale, referenced non-existent
filterReadOnlyWorkspaceSkillMountsByBinds; e2e script covers proof)
Co-Authored-By: Claude <noreply@anthropic.com>
- skip read-only skill mounts when user binds target the same container path
- normalize trailing slashes in fs-bridge container path comparisons
- add workspace-mounts filter and tests
- add e2e Docker verification and demo scripts for bind-conflict
Co-Authored-By: Claude <noreply@anthropic.com>