Add FastAPI dashboard MVP
This commit is contained in:
105
docs/RELEASE_CHECKLIST.md
Normal file
105
docs/RELEASE_CHECKLIST.md
Normal file
@@ -0,0 +1,105 @@
|
||||
# Second-Brain 2.0 — Release Checklist (Grundversion + FastAPI)
|
||||
|
||||
Scope: OpenClaw workspace at `/root/.openclaw/workspace` with `second-brain/` and the shipped `systemd/` unit files.
|
||||
|
||||
This checklist is copy/paste friendly. Run as a user with `sudo` (systemd commands need it).
|
||||
|
||||
## 0) Preconditions (one-time per host)
|
||||
|
||||
### Repo + Python sanity
|
||||
|
||||
```bash
|
||||
cd /root/.openclaw/workspace
|
||||
test -d second-brain || { echo "missing: second-brain/"; exit 1; }
|
||||
python3 --version
|
||||
```
|
||||
|
||||
### Ensure systemd units are installed (copy/symlink)
|
||||
|
||||
```bash
|
||||
ls -la /etc/systemd/system/openclaw-secondbrain-*.timer /etc/systemd/system/openclaw-secondbrain-*.service 2>/dev/null || true
|
||||
ls -la /etc/systemd/system/openclaw-memory-archive.* 2>/dev/null || true
|
||||
```
|
||||
|
||||
If missing, install them (symlink is fine; copy is fine too):
|
||||
|
||||
```bash
|
||||
sudo ln -sf /root/.openclaw/workspace/systemd/openclaw-secondbrain-*.service /etc/systemd/system/
|
||||
sudo ln -sf /root/.openclaw/workspace/systemd/openclaw-secondbrain-*.timer /etc/systemd/system/
|
||||
sudo ln -sf /root/.openclaw/workspace/systemd/openclaw-memory-archive.* /etc/systemd/system/
|
||||
sudo ln -sf /root/.openclaw/workspace/systemd/openclaw-secondbrain-dashboard.service /etc/systemd/system/
|
||||
sudo systemctl daemon-reload
|
||||
```
|
||||
|
||||
### Enable timers
|
||||
|
||||
```bash
|
||||
sudo systemctl enable --now openclaw-secondbrain-backup.timer
|
||||
sudo systemctl enable --now openclaw-secondbrain-ingest-memory.timer
|
||||
sudo systemctl enable --now openclaw-secondbrain-index-vectors.timer
|
||||
sudo systemctl enable --now openclaw-secondbrain-review.timer
|
||||
sudo systemctl enable --now openclaw-secondbrain-heartbeat.timer
|
||||
sudo systemctl enable --now openclaw-secondbrain-proactive-search.timer
|
||||
sudo systemctl enable --now openclaw-memory-archive.timer
|
||||
```
|
||||
|
||||
## 1) Release QA — systemd status + timers
|
||||
|
||||
### Verify timers are active and scheduled
|
||||
|
||||
```bash
|
||||
sudo systemctl list-timers --all | grep -E 'openclaw-(secondbrain|memory-archive)' || true
|
||||
sudo systemctl --failed --no-pager || true
|
||||
```
|
||||
|
||||
### Verify the oneshot services can run successfully (manual trigger)
|
||||
|
||||
```bash
|
||||
sudo systemctl start openclaw-secondbrain-ingest-memory.service
|
||||
sudo systemctl start openclaw-secondbrain-index-vectors.service
|
||||
sudo systemctl start openclaw-secondbrain-review.service
|
||||
sudo systemctl start openclaw-secondbrain-backup.service
|
||||
sudo systemctl start openclaw-secondbrain-heartbeat.service
|
||||
sudo systemctl start openclaw-secondbrain-proactive-search.service
|
||||
sudo systemctl start openclaw-memory-archive.service
|
||||
```
|
||||
|
||||
Logs:
|
||||
|
||||
```bash
|
||||
tail -n 200 /root/.openclaw/workspace/cron_wrapper.log
|
||||
sudo journalctl -u openclaw-secondbrain-review.service -n 200 --no-pager
|
||||
```
|
||||
|
||||
## 2) Release QA — data + DB invariants
|
||||
|
||||
```bash
|
||||
ls -la /root/.openclaw/workspace/second-brain/data/brain.sqlite
|
||||
python3 - <<'PY'
|
||||
import sqlite3
|
||||
db="/root/.openclaw/workspace/second-brain/data/brain.sqlite"
|
||||
con=sqlite3.connect(db)
|
||||
cur=con.cursor()
|
||||
print("integrity_check:", cur.execute("PRAGMA integrity_check").fetchone()[0])
|
||||
print("engrams:", cur.execute("SELECT COUNT(*) FROM engrams").fetchone()[0])
|
||||
con.close()
|
||||
PY
|
||||
```
|
||||
|
||||
## 3) Release QA — FastAPI (HTTP endpoints + logs)
|
||||
|
||||
FastAPI service:
|
||||
|
||||
```bash
|
||||
sudo systemctl enable --now openclaw-secondbrain-dashboard.service
|
||||
sudo systemctl status openclaw-secondbrain-dashboard.service --no-pager
|
||||
```
|
||||
|
||||
Endpoint checks:
|
||||
|
||||
```bash
|
||||
curl -fsS http://127.0.0.1:8501/healthz && echo
|
||||
curl -fsS http://127.0.0.1:8501/api/config
|
||||
curl -fsS http://127.0.0.1:8501/api/stats
|
||||
curl -fsS "http://127.0.0.1:8501/api/engrams?limit=1&offset=0"
|
||||
```
|
||||
Reference in New Issue
Block a user