Component versions

GET /api/bng/about                                     read_only

Assembles a component version matrix from five heterogeneous sources — the
installed Python packages, vppctl show version, uname -r, the controller's
own reported software version, and the host operating system.

{
  "bng":        { "version": "0.9.11" },
  "core":       { "version": "0.9.0" },
  "vpp":        { "version": "vpp v24.06-release built by …" },
  "controller": { "version": "1.2.0" },
  "kernel":     { "version": "6.8.0-45-generic" },
  "host":       { "hostname": "bng-edge-01", "distro": "Ubuntu 24.04.1 LTS", "arch": "x86_64" }
}

Every field degrades to the literal string "unknown" on any failure and the
call always returns 200. A box with no VPP running, or an unreachable
controller, still renders a complete version matrix with the fields it could
determine. Note that vpp.version is the full multi-line output of
show version, not a bare semantic version.

This is the correct endpoint for inventory reconciliation and for gating an
automation script on a minimum platform version.