diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..c2f0626 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,80 @@ +# Changelog + +All notable changes to PeerCortex are documented here. + +## [0.5.0] — 2026-03-26 + +### Added +- **RPKI-based ASPA detection** via Cloudflare RPKI JSON feed — 1,455+ ASPA objects worldwide, cached and refreshed every 10 minutes +- **RFC-compliant ASPA path verification** (draft-ietf-sidrops-aspa-verification-14) — upstream/downstream verification, valley detection, AS_SET flagging, per-hop status +- **ASPA Readiness Score** (0–100) with four dimensions: ROA coverage, ASPA object existence, provider match completeness, path validation rate +- **Provider Audit** — compares RPKI-declared providers vs BGP-detected providers, highlights missing and extra entries with frequency data +- **Network Health Report** — 13 automated checks (Bogon, RPKI ROA, Blocklist, IRR, MANRS, BGP Visibility, Reverse DNS, Abuse Contact, Resource Cert, IX Route Servers, BGP Communities, Geolocation, IRR Object) with traffic-light scoring +- **RIPE Atlas probe integration** — shows total probes, connected/disconnected counts, and anchors per ASN +- **Route Views** as data source and header navigation link +- **bgproutes.io integration** — 3,294+ vantage points, RIB queries, ROV and ASPA status +- **RPKI-Declared Providers section** — green badges showing providers from the actual RPKI ASPA object +- **Collapsible lists** — "Show X more..." for Detected Upstream Providers (limit 10), Missing/Extra in Provider Audit (limit 5) +- **Numerical ASN sorting** across all badge lists and tables +- **WHOIS Details** endpoint and dashboard card +- **Network Topology** endpoint via CAIDA AS-Relationships +- **Peering Partner Finder** — `/api/peers/find` endpoint +- **Prefix Detail View** — `/api/prefix/detail` endpoint +- **IX Detail View** — `/api/ix/detail` endpoint +- **Recent Lookups** with localStorage persistence and quick-click badges +- **Network Compare** — side-by-side comparison of two ASNs (common IXPs, shared upstreams, overlapping facilities) +- **Copy button** on Recommended ASPA Object code block +- **Demo animation** (SVG) in README + +### Changed +- ASPA detection switched from broken RIPE DB `aut-num` remarks search to Cloudflare RPKI JSON feed (`rpki.cloudflare.com/rpki.json`) +- Upstream providers now resolved with AS names via RIPE Stat AS Overview API +- Version bumped to 0.5.0 +- Dashboard footer updated with all data sources including Cloudflare RPKI and Route Views +- Server User-Agent updated to PeerCortex/0.5.0 + +### Fixed +- **Critical: ASPA objects not detected** — networks with valid ASPA (e.g., AS8283 Coloclue, AS6830 Liberty Global) were incorrectly shown as "Not Found" because the old code searched RIPE DB remarks instead of RPKI repositories +- **SyntaxError in frontend** — CSS routing styles were embedded as a multiline JS string (single quotes don't allow newlines), moved to proper `