Skip to content

docs: make replay/record/run substrate-aware, not --url-centric#48

Merged
abrichr merged 1 commit into
mainfrom
fix/substrate-aware-replay-docs
Jul 21, 2026
Merged

docs: make replay/record/run substrate-aware, not --url-centric#48
abrichr merged 1 commit into
mainfrom
fix/substrate-aware-replay-docs

Conversation

@abrichr

@abrichr abrichr commented Jul 21, 2026

Copy link
Copy Markdown
Member

Problem

docs.openadapt.ai framed replay/record/run around --url and "the bundled sample app," but --url is web-only. The trigger, in guides/run-a-deployment.md: "replay is the demo-shaped command: with no --url it serves the bundled sample app" presented --url as THE way to target replay.

Ground truth (verified against openadapt-flow openadapt_flow/__main__.py + deployment.py on main)

replay/record/run/resume take _add_backend_flags: --backend {web,windows,macos,linux,rdp} plus target flags --url (web), --agent-url (windows), --macos-app, --linux-app, --rdp-host (rdp/Citrix).

  • --url applies only to --backend web; omit it and web replay serves the bundled MockMed demo.
  • Windows/macOS/Linux/RDP/Citrix use --backend <X> + its target flag, not --url. Pixel-only remote desktop / Citrix = --backend rdp.
  • A governed run gets its substrate from deployment.yaml's backend section via --config, not --url. Config field names confirmed in BackendConfig (kind, agent_url, macos_app, linux_app, rdp_host, rdp_window).

Changes

Web stays one first-class substrate; the demo path is kept as one example, not the definition.

  • guides/run-a-deployment.md — substrate-aware replay intro; governed substrate comes from the config backend section.
  • reference/cli.md — record verb row, record + replay descriptions; --url marked required only for --backend web.
  • reference/deployment-config.md — documented backend.kind + per-substrate target fields; marked url/headed web-only; extended the flag-override list.
  • concepts/demonstration-compiler.md, guides/record-your-app.md, get-started/first-workflow.md — web quickstart kept but framed as the web substrate with a pointer to the backend selector.
  • concepts/durable-runtime.md — resume rebuilds the backend via the same selector, not just backend.url.

Not touched

Pinned substrate-evidence copy (run counts, oracle results, commit hashes, PR numbers, Supported/scoped markers per test_substrate_evidence_copy.py) and binding legal/compliance copy left intact.

Gates

  • mkdocs build --strict clean
  • pytest tests/ — 64 passed
  • scripts/validate_docs.py — Validation passed

No em dashes.

🤖 Generated with Claude Code

https://claude.ai/code/session_01NyCHrzA1psrKMFfroYbzaM

`--url` is web-only. Reframe the replay/record/run docs so the browser
path is one first-class substrate among Windows/macOS/Linux/RDP/Citrix,
selected via `--backend` (+ its target flag) or the deployment config's
`backend` section, not via `--url` as the general case.

- run-a-deployment: replay is substrate-aware; the bundled-demo path is
  one web example, not the definition; governed runs get their substrate
  from `backend` in deployment.yaml.
- reference/cli: fix the record verb row, record + replay descriptions,
  and the `--url` "required" note (required only for `--backend web`).
- reference/deployment-config: document `backend.kind` and per-substrate
  target fields (agent_url/macos_app/linux_app/rdp_host); mark url/headed
  web-only; extend the flag-override list.
- demonstration-compiler / record-your-app / first-workflow: keep the web
  quickstart but present it as the web substrate with a backend pointer.
- durable-runtime: resume rebuilds the backend via the same selector, not
  just backend.url.

Pinned substrate-evidence copy and legal/compliance copy untouched;
mkdocs --strict, pytest (64), and validate_docs all green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NyCHrzA1psrKMFfroYbzaM
@abrichr
abrichr merged commit c6400e4 into main Jul 21, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant