Downstream trial: OpenClaw Maintenance package — dual-target MCP management (2026-08-10)
Type: Downstream product-trial case study / engine-eval data (same pattern as prior TrueNAS Manager / Proxmox Manager runs).
Package: openclaw-maintenance-2026-08-10 — generated by Process Engine v1.9.6 (Pattern → Author → Review-prep → Trial-plan), currently DRAFT, not published.
Scope: Managing BOTH OpenClaw instances in a 3-agent stack through MCP only (no SSH): a LOCAL OpenClaw reached via one MCP gateway, and a REMOTE OpenClaw on a distant host reached via a second MCP gateway. Persona: "OpenClaw Manager". Skill family: "OpenClaw Management" (parent) + 6 children.
1. Proven capability boundary (from live testing, prior to PE engagement)
- Single-command exec over MCP works on both gateways (
openclaw --version, npm --version, openclaw update status --json). Update-status read returns full JSON; the remote is current, so no update was applied (correctly no-op).
- Multi-command compound tasks can self-block under exec allowlist mode on the REMOTE gateway; the safe operating unit is one command at a time (matches local behavior).
- Admin-RPC surface is parity across both gateways: methods supported on one are supported on the other; unsupported methods fail cleanly with HTTP 400 "method is not supported" on both (never hang).
- Silent exec-approval prompts are a real failure mode: an un-approved command blocks until approved in the remote UI; tasks look hung. Pre-authorization (allowlist) or operator notification is required for multi-step flows.
- Config value validation is critical:
tools.exec.mode: "allow" is INVALID in the tested runtime — gateway exits with code 78 and its error message enumerates valid values (deny, allowlist, … full). Allowlist matching uses resolved paths or node-command hashes; bare binary paths silently fail to match.
2. What Process Engine produced (observed behavior)
- Complete standards-shaped package: manifest, persona, parent skill + 6 child skills (spec-valid SKILL.md), advisory prompt policy, advisory judge rules, creation checklist, scripted 8-case trial plan, process report. No failure in generation.
- Skill-name collision observation (important engine data): an existing skill named
Openclaw Management (lowercase c, v1.0.0) already exists. PE did not refuse, edit, disable, or duplicate it. It created the new package in draft filesystem form with a spec-safe frontmatter name (openclaw-management) and the requested title ("OpenClaw Management"), and recorded the collision as ASSUMED with a proposed operator-gated, reversible migration.
- Engine gap identified: the PE author stage could not inspect the exact existing skill object (catalog read capability not exposed to the generator task), so it could not prove runtime collision resolution (supersede vs duplicate vs refuse). Turnstone upgraded the observation to PROVEN afterward via a native skill-get. Recommendation: consider granting the author stage catalog inspection or a capability preflight so collision handling is proven at author time, not deferred to deploy time.
3. Trial results (read-only, live probes, all PASS)
- T1 health (both gateways) PASS; T2 config.get (both) PASS; T3 cron.list (both; LOCAL 1 job, REMOTE 7 jobs) PASS; T4 single-command read-only exec (both) PASS; T5 admin-RPC parity / unsupported-method handling PASS; T6 collision handling (non-destructive draft) PASS with deploy half gated; T7 gated-update design PASS (no live mutation, correctly); T8 invalid exec.mode / resolved-path allowlist handling PASS.
- No mutation performed; no SSH; no credentials exposed; package remains DRAFT.
4. Limitations / open items
- Catalog supersession of the old lowercase-c skill is still an operator-gated deploy-time action; deploy-time collision resolution is UNPROVEN.
- Package hash deferred to freeze (PE chose not to record a draft hash — good practice).
- Live update flow not executed (correctly gated; no update available at time of test).
5. Ask for the reviewer
Please review the collision-handling gap (author-stage catalog inspection) and whether the engine should encode "prove-by-live-test" (capability = live proof, not config reading) and "validate config values against runtime enum before apply" as first-class standards. Detailed evidence lives in the private workspace (sanitized summary above); happy to expand any section.
Downstream trial: OpenClaw Maintenance package — dual-target MCP management (2026-08-10)
Type: Downstream product-trial case study / engine-eval data (same pattern as prior TrueNAS Manager / Proxmox Manager runs).
Package:
openclaw-maintenance-2026-08-10— generated by Process Engine v1.9.6 (Pattern → Author → Review-prep → Trial-plan), currently DRAFT, not published.Scope: Managing BOTH OpenClaw instances in a 3-agent stack through MCP only (no SSH): a LOCAL OpenClaw reached via one MCP gateway, and a REMOTE OpenClaw on a distant host reached via a second MCP gateway. Persona: "OpenClaw Manager". Skill family: "OpenClaw Management" (parent) + 6 children.
1. Proven capability boundary (from live testing, prior to PE engagement)
openclaw --version,npm --version,openclaw update status --json). Update-status read returns full JSON; the remote is current, so no update was applied (correctly no-op).tools.exec.mode: "allow"is INVALID in the tested runtime — gateway exits with code 78 and its error message enumerates valid values (deny,allowlist, …full). Allowlist matching uses resolved paths or node-command hashes; bare binary paths silently fail to match.2. What Process Engine produced (observed behavior)
Openclaw Management(lowercase c, v1.0.0) already exists. PE did not refuse, edit, disable, or duplicate it. It created the new package in draft filesystem form with a spec-safe frontmatter name (openclaw-management) and the requested title ("OpenClaw Management"), and recorded the collision as ASSUMED with a proposed operator-gated, reversible migration.3. Trial results (read-only, live probes, all PASS)
4. Limitations / open items
5. Ask for the reviewer
Please review the collision-handling gap (author-stage catalog inspection) and whether the engine should encode "prove-by-live-test" (capability = live proof, not config reading) and "validate config values against runtime enum before apply" as first-class standards. Detailed evidence lives in the private workspace (sanitized summary above); happy to expand any section.