# SeleniumBase - Doramagic AI Context Pack

> Purpose: pre-work context for the user's host AI. This pack does not prove that the project has been installed, run, or validated.

## Project

- canonical_name: `seleniumbase/SeleniumBase`
- capability: SeleniumBase is a framework for UI Testing, Web Scraping, and Stealth. Passes every bot-detection test with CDP Mode, and extends Playwright.
- expected_user_outcome: SeleniumBase is a framework for UI Testing, Web Scraping, and Stealth. Passes every bot-detection test with CDP Mode, and extends Playwright.

## Operating Boundaries

- Do not claim that the project has been installed, run, called through an API, or used on local files unless separate evidence proves it.
- Project facts must come from repo evidence, Claim Graph, or explicit source references.
- When a capability is not verified, mark it as unverified instead of completing it as fact.
- publish_status: `publishable`
- blocking_gaps: none

---

## Doramagic Context Augmentation

The following sections strengthen the repository context for a host AI. Human Manual data is a reading route, and pitfall notes become operating constraints.

## Human Manual Outline

Usage rule: this is only a reading route and salience signal, not factual authority. Concrete claims must still return to repo evidence or Claim Graph.

Host AI hard rules:
- Do not treat page titles, section order, summaries, or importance values as factual project evidence.
- When explaining the Human Manual outline, state that it is only a reading route or salience signal.
- Capability, installation, compatibility, runtime state, and risk claims must cite repo evidence, source paths, or Claim Graph.

- **Framework Overview and Core Architecture**: importance `high`
  - source_paths: README.md, seleniumbase/__init__.py, seleniumbase/__main__.py, seleniumbase/__version__.py, seleniumbase/core/browser_launcher.py
- **Stealth, UC Mode, and CDP Mode**: importance `high`
  - source_paths: seleniumbase/undetected/__init__.py, seleniumbase/undetected/cdp.py, seleniumbase/undetected/patcher.py, seleniumbase/undetected/dprocess.py, seleniumbase/undetected/reactor.py
- **Testing Patterns, pytest, and BDD Examples**: importance `high`
  - source_paths: examples/ReadMe.md, examples/my_first_test.py, examples/test_get_swag.py, examples/boilerplates/base_test_case.py, examples/boilerplates/boilerplate_test.py
- **Console Scripts, Recorder, and Developer Tools**: importance `medium`
  - source_paths: seleniumbase/console_scripts/ReadMe.md, seleniumbase/console_scripts/run.py, seleniumbase/console_scripts/sb_recorder.py, seleniumbase/console_scripts/sb_commander.py, seleniumbase/console_scripts/sb_behave_gui.py

## Repo Inspection Evidence

- repo_clone_verified: true
- repo_inspection_verified: true
- repo_commit: `93bf553426926a512457dc9e64a5a936e723041a`
- inspected_files: `Dockerfile`, `README.md`, `pyproject.toml`, `requirements.txt`, `examples/ReadMe.md`, `examples/__init__.py`, `examples/basic_test.py`, `examples/behave_bdd/ReadMe.md`, `examples/behave_bdd/__init__.py`, `examples/behave_bdd/features/__init__.py`, `examples/behave_bdd/features/environment.py`, `examples/behave_bdd/features/steps/__init__.py`, `examples/behave_bdd/features/steps/calculator.py`, `examples/behave_bdd/features/steps/fail_page.py`, `examples/behave_bdd/features/steps/imported.py`, `examples/behave_bdd/features/steps/swag_labs.py`, `examples/boilerplates/ReadMe.md`, `examples/boilerplates/__init__.py`, `examples/boilerplates/base_test_case.py`, `examples/boilerplates/boilerplate_test.py`

Host AI hard rules:
- Without repo_clone_verified=true, do not claim that the source code has been read.
- Without repo_inspection_verified=true, do not write README, docs, or package-file conclusions as facts.
- Without quick_start_verified=true, do not claim that the Quick Start path has run successfully.

## Doramagic Pitfall Constraints

These rules come from Doramagic discovery, validation, or compilation findings. The host AI must treat them as operating constraints, not background notes.

### Constraint 1: Configuration risk requires verification

- Trigger: Project evidence flags a configuration risk. Review the linked source before relying on this workflow.
- Host AI rule: Reproduce the official install and quickstart path in an isolated environment.
- Why it matters: May increase setup, validation, or first-run risk for the user.
- Evidence: community_evidence:github | https://github.com/seleniumbase/SeleniumBase/issues/4247
- Hard boundary: Do not present this pitfall as solved, verified, or ignorable unless later evidence explicitly closes it.

### Constraint 2: Installation risk requires verification

- Trigger: Project evidence flags a installation risk. Review the linked source before relying on this workflow.
- Host AI rule: Reproduce the official install and quickstart path in an isolated environment.
- Why it matters: May increase setup, validation, or first-run risk for the user.
- Evidence: community_evidence:github | https://github.com/seleniumbase/SeleniumBase/issues/4394
- Hard boundary: Do not present this pitfall as solved, verified, or ignorable unless later evidence explicitly closes it.

### Constraint 3: Installation risk requires verification

- Trigger: Project evidence flags a installation risk. Review the linked source before relying on this workflow.
- Host AI rule: Reproduce the official install and quickstart path in an isolated environment.
- Why it matters: May increase setup, validation, or first-run risk for the user.
- Evidence: community_evidence:github | https://github.com/seleniumbase/SeleniumBase/issues/4400
- Hard boundary: Do not present this pitfall as solved, verified, or ignorable unless later evidence explicitly closes it.

### Constraint 4: Configuration risk requires verification

- Trigger: Developers should check this configuration risk before relying on the project: Chromium Warning: `Google API keys are missing. Some functionality of Chromium will be disabled.`
- Host AI rule: Before packaging this project, run the relevant install/config/quickstart check for: Chromium Warning: `Google API keys are missing. Some functionality of Chromium will be disabled.`. Context: Source discussion did not expose a precise runtime context.
- Why it matters: Developers may misconfigure credentials, environment, or host setup: Chromium Warning: `Google API keys are missing. Some functionality of Chromium will be disabled.`
- Evidence: failure_mode_cluster:github_issue | https://github.com/seleniumbase/SeleniumBase/issues/4396
- Hard boundary: Do not present this pitfall as solved, verified, or ignorable unless later evidence explicitly closes it.

### Constraint 5: Configuration risk requires verification

- Trigger: Project evidence flags a configuration risk. Review the linked source before relying on this workflow.
- Host AI rule: Reproduce the official install and quickstart path in an isolated environment.
- Why it matters: May increase setup, validation, or first-run risk for the user.
- Evidence: community_evidence:github | https://github.com/seleniumbase/SeleniumBase/issues/4395
- Hard boundary: Do not present this pitfall as solved, verified, or ignorable unless later evidence explicitly closes it.

### Constraint 6: Configuration risk requires verification

- Trigger: Project evidence flags a configuration risk. Review the linked source before relying on this workflow.
- Host AI rule: Reproduce the official install and quickstart path in an isolated environment.
- Why it matters: May increase setup, validation, or first-run risk for the user.
- Evidence: community_evidence:github | https://github.com/seleniumbase/SeleniumBase/issues/4392
- Hard boundary: Do not present this pitfall as solved, verified, or ignorable unless later evidence explicitly closes it.

### Constraint 7: Configuration risk requires verification

- Trigger: Project evidence flags a configuration risk. Review the linked source before relying on this workflow.
- Host AI rule: Reproduce the official install and quickstart path in an isolated environment.
- Why it matters: May increase setup, validation, or first-run risk for the user.
- Evidence: community_evidence:github | https://github.com/seleniumbase/SeleniumBase/issues/4393
- Hard boundary: Do not present this pitfall as solved, verified, or ignorable unless later evidence explicitly closes it.

### Constraint 8: Capability evidence risk requires verification

- Trigger: README/documentation is current enough for a first validation pass.
- Host AI rule: Reproduce the official install and quickstart path in an isolated environment.
- Why it matters: May increase setup, validation, or first-run risk for the user.
- Evidence: capability.assumptions | https://github.com/seleniumbase/SeleniumBase
- Hard boundary: Do not present this pitfall as solved, verified, or ignorable unless later evidence explicitly closes it.

### Constraint 9: Runtime risk requires verification

- Trigger: Developers should check this runtime risk before relying on the project: 4.49.14 - Chromium overhaul with CDP Mode updates
- Host AI rule: Before packaging this project, run the relevant install/config/quickstart check for: 4.49.14 - Chromium overhaul with CDP Mode updates. Context: Source discussion did not expose a precise runtime context.
- Why it matters: Upgrade or migration may change expected behavior: 4.49.14 - Chromium overhaul with CDP Mode updates
- Evidence: failure_mode_cluster:github_release | https://github.com/seleniumbase/SeleniumBase/releases/tag/v4.49.14
- Hard boundary: Do not present this pitfall as solved, verified, or ignorable unless later evidence explicitly closes it.

### Constraint 10: Runtime risk requires verification

- Trigger: Developers should check this runtime risk before relying on the project: Missing `await` in `ad_block` option code led to `RuntimeWarning: coroutine 'Browser.wait' was never awaited`
- Host AI rule: Before packaging this project, run the relevant install/config/quickstart check for: Missing `await` in `ad_block` option code led to `RuntimeWarning: coroutine 'Browser.wait' was never awaited`. Context: Source discussion did not expose a precise runtime context.
- Why it matters: Developers may hit a documented source-backed failure mode: Missing `await` in `ad_block` option code led to `RuntimeWarning: coroutine 'Browser.wait' was never awaited`
- Evidence: failure_mode_cluster:github_issue | https://github.com/seleniumbase/SeleniumBase/issues/4388
- Hard boundary: Do not present this pitfall as solved, verified, or ignorable unless later evidence explicitly closes it.
