9.3 KiB
2026-07-15 — Taylen ER-X UISP onboarding + Cascades CARF tech-plan verification
User
- User: Mike Swanson (mike)
- Machine: GURU-5070
- Role: admin
Session Summary
Two distinct workstreams from the Taylen client site. First, brought a newly-installed
EdgeRouter X under UISP remote management. The ER-X was already reaching the self-hosted
UISP controller (unms.azcomputerguru.com) and checking in every minute, but sat in the
unauthorized pending queue with no site — so it was reachable but not actually manageable
(no config/firmware/backup push). Authenticated to the UISP v2.1 API with the vaulted admin
account, created a new endpoint site "Taylen" (address 1141 W Calle Concordia, Tucson AZ),
and authorized the device into it. Verified it flipped to authorized/active. UISP had already
auto-queued the EdgeOS firmware upgrade 1.10.11 -> 3.0.1 on authorization (auto-firmware
policy); flagged to Mike that it is a major-version jump that reboots the router. Created the
Taylen client wiki page and index row.
Second, analyzed the finalized Cascades of Tucson CARF Technology & System Plan (docs/proposals/cascades-technology-plan-2026-07-15.md, authored by Howard, pulled in via sync). Read it against the CARF intake worksheet and the project memory. Assessment: strong 8-area action document but missing several CARF conformance elements, plus two "Done"-style claims that needed live verification. Mike chose to verify the two live facts first.
Ran two parallel read-only verification agents. (1) Datto EDR console: CS-SERVER is genuinely protected (Datto EDR sensor + Datto AV, live heartbeat, current defs) — the Area 8 claim holds, and the wiki's "Datto removed from CS-SERVER 2026-06-26" note is stale. (2) M365 Graph on the Cascades tenant: the Area 2 claim that relicensing "reduces monthly cost" is WRONG — Business Premium is 45 owned / 41 assigned / 4 free, the ~30 office staff sit on a suspended Business Standard sub and none hold Premium, so relicensing is ~$572/mo new spend (26 net-new seats), best case ~$374/mo after converting shared mailboxes. Sent Howard a coord message with the findings and recommended edits, then saved.
Also resolved a sync issue: the first /sync from the Taylen network couldn't reach the
internal Gitea host (172.16.3.20) — no route from the client LAN. Mike brought up Tailscale;
the retry hit the usual errorlog.md rebase conflict (everyone appends), which was resolved by
keeping both sides in newest-first order, and the push completed.
Key Decisions
- Used the UISP REST API (login -> x-auth-token -> devices/sites) rather than SSHing the EdgeRouter or the controller. UISP is the source of truth for "remotely manageable," and the admin account was already vaulted — simplest path that directly answers the question.
- Authorized the ER-X into a NEW site "Taylen" (vs an existing site) per Mike's choice, matching how other clients are organized (one endpoint site per client/location).
- Did NOT re-trigger or cancel the firmware upgrade — UISP had already queued 3.0.1 to the correct platform (e50); re-POSTing risked interfering with the in-flight task. Flagged the reboot/major- jump to Mike and offered to hold/cancel rather than acting unilaterally on a production reboot.
- For the Cascades plan, verified the two soft claims with live data BEFORE proposing edits — an inaccurate "Done" in a CARF survey file is worse than an honest "in progress." Ran the two checks as parallel read-only agents (independent, high-output skill investigations).
- errorlog.md conflict resolved by union (keep both sides) in newest-on-top order — the file is append-only and both sides were new entries; no content dropped.
Problems Encountered
- UISP site create schema differed from the read schema. POST /sites rejected
maximumEndpointsand emptyaddress; the write body is flat (name/address/note). Site UPDATE needed the full nested read-shape via PUT (PATCH 404'd; flat PUT 400'd "SiteDescription required") — resolved by GET -> edit description.address -> PUT the whole object. - First sync failed: no route to internal Gitea (172.16.3.20:3000 timed out) because the session was on the Taylen client network. Resolved by Mike starting Tailscale, then re-running sync.
- errorlog.md rebase conflict on the retry (Howard's 7/15-7/14 entries vs my 7/13 GURU-5070 entries). Resolved by keeping both, markers stripped, newest-first; rebase --continue succeeded.
- Stale repo docs surfaced during verification: the wiki CS-SERVER "Datto removed 6/26" line and docs/cloud/m365.md ("34 Business Standard", no mention of the 45 Premium now owned). Flagged, not yet fixed.
Configuration Changes
- Created
wiki/clients/taylen.md(new client wiki page — ER-X/UISP record). - Modified
wiki/index.md— added Taylen client row (auto-merged with Howard's incoming edits during rebase). - Modified
errorlog.md— conflict resolution (kept both sides); prior GURU-5070 7/13 entries retained. - Created
session-logs/2026-07/2026-07-15-mike-taylen-uisp-cascades-techplan.md(this log). - UISP (external system, not repo): created endpoint site "Taylen"; authorized device "Taylen" ER-X into it; set site address. Firmware upgrade 1.10.11->3.0.1 queued (auto).
Credentials & Secrets
- No new credentials created or discovered. Used the existing vaulted UISP admin account
(
infrastructure/uisp-server, web_admin_userazcomputerguru) for the API session; token was ephemeral and temp files were cleaned up. - Cascades M365 verification used the remediation-tool investigator app (App ID bfbc12a4-f0dd-4e12-b06d-997e7271e10c) against tenant 207fa277-e9d8-4eb7-ada1-1064d2221498 — no creds surfaced.
Infrastructure & Servers
Taylen — EdgeRouter X (UISP-managed)
- Device "Taylen": ER-X EdgeRouter X, platform e50, MAC 60:22:32:54:91:c8, EdgeOS 1.10.11.
- WAN IP 24.23.65.18/23. Site address 1141 W Calle Concordia, Tucson AZ.
- UISP device id
199f1226-8053-4220-9928-0d0d733e27e0; UISP site "Taylen" id6d44a2a7-942a-433b-bd50-072e3499e765. - UISP controller: unms.azcomputerguru.com -> 172.16.3.25 (DockerUISP on Jupiter 172.16.3.20).
- Status: authorized / active. Firmware upgrade to EdgeOS 3.0.1 queued.
Cascades of Tucson — verification targets
- Datto EDR: tenant azcomp4587, org "Cascades of Tucson" id 2d5ea96e-3228-461b-9c60-13ae464b61d8. CS-SERVER agent b41befcf-e418-4d0d-8552-bc7662364d07 (WS2019, 192.168.2.248, public 72.211.21.217). 35 enrolled agents, all Datto AV enabled; 28 online / 7 stale.
- M365 tenant cascadestucson.com (207fa277-e9d8-4eb7-ada1-1064d2221498): SPB (Business Premium) 45 owned / 41 assigned / 4 free; O365_BUSINESS_PREMIUM (Business Standard) SUSPENDED, 30 consumed.
Commands & Outputs
- UISP login:
POST /nms/api/v2.1/user/login(JSON body) ->x-auth-tokenresponse header. - List devices:
GET /nms/api/v2.1/devices(headerx-auth-token). Filtered for name "Taylen". - Create site:
POST /nms/api/v2.1/sitesbody{"name","address","note"}(flat) -> 200 + site id. - Authorize:
POST /nms/api/v2.1/devices/{id}/authorizebody{"siteId":"<id>"}->{"result":true,"message":"Authorized"}. - Update site:
GET /sites/{id}-> editdescription.address->PUT /sites/{id}(full object). - Sync fail:
fatal: unable to access 'http://172.16.3.20:3000/...': Failed to connect ... Could not connect to server— resolved viatailscale up(was stopped). - Coord: message id
6c0abc15-a590-450d-b3e6-a74b9ef174e6-> Howard-Home/claude-main.
Pending / Incomplete Tasks
- Taylen firmware upgrade 1.10.11 -> 3.0.1 is QUEUED and will fire on the router's next ready window, rebooting it (~3-5 min outage). Mike to decide: let it ride or cancel/defer to after-hours. Verify config survived the major jump and the device re-checks-in green afterward.
- Taylen open items: ISP not confirmed (WAN 24.23.65.18/23); EdgeOS admin creds not captured (vault under clients/taylen/ if custom); no GuruRMM/Syncro/endpoints documented.
- Cascades tech-plan edits (option B, not yet done): (1) correct Area 2 M365 cost framing to the verified ~$374-572/mo new spend; (2) reword Area 8 "every device" -> "every managed/enrolled device (35), incl. server"; (3) add missing CARF elements (standard citation + manual edition, needs-basis paragraph, strategic-alignment paragraph, named plan owner, completion-date column) from the intake worksheet; (4) refresh stale docs (wiki CS-SERVER line + docs/cloud/m365.md). Sent to Howard via coord.
- Cascades cleanup: DESKTOP-TRCIEJA still active in Datto (off-site 10.0.20.x) — legacy cleanup open. Two very-stale Datto agents (desktop-kqsl232 ~47d, maintenance-pc ~26d) — confirm off vs decommissioned.
- Cascades M365: consider converting 8 role/shared mailboxes (accounting@, hr@, frontdesk@, etc.) to free shared + removing former employee jodi.ramstack to cut the net-new Premium count.
Reference Information
- Tech plan:
clients/cascades-tucson/docs/proposals/cascades-technology-plan-2026-07-15.md - CARF intake worksheet:
clients/cascades-tucson/docs/proposals/carf-technology-plan-intake.md - Project memory:
.claude/memory/project_cascades_carf_tech_plan.md - Taylen wiki:
wiki/clients/taylen.md - UISP vault entry:
infrastructure/uisp-server - UISP web: https://unms.azcomputerguru.com
- Coord message to Howard:
6c0abc15-a590-450d-b3e6-a74b9ef174e6