# 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.
  - 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.

## 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.
- Decide/implement update model for dashboard mockup (`/dashboard-mockup.html`): event-driven where possible, periodic fallback where needed.
- 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-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.
