Maintenance and Troubleshooting
This page focuses on the recurring operational tasks that keep Sejong Pulse healthy and the first checks to run when a feature is failing.
Routine Maintenance
Run Quality Checks
cd stitch/frontend
npm run lint
cd stitch/backend
pytest
Verify Health Endpoints
Check
/api/healthfor backend health.Check
/api/recommendation/healthfor recommendation status.
Keep Recommendation Data Fresh
The repository includes:
stitch/backend/recommendation_worker.pyfor draining recommendation eventsstitch/backend/scripts/backfill_gorse.pyfor backfill and syncstitch/backend/scripts/run_gorse_backfill.shfor cron execution
If recommendations look stale, verify Gorse connectivity and run a backfill.
Refresh Knowledge Assets
When academic data changes:
Update the source files in
stitch/backend/knowledge.Run
stitch/backend/extract_knowledge.pyif the spreadsheet source changed.Run
stitch/backend/ingest_knowledge.pyto rebuild the index.
Review Deployment Config
Renderservices and workers are defined institch/render.yaml.Netlifybehavior is defined institch/frontend/netlify.toml.
Common Issues
The frontend loads but API calls fail
Check:
NEXT_PUBLIC_API_BASE_URLCORS_ALLOW_ORIGINSwhether the backend is actually listening on
localhost:8000in local development
Sejong sign-in works inconsistently
Check:
Sejong authentication availability
SUPABASE_URL,SUPABASE_ANON_KEY, andSUPABASE_SERVICE_ROLE_KEYthe internal email bootstrap configuration controlled by
SEJONG_AUTH_INTERNAL_EMAIL_DOMAIN
Search returns empty results
Check:
ALGOLIA_APP_IDsearch and write keys
whether pulse indexing is succeeding after create and delete operations
Calls or voice sessions do not start
Check:
LIVEKIT_URLLIVEKIT_API_KEYLIVEKIT_API_SECRETwhether the local or deployed LiveKit service is reachable
Recommendations look empty or outdated
Check:
GORSE_ENDPOINTGORSE_API_KEYREDIS_URLwhether the recommendation worker and cron backfill are running
Chat or advisor features fail
Check:
OPENAI_API_KEYorOPENROUTER_API_KEYOPENAI_API_BASE_URLquota or rate-limit errors in backend logs
Documentation build fails
Check:
that
docs/requirements.txtis installed in the active virtual environmentthat you are running
make htmlfrom thedocsdirectory
Logging and Observability
The backend initializes structured JSON logging and optional Sentry monitoring. When debugging production issues, start with:
Render service logs for the API or workers
Netlify deploy logs for frontend build issues
Sentry traces and exceptions when configured