# @psyche/browser-automation

Legacy Playwright state machine for the existing Teams and Webex adapters.

This package is not an Eve browser driver. ADR-0077 freezes its production
consumer set while those conferencing adapters migrate. New production
consumers, direct Eve use, and feature expansion are rejected. Eve browser
driving belongs to the real Playwright tools in `@oshun/assistant`.

## At a glance

- **Path:** `libs/psyche/browser-automation`
- **Domain:** psyche (active)
- **Owner:** @GreyChimp
- **Docs:** [deep-dive](/docs/domains/psyche/deep-dive) ·
  [systems one-pager](/docs/systems/lib-psyche.md)
- **Nx project:** `psyche-browser-automation`

## Ownership boundary

- Existing consumers: `@psyche/teams-integration` and
  `@psyche/webex-integration` only.
- New consumers: prohibited by the task-6.1 static ownership gate.
- Browser engine, page, DOM, navigation, cookie/storage, and network ownership
  for Eve: `@oshun/assistant`.
- Native desktop fallback: `@psyche/computer-use-core`, which must refuse a
  recognized browser window and hand it to the Playwright owner.

See
[ADR-0077](../../../docs/adr/ADR-0077-eve-browser-and-native-computer-use-ownership.md).

Network-response doubles are intentionally absent from the production root.
Tests that need `MockServer` or `createMockServer` must import them from
`@psyche/browser-automation/testing`; production code may not consume that
subpath.

## Commands

```bash
pnpm nx test psyche-browser-automation
pnpm nx lint psyche-browser-automation
```

<!-- Generated starting point (audit F-3): owners, replace this note with usage examples and API notes. -->
