Commit Graph

366 Commits

Author SHA1 Message Date
e5193b4f13 sync: auto-sync from HOWARD-HOME at 2026-06-19 04:51:32
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-19 04:51:32
2026-06-19 04:52:16 -07:00
7ff723d614 cascades 5GHz: data-driven clean-DFS channel plan APPLIED + validated (retry halved)
Did it right this time: completed the full channel survey (74/74) FIRST, let the
data choose. Survey proved DFS channels are 4-5x cleaner here (2-3% busy) than
non-DFS (149/157 = 12-28%, the property's worst). Per Howard: built the plan on
the 8 clean DFS 40MHz blocks (52/60/100/108/116/124/132/140), per-AP locally-
cleanest + neighbor graph-colored -> 0 co-channel, 3.5% avg busy. Applied to 72
non-mesh APs (width 40 too); mesh excluded; voice nudged back to 5GHz.

VALIDATED: 5GHz retry 8.7->3.8 avg (-56%), median 8.2->2.1 (-74%); 2.4 ~baseline;
satisfaction median 99; voice 31/31 (17 Poly on 5GHz, 3 coverage-cases on 2.4);
all 72 APs holding DFS, 0 radar vacates.

Kept tonight: 2b (2.4 power) + DFS plan + BSS-transition. 6GHz still WPA3-blocked.
auto_upgrade still OFF. Follow-up: recurring dfs-check radar monitor.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 04:37:19 -07:00
cc66da4f63 cascades 5GHz fix attempted (3a/3b) then ROLLED BACK; net kept = 2b only
Correction to earlier "deferred" report: after Howard pushed (5GHz needs fixing
regardless of 6GHz), I attempted width40 + non-DFS channel plan autonomously.
It did NOT validate live: 5G retry flat (8.7->8.4), 2.4 retry up (12->16) from
voice phones scattering to 2.4. ROOT CAUSE: the non-DFS channels here (149/157)
carry the heaviest EXTERNAL interference while DFS was cleaner -> forcing non-DFS
traded clean DFS for congested non-DFS. Rolled 5GHz back to baseline (channel+80MHz).
Kicked the 8 stuck Poly phones -> 6 back to 5GHz (rest are coverage-gap rooms).

End state recovered: satisfaction 98.4/med99, voice 31/31. Kept: 2b (2.4 power)
+ BSS-transition. 5GHz unchanged from start. auto_upgrade left OFF.

Doing 5GHz right needs the per-channel survey (choose channels by real cleanliness,
not non-DFS policy), reconsider non-DFS-only, 6GHz unblock (WPA3), band-steer voice.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 03:08:31 -07:00
3c85d2cfda cascades 2AM RF run: Phase 2b applied (2.4 power->medium x47); 2a/3a/3b deferred
Autonomous 2 AM window. APPLIED + verified: disabled 3AM auto-upgrade; 2.4
power Low/auto->MEDIUM on 47 radios (42 over-thinned floors 1-4 + 5 MemCare
floors 5/6), leaving 24 disabled + 5 mesh-auto untouched; CSCNet BSS-transition
on. Non-regressive (satisfaction 98.7->98.6, fleet 2.4 retry 12.0->11.7, 5G
8.7->7.4, MemCare 2.4 15.6->13.1); 30/31 voice phones online.

DEFERRED: 6GHz on CSCNet BLOCKED (Wpa3MandatoryFor6GHzBand — CSCNet is WPA2/PPSK;
needs supervised WPA3 conversion of the 427-client SSID). 3a/3b (width40 +
non-DFS channel plan, 19->0 dry-run) held for a supervised window since the
6GHz relief valve precondition failed and it's a coupled 74-AP change.

3AM auto-upgrade left OFF (re-enable when ready). Rollback source dev2.json.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 02:16:26 -07:00
c7239e1c08 cascades: MemCare RF baseline + 5GHz channel solve + change-window analysis
Read-only Phase 0 baseline extended to floors 5/6 (MemCare). Findings:
- MemCare = same 3 diseases as 1-4 but untreated (2.4 at full power, not
  over-thinned; all 5GHz on DFS+80MHz; min-RSSI off everywhere; 6GHz dark;
  Shelby .218 stuck on 2.4 at Nurse Station).
- 5GHz static non-DFS channel-plan dry-run: co-channel pairs 19 -> 0 (kills
  auto on all non-mesh APs; relieves AP 103/505 as fall-out).
- 2.4 1/6/11 re-color NEGATIVE right now (22 -> 28); defer until 2b restores
  a stable Medium-power radio set.
- 7-day hour-of-day traffic: ~600 clients 24/7 (only ~10% swing); trough
  01:00-04:00 MST. Change window decided: 2 AM start.

No changes applied. Survey stalled 68/74 (re-run before any 5GHz channel apply).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-18 22:31:19 -07:00
c2e5f4faeb cascades: recover 4 docs dropped by the history-rewrite/repo-split
The 2026-06-18 repo restructure (history rewrite + project->submodule split)
dropped these 4 Cascades files from the new clone. Copied byte-identical from
the pre-cutover claudetools.old clone (md5-verified):
- docs/network/network-optimization-master-plan.md
- docs/network/phase1-voice-qos-design.md
- reports/2026-06-18-voice-quality-diagnostic.md
- session-logs/2026-06/2026-06-18-howard-cascades-rf-voice-optimization-plan.md

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-18 20:21:27 -07:00
d5bfe76780 Merge remote-tracking branch 'origin/ad2' 2026-06-18 18:59:31 -07:00
436d81ab54 sync: auto-sync from HOWARD-HOME at 2026-06-18 15:22:15
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-18 15:22:15
2026-06-18 15:22:30 -07:00
1ffe7d6bcf sync: auto-sync from AD2 at 2026-06-17 16:21:47
Author: Mike Swanson
Machine: AD2
Timestamp: 2026-06-17 16:21:47
2026-06-18 13:02:33 -07:00
174d4f7806 dataforth: preserve fork operational context as clients/dataforth/CLAUDE.dataforth.md
Relocated verbatim from .claude/CLAUDE.md so the ad2 fork stops editing the
shared fleet harness doc. After rebase onto main, .claude/CLAUDE.md = the lean
fleet version; Dataforth ops context lives here. Keeps future ad2 syncs clean.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-18 13:02:31 -07:00
6f4cadb16f sync: auto-sync from GURU-5070 at 2026-06-18 12:49:38
Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-06-18 12:49:38
2026-06-18 12:51:08 -07:00
fa297f6930 sync: auto-sync from HOWARD-HOME at 2026-06-18 12:31:06
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-18 12:31:06
2026-06-18 12:31:14 -07:00
90f69715f0 sync: auto-sync from HOWARD-HOME at 2026-06-18 12:24:43
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-18 12:24:43
2026-06-18 12:24:54 -07:00
e0f9b1e221 sync: auto-sync from HOWARD-HOME at 2026-06-18 12:21:23
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-18 12:21:23
2026-06-18 12:22:42 -07:00
4cb32703b9 sync: auto-sync from HOWARD-HOME at 2026-06-18 09:36:06
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-18 09:36:06
2026-06-18 09:36:14 -07:00
7a10dff74c sync: auto-sync from HOWARD-HOME at 2026-06-18 08:29:03
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-18 08:29:03
2026-06-18 08:29:11 -07:00
95a29da79c sync: auto-sync from HOWARD-HOME at 2026-06-18 08:15:50
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-18 08:15:50
2026-06-18 08:16:10 -07:00
5fc874f2b3 sync: auto-sync from HOWARD-HOME at 2026-06-17 23:09:29
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-17 23:09:29
2026-06-17 23:09:39 -07:00
f36fb97eb8 sync: auto-sync from HOWARD-HOME at 2026-06-17 22:46:27
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-17 22:46:27
2026-06-17 22:46:37 -07:00
dc4560cf27 sync: auto-sync from HOWARD-HOME at 2026-06-17 17:49:01
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-17 17:49:01
2026-06-17 17:49:20 -07:00
8f602b3e17 sync: auto-sync from HOWARD-HOME at 2026-06-17 16:01:19
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-17 16:01:19
2026-06-17 16:01:28 -07:00
cbe7175fbb sync: auto-sync from HOWARD-HOME at 2026-06-17 15:47:50
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-17 15:47:50
2026-06-17 15:48:18 -07:00
40ff8accd3 sync: auto-sync from HOWARD-HOME at 2026-06-17 13:53:40
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-17 13:53:40
2026-06-17 13:53:49 -07:00
23e2493082 sync: auto-sync from HOWARD-HOME at 2026-06-17 13:26:13
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-17 13:26:13
2026-06-17 13:26:21 -07:00
cabbc0eb6e sync: auto-sync from HOWARD-HOME at 2026-06-17 12:34:44
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-17 12:34:44
2026-06-17 12:35:36 -07:00
Winter Williams
05d5ed83ac sync: auto-sync from GURU-BEAST-ROG at 2026-06-17 12:18:02
Author: Mike Swanson
Machine: GURU-BEAST-ROG
Timestamp: 2026-06-17 12:18:02
2026-06-17 12:18:09 -07:00
58343bd656 sync: auto-sync from HOWARD-HOME at 2026-06-17 10:16:13
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-17 10:16:13
2026-06-17 10:16:21 -07:00
c239b3ece6 sync: auto-sync from HOWARD-HOME at 2026-06-17 10:10:48
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-17 10:10:48
2026-06-17 10:10:59 -07:00
265fa0edd8 sync: auto-sync from HOWARD-HOME at 2026-06-17 09:52:59
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-17 09:52:59
2026-06-17 09:53:09 -07:00
8f72178d8a sync: auto-sync from HOWARD-HOME at 2026-06-17 09:35:47
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-17 09:35:47
2026-06-17 09:35:58 -07:00
2fea35714b sync: auto-sync from HOWARD-HOME at 2026-06-17 00:09:45
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-17 00:09:45
2026-06-17 00:09:53 -07:00
f26e0a1da1 sync: auto-sync from HOWARD-HOME at 2026-06-16 23:54:06
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-16 23:54:06
2026-06-16 23:54:14 -07:00
7ac55e56fe sync: auto-sync from HOWARD-HOME at 2026-06-16 21:34:19
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-16 21:34:19
2026-06-16 21:34:40 -07:00
294ee5f8f6 unifi-wifi: fix apply-wlan wlan_bands 6e->6g; add 5GHz + 6GHz phases to Cascades runbook
- apply-wlan.sh: wlan_bands token was "6e" but this controller stores "6g" (verified live on Cascades
  Guest SSID) -> setting 6 GHz membership would have failed. Fixed band values + option names (5g6g/6g/all).
- Cascades 2.4 runbook: folded in Phase 5 (5 GHz: width 80->40 on 76 radios; channel plan with the
  DFS decision flagged -- DFS empirically clean here, so including clean-DFS gives ~20 channels vs ~5
  non-DFS-only for 77 APs) and Phase 6 (6 GHz: root cause = production SSID CSCNet not on 6 GHz [bands
  2g,5g only]; add 6g + enable bss-transition; band-steering already on). Per Howard.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-16 21:34:40 -07:00
33beed8489 cascades 2.4 runbook: Floor 1 per-AP (skip 128/108) instead of zone — no pointless 128 re-enable 2026-06-16 21:34:39 -07:00
f4c8b2832b cascades 2.4 runbook: exclude Floors 5 & 6 per Howard; Floor 4 power-down done 2026-06-16 21:34:39 -07:00
d60648404f sync: auto-sync from HOWARD-HOME at 2026-06-16 19:40:32
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-16 19:40:32
2026-06-16 19:40:40 -07:00
876f1058fc sync: auto-sync from HOWARD-HOME at 2026-06-16 19:29:08
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-16 19:29:08
2026-06-16 19:29:21 -07:00
b3c8ee2828 unifi-wifi: pfSense gateway access via SSH (pfSense-ssh.sh) + pfSense health section; layer OFF HOLD
DECISION (Mike, 2026-06-16): drop the RESTAPI package — VPN + SSH shell reads the same data and makes
changes. Confirmed Cascades pfSense is Plus 25.07-RELEASE (current; the "too old" premise was wrong) and
admin SSH = real shell (no menu). The upgrade/package blocker is moot; compat layer is off hold.

- NEW scripts/pfsense-ssh.sh: audit (version/WAN-media/gateway-events/DHCP-exhaustion/states/DNS/load/NIC),
  dhcp (pool utilization + no-free-leases), run "<cmd>" (arbitrary, incl changes; operator-gated). Cred
  from clients/<slug>/pfsense-firewall; system OpenSSH via askpass. Validated live on Cascades.
- audit report: added "pfSense health check (2026-06-16)" — DHCP NOT exhausted (192.168.0.0/22 pool 270/507,
  0 no-free-leases), DNS up, dual-WAN stable (no gateway flaps), states/load healthy => gateway is NOT a
  WiFi factor; the 2.4 GHz RF work is the sole fix. (Minor: igc3/WAN2 I225 2.5G counter quirk, not a fault.)
- ROADMAP §E + SKILL.md updated to the SSH backend decision; REST pfsense-backend.sh kept dormant/optional.
- Remaining: named gated CONTROL verbs over SSH (easyrule block-ips, pf/fw toggles) + optional gw-* dispatch.
- Closed obsolete coord todo (upgrade-pfSense-for-RESTAPI).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-16 18:42:54 -07:00
69a259be34 sync: auto-sync from HOWARD-HOME at 2026-06-16 18:09:18
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-16 18:09:18
2026-06-16 18:09:27 -07:00
aa523187ee sync: auto-sync from HOWARD-HOME at 2026-06-16 17:03:02
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-16 17:03:02
2026-06-16 17:03:10 -07:00
4ac311c8b9 cascades: 2.4 GHz remediation runbook for tonight (mesh-safe power-down + per-floor disable, gated)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-16 16:46:17 -07:00
de7ad33671 sync: auto-sync from HOWARD-HOME at 2026-06-16 14:11:33
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-16 14:11:33
2026-06-16 14:11:42 -07:00
ce254922c8 sync: auto-sync from HOWARD-HOME at 2026-06-16 13:43:14
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-16 13:43:14
2026-06-16 13:43:23 -07:00
09eadc8acb sync: auto-sync from HOWARD-HOME at 2026-06-16 13:30:26
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-16 13:30:26
2026-06-16 13:30:35 -07:00
e89d815896 sync: auto-sync from HOWARD-HOME at 2026-06-16 13:12:16
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-16 13:12:16
2026-06-16 13:12:26 -07:00
d18948d22a grabb-durando: GND-SERVER full health/security baseline (RED)
First onboarding-diagnostic baseline for GND-SERVER (Grabb & Durando DC/file/RRAS box,
gd.local, 192.168.242.200). Grade RED: 2 critical (host firewall OFF on all profiles;
OS-EOL flag — false positive, build 17763 is Server 2019, supported to 2029), 6 warning
(Defender/AV unconfirmed, built-in Administrator enabled, 1 pending update, 2 disk errors
/14d, pending reboot, 2 stopped auto services), plus tempadmin local admin + no confirmed
BitLocker. Immutable JSON + report under onboarding-baselines/.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-16 08:11:35 -07:00
f2ff4a7f89 sync: auto-sync from HOWARD-HOME at 2026-06-16 07:49:26
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-16 07:49:26
2026-06-16 07:49:34 -07:00
e79dd49636 sync: auto-sync from HOWARD-HOME at 2026-06-16 07:44:03
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-16 07:44:03
2026-06-16 07:44:15 -07:00
b4fa030221 sync: auto-sync from HOWARD-HOME at 2026-06-16 07:26:57
Author: Howard Enos
Machine: HOWARD-HOME
Timestamp: 2026-06-16 07:26:57
2026-06-16 07:27:06 -07:00