# Cold-Start Repo Validation Recommended profile: `workspace-full` Smoke target: ```bash make smoke-cold-start-validation ``` Use this flow when an agent needs to treat a fresh repo like a new user would: seed it into a workspace, run the validation script, keep one long-running process alive, probe it from another command, and export a validation report. Canonical SDK flow: ```python from pyro_mcp import Pyro pyro = Pyro() created = pyro.create_workspace(environment="debian:12", seed_path="./repo") workspace_id = str(created["workspace_id"]) pyro.exec_workspace(workspace_id, command="sh validate.sh") pyro.start_service( workspace_id, "app", command="sh serve.sh", readiness={"type": "file", "path": ".app-ready"}, ) pyro.exec_workspace(workspace_id, command="sh -lc 'test -f .app-ready && cat service-state.txt'") pyro.export_workspace(workspace_id, "validation-report.txt", output_path="./validation-report.txt") pyro.delete_workspace(workspace_id) ``` This recipe is intentionally guest-local and deterministic. It proves startup, service readiness, validation, and host-out report capture without depending on external networks or private registries.