--- name: gururmm-session-logs-submodule-save description: gururmm session-logs/docs live in the guru-rmm git submodule (not parent ClaudeTools); sync.sh won't commit submodule contents. GURU-5070 CAN push them directly over HTTP (Git Credential Manager) — `git push origin HEAD:main`; only the SSH path (git@…:2222) is blocked metadata: type: reference --- `projects/msp-tools/guru-rmm` is a **git submodule** (gururmm repo, branch main). So gururmm session logs (`projects/msp-tools/guru-rmm/session-logs/...`) and docs are tracked in the **submodule**, not the parent ClaudeTools repo. `/save` -> `sync.sh` commits/pushes the **parent** ClaudeTools repo only; it leaves submodule **gitlinks unstaged** and NEVER commits submodule *contents*. So a session log written under the submodule is left **uncommitted** by a normal `/save` — commit it inside the submodule yourself. **GURU-5070 CAN push to gururmm directly (verified 2026-06-11).** The submodule's `origin` is the **HTTP** remote `http://172.16.3.20:3000/azcomputerguru/gururmm.git`, and **Git Credential Manager** has stored creds for that host (`git config credential.http://172.16.3.20:3000.provider generic`). So from GURU-5070, in the submodule: `git add ...`, `git commit`, then `GIT_TERMINAL_PROMPT=0 git push origin HEAD:refs/heads/main` (HEAD is usually **detached** on a submodule — push `HEAD:main`, not bare `main`). `git fetch origin` first to confirm a clean fast-forward (`git log --oneline origin/main..HEAD`). The old scp-to-new-box workaround is NO LONGER NEEDED. Only the **SSH** push path is blocked: `ssh -p 2222 git@172.16.3.20` -> Permission denied (GURU-5070's key isn't authorized; the new box .30/.47 uses `gururmm-build-server`). Use HTTP. **WARNING — pushing to gururmm main triggers the build webhook** (Pluto), which builds AGENTS and publishes a new `-latest`. The fleet auto-updates. Server changes are NOT auto-deployed (deliberate deploy). Order accordingly (agent-safe changes can ride the webhook; server/reaper/migration changes deploy separately). **After pushing:** advance the parent gitlink — `git -C add projects/msp-tools/guru-rmm`, commit, push ClaudeTools. (Do this AFTER the submodule push so the gitlink references a commit that exists on the remote.) Also: a `sync.sh` run can `git checkout` the submodule back to the gitlink-pinned commit, detaching from fresh local commits — advance the gitlink promptly so they're pinned. See [[gururmm-physical-server-storage]].