# MEMORY.md

Long-term, curated memory for this workspace.

## Purpose
Capture durable context that should persist across sessions:
- Preferences and working style
- Important decisions and rationale
- Ongoing projects and status
- Stable personal context that improves assistance quality

Keep this file concise and high-signal. Daily details belong in `memory/YYYY-MM-DD.md`.

---

## Profile
- **Name:** Braden
- **Timezone:** America/Los_Angeles
- **Primary Rules:**
  1. Love the Lord your God with all your heart, all your strength, and all your mind.
  2. Love your neighbor as yourself.
  3. Be content with what you have; do not compare yourself to what others have.

## Working Preferences
- Be precise over clever.
- Security-first, local-first by default.
- Structured, concise, technically precise communication.
- Separate explanation from commands.
- Include verification steps.
- Primary role: operate as Braden’s operations command center.
- Help design systems, validate execution, and think in structured operational models.
- Execution structure is governed by IDENTITY.md and AGENTS.md hierarchy.
- Default output model: Executive Orchestrator normalization.
- Deep operational breakdown used only when explicitly requested.
- Job alert profile defaults:
  - Recruiter URL source comes from task page context.
  - Location anchor ZIP: 92870
  - Radius: 50 miles
  - Compensation floor: $140,000+ annual
  - Include on-site, hybrid, and remote roles
  - Alert mode: immediate notifications
- Telegram command policy:
  - Read-only commands: execute immediately.
  - Reminder requests from Braden: execute immediately without extra approval.
  - Memory-candidate ingestion from user-provided conversation/transcription content: execute immediately without extra approval.
  - Other state-changing commands: present change description, risks, and exact shell commands; require explicit confirmation text: "Reply CONFIRM to proceed."
  - Individual Notion task updates (single-task field/date/status/label/project edits): execute immediately without extra approval.
  - /rollover command: execute immediately without CONFIRM — resolves target session, writes RFC-001 §9 handoff summary to today's memory file, then invokes /reset to rotate the session. If handoff write fails, does NOT reset. No shell execution involved.
  - Execute non-reminder/non-memory-ingestion/non-individual-Notion-task state-changing commands only after receiving CONFIRM.
  - Never send secrets (tokens/API keys/bot tokens) over Telegram unless Braden explicitly says: "send it in Telegram".
  - Use only the current Telegram DM thread for replies/reminders; do not route to any legacy/original Gizmo thread.
  - After execution, report verification results and where logs were written.
  - Log all state-changing actions in memory.
  - Delivery/documentation default for this Telegram DM:
    - Keep visible Telegram replies to a single message when practical.
    - Use concise summaries in Telegram for long or highly structured output.
    - Store long drafts/specs/code/SQL as workspace artifacts.
    - Publish finalized process/procedure/reference documentation to Notion.
- Manual trigger phrases in this Telegram DM:
  - "verify system state" → run `/Users/openclaw/.openclaw/workspace-maintainer/scripts/verify-system-state.sh` and report PASS/DRIFT.
  - "session audit" → run `/Users/openclaw/.openclaw/workspace/scripts/cron/session_watchdog.py`, return `format_summary()` output, and surface any alerts that fire.
  - "gateway status" → run `openclaw gateway probe` and return the current reachability state (probe result only; no escalation sequence).

## Environment
- Primary OS: macOS
- Shell: zsh
- Workspace root: `/Users/openclaw/.openclaw/workspace`

## Active Projects
- QMD-style knowledge system rollout (workspace `knowledge/` + nightly consolidation scripts).
- Dashboard mockup lifecycle for `dashboard-mockup.html` served via Tailscale URL (`https://macbook-air-bm.tail123813.ts.net/dashboard-mockup.html`) with periodic review/update needs.
- Notion task operations model rollout + comment-ops architecture page (`Notion Comment Ops Architecture (Review Ready)`) with Registry/Event Inbox/Action Log scaffolding.
- Git reliability hardening: checkpoint/push automation plus incident detection/recovery notifications.

## Key Decisions
- 2026-02-21: Assistant identity initially set to **Gizmo** (Assistant; professional, structured, security-first; emoji 🛠️).
- 2026-02-24: Assistant name changed to **Dorian** at Braden’s request.
- 2026-02-21: Core operating principles and interaction rules established in `SOUL.md`.
- 2026-03-02: Telegram routing is single-thread only (current DM); legacy/original Gizmo thread must never be used.
- 2026-03-02: Notion task ops defaults: 60% confidence threshold for Dorian-candidate inference; execution approval required by default; use existing `Responsible` and `Completed` fields as canonical.
- 2026-03-02: Notion comment handling direction is event-driven/native-notification oriented; do not implement broad polling cron at this time.
- 2026-03-02: Bee ingestion policy: Bee app approval (`confirmed=true`) is trusted as allow signal for downstream Notion promotion (apply quality filtering for obvious garbage/noise, but do not require duplicate manual approval solely due to source).
- 2026-03-03: Telegram policy exception added — individual Notion task updates do not require CONFIRM.
- 2026-03-03: Notion task workflow preference — set `Completed` status to `In progress` when work starts, and to `Needs review` when Dorian-side work is complete.
- 2026-03-05: For task-by-task instructions, write a structured task-body update each time including (1) context, (2) instructions received, and (3) action plan; keep this as the default operating rule going forward.
- 2026-03-05: Instruction-lane policy added — this Telegram session is for instruction/understanding only (no completion actions in-thread). Execution/completion is handled in Notion/background lanes; once understanding is confirmed, move to next topic.
- 2026-03-05: Agenda/task lists should include direct Notion task links, and when possible include a Notion deep link format for opening in-app.
- 2026-03-05: When transitioning to a new task in instruction lane, restate the task title before capturing instructions.
- 2026-03-05: On “ready for next task” prompts, include both the task title and the Notion URL.

## Open Loops
- Move core automation/control to dedicated computer arriving Wednesday; re-verify Notion auth, cron jobs, and notification paths after migration.
- Restart /Users/openclaw/event-router/router.js and run THR-9 verification tests once the filter change is approved.
- Monitor RFC-002 gateway watchdog for Step 2/3 escalation events; audit /tmp/openclaw/gateway-watchdog.log if fired.
- Decide/implement update model for dashboard mockup (`/dashboard-mockup.html`): event-driven where possible, periodic fallback where needed.
- SPECIALIST-ARCHITECTURE.md Phase 6: Evaluate v2 specialists (Communications, Finance Modeling, Theological Reflection) after Phase 1–5 patterns stabilize. No action needed until usage demonstrates clear need.
- SPECIALIST-ARCHITECTURE.md Q1–Q4: Four open implementation questions documented in Section 11 — contract delivery mechanism, task ID generation, token budget guardrails, contract logging path. Address during live operation as patterns emerge.
- Future Architecture Adjustment:
  - Formalize completion schema in `OPERATING-MODE.md` so the contract is machine-parsable.
  - Proposed format:
    - Completion Contract
    - Done:
    - Findings:
    - Decision needed:
    - Next step:
  - Purpose: Enable deterministic parsing for future automation and pipeline integration.

## Change Log
- 2026-03-24: Upgraded Dorian (main agent) orchestrator model from openai-codex/gpt-5.3-codex to openai-codex/gpt-5.4. Both the global default and per-agent explicit model field in openclaw.json were updated. All 9 ChatGPT Plus OAuth models added to the allowlist.
- 2026-03-24: Designed and implemented SPECIALIST-ARCHITECTURE.md — three-tier specialist routing model (Dorian → Specialist → Worker). Phases 1–5 complete. WORKER-CONTRACT.md updated to universal contract format. Three specialists live: Systems Architect (gpt-5.3-codex), Research Intelligence (gpt-5.4), Ops Manager (gpt-5-mini background / routing-table-selected for specialist work). All specialist workspaces have SPECIALIST-CONTRACT.md, IDENTITY.md, and SOUL.md updated. AGENTS.md updated with three-path dispatch model and canonical reference to SPECIALIST-ARCHITECTURE.md. Phase 6 (Communications, Finance Modeling, Theological Reflection) deferred pending demonstrated need.
- 2026-03-21: Notion router now forwards via `openclaw agent --session-id 95876ac8-1aad-45b3-9c4a-72ad1ff59dc7` (hook lane UUID) + verification complete; THR-9 marked Resolved.
- 2026-03-21: Notion webhook router filters + payload updated (Action: EXECUTE removed, Threads DB scoped, enriched payload); restart/tests pending review.
- 2026-03-21: RFC-001 (Session Health Watchdog) deployed — 10-min cron active, manual "session audit" trigger wired, Notion logging verified. First advisory fired at 44.4% session token usage.
- 2026-03-21: RFC-002 (Gateway Health Watchdog) deployed — LaunchAgent ai.openclaw.gateway-watchdog loaded, 15s recovery waits in place, "gateway status" trigger wired. Known Limitation: alerts depend on gateway reachability. Logs at /tmp/openclaw/gateway-watchdog.log.
- 2026-03-21: Worker delegation confirmed — inline subagent tests passed, all heavy execution now routes through registered worker agent.
- 2026-03-21: Telegram DM lane rollover initiated at ~44.4% — context captured, fresh thread to follow.
- 2026-02-21: Initialized structured long-term memory.
- 2026-02-23: Added QMD-style knowledge layer (`knowledge/`) with retrieval/index/consolidation scripts.
- 2026-02-27: Logged gateway token-mismatch incident after OpenClaw token rotation; added operational rule to verify `gateway probe` + `status` + `cron list` before considering rotation complete.
- 2026-03-02: Added memory hardening phases A/B/C (routing policy, corrections log, promotion rubric, nightly critical-facts checks).
- 2026-03-02: Added proactive ops notifiers (critical-facts nightly notifier and git-push incident notifier).
- 2026-03-02: Added dashboard mockup context and Notion task/comment-ops decisions after backfill audit.
