- Add source, title, mobilePhone fields to ClientContact schema - Add composite unique constraint for dedup (clientId, name, label, source) - Add fetchAfwContacts() query with dedup by (CustId, Name, Responsibility) - Add syncContacts() phase to sync engine with retry logic - Update contacts UI to show title, mobile phone, AMS badge - Disable edit/delete on AMS-synced contacts (source='ams')
941 B
941 B
Horizon Dev Server
How it runs
The app runs as a systemd service (horizon.service) and will automatically start on boot and restart on crash.
Managing the server
systemctl start horizon # start
systemctl stop horizon # stop
systemctl restart horizon # restart
systemctl status horizon # check status
Logs
tail -f /var/log/horizon.log
Details
- Port: 3000 (proxied via Pangolin/Nginx to https://horizon.seubert.cloud)
- Working directory:
/opt/projects/OnDeck/ondeck - Mode:
npm run dev(Next.js with Turbopack) - Service file:
/etc/systemd/system/horizon.service
After code changes
Changes hot-reload automatically. If the server gets into a bad state:
systemctl restart horizon
After schema changes
Run these before restarting:
cd /opt/projects/OnDeck/ondeck
npx prisma db push
npx prisma generate
systemctl restart horizon