Range Profiles¶
R2 supports three Ludus profiles. They all keep the same AIT artifact contract: transcripts, graph, paths, finding, reports, logs, cockpit manifest, and optional robustness output.
| Profile | VM Shape | Use When |
|---|---|---|
compact |
operator + combined target | You need the cheapest Proxmox footprint or a quick range sanity check. |
standard |
operator + support/planner + services + privileged sink | You want the recommended professional default. |
full-split |
operator + optional Seam intercept + one VM per service role | You need workshop clarity, routed-intercept demos, or research isolation. |
Standard Default¶
standard is the default because it keeps the important trust boundaries:
- the operator host runs AIT, Seam, meshmapper, and Assay;
- the support/planner host receives public A2A traffic and makes decisions;
- the services host carries memory, MCP tool, and untrusted-source behavior;
- the billing host remains a separate privileged sink.
This gives Seam meaningful flows to capture and gives meshmapper real host and trust boundaries without forcing every small service into a separate VM.
Profile Assets¶
lab/range/profiles/
compact.yml
standard.yml
full-split.yml
lab/range/ludus/profiles/
compact.yml
standard.yml
full-split.yml
lab/range/ansible/
inventory.compact.ini
inventory.standard.ini
inventory.full-split.ini
lab/range/ludus/range-config.example.yml and
lab/range/ansible/inventory.example.ini mirror the standard profile.
Commands¶
lab/range/scripts/check_range.sh --profile standard
lab/range/scripts/deploy_ludus.sh --profile standard
lab/range/scripts/collect_artifacts.sh --profile standard --out .ait/runs/range-standard
lab/range/scripts/collect_artifacts.sh --profile standard --out .ait/runs/range-standard --fetch
lab/range/scripts/reset_range.sh --yes
Use compact for small hosts and full-split for maximum separation.