c4ch3c4d3
ed50cd7b5a
fix(enterprise,deauth,filters): PineAP validation round fixes, live-verified on Pager 24.10.1
...
- deauth/kick: use full PINEAPPLE_DEAUTH_CLIENT hak5cmd app name (BUG 1)
- _allow_all_ssids: PINEAPPLE_NETWORK_FILTER_MODE deny so karma lets
clients associate after deploy (BUG 2)
- enterprise inner EAP (BUG 3), two root causes found by live experiment:
- hostapd never wildcard-matches a bare `*` identity for phase-2
lookups; eap_users now uses quoted empty prefix `""* ... [2]`,
which prefix-matches any inner identity
- pineape_auth_pass=1 forwards inner EAP to pineapd, which has no
standalone responder; deploy forces 0 and stop restores 1
Residual: plaintext MSCHAPv2 capture is firmware-blocked on 24.10.1
(MSG_DEBUG compiled out of the karma wpad; `-f` silently ignored);
documented in code comments and the validation report.
- ISSUE 4: point pineapd.@hostapd[0].mgmtiface at wlan1wpa during 5 GHz
WPA deploys so handshakes/loot populate; cleared on stop
- ISSUE 5: radio0 set_ap path polls 90 s across the wifi-reload window
and retries set_ap once if the iface still has not appeared
- ISSUE 6: skills docs use `llc && eth.type == 0x888e` (firmware tcpdump
matches 0 frames on `eapol`)
- ISSUE 7: capture state helper detects dead-pid / iface-down, cleans up,
status reports {running:false, stale:true} instead of zombie running
- tests: fix global os.path monkeypatch leaks between test modules that
broke test_mk8_events/test_reliability_api under discovery; add
regression coverage for all fixes above (463 tests green)
Live validation evidence and newly discovered firmware quirks
(DEVICE_FILTER_DELETE no-op, dropbear rate limiting) recorded in
docs/validation/2026-08-23-pineap-validation-report.md.
2026-08-23 18:29:47 -06:00
bzuccaro
a04319dfc8
feat(webui,recon): drop PineAP mode card, sort recon report APs by signal
...
- Remove the Passive/Active/Advanced mode card from the PineAP dashboard
and move the RF Role (radio1) card into its slot, along with the now
dead mode state machinery and mode-card-only CSS.
- Sort recon HTML report access points by signal strength (strongest first).
2026-08-23 09:29:10 -06:00
bzuccaro
e316450271
docs: spec for PineAP dashboard mode-card removal
2026-08-23 09:20:19 -06:00
bzuccaro
2ef07a28fc
feat(reliability): PSK uplink security-mode fallback chain (sae-mixed/sae/psk2 with PMF)
2026-08-23 08:19:20 -06:00
bzuccaro
501fa455ce
fix(reliability): resolve STA netdev by phy membership (netifd ignores ifname); sae-mixed for PSK uplinks
2026-08-22 20:37:11 -06:00
bzuccaro
132cf4d77a
fix(reliability): explicit hop baseline restore, immune to stale pager snapshot
2026-08-22 19:37:57 -06:00
bzuccaro
712d381093
fix(reliability): supervisor restores hop baseline unless a role holds the pause
2026-08-22 19:31:15 -06:00
bzuccaro
107cf17611
fix(ui): sync role select to live role; mark RF chip unavailable on poll failure
2026-08-22 19:26:39 -06:00
bzuccaro
a1b449c9be
fix(deploy): busybox ash lacks SECONDS; use date +%s for health deadline
2026-08-22 19:23:51 -06:00
bzuccaro
6b84665347
fix(deploy): no dangling symlink on first-deploy failure, deadline-capped health poll, release pruning, honest commit rc
2026-08-22 19:18:42 -06:00
bzuccaro
92a2a6d8ee
docs: field runbook — checklists, engagement flow, recovery procedures
2026-08-22 19:11:04 -06:00
bzuccaro
55d4beb9d4
fix(reliability): probe section existence via uci show, not an option key
2026-08-22 18:59:57 -06:00
bzuccaro
1133068a09
fix(reliability): recreate missing pineapd section; honest uci-set reporting
2026-08-22 18:45:44 -06:00
bzuccaro
23ca901e82
feat(reliability): supervisor continuously enforces known-good UCI set
2026-08-22 18:37:22 -06:00
bzuccaro
b9a64c6560
fix(reliability): supervisor re-parks stock-resurrected dummy STA on interval
2026-08-22 18:31:06 -06:00
bzuccaro
5625310977
fix(reliability): converge runtime after profile restore (park dummy STA, re-raise monitors)
2026-08-22 18:26:21 -06:00
bzuccaro
61c929d891
docs: reliability core subsystem guide (v1.4.0)
2026-08-22 18:17:27 -06:00
bzuccaro
60db235f0b
fix(reliability): converge runtime on uplink revert; bound health endpoint cost (I3,I4)
2026-08-22 16:52:29 -06:00
bzuccaro
b25c98b7c7
fix(reliability): hop governance belongs to rfplan, not boot reconciler (I2)
2026-08-22 16:51:52 -06:00
bzuccaro
ba3e1b1ae0
fix(reliability): clear boot marker on graceful shutdown (I1)
2026-08-22 16:51:33 -06:00
bzuccaro
027646c905
fix(reliability): pool size counts any whitespace; deploy ZIP var remote-expands
2026-08-22 16:23:50 -06:00
bzuccaro
eae47d99bf
fix(reliability): encode str stdin in device_run; smoke drill path fixes + regression tests
2026-08-22 16:23:50 -06:00
bzuccaro
d954b6e90d
fix(smoke): conditional role drill, healthy-gate for drills, exit reaping
2026-08-22 16:01:32 -06:00
bzuccaro
25bae3b4a2
test(smoke): on-device reliability suite
2026-08-22 15:51:05 -06:00
bzuccaro
63528ff794
fix(deploy): unauth health poll, validate-before-gate, fullmatch names, reload-only-on-ok
2026-08-22 15:41:37 -06:00
bzuccaro
1bb15de258
feat(deploy): reliability API routes, atomic releases, version single-source
2026-08-22 15:20:39 -06:00
bzuccaro
aba08e36c7
fix(ui): guard chip shows pending count, not raw list
2026-08-22 15:03:15 -06:00
bzuccaro
4c1144ab32
feat(ui): reliability panel events/counters, RF plan chip and controls
2026-08-22 14:55:49 -06:00
bzuccaro
bace45d6e4
fix(reliability): rfplan review fixes — cli commit, assoc poll, ensure_attack wiring, idle reload
2026-08-22 14:35:12 -06:00
bzuccaro
15cd3c5eb8
feat(reliability): phy1 RF role manager with uplink-on-radio1
2026-08-22 14:20:05 -06:00
bzuccaro
78aab64af0
fix(reliability): watchdog max lifetime + serialized gate entry (review fixes)
2026-08-22 14:08:25 -06:00
bzuccaro
a008bb9167
feat(reliability): risky-op preflight snapshots + detached rollback watchdog
2026-08-22 13:56:25 -06:00
bzuccaro
7a27218149
feat(reliability): supervisor sampling, event feed, boot marker
2026-08-22 13:41:49 -06:00
bzuccaro
e329fd2a1c
docs(plan): watchdog probe uses monitor presence, not stock-disabled wlan0mgmt
2026-08-22 13:27:33 -06:00
bzuccaro
7d1eb62d75
feat(reliability): START=49 boot guard installed by deploy
2026-08-22 13:26:09 -06:00
bzuccaro
a05754f908
feat(reliability): boot-time UCI reconciler
2026-08-22 13:12:14 -06:00
bzuccaro
88e6471820
feat(reliability): UCI profile snapshot store
2026-08-22 13:00:59 -06:00
bzuccaro
1d17704f72
fix(reliability): journal fail-safe serialization, per-line parse, review hardening
2026-08-22 12:51:22 -06:00
bzuccaro
496f7c58e3
feat(reliability): JSONL event journal with rotation and counters
2026-08-22 12:39:19 -06:00
bzuccaro
2c24107f42
docs: plan — reliability core implementation
2026-08-22 11:59:16 -06:00
bzuccaro
4b03ecb1fd
docs: spec — reliability core + integrated supervisor
2026-08-22 09:52:25 -06:00
bzuccaro
86d26d8457
fix: show BSSID and sources in recon association tooltip
2026-08-21 08:46:19 -05:00
bzuccaro
883a839692
test: cover recon identity associations
2026-08-21 08:41:17 -05:00
bzuccaro
cd54402892
feat: show recon client identities and associations
2026-08-21 08:40:25 -05:00
bzuccaro
21e308386f
feat: include recon identity in exports
2026-08-21 08:31:47 -05:00
bzuccaro
a67faecee9
feat: associate recon clients with confirmed networks
2026-08-21 08:26:58 -05:00
bzuccaro
2c9fa8d137
fix: use live macchanger OUI path
2026-08-21 08:20:09 -05:00
bzuccaro
797db1816a
feat: resolve recon device manufacturers locally
2026-08-21 08:15:21 -05:00
bzuccaro
d149cb13fd
docs: plan recon identity enrichment
2026-08-21 08:10:03 -05:00
bzuccaro
922c3ec4ae
docs: design recon identity enrichment
2026-08-21 08:06:02 -05:00