Skip to content

v0.7.1-beta: BGP Visibility Details - #50

Merged
DeepZone merged 1 commit into
mainfrom
codex/implement-v0.7.1-beta-bgp-visibility-details
May 20, 2026
Merged

v0.7.1-beta: BGP Visibility Details#50
DeepZone merged 1 commit into
mainfrom
codex/implement-v0.7.1-beta-bgp-visibility-details

Conversation

@DeepZone

Copy link
Copy Markdown
Owner

Motivation

  • Provide a detailed, read-only BGP visibility check for prefixes and expected origin ASNs using RIPEstat data.
  • Improve preflight decision quality by surfacing observed origins, MOAS, peer counts and specificity hints while preserving RouteForge's read-only model.
  • Integrate visibility checks into Change Cases, reporting and audit trails for traceable operator workflows.

Description

  • Added a new backend service BgpVisibilityService that queries RIPEstat (routing-status and bgp-state), extracts visible origins, visibility flags, peer counts, more/less-specific hints and maps results to OK/WARNING/CRITICAL/UNKNOWN with human-friendly summaries and recommendations (backend/app/services/bgp_visibility_service.py).
  • Added API schema and endpoint POST /api/check/bgp-visibility with payload prefix, optional expected_origin_as and optional change_case_id, enforcing operator/admin roles, reusing existing check/report persistence and attaching checks/reports to Change Cases (404 on unknown case) (backend/app/api/routes_checks.py, backend/app/schemas.py).
  • Emit audit event bgp_visibility_checked when a visibility check runs and continue to emit existing check_attached_to_change_case and report_attached_to_change_case events when applicable.
  • Frontend additions: runBgpVisibilityCheck API helper, a new BGP Visibility UI page with prefix + optional expected-origin inputs, status badge, summary, origins, expected-origin-seen flag, multiple origins indicator, recommendations and expandable structured details, role-aware execution (admin/operator allowed, viewer can view but not run) (frontend/src/api.ts, frontend/src/components/BgpVisibilityForm.tsx, frontend/src/components/Layout.tsx, frontend/src/App.tsx).
  • Change Case UI: added a "Run BGP Visibility Check" action that sends the selected change_case_id and reloads case reports after success (frontend/src/components/ChangeCasesView.tsx).
  • Updated versioning and docs to v0.7.1-beta and added release notes/README/ROADMAP entries describing the feature and read-only / external-data caveats (RELEASE_NOTES.md, README.md, ROADMAP.md, backend/frontend version bumps).

Testing

  • Backend: ran cd backend && pytest -q with all tests passing (96 passed, with warnings about deprecations only).
  • Frontend: ran cd frontend && npm run build and produced a successful production build (vite build completed).

Codex Task

@DeepZone
DeepZone merged commit d202319 into main May 20, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant