Change Management Procedure
Implements: Information Security Policy Section 7 (Change Management) Owner: ISMS Owner Last Updated: 21 May 2026 Next Review: 21 November 2026
Change Types
| Type | Definition | Approval | Deployment Window |
|---|---|---|---|
| Standard | Routine code change, dependency update, config change | 1 reviewer via PR approval | Any time |
| Significant | New feature, API change, infrastructure change, security-sensitive | 2 reviewers including Security Lead | Business hours (AEST) |
| Emergency | Hotfix for P1/P2 incident, critical vulnerability patch | ISMS Owner or Security Lead verbal approval, post-hoc PR | Immediately |
Standard Change Process
1. Propose
- Create a branch from
main - Make changes following repository coding standards
- Write or update tests as needed
2. Review
- Open a Pull Request with description of what and why
- Automated CI must pass (lint, test, build)
- At least 1 approved review required
- CODEOWNERS rules apply (if file path requires specific reviewer)
3. Merge
- Squash merge to
main - CI deploys automatically to sandbox (where applicable)
4. Deploy to Production
- For Rust Workers: CI builds WASM, deploys via
wrangler deploy - For TypeScript Workers: CI deploys via
wrangler deploy - For mobile: App store review process applies separately
5. Verify
- Check Cloudflare dashboard for error rates
- Verify key endpoints return expected responses
- Monitor for 30 minutes post-deploy
Significant Change Process
All steps from Standard, plus:
- Design review before implementation (brief written description of approach)
- 2 reviewers required on PR, one of whom must be the Security Lead
- Staged rollout where possible (sandbox first, then production)
- Rollback plan documented in PR description
- Post-deploy monitoring for 2 hours
Emergency Change Process
- Verbal approval from ISMS Owner or Security Lead (Slack, phone, or in-person)
- Fix applied directly. may bypass standard branch naming
- Deploy immediately to production
- Post-hoc PR created within 24 hours documenting the change
- Post-incident review to determine if the emergency could have been prevented
Rollback Procedure
Cloudflare Workers
# List recent deployments
wrangler deployments list
# Rollback to previous version
wrangler rollback
If Rollback Fails
- Revert the merge commit on
main - Push the revert
- CI will deploy the reverted version
- Investigate root cause before re-attempting the change
Change Log
All changes are tracked via:
- Git commit history (immutable record of all code changes)
- GitHub PR descriptions (what, why, reviewer approvals)
- Cloudflare deployment logs (when each version went live)
- This procedure does not require a separate change log. Git is the source of truth