Ops Portal Changelog
2026-07-20 — Major audit and fix session
Fixed
/api/health returning 404: Caddy handle_path was stripping the path → changed to handle, port corrected to 8090
/api/servers returning null: Server list now returns all 5 servers with live ping health
- Server IPs stale: app1-bu updated to 5.161.225.131, legacy entries removed
- Page titles inconsistent: All 11 pages standardized to "X — IT Pro Partner Ops" format
- Missing nav icons: All 11 nav items now have SVG icons
- FleetTracker360 missing from nav: Added to navigation with car icon
- Backups page no data:
s3_buckets → s3_backups key fix
- FleetTracker360 page no nav: Added ops.css, app.js, utils.js includes
- Network page dark sidebar: Replaced with standard top nav bar
- Cache-busting broken: All JS/CSS references now versioned with timestamps
- Mobile nav broken:
.nav-links.open CSS rule missing → hamburger menu now toggles properly on iOS/Android
- Auth guard race condition: IIFE scripts replaced with DOMContentLoaded event listeners — pages now load data when user is authenticated
- Cost page broken: Missing
loadData function → defined and wired
- Dependency diagram 404: File copied to static dir, link corrected
- Logs page mangled title: Triple-nested
<title> tags from sed accident → cleaned
- Config page scripts directory: Now populates directory listing when clicked
- Services page: Server column added showing "Core (152.53.192.33)"
- Dashboard auto-refresh on tab focus: Visibility API handler added
- Critical service protection: hermes, caddy, ops-portal restarts blocked via API
Removed
- Duplicate server entries: "app1 (AI Stack)" and "Docker Box (legacy)"
- Server count: 7 → 5 clean entries
Changed
- Admin credentials: germaine/itpp2026! → ippadmin (password → Vaultwarden)
- JWT_SECRET made persistent in /root/.hermes/.env to survive restarts
- Collector timeout: 20s → 90s to handle 94K-file S3 bucket scanning
Jul 17, 2026 — Initial deployment
- Ops portal deployed on Core as FastAPI app
- Caddy reverse proxy configured
- 10 HTML pages created
- Ops collector built for S3, system health, server status