sync: auto-sync from HOWARD-HOME at 2026-07-07 08:48:12

Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-07-07 08:48:12
This commit is contained in:
2026-07-07 08:48:40 -07:00
parent 8efc351e25
commit 2e262c619e
4 changed files with 39 additions and 0 deletions

View File

@@ -3,6 +3,7 @@
## Reference
- [ACG resource map](reference_resource_map.md) — **READ THIS FIRST** when a task references a server/service/tenant/API. What we have access to, how to connect from this machine, per-machine exceptions, gotchas. Points at the detail files below.
- [MSP360 backup monitoring](reference_msp360_backup_monitoring.md) — Authoritative "is client X actually backing up / last run" source for the whole fleet (NOT B2 bucket contents). MSP360 MBS API `/api/Monitoring`, vault `msp-tools/msp360-api.sops.yaml`. CompanyName also IDs B2 buckets (ACG-PST=Peaceful Spirit, ACG-TCA=Tucson Coin).
- [Backup checks only for billed clients](feedback_backup_check_only_billed.md) — Don't scan backup status for clients with no billed Data Backup line (Syncro schedule qty=0); verify billed clients only. Non-billed-but-backing-up = revenue-leak question for Mike/Winter, not a scan target.
- [ALIS (Medtelligent)](reference_alis_medtelligent.md) — Cascades assisted-living EHR. API host api.alisonline.com, community 622; username must be tenant-qualified (howard.enos@cascadestucson). Staff are READ-ONLY via API — create/change staff via web-UI Staff Import .xls. Use the `alis` skill.
- [GuruRMM User Manager](reference_gururmm_user_manager.md) — GuruRMM has a built-in per-agent User Manager tab (reset_password/enable/disable/groups for local+domain+AAD endpoint users; domain users only on a DC via `is_dc`). Use it, NOT raw Set-ADAccountPassword via /rmm. Endpoints: /api/agents/{id}/users + /users/action.
- [RMM map network drive (err67 double-hop)](reference_rmm_map_network_drive.md) — Pushing a persistent mapped drive to a remote share via /rmm user_session fails with err67/1702 (impersonated token = no network cred/double-hop). Plant HKCU:\Network\<drv> keys + cmdkey; mounts at next interactive logon. Immediate visibility needs the live session (ScreenConnect).

View File

@@ -0,0 +1,20 @@
---
name: feedback_backup_check_only_billed
description: Only verify backup status for clients that actually bill a backup line - don't scan non-billed clients
metadata:
type: feedback
---
Backup verification is scoped to clients **marked for backups** — i.e. those with a billed
Data Backup line (Syncro recurring-schedule line qty > 0). If a client is NOT billed for
backup, do NOT scan their machines / MSP360 / backends for backup status. (Howard,
2026-07-07, GPS audit — Marty Ryan has Svc = A E only, no backup line, so stop checking.)
**Why:** "is X backing up" only matters where the client pays for it; scanning non-billed
clients burns time/endpoint calls and produces findings nobody asked for.
**How to apply:** determine billed-backup status first (Syncro backup line qty — see the
`/syncro schedules`/`schedule` pull, authoritative), then only verify the ones with a seat.
Non-billed clients that happen to be backing up are a separate "revenue leak" question for
Mike/Winter, not a per-machine scan target. Related: [[feedback_backup_targets_never_guessed]],
[[reference_msp360_backup_monitoring]].

1
.vwp_cmd Normal file
View File

@@ -0,0 +1 @@
1b12f383-2e17-428c-8507-aa47c105b63f

View File

@@ -67,3 +67,20 @@ Closed the session by reviewing the three bugs touched: marked BUG-024 and BUG-0
- Coord: 4 BUG-024 messages marked read (`cf35bf16`, `20daedf9`, `e2b01835`, `9659c5fc`); sent mike `5f8b33f7` (BUG-024 deploy) + `8c45b4dd` (detector fixed); coord todo `f7382334` (BUG-026, mike/gururmm).
- Discord DMs to mike: `1523821940047876146` (Scileppi access), `1523834569760178259` (BUG-026).
- Vault also synced an unrelated incoming entry `clients/altschuler/gururmm-site-main.sops.yaml`.
## Update: 2026-07-07 08:47 PT — bug roadmap close-out + Discord read capability
Continuation of the same session (spanned past midnight into 2026-07-07).
**Bug tracking (guru-rmm `docs/FEATURE_ROADMAP.md`):**
- BUG-024 → **FIXED** and BUG-025 (build change-detector excluded `agent/Cargo.toml`) filed **FIXED** (`fe5468e`) — commit `c248214`.
- Dug into why BUG-024's crash-loop never self-recovered → root-caused and filed **BUG-026** (OPEN/HIGH, commit `66152da`): the unix rollback watchdog is spawned via `setsid` inside the `gururmm-agent.service` cgroup; the unit sets no `KillMode` so the default `control-group` SIGKILLs the watchdog during the very restart it guards (`setsid` changes session, not cgroup). It is the only rollback path on unix (`restart_service` does `std::process::exit(0)` before the inline `rollback_binary` arm is reachable). Fix = spawn via `systemd-run --scope --collect` + bounded retry + verify. Per Howard, **flagged for Mike to fix**, not implemented: coord todo `f7382334` + Discord DM `1523834569760178259`.
**Discord reply visibility gap (resolved):**
- Discovered `discord-dm.sh` was send-only, so replies from mike/winter/rob were invisible (coord/repo sync never carries Discord replies). Confirmed the bot token CAN read DM history via `GET /channels/<id>/messages` (Message Content intent only gates gateway events, not REST fetch on channels the bot participates in).
- Added `discord-dm.sh read <user|#channel> [limit]` (reuses the same recipient/token/DM-open logic; prints oldest-first, `>>>` = their reply). Updated the SKILL.md + trigger description; added feedback memory `feedback_discord_read_replies`. Synced (skill deployed to global).
- Findings from reading: **Mike has NOT replied** to Scileppi (2026-07-06 22:44) or BUG-026 (23:34) — his last reply was 2026-07-05 (MSP360/Datto backups thread). **Winter** has a stale unanswered ask from 2026-06-24: "mark tickets resolved that have a status of customer reply and also have billing" (Syncro cleanup — not yet actioned, flagged to Howard).
**Decision:** automated reply-forwarding (a scheduled watcher polling `read`, or a bot-side relay) was scoped but NOT built — Howard opted to check replies manually via `discord-dm.sh read <user>` when needed.
**Still waiting on Mike:** (1) Scileppi SL-SERVER access to finish BUG-024's last agent, (2) BUG-026 fix. Check with `discord-dm.sh read mike`.