Version 1.0 · Draft · Owner: Engineering Lead
Download .md →Touch2Sign Ltd
Version: 1.0
Effective date: 11 July 2026
Owner: Robert — Engineering Lead
Approved by: Robert — CEO / Managing Director
Next review: 11 July 2027
Define secure software development practices for the Touch2Sign eSignature and eWitness platform. Ensures that code changes are reviewed, tested, and deployed without introducing avoidable security defects or exposing secrets.
Applies to all engineering staff and contractors who:
| Control | Requirement | Branch protection | Enabled on main and production branches when GitHub org allows |
|---|---|
| Pull requests | Required for merges to main; feature branches may commit directly to dev |
| Peer review | Standard team: minimum 1 approving review from another engineer. Solo operator (current): self-review against .github/pull_request_template.md security triage + automated lint/build/QA — see SOLO_TEAM_OPERATING_MODEL.md |
| CI checks | Lint, build, and QA smoke must pass before production deploy |
| Signed commits | Recommended for production merges |
.env files with real credentials (.env.local is gitignored) If secrets are accidentally committed: rotate immediately, purge from history if needed, follow Incident Response Plan.
package-lock.json) committed and reviewed on dependency changes Before every production deployment, the releasing engineer completes checks from docs/QA_SIGN_FLOW.md:
| Area | Minimum verification | Authentication | Cognito login, MFA where applicable |
|---|---|
| Signing flow | Create document → send → sign → audit trail |
| Witness flow | eWitness capture if changed |
| Part 11 / PIN | PIN gate, lockout, intent-to-sign if changed |
| WebAuthn / mobile | Platform biometric on supported device if changed |
| Admin routes | Authorisation enforced |
| Regression | No console errors on critical paths |
Results documented in release ticket or deploy checklist.
Production deployments are performed only via the approved scripts:
```bash
bash scripts/rebuild-dev.sh # development (:4001)
bash scripts/deploy-prod.sh # production (:4000)
```
| Requirement | Detail | Authorisation | Engineering Lead or delegated release manager |
|---|---|
| Change ticket | Linked change record with rollback plan |
| QA evidence | QA_SIGN_FLOW.md checklist attached |
| Timing | Prefer business hours unless emergency |
| Rollback | Previous tagged release identified before deploy |
Ad-hoc manual production changes (AWS console edits) require change log entry and are discouraged — prefer IaC or scripted changes.
| Environment | Data | Access | Local | Synthetic / anonymised | Developer |
|---|---|---|
| Staging | Synthetic; no production DB copy without approval | Engineering team |
| Production | Live customer data | Restricted; MFA required |
Production database must not be used for development or demo purposes.
Engineering teams must:
audit_log without logging secrets or PINs Internal discovery:
External reports handled per Vulnerability Management Policy secure disclosure process.
Engineers complete secure coding awareness as part of Security Awareness Training. Role-specific topics: OWASP Top 10, tenant isolation, secrets handling.
Reviewed annually and after security-related production incidents.
Approval
| Name | Role | Signature | Date | Robert | CEO / Engineering Lead | Electronic | 11 July 2026 |
|---|
Questions: security@touch2sign.com · privacy@touch2sign.com