This runbook is for operating malzispace safely in production.
- Create restore point:
./ops/restore_point.sh pre-deploy
- Run verification:
./ops/verify_local.sh
- Optional (recommended) live smoke test:
APP_CHECK_TOKEN="..." ./ops/verify_local.sh - Deploy only when all checks are green.
- Open
/and create a space. - Confirm redirect to
/space.html?id=...#.... - Edit text and confirm status changes to
Gespeichert. - Open same link in second tab and verify sync + presence.
- Confirm countdown is running and no CSP errors appear in console.
- Verify the allowed App IDs for the custom App Check provider in
services/api/index.jsor the corresponding environment configuration. - Verify CSP allows the Firebase App Check / gstatic domains used by the custom provider flow.
- Check that production domain is configured for App Check.
- Check function logs for
rate_limitedand repeated IP patterns. - Check presence and yjs write traffic (
/api/presence,/api/yjs/push). - If needed: tighten rate limits in
services/api/index.jsand redeploy.
- Means write request has missing/wrong
key_proof. - Confirm client has URL fragment key (
#...) and is using latest frontend. - Verify the space was created with the current frontend version.
- API/relay now enforce allowed origins.
- Check
MZ_ALLOWED_ORIGINSenv var in Functions and collab relay. - Verify production domains are present (
malzi.space,*.web.app,*.firebaseapp.comas needed). - For local testing, use
localhost:3000orlocalhost:5000(already included by default).
- List restore tags:
git tag --list "restore-*" - Checkout restore commit:
git checkout <tag>
- Create hotfix branch from restore point and redeploy.