Context
.env.example uses change-me-to-github-webhook-secret. Nothing prevents deploying with default secrets.
Problem
Production deployments with guessable webhook secrets allow forged merge events.
Proposed scope
- Add
WAVEFLOW_ENV=production or detect Render env to enforce secret strength
- Fail startup when secret matches known placeholders or is shorter than minimum length
- Document required secret entropy in security checklist
Acceptance criteria
References
.env.example
crates/shared/src/config.rs
crates/gateway/src/main.rs
docs/security-checklist.md
Context
.env.exampleuseschange-me-to-github-webhook-secret. Nothing prevents deploying with default secrets.Problem
Production deployments with guessable webhook secrets allow forged merge events.
Proposed scope
WAVEFLOW_ENV=productionor detect Render env to enforce secret strengthAcceptance criteria
References
.env.examplecrates/shared/src/config.rscrates/gateway/src/main.rsdocs/security-checklist.md