# Source audit: browser

Decision: copy-after-audit. The current browser extension is a disabled fail-closed contract for OMP `BrowserTool`; the previous local mock driver has been removed so `miloc-pi` does not present synthetic browser behavior as product-ready.

OMP source evidence:
- `/tmp/oh-my-pi-review/packages/coding-agent/src/tools/browser.ts`
- `/tmp/oh-my-pi-review/packages/coding-agent/src/prompts/tools/browser.md`
- `/tmp/oh-my-pi-review/packages/coding-agent/src/tools/browser/tab-supervisor.ts`
- `/tmp/oh-my-pi-review/packages/coding-agent/src/tools/browser/tab-worker.ts`
- `/tmp/oh-my-pi-review/packages/coding-agent/src/tools/browser/registry.ts`
- `/tmp/oh-my-pi-review/packages/coding-agent/src/tools/browser/launch.ts`
- `/tmp/oh-my-pi-review/packages/coding-agent/src/tools/browser/attach.ts`
- `/tmp/oh-my-pi-review/packages/coding-agent/src/tools/browser/render.ts`
- `/tmp/oh-my-pi-review/docs/tools/browser.md`
- `/tmp/oh-my-pi-review/LICENSE`

License note: OMP checkout is MIT-licensed. No OMP implementation code was copied into the local fail-closed browser slice; the listed files are source evidence for the future port.

Aligned contract:
- Tool name remains `browser`.
- Accepted action names are OMP-style `open`, `close`, and `run`.
- Local calls fail closed with `isError=true` until the real OMP backend is ported.
- `/browser` command reports disabled status only; it does not start a mock browser.

Known gaps:
- No Puppeteer/CDP backend is ported yet.
- No tab registry, worker runtime, JS execution, screenshot persistence, abort/timeout handling, or browser cleanup exists locally.
- Runtime Pi proof is required before default enable.
