# Session Log — 2026-06-01 — Howard — Crash recovery / orientation (no code work)

## User
- **User:** Howard Enos (howard)
- **Machine:** Howard-Home
- **Role:** tech

## Session Summary

Recovery session after a crash/machine reboot. The user asked to resume prior work. No
half-finished edits existed: both the ClaudeTools parent repo and the `gururmm` submodule were
clean working trees, and no coord locks were held by this session — everything in flight before the
crash had already been committed and merged.

Reconstructed state from the two most recent Howard session logs (both 2026-05-31) and live coord
API queries. Confirmed the GuruRMM submodule tip at `69d8635` with BUG-015/SPEC-011 (ARP Programs &
Features, PRs #35/#36/#37) and the UI_GAPS reconciliation (PR #38) all merged. Surfaced four unread
coord broadcasts (verbatim), the most significant being two fresh P1 bugs filed today (13:59) by
GURU-KALI — BUG-016 (Linux systemd unit omits `/var/lib/gururmm` from `ReadWritePaths` → EROFS on
device_id persist) and BUG-017 (agent re-mints device_id on persist failure instead of caching),
both now also coord todos (`7eb7e60a`, plus server-side dedup `5ada8ff4`).

Presented the resume options: (a) the windows-update-mvp Phase 1 build (the explicit "next" from
the last log, Task 1 = DB migration + PolicyData windows_update section, build-ready in
`specs/windows-update-mvp/plan.md`), (b) BUG-016+017 paired agent/installer fix, or (c) those plus
the machine_uid server dedup. User elected to save and sync and move on to something else — no code
work performed this session.

## Key Decisions

- Did not pick up any of the GuruRMM threads; user deferred to a different task. State captured for
  a clean future resume rather than starting work that would be interrupted again.
- Did not mass-mark the four coord messages read — they are `to_session: broadcast` (21 unread
  broadcasts total), not session-targeted, so per-session read-marking does not apply.

## Problems Encountered

- **whoami-block.sh / sync.sh "not found":** an earlier diagnostic `cd projects/msp-tools/guru-rmm`
  persisted the Bash working directory into the submodule, so repo-root-relative script paths
  failed. Resolved by prefixing commands with `cd /c/claudetools`.

## Configuration Changes

- Created: `session-logs/2026-06-01-howard-crash-recovery.md` (this log). No other files touched.

## Credentials & Secrets

- None created or discovered this session.

## Infrastructure & Servers

- Coord API: `http://172.16.3.30:8001/api/coord` — queried for locks (0), status, and pending todos.
- GuruRMM submodule (`projects/msp-tools/guru-rmm`, repo `azcomputerguru/gururmm`): main at `69d8635`.

## Commands & Outputs

- `git status --short` (parent + submodule) — both clean.
- `curl -s .../coord/locks?project_key=gururmm` — `{"total":0,...}` (no locks held).
- `curl -s .../coord/todos?for_user=howard&status_filter=pending` — 13 pending, incl. GuruRMM
  BUG-017 (`7eb7e60a`), machine_uid dedup (`5ada8ff4`), agent IP capture (`7459428e`), LHM temp
  (`bde31c52`), onboarding findings[] defense-in-depth (`15ec665c`).

## Pending / Incomplete Tasks

- **GuruRMM next-up (user to choose):**
  - `windows-update-mvp` Phase 1 — Task 1 = DB migration + PolicyData windows_update section.
    Full plan in `specs/windows-update-mvp/plan.md`. The flagged "remaining big item."
  - **BUG-016** (P1) — add `StateDirectory=gururmm` (preferred) or append `/var/lib/gururmm` to the
    systemd unit `ReadWritePaths` in `agent/src/main.rs:836-852`. GURU-KALI offered to take this.
  - **BUG-017** (P1) — OnceLock-cache the device_id in `agent/src/device_id.rs:22-39` so persist
    failure doesn't re-mint. Do NOT switch to /etc/machine-id (OEM image collisions, see :7-10).
  - **machine_uid dedup** (`5ada8ff4`) — port GuruConnect SPEC-004 (machine_uid + partial unique
    index) to the RMM server so churning device_ids stop creating ghost rows.
- All prior-session pending items still stand (see 2026-05-31 Howard logs): undeployed BUG-009/011
  tails, #3 AgentDetail Client row enrich + #4 dead-endpoint removal (deferred behind build-server.sh
  BUG-003 risk), SPEC-021 build, judgment-call roadmap markings.

## Reference Information

- GuruRMM submodule tip: `69d8635`. Recent merges: #38 UI_GAPS (`0cedfe8`), #37 BUG-015 docs
  (`be0302b`), #36 DisplayIcon (`9a2245b`), #35 ARP (`07d14bd`).
- Prior session logs: `session-logs/2026-05-31-howard-gururmm-roadmap-and-features.md` (SPEC-021,
  SPEC-022, windows-update-mvp shape-spec), `session-logs/2026-05-31-howard-gururmm-roadmap.md`
  (BUG-015, SSE auth PR #31, agent IP capture PR #32).
- BUG-016/017 full entries: `docs/FEATURE_ROADMAP.md` lines 301 and 338.
- Spec folder to resume Phase 1: `specs/windows-update-mvp/` (shape/plan/references/standards.md).
