0.14.0
Added
-
Routed view: every router draws (#50, ADR-0002 Decision 4). The
routing tier holds them all: routers whose lanes don't overlap share a
column, overlapping ones — an HA pair, a core router behind the edge
firewall — take successive columns toward the internet, and whoever
holds a default route stands last beside its cloud (a multi-egress site
gets a cloud per default route). Router boxes are open frames now, so a
lane bound for a further router visibly passes the nearer one; a lane
lists every router that claims it (all gateways in the tooltip); a
tunnel leaves the router that terminates it. A plain router wears the
router glyph and color, a firewall the firewall's, as on the Overview.
Scenario tests cover the HA pair, the inner router, and two egress
routers — no live site yet exercises them, so they are the contract. -
Routed view: Load mode (#50, ADR-0002 Decision 3). The router's
per-network legs are the only edges on this view with counters — its
VLAN interfaces, when the firewall is a polled device — so Load
heat-tints a segment where each lane meets the router, the number
beside it, and the default route's drop from the WAN interface, on the
topology's palette with the samenow/24h peakselect
(load=peak). Busier direction over capacity; a declared service
capacity beats the port speed. Lanes and attachments go quiet; grey
means no measurement. The demo seeds firewall counters so the public
snapshot shows it. -
Routed view: Protocol mode (#50, ADR-0002 Decision 3). The third
radio paints address families: IPv4 lanes teal, IPv6 lanes amber, a
dual-stack lane teal with an amber dash riding it, and every attachment
dot — a host's leg, the router's gateway — colored by the families it
actually holds there. The select narrows to one family and dims
whatever lacks it (proto=4/proto=6; the default is both). A leg
now lists every address a device holds on a network, and a rail knows
its IPv4 and IPv6 gateways separately (both in the tooltip). -
Routed view in the snapshot (#50). The break-glass file now carries
the L3 picture under the topology map, from the same builder and
template as /routed — never a second implementation. Its state lives in
memory there (the URL belongs to the topology map on the same page),
thevertical railschip redraws in place instead of reloading, and
double-click jumps to the device's section or the VLAN's row. -
Topology: derived zones (#47). A translucent hull now sits behind
each hypervisor and the guests that are nodes on the map (a virtualized
firewall, a router VM), and a fainter one around the whole cluster when
the hypervisors share a vSphere — named after the vSphere server, like
the routed view's box. Zones are computed from the parent relationship
patchbay already holds, never drawn by hand; a grouping force pulls
members together, the VM-on-host edge hides inside a drawn zone, and
zones draw under everything and take no clicks. In the tiers layout a
zone keeps only the members in its hypervisor's band, so a hull never
wraps the fabric between an Edge-band guest and its host. Thezones
chip (zones=0) turns them off. The demo's hypervisors gained specs
so the public snapshot shows the #44 line. -
Topology: node detail panel (#45). Clicking a node no longer
leaves the map: a panel floats over the map's right edge with the
node's role, status and how long ago it was seen, address, hardware,
OS, specs, host, VLANs, and every link with the port at each end, the
speed, utilization, and who reported it. A peer's name in the list
selects that node; Escape or × closes; the selection rides the URL as
sel=. The device page is the secondary action — double-click, or
⌘/Ctrl-click for a new tab — the routed view's contract. The panel
reads the graph JSON, so the snapshot has it too (its link jumps to
the device's section). Read-only by design: edits belong on /ops. -
Topology: node card refresh (#44). Every card node now shares one
anatomy: a rounded-square icon chip anchors the left edge, the status
LED pins the top-right corner, and the name and subtitle read from a
fixed inset — so a mixed row of switches, hypervisors, APs, and hosts
scans as one kind of thing. Hypervisors gain a third line of hardware
mini-specs (24c · 192 GB), recorded by the vSphere collector from
vCenter's hardware summary into two newdevicescolumns (cpus,
mem_bytes, migrated on start) and printed on the device page and
Overview card too; the line only appears when the data does. Role color
stays the stroke and the glyph, status stays the LED — no glow channel.
Fixed
-
The routed view remembers your view options. A bare
/routed— the
rail's link — restores the last-used mode, family and load choice,
visibility toggles, and axis from the browser's storage by rewriting the
URL on arrival, the way/topologyhas since #16. The two maps now
follow one rule: an explicit URL always wins outright,focusis never
remembered, and the snapshot is exempt. -
Device merge dropped the new specs columns. A hypervisor that
LibreNMS also polls folds its vSphere row into the SNMP-owned primary,
and the merge's identity field list must name every column or the
specs vanish on every poll (the wayip6once did). Named, with a
regression test. -
Topology: speed and VLAN chips on edges (#43). The bare mid-edge
speed text is now a pill on the edge, and under it a second pill names
the link's VLANs when there are three or fewer — an access link says
VLAN 20, a trunk carrying twelve stays quiet (the tooltip lists
them). Chips carry facts, not provenance: card fill and a line border,
so edge color stays the reporter's alone; the speed text still warns
amber at ≤100M and red at ≤10M, and the load view appends the
utilization. Theedge chipschip (chips=0) hides them. -
Topology: port names on hover (#48). Edges no longer print their
interface names permanently — on a dense map neighboring labels
overlapped into noise. Hovering an edge (its hit area is now a wide
invisible twin of the line, which also carries the tooltip) reveals the
names at both ends; hovering a device reveals the names on every one of
its links — the "what is plugged into this switch" question. Revealed
names paint above every node. Theport nameschip (ports=1) shows
them all, for the old always-on picture. -
Device totals in the nav rail (#46). Every page's rail carries how
many devices patchbay knows and how they split: up, down, and stale — a
device no source has reported for two hours counts as stale whatever
its last status said, the same window that ages out inferred links.
Inferred unmanaged switches are a guess, not a device, and don't count.
Collapsed, the numbers stack under their dots; the block links to the
Overview. The snapshot header carries the same totals, frozen at
generation beside the data ages.