SEC-M6: Role-based policy enforcement - ForbiddenError exception for unauthorized access - Policy.authorize!/3 in 6 LiveView modules - Superuser bypass preserved - 45/45 tests pass Architecture: Oversized module splits - topology.ex: 1590 -> 685 lines (-57%) - New sub-modules: topology/evidence.ex, topology/map_view.ex, topology/stats.ex - New devices/ordering.ex - 217/217 tests pass Architecture: Vendor HTTP pagination consolidation - HTTP.paginate/5 shared helper in Towerops.HTTP - visp, splynx, sonar refactored to use shared pagination - 94/94 tests pass Test Health + Credo fixes: - api_tokens.ex: verify_token/1 flattened (nesting depth reduced) - 3 new test files: AgentReleaseWebhookWorker, RfLinkHealthLive, MaintenanceLive.Index - Weak assertions strengthened - doctest Towerops.JobMonitoring added - 255/255 tests pass |
||
|---|---|---|
| .. | ||
| mix/tasks | ||
| snmpkit | ||
| towerops | ||
| towerops_web | ||
| snmp_lib.ex | ||
| snmp_mgr.ex | ||
| snmpkit.ex | ||
| towerops.ex | ||
| towerops_native.ex | ||
| towerops_web.ex | ||