Files
itpp-infrastructure/docs/projects/project-log.md
T

6.6 KiB

Project Log — All Completed Projects

2026-07-20

Ops Portal Audit and Overhaul

  • Full audit of all 11 pages, 7 API endpoints, and 5 dashboard widgets
  • Fixed 15 bugs: auth guards, cache-busting, mobile nav, page titles, missing icons, data keys
  • Added 3 new widgets: Wazuh Security, Bitdefender GravityZone, Alerts and Notifications
  • Standardized credentials: ippadmin (password → Vaultwarden / ~/.hermes/.env)
  • Added critical service protection (hermes/caddy/ops-portal restart blocked via API)
  • Server list cleaned up (7→5), dependency diagram fixed, config page scripts listing

Backup-Restore Enhancements

  • Added manual backup with domain dropdown and note field
  • Added restore history logging with formatted 4-column table
  • Fixed Caddy routing and timeouts (restore was returning 404 via proxy)
  • Fixed mobile toggle on domain expansion cards
  • 9 WordPress sites under daily backup (1 AM and 1 PM)

Docs Written

  • /root/projects/ops-portal/README.md + CHANGELOG.md
  • /root/projects/backup-restore/README.md + CHANGELOG.md

2026-07-17 — Backup-Restore Initial Deployment

  • Flask backup/restore app deployed on app3 (152.53.241.111)
  • Daily snapshots scheduled at 1 AM and 1 PM
  • Caddy reverse proxy from my.itpropartner.com
  • 9 WordPress sites configured

2026-07-21 — Home Lab Consolidation

Proxmox Migration

  • vm-host-02 VMs migrated/destroyed: graylog, zabbix, fog, Ubuntu-Server
  • vm-host-01 now hosts: docker-host-01, adguard-home
  • vm-host-02 cleared for GPU installation (RTX 3090 pending verification)
  • QNAP NFS shared storage created (2TB pool, mounted on both Proxmox hosts)

DNS Infrastructure

  • Technitium DNS deployed on app2 (dns1.itpropartner.com)
  • DoH upstreams: Quad9, Cloudflare, Google
  • Home DNS chain: docker-host-01 AdGuard → dns1 Technitium → vm-host-01 AdGuard
  • Firewall locked: port 53 restricted to 76.195.7.60

Twilio

  • Toll-free number verification submitted for IT Pro Partner
  • Use case: customer notifications, appointment reminders, IVR

Mattermost

  • Branding configured: IT Pro Partner NOC
  • Channel structure designed (13 channels)
  • Mobile push investigation: HPNS required for background notifications

Gift-a-Roast

  • Domain giftaroast.com purchased, DNS live (Cloudflare → app1)
  • ElevenLabs TTS + Deepgram STT keys verified
  • Architecture: Twilio Voice → STT → AI → TTS → caller

Uptime Kuma

  • Backed up (361MB, 25 monitors), updated to latest

IRS

  • Name change letter drafted: CG Premier Transport LLC → IT Pro Partner LLC
  • Georgia Secretary of State filing confirmed

Skills Updated

  • 10 skills patched: docker-service-deployment, home-lab-*, server-architecture-plan, twilio-10dlc, vaultwarden-management, voip-portal, hudu, syncromsp, recurring-information-scout

2026-08-05 through 2026-08-08

Super Search v2.4.0 -- Client-ID Metrics Tracking

  • Added Starlette middleware to intercept X-Client-Id header on every MCP call
  • Prometheus counters per client (hermes, intelsight, dre-osint, verdicttank) and per tool
  • Metrics exposed at :8899/metrics, scraped by Prometheus every 30s
  • Grafana dashboard "Super Search - Client Tracking" at /d/ffuktvmgcpkhse on core:3002
  • Super Search binding changed from 127.0.0.1:8899 to 0.0.0.0:8899 for Docker access
  • UFW rule added: allow 172.17.0.0/16 to port 8899
  • Prometheus scrape config added for super-search job at 172.17.0.1:8899/metrics
  • Docs: /root/projects/itpp-infrastructure/docs/super-search-v2.4.0-client-tracking.md

OSINT Person MCP -- Super Search Integration

  • Created /root/docker/osint-person-mcp/super_search.py MCP client module
  • Calls Super Search tools via http://127.0.0.1:8899/mcp
  • Mirrors IntelSight pattern for MCP-to-MCP tool delegation
  • Docs: /root/projects/itpp-infrastructure/docs/osint-person-super-search-integration.md

Ops v1 Retirement

  • Removed all orphaned /var/www/ops/*.html, css/, js/
  • Migrated /var/www/ops/data/ to /var/www/ops-v2/data/
  • Updated Caddy: root redirect ops.itpropartner.com to /v2/ (301)
  • Updated 8 Python scripts referencing old ops paths
  • Docs: /root/projects/itpp-infrastructure/docs/ops-v1-retirement.md

Grafana Admin Password Reset

  • Reset admin password to standard credentials via grafana-cli admin reset-admin-password
  • Grafana running on Core port 3002 (not 3000 as previously documented)

Moore Sunny Daze / Beach Direct

  • Built internal product backend (FastAPI on port 8911, Core) for Moore Sunny Daze
  • Fully documented Beach Direct as a standalone public product
  • Project docs: /root/projects/itpp-infrastructure/projects/beachdirect.md
  • Internal docs: /root/projects/mooresunnydaze/docs/beach-direct-project.md

Buzz Nostr Relay

  • Deployed Buzz self-hosted relay on app3 (152.53.241.111) via CloudPanel Docker/Nginx
  • Live at https://buzz.iamgmb.com
  • Closed-relay membership, Postgres + Redis + MinIO backend
  • Project spec: /root/projects/itpp-infrastructure/projects/buzz-agent-integration-spec.md

Hermes Mission Control (Planning)

  • Investigated Sharbel's Hermes Mission Control template (Next.js dashboard + Postgres + Bridge)
  • Architecture scoped: Dashboard host, Postgres setup, domain selection
  • Pending user decision on host and domain before build

Git Structure Audit

  • Full audit of all 40 Gitea repos + local repos under /root/projects/
  • Critical findings: hardcoded credentials in scripts repo, 13.6 MB blob in hermes-skills, missing .gitignore on 33/35 repos
  • Docs: /root/projects/itpp-infrastructure/docs/git-audit-2026-08-07.md

Grafana Dashboard Auth

  • Investigated Grafana basic auth plugin for external dashboard access
  • Generated password hash for Hermes Conduit iOS app dashboard integration

Infrastructure Gap Assessment

  • Subagent audit: 65+ services across 5 hosts, identified 12 services with no backup, 14 missing from API list
  • Duplicate services found: Twenty CRM (Core + App1), SearXNG (Core + App1)
  • Docs: /root/projects/itpp-infrastructure/docs/infrastructure-gap-assessment-2026-08-04.md

2026-07-29

Village Express — Client Project

  • Direct client engagement: student transport platform for Savannah family
  • Built working mockups: client registration form + admin dashboard
  • Live at https://mockup.iamgmb.com/village-express/ and /admin.html
  • Deployed: registration form with SCCPSS school dropdown, e-signatures, SMS PIN
  • Deployed: admin dashboard with 5-page nav, approve/reject, route toggles, SMS broadcast modal, settings
  • Project proposal written: scope, pricing ($1,500 setup / $497/mo), timeline, Phases 1-3
  • Customer email drafted: benefit-focused, sells time savings and simplicity
  • Both documents in /root/projects/village-express/