Repo root keeps only README.md; DOCS.md and DB_SCHEMA.md move to docs/ with their cross-references updated. The chat-session handoff packets land in docs/handoff/ as point-in-time records with a README marking the repo docs as the live source of truth. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
3.5 KiB
Next steps & open decisions
Immediate (blocking the current deploy)
-
Resolve the branch/provisioning question (VSCode instance — you own this):
- Confirm which branch the checkout is on and whether it's the intended one.
- Confirm whether
obmp-grafana/provisioning/(dashboards + datasources) is committed, and on which branch. - If provisioning exists but Grafana didn't load it: verify files reached
/var/openbmp/grafana/provisioning/, check ownership (Grafana UID 472),docker compose restart grafana, check logs for provisioning errors. - If provisioning was never committed (UI-only): export current/expected dashboards to JSON and commit them so greenfield deploys reproduce them. This closes a real portability gap.
-
Pin the deploy to a known branch/commit. A greenfield deploy is only reproducible if the checkout is pinned. Recommend documenting "clone, check out at , run deploy.sh" — otherwise "clone and run" silently depends on whatever branch was checked out. Consider adding a branch/commit check to deploy.sh or the README.
Deployment decisions still open
-
Router BMP port: 5000 vs 1790. deploy.sh now defaults router-facing to 1790 (IANA standard, avoids crowded 5000). BUT the lab routers are currently configured to send to 5000. Decision: either
- reconfigure the routers to 1790 (Sam leaned this way — cleaner, avoids
common-port collisions), which needs the IOS-XR
bmp serverport change on each device and a compose mapping1790:5000on native hosts; or - keep 5000 and deploy with
--router-port 5000. If moving to 1790: router-bmp-config.md needs the port updated, and the native-host composeports:for the collector needs1790:5000.
- reconfigure the routers to 1790 (Sam leaned this way — cleaner, avoids
common-port collisions), which needs the IOS-XR
-
Sizing profiles. DEPLOYMENT-TYPES.md has three types with ballpark resources (estimates, not measured). Sam is watermarking a prod-realistic node to replace estimates with real numbers. When those land, update the figures. There was an idea to add a
--sizing lab|prod-lite|prodselector that writes*_MEM_LIMITblocks into.env; deferred until watermarks exist. -
Doc name sync. deploy.sh was renamed to the three deployment types after the docs were written; a couple of README/doc tables may still reference the old scope names (feeders/full/standalone). Cosmetic — aliases keep it working — but worth a sync pass.
Integration decisions
-
Where do the bundle files live? deploy.sh + the 4 docs currently exist only in Sam's chat outputs. Decide whether they get committed to the repo (and to which branch), and whether deploy.sh supersedes or complements any existing deploy tooling in the repo you may know about that I don't.
-
Reconcile with whatever you (VSCode) have been building. I have no visibility into your repo work — the EVPN consumer, gobgp config, any CI, or other tooling. If there's overlap or conflict between deploy.sh and existing repo scripts, that's a reconciliation for you + Sam. Flag anything I've duplicated or contradicted.
Things that are DONE (don't redo)
- Native docker-in-WSL is installed and working; Docker Desktop is the wrong substrate (finding 8). Don't re-recommend Desktop.
- The
.envHOST_IP/auth reconciliation, staged bring-up, port preflight, Windows-LAN-IP detection, and Docker Desktop guard are all built and tested in deploy.sh. - The bind-dir + stale-volume handling in deploy.sh is hardened (down+rm before AND after setup.sh, plus a dir-existence check).