72 lines
2.2 KiB
Markdown
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.
|