Release 2.6.0: network map, Infrastructure tabs, hide items, attention above the tabs #9

Merged
domuk merged 1 commit from Dev into main 2026-11-07 20:29:19 +00:00
Owner

What changes

  • Network map (admin → Network map):
    • Sites side by side, each a tree of what is plugged into what and what runs on each host, with VPNs between sites.
    • An Unmapped list, with "Is it this?" suggestions from integration logic, IP or name. You choose Yes, Not this or Choose…
    • + Router for devices no integration reports; these stay on the map only.
    • Ports and speeds on lines, from UniFi or typed in.
    • Dragging boxes is built but switched off.
  • Infrastructure popups show what each item runs on and what runs on it.
  • Infrastructure tabs: Hardware, VMs/Containers, Services, Components, Network, Clients, Security, Voice Assistants, Acked.
    • Needs attention sits above the tabs.
    • Drives are named "NAS1 - Disk 2".
  • Hide from the home page on every imported item and Home Assistant device. Hidden items stay usable on cards.
  • Phone: the yellow warning box is gone, and the jump bar wraps onto two rows.
  • UniFi: now reports each device's and client's uplink. Port, speed and Wi-Fi band come from the legacy API with the same key, if it answers.

Migration 0016: entity.hidden, device.hidden, map_site, map_node, map_link, map_skip. Schema 16.

New files:

  • backend/app/netmap.py
  • backend/migrations/0016_hide_and_map.sql
  • frontend/static/js/netmap.js

Home Assistant cards (replacing the HA box) are not in this release; they're waiting on mockups.

Verified

  • Logic tests on throwaway data:
    • the migration applies;
    • tabs are assigned;
    • hidden items leave the home page but stay approved;
    • suggestions come from integration logic and from the hand-added router's IP range;
    • loops are refused;
    • a router with things under it can't be deleted;
    • skips stick;
    • VPN lines appear;
    • the parent chain is right.
  • Headless Chromium, with no JS errors:
    • admin map: placing, moving, accepting suggestions, adding a site and router, typing a link speed;
    • home page at three columns, two columns and phone;
    • the popup's parent chain.
  • Packaged archive on 2.5.3 data: migrates, and /, /admin and the map load cleanly.

Not verified

Not tried against real services:

  • UniFi uplinks;
  • the legacy port lookup, which needs the API key to be accepted on /proxy/network/api.
## What changes - **Network map** (admin → Network map): - Sites side by side, each a tree of what is plugged into what and what runs on each host, with VPNs between sites. - An **Unmapped** list, with "Is it this?" suggestions from integration logic, IP or name. You choose Yes, Not this or Choose… - **+ Router** for devices no integration reports; these stay on the map only. - Ports and speeds on lines, from UniFi or typed in. - Dragging boxes is built but switched off. - **Infrastructure popups** show what each item runs on and what runs on it. - **Infrastructure tabs:** Hardware, VMs/Containers, Services, Components, Network, Clients, Security, Voice Assistants, Acked. - Needs attention sits above the tabs. - Drives are named "NAS1 - Disk 2". - **Hide from the home page** on every imported item and Home Assistant device. Hidden items stay usable on cards. - **Phone:** the yellow warning box is gone, and the jump bar wraps onto two rows. - **UniFi:** now reports each device's and client's uplink. Port, speed and Wi-Fi band come from the legacy API with the same key, if it answers. Migration 0016: `entity.hidden`, `device.hidden`, `map_site`, `map_node`, `map_link`, `map_skip`. Schema 16. New files: - `backend/app/netmap.py` - `backend/migrations/0016_hide_and_map.sql` - `frontend/static/js/netmap.js` Home Assistant cards (replacing the HA box) are **not** in this release; they're waiting on mockups. ## Verified - Logic tests on throwaway data: - the migration applies; - tabs are assigned; - hidden items leave the home page but stay approved; - suggestions come from integration logic and from the hand-added router's IP range; - loops are refused; - a router with things under it can't be deleted; - skips stick; - VPN lines appear; - the parent chain is right. - Headless Chromium, with no JS errors: - admin map: placing, moving, accepting suggestions, adding a site and router, typing a link speed; - home page at three columns, two columns and phone; - the popup's parent chain. - Packaged archive on 2.5.3 data: migrates, and `/`, `/admin` and the map load cleanly. ## Not verified Not tried against real services: - UniFi uplinks; - the legacy port lookup, which needs the API key to be accepted on `/proxy/network/api`.
domuk merged commit df84a55259 into main 2026-11-07 20:29:19 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
domuk/Ion-Homepage!9
No description provided.