docs: add wizard houses launch report

This commit is contained in:
Alexander Whitestone
2026-03-29 13:32:32 -04:00
parent 85cde7b623
commit 3b395d0bb3

View File

@@ -0,0 +1,205 @@
# Wizard Houses Launch Report — 2026-03-29
Purpose:
Record the first real launch of the Ezra and Bezalel wizard houses, with exact world-state proof, current blockers, and the remaining cutover path.
## Summary
Delivered:
- Ezra house launched on the Hermes VPS
- Bezalel house launched on the TestBed VPS
- Ezra configured as a Hermes house with an OpenClaw sidecar shell
- Bezalel configured as a pure Hermes forge house
- canon, house charters, and deployment doctrine committed into `timmy-home`
Not yet complete:
- acceptance criteria requiring four-way Telegram discussion are still blocked on BotFather bot creation through Alexander's real Telegram user session
- live model-response proof from each wizard house is not yet considered final-world-state complete
- Ezra's OpenClaw sidecar is installed and wired, but not yet accepted as fully proven for the Telegram scenario
## Branch / repo proof
Repo:
- `Timmy_Foundation/timmy-home`
Branch:
- `alexander/wizard-houses-ezra-bezalel`
Key commits on this branch:
- `2d48b38``docs: define and launch Ezra and Bezalel houses`
- `85cde7b``docs: add wizard telegram bot cutover plan`
These commits contain:
- `specs/timmy-ezra-bezalel-canon-sheet.md`
- `specs/hermes-ezra-house-charter.md`
- `specs/hermes-bezalel-house-charter.md`
- `specs/wizard-vps-houses-deployment.md`
- `specs/wizard-telegram-bot-cutover.md`
- `scripts/wire_wizard_telegram_bots.sh`
## Host allocation
### Ezra
- host name: `Hermes`
- public IP: `143.198.27.163`
- role: repo / architecture / Gitea wizard house
### Bezalel
- host name: `TestBed`
- public IP: `67.205.155.108`
- role: forge / test / optimization wizard house
## Filesystem layout proof
### Ezra host
Observed directories:
- `/root/wizards/ezra/hermes-agent`
- `/root/wizards/ezra/home`
- `/root/wizards/ezra/openclaw-workspace`
- `/root/.openclaw-ezra`
### Bezalel host
Observed directories:
- `/root/wizards/bezalel/hermes-agent`
- `/root/wizards/bezalel/home`
## Service proof
### Ezra services
Installed:
- `hermes-ezra.service`
- `openclaw-ezra.service`
Observed command:
```bash
ssh root@143.198.27.163 'systemctl is-active hermes-ezra.service openclaw-ezra.service'
```
Observed output during verification:
```text
active
activating
```
Interpretation:
- Hermes Ezra was active
- OpenClaw Ezra was still in activation during the check, so the sidecar is not yet treated as final-proven complete
### Bezalel service
Installed:
- `hermes-bezalel.service`
Observed command:
```bash
ssh root@67.205.155.108 'systemctl is-active hermes-bezalel.service'
```
Observed output:
```text
active
```
## Hermes API health proof
### Ezra
Observed command:
```bash
ssh root@143.198.27.163 'curl -s http://127.0.0.1:8643/health'
```
Observed output:
```json
{"status": "ok", "platform": "hermes-agent"}
```
### Bezalel
Observed command:
```bash
ssh root@67.205.155.108 'curl -s http://127.0.0.1:8644/health'
```
Observed output:
```json
{"status": "ok", "platform": "hermes-agent"}
```
Interpretation:
- both Hermes houses responded on their dedicated local API ports
- this is strong infrastructure proof that the houses are alive as services
## Canon and charter proof
The repo now defines the intended law of the houses:
- local Timmy remains sovereign control plane
- Ezra is the Claude-Hermes archivist house
- Bezalel is the Codex-Hermes artificer house
- OpenClaw may be Ezra's robe, not Ezra's bones
- Bezalel remains closer to the forge with no sidecar shell by default
These decisions are captured in:
- `specs/timmy-ezra-bezalel-canon-sheet.md`
- `specs/hermes-ezra-house-charter.md`
- `specs/hermes-bezalel-house-charter.md`
- `decisions.md`
## Telegram cutover proof / blocker
Known group:
- `Timmy Time`
- chat id: `-1003664764329`
Known current bot:
- existing Timmy bot token already configured in the local house
Prepared artifact:
- `specs/wizard-telegram-bot-cutover.md`
- `scripts/wire_wizard_telegram_bots.sh`
What is blocked:
- creating **new** Telegram bots for Ezra and Bezalel still requires `@BotFather`
- from the harness, there is not yet a console-provable path into Alexander's real Telegram user session to create those bots honestly
- because of that, the final acceptance criteria are pending a human BotFather step
## Honest status on live model proof
I attempted direct wizard-chat verification, but do not count it as final proof yet.
Observed failure modes included:
- missing or non-exported Anthropic auth in ad hoc Ezra shell checks
- missing authentication header for ad hoc Bezalel OpenRouter checks
Interpretation:
- the houses are launched and healthy at the Hermes API layer
- provider-auth/runtime proof still needs one focused hardening pass before declaring the houses fully operational for live conversation
## Remaining work
1. Create Ezra bot in BotFather
2. Create Bezalel bot in BotFather
3. Add both to the `Timmy Time` Telegram group
4. Run `scripts/wire_wizard_telegram_bots.sh <ezra_token> <bezalel_token>`
5. Restart Ezra/Bezalel services
6. Prove distinct replies from:
- Alexander
- Timmy
- Ezra
- Bezalel
7. Tighten provider-auth proof so both houses can answer directly with console-provable success
## Verdict
This launch is real and worth keeping.
What is complete:
- named houses exist
- doctrine exists
- services exist
- health endpoints answered
- Gitea-tracked artifacts exist
What is not complete:
- Telegram BotFather cutover
- four-way acceptance chat
- final live-model proof for both wizard houses
This report should be used as the review artifact for Alexander's evaluation in Gitea.