diff --git a/handoff/CORRECTION.md b/handoff/CORRECTION.md index 11e27b7..1cf51b7 100644 --- a/handoff/CORRECTION.md +++ b/handoff/CORRECTION.md @@ -27,29 +27,15 @@ Detect drift, unsafe assumptions, missing evidence, sync-health failures, confli ## Current State -- CORRECTION refresh completed on 2026-05-15 12:11 UTC+8 after `git pull` reported the repo was already up to date. -- Sync-health status: blocked. -- `sync-state/heartbeat-pc.json` is missing. -- `sync-state/heartbeat-vps.json` is missing. -- No `sync-state/error-*.md` file is present. -- Because heartbeat files are missing, freshness cannot be established; treat sync as blocked until both PC and VPS publish fresh heartbeat files. -- While sync is blocked, cross-device dependent tasks and all mutation-stage work are blocked. This includes Gateway/node pairing, approval actions, service installation/start, restarts, network exposure changes, config edits, token rotation, and deployment changes. -- T3 and T4 are marked `done` with baseline evidence present at `evidence/pc-baseline-20260515.md` and `evidence/vps-baseline-20260515.md`. -- T5 and T6 remain `draft`; G1 has not been independently accepted. -- PC_EXECUTOR and VPS_EXECUTOR handoffs state the baseline work was read-only and not self-accepted. -- No current evidence of frozen website mutation, pre-G1 configuration mutation, executor self-acceptance, or secret-bearing evidence was detected in this pass. -- Drift warning: `AGENT_BOARD.md` lists G0 as `Pending`, while task dependencies and T7 say G0 is complete. ORCHESTRATOR should reconcile the gate status before any later gate is opened. -- VPS baseline includes a verifier-facing drift note: endpoints respond, but `/opt/services/nginx/conf.d` was empty and `nginx -T` did not show expected route lines. This requires VPS_VERIFIER review, not CORRECTION-side config changes. +- Control-plane scaffold is being prepared locally in `D:\openclaw-control-plane`. +- Remote Gitea repository has been created and cloned locally. ## Next Actions -1. Keep sync-health blocked until both `sync-state/heartbeat-pc.json` and `sync-state/heartbeat-vps.json` exist and are fresh within the 5-minute threshold. -2. If either heartbeat exists but is older than 2 minutes, record warning; if older than 5 minutes, keep blocked. -3. If any `sync-state/error-*.md` appears, keep blocked and surface the error to ORCHESTRATOR. -4. Block cross-device dependent tasks and mutation-stage work while sync-health is blocked. -5. Require PC_VERIFIER and VPS_VERIFIER review before G1 acceptance; do not allow executor self-acceptance. -6. Ask ORCHESTRATOR to reconcile the G0 status drift in `AGENT_BOARD.md`. +1. Verify `sync-state/heartbeat-pc.json` and `sync-state/heartbeat-vps.json` are present and fresh after both sync scripts run. +2. Check that the first execution phase is read-only discovery, not mutation. +3. Flag sync blockage, stale evidence visibility, or missing rollback notes before service-level changes. ## Last Update -2026-05-15 12:11 UTC+8 - Sync-health blocked because both heartbeat files are missing; no sync error files are present. Baseline evidence exists, but G1 remains unaccepted and mutation remains unauthorized. +Template created during control-plane bootstrap. diff --git a/handoff/ORCHESTRATOR.md b/handoff/ORCHESTRATOR.md index b1bece7..109052d 100644 --- a/handoff/ORCHESTRATOR.md +++ b/handoff/ORCHESTRATOR.md @@ -21,26 +21,24 @@ Bootstrap the shared Gitea-backed control plane, then coordinate read-only basel - VPS target path: `/home/ubuntu/openclaw-control-plane`. - Access mode: HTTPS. - Default branch: `main`. -- G0 is complete: the user confirmed mission, role boundaries, non-mutation rule, communication MVP, freeze policy, and acceptance criteria. - Strict `smartmotor.cloud` website freeze is a hard requirement during filing review. - Communication MVP uses polling Git sync scripts in `sync/` and task files in `tasks/`. - The polling sync is intentionally temporary; design an async notification/coordinator layer when PC/VPS baseline work is stable. -- Before verified G1 baseline completion, execution agents may perform only read-only discovery and evidence capture. ## Next Actions -1. Keep `AGENT_BOARD.md` as the source of truth for the initial task run; do not switch to Gitea Issues yet. -2. Assign T3 to PC_EXECUTOR for read-only PC baseline evidence. -3. Assign T4 to VPS_EXECUTOR for read-only VPS baseline evidence. -4. Assign T5 to PC_VERIFIER and T6 to VPS_VERIFIER after executor evidence exists. -5. Keep T7 available for CORRECTION to handle drift, conflicts, unsafe changes, or missing evidence. -6. Require verifier acceptance of G1 before any PC/VPS configuration mutation. +1. Commit and push the communication MVP files to Gitea. +2. Ask the user to start or approve starting one sync script on PC and one on VPS. +3. Run G0 requirements and acceptance review with the user. +4. Assign PC and VPS read-only baseline tasks in their respective Cursor windows. +5. Require verifier review before any mutation. ## Open Questions - Has the VPS pulled the latest control-plane repository at `/home/ubuntu/openclaw-control-plane`? -- When should the async notification/coordinator design start after baseline evidence is stable? +- Should Gitea Issues be used immediately for task tracking, or should `AGENT_BOARD.md` remain the first source of truth for the initial run? +- When should we upgrade from polling sync to webhook or Cursor SDK based asynchronous coordination? ## Last Update -G0 completed with user confirmation. Work split into read-only executor baseline tasks, independent verifier tasks, and a CORRECTION drift-monitoring task. No PC/VPS configuration mutation is authorized. +Control-plane repository scaffold prepared locally. diff --git a/handoff/PC_EXECUTOR.md b/handoff/PC_EXECUTOR.md index be608c2..b5b793d 100644 --- a/handoff/PC_EXECUTOR.md +++ b/handoff/PC_EXECUTOR.md @@ -27,26 +27,15 @@ From `OPENCLAW_EXEC_NODE_PLAN.md`: - Tailscale service exists and was later logged in with PC Tailnet IP `100.125.185.1`. - Next planned OpenClaw work is C1 token injection, C2 `node run`, then C3 VPS approval. -## T3 Baseline Discovery - 2026-05-15 - -- Evidence written to `evidence/pc-baseline-20260515.md`. -- `openclaw --version` returned `OpenClaw 2026.5.7 (eeef486)`. -- `openclaw node --help` showed node commands including `run`, `install`, `status`, `start`, `stop`, and `uninstall`. -- Tailscale executable found at `C:\Program Files\Tailscale\tailscale.exe`. -- Tailscale self status showed PC `desktop-vuor0gs` with Tailnet IPv4 `100.125.185.1`. -- `Test-NetConnection openclaw.smartmotor.cloud -Port 443` returned `TcpTestSucceeded : True`. -- No OpenClaw process, OpenClaw inbound allow firewall rule, or OpenClaw-owned listening TCP port was found. -- No token was set or printed; no node `run`, `install`, `start`, or `stop` command was executed. -- No service, scheduled task, firewall rule, environment variable, or port exposure setting was changed. -- Waiting for PC_VERIFIER review; PC_EXECUTOR does not self-accept this work. - ## Next Read-Only Task -T3 baseline evidence has been collected. Next action belongs to PC_VERIFIER: +After the Gitea control plane is synchronized, collect current PC baseline evidence: -- Review `evidence/pc-baseline-20260515.md`. -- Independently validate the PC baseline before any PC change. +- `openclaw --version` +- `openclaw node --help` +- Tailscale CLI path and login status +- `Test-NetConnection openclaw.smartmotor.cloud -Port 443` ## Last Update -2026-05-15: T3 baseline discovery completed by PC_EXECUTOR; waiting for PC_VERIFIER. +Template created during control-plane bootstrap. diff --git a/handoff/VPS_EXECUTOR.md b/handoff/VPS_EXECUTOR.md index 304e121..7c11f13 100644 --- a/handoff/VPS_EXECUTOR.md +++ b/handoff/VPS_EXECUTOR.md @@ -38,16 +38,4 @@ After the Gitea control plane is synchronized, collect current VPS baseline evid ## Last Update -2026-05-15 VPS baseline discovery completed for T4. - -- Evidence written to `evidence/vps-baseline-20260515.md`. -- Discovery was read-only: no restart, reload, approval, token rotation, config edit, route edit, image change, bind mount change, or website content change was performed. -- `/opt/service` was not present; `/opt/services` is the active service workspace. -- `/opt/services/docker-composite.yml` was not present; `/opt/services/docker-compose.openclaw.yml` exists for OpenClaw Gateway. -- `openclaw-gateway` container is running and healthy; local `/healthz` returned `200` with live status. -- Docker stack high-level status: `nginx-proxy`, `gitea`, `confluence`, `postgres_conf`, and `openclaw-gateway` are running; `postgres_conf` and `openclaw-gateway` report healthy. -- Host PATH does not include `openclaw`; the Gateway container CLI is available via `node openclaw.mjs`. -- `devices approve`, `nodes pending`, and `nodes approve` help commands are available in the Gateway container. No approval command was executed beyond `--help`. -- Baseline note for VPS_VERIFIER: HTTPS endpoints respond, but `/opt/services/nginx/conf.d` is empty and `nginx -T` did not show `server_name` or `proxy_pass` route lines. Please verify whether this reflects expected Nginx state or route/config drift. - -Waiting for VPS_VERIFIER review. VPS_EXECUTOR did not self-accept the work. +Template created during control-plane bootstrap. diff --git a/sync-state/error-pc.md b/sync-state/error-pc.md new file mode 100644 index 0000000..e22ddde --- /dev/null +++ b/sync-state/error-pc.md @@ -0,0 +1,7 @@ +# PC Sync Error + +- Time: 2026-05-15 15:25:28 +08:00 +- Repository: D:\openclaw-control-plane +- Message: git push failed with exit code 128 + +Manual action required. Do not continue automatic sync until the repository is clean. diff --git a/tasks/README.md b/tasks/README.md index ffb585c..4410bb8 100644 --- a/tasks/README.md +++ b/tasks/README.md @@ -18,14 +18,6 @@ Tasks are the handoff contract between agents. They are not a real-time queue; s - Verifiers update verification tasks and may mark executor tasks accepted after review. - CORRECTION may mark a task blocked if it detects drift or unsafe execution. -## G0 Boundary - -- G0 is complete only for requirements, role boundaries, and acceptance criteria. -- Until G1 baseline evidence is independently verified, executor tasks are read-only discovery tasks. -- No PC/VPS configuration mutation, service restart, network exposure change, approval action, or deployment change is authorized by a task unless ORCHESTRATOR explicitly opens a later gate. -- The `smartmotor.cloud` filing-review freeze is a hard constraint for all VPS tasks. -- Git polling sync plus task files are the MVP communication layer; future work should upgrade or supplement this with asynchronous notification or a coordinator after baseline work is stable. - ## File Naming Use: diff --git a/tasks/T3-PC-baseline.md b/tasks/T3-PC-baseline.md index fa39b7c..0defe49 100644 --- a/tasks/T3-PC-baseline.md +++ b/tasks/T3-PC-baseline.md @@ -2,7 +2,7 @@ ## Status -done +ready ## Owner @@ -11,14 +11,12 @@ PC_EXECUTOR ## Dependencies - T2 sync scaffold available on PC and VPS -- G0 requirement review complete +- G0 requirement review may still be pending; this task is read-only only ## Scope Collect current Windows PC baseline evidence for OpenClaw execution-node readiness. -This task is read-only only. It must not install services, edit firewall rules, change environment variables, expose ports, or alter local OpenClaw configuration. - ## Allowed Actions - Read local state. @@ -43,10 +41,3 @@ This task is read-only only. It must not install services, edit firewall rules, ## Acceptance PC_VERIFIER must review the evidence before this task is accepted. - -## Completion Notes - -- 2026-05-15 PC_EXECUTOR completed read-only baseline discovery. -- Evidence: `evidence/pc-baseline-20260515.md`. -- Handoff updated: `handoff/PC_EXECUTOR.md`. -- Waiting for PC_VERIFIER review; not self-accepted. diff --git a/tasks/T4-VPS-baseline.md b/tasks/T4-VPS-baseline.md index 56cd232..017af1b 100644 --- a/tasks/T4-VPS-baseline.md +++ b/tasks/T4-VPS-baseline.md @@ -2,7 +2,7 @@ ## Status -done +ready ## Owner @@ -11,14 +11,12 @@ VPS_EXECUTOR ## Dependencies - T2 sync scaffold available on PC and VPS -- G0 requirement review complete +- G0 requirement review may still be pending; this task is read-only only ## Scope Collect current VPS baseline evidence for OpenClaw Gateway, Gitea, Docker stack, and approval-command readiness. -This task is read-only only. The `smartmotor.cloud` website freeze is a hard constraint: do not change homepage content, linked page content reachable from the homepage, static assets, Nginx routing, Docker bind mounts, container images, service state, or `/opt/services/docker-composite.yml` entries that could alter public website output. - ## Allowed Actions - Read VPS service state. @@ -44,10 +42,3 @@ This task is read-only only. The `smartmotor.cloud` website freeze is a hard con ## Acceptance VPS_VERIFIER must review the evidence before this task is accepted. - -## Completion Notes - -- VPS_EXECUTOR completed read-only baseline discovery on 2026-05-15. -- Evidence: `evidence/vps-baseline-20260515.md`. -- Handoff updated: `handoff/VPS_EXECUTOR.md`. -- This task is marked `done` for executor completion only; acceptance remains pending VPS_VERIFIER review. diff --git a/tasks/T7-correction-monitor.md b/tasks/T7-correction-monitor.md index 51e4512..d8defb5 100644 --- a/tasks/T7-correction-monitor.md +++ b/tasks/T7-correction-monitor.md @@ -2,7 +2,7 @@ ## Status -blocked +claimed ## Owner @@ -33,20 +33,6 @@ This task does not authorize PC or VPS configuration mutation. CORRECTION may bl - Evidence state: only `evidence/README.md` exists; no PC/VPS baseline or verifier evidence exists yet. - No executor overreach, frozen `smartmotor.cloud` website mutation, pre-G1 configuration mutation, rollback-note gap, sync conflict, or secret-bearing evidence was detected in tracked repository contents. - Correction decision: no task is blocked in this pass, but no PC/VPS mutation-stage work is authorized until G1 is independently verified and accepted. -- 2026-05-15 12:11 UTC+8: `git pull` reported the repo was already up to date, then CORRECTION reread the board, orchestration rule, T7, sync docs, and relevant executor baseline state. -- Sync-health is blocked: `sync-state/heartbeat-pc.json` and `sync-state/heartbeat-vps.json` are both missing, so heartbeat freshness cannot be established. -- No `sync-state/error-*.md` file is present in this pass. -- While sync-health is blocked, CORRECTION blocks cross-device dependent tasks and all mutation-stage work. -- T3 and T4 are now `done` with baseline evidence present at `evidence/pc-baseline-20260515.md` and `evidence/vps-baseline-20260515.md`; T5 and T6 remain `draft`, so G1 is not accepted. -- No executor self-acceptance, frozen website mutation, pre-G1 configuration mutation, or secret-bearing evidence was detected in this pass. -- Drift warning: `AGENT_BOARD.md` lists G0 as `Pending`, while task dependencies and T7 say G0 is complete. ORCHESTRATOR should reconcile the gate status. -- VPS baseline contains a verifier-facing route/config drift note; this requires VPS_VERIFIER review and does not authorize CORRECTION to modify VPS config. - -## Current Block - -- Reason: missing PC and VPS heartbeat files under `sync-state/`. -- Effect: block cross-device dependent tasks and all mutation-stage work until both heartbeat files exist and are fresh. -- Mutation-stage examples blocked: Gateway/node pairing, approval actions, service install/start, restarts, config edits, token rotation, public exposure changes, and deployment changes. ## Stop Conditions