teleo-infrastructure/docs/leo-test-deploy-readiness.md
2026-06-20 13:03:10 +02:00

72 lines
2.2 KiB
Markdown

# Leo Test Deploy Readiness
## Working Target
Confirm the VPS is ready to boot the disposable `teleo-agent@leo-test` service
without touching production Leo, sending Telegram/Slack messages, resetting
services, or reading token contents.
## Why
PR #5 added `telegram/agents/leo-test.yaml`, but the VPS deploy source can lag
behind GitHub. The readiness check keeps the next live step explicit: source
reconciliation first, token file second, service validation and boot third.
## Command
Run on the VPS:
```sh
/opt/teleo-eval/workspaces/deploy-infra/deploy/check-leo-test-deploy-readiness.sh
```
The checker is read-only. It prints `key=value` rows and exits non-zero until
all required state is present.
By default it does not fetch or update Git refs. To explicitly refresh
`github/main` before checking, run:
```sh
FETCH_GITHUB_MAIN=1 /opt/teleo-eval/workspaces/deploy-infra/deploy/check-leo-test-deploy-readiness.sh
```
## Expected Blockers Before Reconciliation
The current blocker set should include:
- `teleo_auto_deploy_exec_start_expected`: systemd still points at the legacy
`/opt/teleo-eval/workspaces/deploy/ops/auto-deploy.sh` path.
- `runtime_leo_test_config`: runtime Telegram path does not yet have
`agents/leo-test.yaml`.
- `pipeline_leo_test_config`: pipeline Telegram mirror does not yet have
`agents/leo-test.yaml`.
- `leo_test_token_file`: `/opt/teleo-eval/secrets/leo-test-telegram-bot-token`
is absent.
## Ready State
The checker returns:
```text
status=ready_for_leo_test_validate_and_boot
```
only after:
- deploy-infra can fetch GitHub main at the expected PR #5 merge commit;
- GitHub main contains `telegram/agents/leo-test.yaml`;
- systemd points auto-deploy at the reviewed deploy-infra script;
- runtime and pipeline Telegram paths contain `agents/leo-test.yaml`;
- the separate disposable test bot token file exists.
## Next Live Step After Ready
After readiness passes, validate without sending a message:
```sh
sudo -u teleo /opt/teleo-eval/pipeline/.venv/bin/python3 \
/opt/teleo-eval/telegram/agent_runner.py --agent leo-test --validate
```
Only after that should `teleo-agent@leo-test` be started for a private,
explicitly authorized disposable bot DM test.