Strategic Decision Log — Henry Ratified Decisions
This hub captures the 10+ most consequential Henry ratifications and strategic decisions affecting OpenClaw architecture, infrastructure, governance, and operations. Each entry includes the decision context, options considered, the ratified choice, rationale, and links to the plan + SESSION-AUDIT.md entry that documents it. Read this hub before proposing architecture changes that might conflict with a prior ratified decision.
Quick reference
| Field | Value |
|---|---|
| Gate ID | G-BLOCKER-SURFACING (decisions must be logged same session) |
| CLAUDE.md section | §Plan Q&A Protocol, §MANDATORY: Blockers First |
| Enforcement mode | manual (Claude logs each ratification here) |
| Validator script | n/a |
| Discord alert | no |
| Feedback rules | feedback_blocker_surfacing, feedback_plan_amendments_additive, feedback_post_audit_persistence |
| Incidents derived from | oomd-cascade-2026-05-01, vault-leak-2026-05-03, wave-1-self-correcting-framework |
| Violable by | Claude (failing to log a decision) |
| Last known violation | never recorded |
| Amendment | n/a |
| Phase status | active |
| Last audit | 2026-05-03 |
Decision 1 — Second Max Plan Activation
Date: 2026-05-01 Session-AUDIT ref: A1.8 (proxy.js Fix #1 + Fix #16 context) Status: RATIFIED — live production
Context
The original anthropic-max-router was serving only henryRERI Max plan tokens. With 40+ agents needing LLM access, a second Max plan account was needed to avoid API-tier per-call costs.
Options considered
- A) Use API-tier billing for the 40 agents (costly at scale)
- B) Add
teamsteph@betterfiles.comas second Max plan, route agents through:18903 - C) Continue single Max plan and throttle agent traffic
Ratified choice: B
teamsteph@betterfiles.com Max plan activated. anthropic-max-router now serves this account on :18903. henryRERI stays on :18900 interactive VSCode path.
Key details
- Port
:18903viaanthropic-max-routerserves 40 agents - proxy.js Fix #1: Kimi 404 → per-model gating applied
- proxy.js Fix #16:
cache_controlon max-plan path applied - Both Max plan paths survive nightly agent restarts (verified)
Links
- openclaw-fragmentation-fix-2026-05-01 §Second Max plan
- project_second_max_plan_decision
- anthropic — dual Max plan path documented
- portkey — CHOKEPOINT-1 enforcement at proxy layer
Decision 2 — VPS Substrate: Stay Hostinger (CCX33 right-sized)
Date: 2026-05-01 Session-AUDIT ref: A1.8-P1 substrate flag Status: RATIFIED — stay decision in effect
Context
Reboot #5 was diagnosed as an INTERNAL oomd cascade (not Hostinger hardware). Post-F1-F4 fixes applied. CCX43 (64 GB, $203/mo all-in) was over-sized for a 6.5 GB working set. Decision needed: stay, downsize, or migrate.
Options considered
- A) Stay Hostinger + apply M1-M4 cleanups, defer migration (recommended)
- B) CCX33 (32 GB, $102/mo) bridge until Mac fleet
- C) CCX43 ($203/mo) — over-sized but growth headroom
- D) Mac mini at home now (BetterPhone hardware ETA unknown)
Ratified choice: A (with B as noted path)
Stay on Hostinger. Apply M1-M4 cleanup tasks in the next authorized session. CCX33 identified as the right-size exit-Hostinger option when the Mac fleet is ready. CCX43 is over-sized relative to the 6.5 GB working set.
Key details
- Substrate sizing rule: right-size to actual working set, not aspirational load (feedback_substrate_right_size_to_working_set)
- M1-M4 cleanups still pending authorization:
- M1:
monarx-agent.service(1.3 GB) — TOS check required - M2: cap
user-1001.sliceat 30 GB (F2 incomplete) - M3:
system-tor.sliceinvestigation - M4:
snap.cups snap.cups-browseddisable (saves 215 MB)
- M1:
- BetterPhone Mac fleet hardware ETA = blocking variable for migration timing
Links
- openclaw-fragmentation-fix-2026-05-01 §F1-F4
- project_vps_reboot_5_internal_cascade_F1F4_2026-05-01
- hetzner — CCX33 documented as right-size option
- aws — EC2 Mac Ultra (impaired 2026-05-02 — separate substrate)
Decision 3 — Vault Canonicalization: Karpathy LLM Wiki Pattern
Date: 2026-05-02 Session-AUDIT ref: A1.5 (Phase 2 + vault canonicalization) Status: RATIFIED — vault active, timers running
Context
Two approaches considered for OpenClaw vault sync: (1) rclone bidirectional with Obsidian Sync, (2) git-based vault with rsync push from VPS + pull from Mac. The rclone approach had known reliability issues with conflict resolution.
Options considered
- A) rclone bidirectional (Obsidian Sync + rclone to Mac)
- B) Karpathy LLM Wiki pattern: VPS rsync push → GitHub private repo → Mac git pull (recommended)
- C) Obsidian Sync standalone (no VPS automation)
Ratified choice: B — rclone-into-Sync rejected
Vault at traewayrer/openclaw-vault (private GitHub). openclaw-vault-sync.timer (every 15 min push) + openclaw-vault-pull.timer (every 5 min pull/reverse-flow). Pattern: canonical content lives on VPS, Obsidian reads from vault. Mac edits sync via Obsidian Git → GitHub → VPS pull.
Key details
- Vault path:
/home/opsadmin/openclaw-vault/ - Sync timer:
openclaw-vault-sync.timer(15 min push) — registered in CLAUDE.md per G-SERVICE-PRE-START-DOC - Pull timer:
openclaw-vault-pull.timer(5 min pull) — registered in CLAUDE.md - OPEN: vault-sync.sh needs “preserve list” config OR new vault content must be backfilled to canonical first (A1.7-P1 follow-up #4 pending)
- A1.7-P0 SECURITY: 56 plaintext credential hits in vault from synced plans — redact-secrets.sh needed for ALL rsync paths
Links
- openclaw-obsidian-vault-2026-05-02
- project_openclaw_obsidian_vault_2026-05-02
- github —
traewayrer/openclaw-vaultprivate repo - request-lifecycle — vault sync in broader data flow
Decision 4 — OSIL Master Plan Ratified (B1-B12, B16)
Date: 2026-05-03 Session-AUDIT ref: A1.6 Status: RATIFIED — Phase 0 complete, B13-B15 pending
Context
The OpenClaw Self-Improvement Layer (OSIL) master plan shipped with 16 blockers (B1-B16). Henry ratified 13 of them in this session. The remaining 3 (B13, B14, B15) require sub-plan execution or external inputs.
Ratified choices (B1-B12, B16)
| Blocker | Decision | Notes |
|---|---|---|
| B1 Phase 0 auth | A — authorized | OSIL Phase 0 execution authorized |
| B2 First Reflexion pilot | D — deferred | Deferred to Phase 3 |
| B3 Eval set policy | C — recommended | Eval set approach confirmed |
| B4 Skill mutation governance | B — signoff first 4 weeks then auto-merge | Manual review in early weeks |
| B5 Hermes side-by-side | B — keep Hermes P2 | Hermes demoted from P0 to P2 |
| B6 op CLI auth | A — recommended | op:// CLI auth confirmed |
| B7 Cloud accounts | B — cloud free tier | Start with free-tier cloud accounts |
| B8 | Ratified | — |
| B9 | Ratified | — |
| B10 LiveKit | Ratified | LiveKit voice substrate confirmed; creds in 1P |
| B11 | Ratified | — |
| B12 | Ratified | — |
| B16 | Ratified | Comprehensive systems catalog + OSIL stack |
Pending (B13, B14, B15)
- B13 (B13a pending): IL AI replication — replicate IL AI without subscription using HubSpot + InvestorBase. Sub-project: project_osil_il_ai_replication_2026-05-03
- B14 (B14a pending): Twilio 10DLC resubmission — field-by-field A2P template. Sub-project: project_osil_twilio_10dlc_resubmission_2026-05-03
- B15: LiveKit live Sandbox test — awaiting execution
Links
- openclaw-self-improvement-layer-2026-05-03 — master plan (720 lines, 14 tiers)
- project_openclaw_self_improvement_layer_2026-05-03
- _OSIL — OSIL stub redirect hub
- vm-osil-overview — visual map
- supabase — CHOKEPOINT-1 tables OSIL writes to
Decision 5 — Visual Mapping + WikiLink Ratification (Q1-Q7 + 9 Sharpenings)
Date: 2026-05-03 Session-AUDIT ref: A1.7-P1 (RATIFIED 2026-05-03 morning) Status: RATIFIED — Phases A/B/C/D shipped overnight
Context
Two plans had Q1-Q7 decision gates each (Visual Mapping + WikiLink Optimization). Henry’s pre-bed authorization: “go” on all Q1-Q7 recommendations from both plans. Morning ratification added 5 OpenClaw-specific sharpenings to Visual Mapping (Δ2) and 4 sharpenings to WikiLink (Δ1).
Visual Mapping sharpenings (Δ2)
- Q2: Timer shifted to 04:30 LA (dodge main cron 80%-bottleneck window)
- Q3: Layer Iconify Phase 2 (vendor logos)
- Q4: Dual-output
*-detailed.mdcompanions (no node cap, desktop/iPad only) - Q5: Add Python explicitly for SQL/data work
- Q7: Canvas marked
device: desktop|ipad(iPhone-safe routing)
WikiLink sharpenings (Δ1)
- Q2: Asymmetry-as-policy (incident → rule one-way enforced via FRONTMATTER-SCHEMA.md)
- Q3: Read existing memory DB embeddings BEFORE Voyage API call (saves ~$0.50/run, cuts dry-run 4m21s → ~30s)
- Q5: Tiered density cap (30 default / 75 folder-moc / 100 agent-summary / unlimited hub)
- Q7: Pull → suggester chain documented in GRAPH-VIEW-GUIDE.md
WikiLink Δ2 (post-graph-review)
64 hubs across 8 sub-categories (35 integration / 8 process / 7 governance / 8 system / 5 resource / 5 domain / 4 team / 2 historical). 8 waves of execution sequenced. Estimated yield: +4,453 wikilinks → ~8,434 total at full completion.
Results
- Wikilinks: 308 → 3,981 (12.9×, 99.5% of 4,000 target)
- Unique targets: 213 → 1,027 (4.8×)
- 15 maps shipped overnight
Links
- openclaw-visual-mapping-2026-05-02 — Δ2 appended
- openclaw-vault-wikilink-optimization-2026-05-03 — Δ1 + Δ2 appended
- project_openclaw_visual_mapping_2026-05-02
- project_openclaw_vault_wikilink_optimization_2026-05-03
- governance-gates-network — one of 15 shipped maps
Decision 6 — Comprehensive Hub Inventory + 64-Hub Structure (Δ2)
Date: 2026-05-03 Session-AUDIT ref: A1.7 (WikiLink Δ2) Status: RATIFIED — 8-wave execution plan active
Context
During graph-review of the initial overnight wikilink run, the vault graph revealed structural incompleteness. A comprehensive hub inventory was designed: 64 hubs across 8 sub-categories, estimated to yield ~8,434 total wikilinks at completion.
Ratified structure
| Category | Count | Wave |
|---|---|---|
| Integration hubs | 35 | W1 (Tier 1, 15 done) + W2-W8 (Tier 2) |
| Process hubs | 8 | W1 (all 8 done) |
| Governance hubs | 7 | W2 |
| System hubs | 8 | W2 |
| Resource hubs | 5 | W3 |
| Domain hubs | 5 | W4 |
| Team hubs | 4 | W5 |
| Historical hubs | 2 | W6 |
Total: 64 hubs
Execution waves
- Wave 1 (W1): Tier 1 integration + process hubs — COMPLETE (24 hubs shipped)
- Wave 2 (W2): Governance + system + Tier 2 integrations — IN FLIGHT (this session)
- Waves 3-8: Resource / domain / team / historical / trading — pending
Links
- _index — hub-of-hubs (Wave 1 completed)
- MISSING-LAYERS-BACKLOG — living checklist by wave
- openclaw-vault-wikilink-optimization-2026-05-03 — Δ2 section
Decision 7 — Self-Correcting Wave Framework Validated
Date: 2026-05-03 Session-AUDIT ref: A1.8 (Wave 1 SELF-CORRECTING WAVE FRAMEWORK validated) Status: RATIFIED — framework is the standard for all future multi-hub waves
Context
Wave 1 demonstrated that the pre-flight → execution → audit → patch cycle (4 stages) produces near-zero rework when pre-flight runs before execution. Pre-flight (PF-A/B/C/D) surfaced 10 new entities + 13 scope changes + 6 universal field additions BEFORE execution began. Audit (AU-A/B/C) caught 15 fixes; patcher applied all 15 same-session.
Validated structure
| Stage | Sub-agents | Output |
|---|---|---|
| Pre-flight (PF) | 4 parallel scanners | Scope changes + field additions + idempotency checks |
| Execution (S) | 9-10 hub authors | Hub files at canonical + vault |
| Audit (AU) | 3 auditors | Fixes identified (AU-A/AU-B: minor FAIL; AU-C: PASS) |
| Patch (P) | 1 patcher | 15/15 + 7/7 verification |
Key metrics
- 24 hubs shipped in Wave 1 (15 integration + 8 process + 1 hub-of-hubs + OSIL stub)
- Vault wikilinks: 3,981 → 5,462 (+1,481, +37%)
- Zero violations: 0 plaintext secrets, 0 SOUL modifications, 0 genuine broken wikilinks
- Audit AU-A FAIL minor (5 patches applied), AU-B FAIL minor (10 patches applied), AU-C PASS
Pending framework formalization (A1.8-P2)
- Ship
~/.claude/skills/wave-execute/SKILL.md - Ship
feedback_self_correcting_wave_framework.md - Ship 6 per-domain audit checklists at
wiki/workspace-docs/audit-checklists/ - Add CLAUDE.md trigger row for wave execution
Links
- _wave-1-2026-05-03-morning-brief — authoritative Wave 1 brief
- _wave-2-2026-05-03-morning-brief — authoritative Wave 2 brief (Tier 2 + governance + system; 50-hub framework validation)
- _index — hub-of-hubs index
- MISSING-LAYERS-BACKLOG — Wave 2-8 tracking
Decision 8 — NemoClaw: Borrow L7 Cred-Proxy Pattern (B1=C, pending Henry ratification)
Date: 2026-05-03 Session-AUDIT ref: A2 Status: RECOMMENDATION SHIPPED — 6 blockers (B1-B6) pending Henry ratification
Context
NemoClaw is an NVIDIA alpha wrapper (Apache 2.0, 9k★) that adds OS-level security + L7 credential injection proxy to agent infrastructure. The L7 cred-proxy is the highest-leverage takeaway — directly counters 2026-05-03 vault leak + chronic G-NO-PLAINTEXT-CREDS violations.
Recommendation (not yet ratified)
B1=C: Borrow the L7 cred-proxy pattern now (OSIL Tier 1.5, ~2 days Node.js standalone at ~/.openclaw/tools/cred-proxy/). Do NOT install NemoClaw on VPS (Docker + k3s mismatch with systemd architecture).
Open blockers (6) — Henry decisions needed
| Blocker | Options | Recommendation |
|---|---|---|
| B1 Decision | A drop / B borrow / C borrow+pilot / D wait | C (borrow+pilot) |
| B2 Cred-proxy language | A Node.js / B Go / C Python | A (Node.js) |
| B3 Cred-proxy port | A 127.0.0.1:18901 / B AF_UNIX socket / C both | A first, C later |
| B4 Cred source | A master.env / B op:// CLI / C both with fallback | B if OSIL B6=A, else C |
| B5 Pilot host | A EC2 Mac Ultra / B Hetzner CCX23 / C defer | A |
| B6 Blueprint pattern | A now / B defer / C skip | B |
Links
- nemoclaw-audit-2026-05-03 — 16-section audit, 350+ lines
- project_nemoclaw_audit_2026-05-03
- aws — EC2 Mac Ultra as B5 pilot host
- 1password — B4 credential source
Decision 9 — [Reserved: Next Strategic Decision]
Date: TBD Status: SLOT RESERVED
This slot is reserved for the next Henry ratification. Candidate decisions awaiting ratification:
| Candidate | Plan | Status |
|---|---|---|
| NemoClaw B1-B6 ratification | nemoclaw-audit-2026-05-03 | Awaiting Henry |
| OSIL B13a (IL AI replication) | openclaw-self-improvement-layer-2026-05-03 | Awaiting Henry |
| OSIL B14a (Twilio 10DLC template) | openclaw-self-improvement-layer-2026-05-03 | Awaiting Henry |
| OSIL B15 (LiveKit live Sandbox test) | openclaw-self-improvement-layer-2026-05-03 | Awaiting Henry |
| Wave 2-8 execution authorization | MISSING-LAYERS-BACKLOG | Queued |
| Phase E.2 systemd-timer arming (vault wikilink auto-suggester) | openclaw-vault-wikilink-optimization-2026-05-03 | Awaiting Henry |
| Vault-sync.sh preserve-list architecture | openclaw-obsidian-vault-2026-05-02 | Awaiting Henry |
| Supabase migrations 001+002 execution | openclaw-fragmentation-fix-2026-05-01 | Awaiting Henry |
Decision 10 — [Reserved: Next Strategic Decision]
Date: TBD Status: SLOT RESERVED
Reserved for upcoming decisions. See Decision 9 candidate table.
Components
/home/opsadmin/.openclaw/workspace/SESSION-AUDIT.md— primary source; A1.x entries track each major decision/home/opsadmin/.claude/plans/— 91 plans (23 indexed, 68 orphans pending backfill)/home/opsadmin/.claude/projects/-home-opsadmin/memory/PLAN-INDEX.md— plan catalog (lazy-loaded)/home/opsadmin/.openclaw/workspace/HENRY-PREFERENCES.md— founder governance layer; recurring preferences
How it’s used
- Trigger: Before proposing architecture changes that might conflict with a prior ratified decision — read this hub first
- Workflow: Locate the relevant decision → check its ratified choice → verify the current state matches → if drift detected, surface as blocker per G-BLOCKER-SURFACING
- Agents involved: All 42 active agents (decisions are system-wide); Aurora has additional governance authority context
- Failure mode: Proposing a change that contradicts Decision 1-8 without acknowledging the prior ratification
- Success criteria: Zero “we already decided this” corrections from Henry
Cross-links
Governance hubs
- memory-rule-clusters — rules enforcing these decisions
- g-gates-network — cascade-failure gates (Decisions 1-4 are gate-anchored)
- plan-governance — plan Q&A protocol for capturing new decisions
- action-gate — authorization gate for Decisions 2-3 (substrate + vault)
Integration hubs cross-referenced
- anthropic — Decision 1 (dual Max plan paths)
- portkey — Decision 1 (CHOKEPOINT-1 enforcement)
- hetzner — Decision 2 (VPS substrate stay)
- aws — Decision 2 + Decision 8 (EC2 Mac Ultra)
- github — Decision 3 (vault canonicalization)
- supabase — Decision 4 (CHOKEPOINT-1 tables OSIL writes)
- 1password — Decision 8 (NemoClaw B4 cred source)
- twilio — Decision 4 (B14 10DLC resubmission sub-project)
- investorlift — Decision 4 (B13 IL AI replication)
Plans governing active decisions
- openclaw-fragmentation-fix-2026-05-01 — Decisions 1, 2 (§A1 cascade gates)
- openclaw-self-improvement-layer-2026-05-03 — Decision 4 (OSIL B1-B16)
- openclaw-visual-mapping-2026-05-02 — Decision 5 (Q1-Q7 sharpenings)
- openclaw-vault-wikilink-optimization-2026-05-03 — Decisions 5 + 6
- openclaw-obsidian-vault-2026-05-02 — Decision 3
- nemoclaw-audit-2026-05-03 — Decision 8
Process hubs affected by these decisions
- compliance-gates — Decision 4 (10DLC gates Decisions 4 → B14)
- cost-tracking — Decision 1 (Max plan cost implications)
- acquisitions-lifecycle — Decision 4 (B13 IL AI replication)
System maps
- governance-gates-network — gates anchoring Decisions 1-4
- request-lifecycle — impacted by Decision 1 (dual max plan)
- _wave-1-2026-05-03-morning-brief — Decision 7 (Wave 1 brief)
Memory projects
- project_second_max_plan_decision — Decision 1
- project_vps_reboot_5_internal_cascade_F1F4_2026-05-01 — Decision 2
- project_openclaw_obsidian_vault_2026-05-02 — Decision 3
- project_openclaw_self_improvement_layer_2026-05-03 — Decision 4
- project_openclaw_visual_mapping_2026-05-02 — Decision 5
- project_openclaw_vault_wikilink_optimization_2026-05-03 — Decisions 5 + 6
- project_nemoclaw_audit_2026-05-03 — Decision 8
Feedback rule inventory
| Cluster | Rule | Enforcement | Last fire |
|---|---|---|---|
| governance | feedback_blocker_surfacing | manual | ongoing |
| governance | feedback_plan_amendments_additive | manual | ongoing |
| governance | feedback_post_audit_persistence | manual | ongoing |
| governance | feedback_plan_status_inline_and_verify | manual | ongoing |
| governance | feedback_plan_completeness_gate | manual | ongoing |
Open issues / TODOs
- Decision 8 (NemoClaw B1-B6) awaiting Henry ratification — currently recommendation, not decision
- Decisions 9 + 10 slots reserved for upcoming ratifications
- SESSION-AUDIT A1.x entries should be backfilled for Decisions 1-3 via explicit A1.x numbering (currently embedded in plan context, not as numbered entries)
- PLAN-INDEX.md only has 23 of 91 plans indexed — 68 orphans pending Phase 11.6 D.5 backfill per openclaw-fragmentation-fix-2026-05-01
Recent activity
- 2026-05-03: hub created by W2-S2 (Wave 2 governance reference batch); Decisions 1-8 populated from SESSION-AUDIT A1.x entries + MEMORY.md active projects