This page prepares the SEC-R-002 external security review checklist and remediation tracker, including scope, evidence package, severity lanes, sample findings, signoff gates, and disabled launch-completion actions.
Audience
Staff
Current limits
The external security review proof uses local deterministic fixtures only. It does not select an external reviewer, complete the review, resolve high-severity findings, approve pilot launch, publish SOC 2 claims, publish penetration-test reports, or enable live school data.
Use Sev2 if high-severity findings appear resolved without evidence, pilot launch appears approved, external review completion is claimed, live school data is enabled, or SOC 2 / penetration-test claims are published; use Sev3 for scope, package, finding, owner, due-target, or signoff-gate issues; use Sev4 for labels or layout feedback. This panel does not submit a support case.
Sev1: Critical outage or data-risk emergency
Target: 1-hour response, 24/7 paging during pilot
Sev2: Major workflow blocked
Target: 4 business hours
Sev3: Standard product question or non-urgent issue
Target: 1 business day
Sev4: How-to, cosmetic, or future enhancement
Target: 2 business days
These preview controls are placeholders. Real AI answers, search, walkthroughs, and support submission come in later tickets.
Notifications36
Static proof preview
Real notification feeds, delivery, and preferences arrive in a later ticket.
This changes only the local shell proof. Production role changes remain server-validated future work.
Search is a keyboard-focusable skeleton. No real index or permissioned search results are implemented in this ticket.
Hardening - security review
External security review
Review the external security review scope, evidence package, remediation lanes, sample findings, signoff gates, and disabled pilot-launch actions.
Otto Fixture BPPE Career School - security review hardening
School Administrator ยท Sam Director
External security review
Checklist and remediation tracker
Ticket 157 prepares the SEC-R-002 external review package for authentication, tenancy, RLS, OWASP controls, payments, AI, audit logging, incident response, and remediation tracking. It does not mark the external review complete, resolve high-severity findings, publish a penetration-test report, claim SOC 2, or approve pilot launch.
Reviewed 2026-10-13
Scope items
Scope items
8
Security areas prepared for external reviewer scope.
Package items
Package items
7
Artifacts and routes included in the reviewer package.
Findings
Findings
6
Sample findings tracked by severity, owner, and due target.
High open
High open
3
High or critical findings that stay open in this local proof.
Ready
Ready
No
Production security readiness stays false until external signoff.
Review scope
Authentication, tenancy, RLS, OWASP, payments, AI, and incident controls
8 scope items
Authentication, MFA, and step-up
Documented
SEC-R-002SEC-R-011
Question
Question
Can staff, instructors, and high-risk actions be protected with MFA, session limits, and step-up controls?
Evidence
Evidence
Auth status, security proof, MFA policy, and role shell pages are local review artifacts.
Owner
Owner
Engineering and external reviewer
Tenant isolation and RLS
External review
SEC-R-002SEC-R-030
Question
Question
Can one tenant read, export, search, or infer another tenant's records?
Evidence
Evidence
withTenant, RLS audit, pgTAP suite, seeded two-school checks, and critical scenarios are the review inputs.
Owner
Owner
Engineering and external reviewer
Secrets, TLS, and encryption
Documented
SEC-R-010SEC-R-014
Question
Question
Are secrets kept out of source, TLS and storage expectations documented, and high-sensitivity data protected?
Evidence
Evidence
Secret scan, preview/staging environment docs, and placeholder env examples are the local proof.
Owner
Owner
Security and engineering
OWASP controls
External review
SEC-R-012
Question
Question
Are output encoding, CSRF posture, parameterized access, CSP, upload validation, and SSRF protections covered?
Evidence
Evidence
File upload security, public page hardening, route tests, and proof boundaries are ready for review.
Owner
Owner
Engineering and external reviewer
Files, signed URLs, and malware gates
External review
SEC-R-012SEC-R-013
Question
Question
Are file URLs short-lived, signed, tenant-scoped, single-purpose, and malware gated before production?
Evidence
Evidence
File upload security proof covers signed URL expiry, tenant-prefixed keys, and sanitizer fixtures.
Owner
Owner
Security and engineering
Payments and PCI boundary
External review
SEC-R-020
Question
Question
Can live payment pages remain Stripe-hosted with no card data stored or logged by Otto?
Evidence
Evidence
Stripe test payment, webhook, Connect settings, refund, and card-fee proofs are review inputs.
Owner
Owner
Payments reviewer and engineering
AI guardrails
Documented
SEC-R-015
Question
Question
Are prompt-injection defenses, least-privilege tools, output validation, and AI kill switches ready for review?
Evidence
Evidence
AI foundation, providers, tools, guardrails, minimization, retrieval, usage, and eval pages are local artifacts.
Owner
Owner
AI owner and security reviewer
Audit logging and incident response
Documented
SEC-R-030SEC-R-031SEC-R-040
Question
Question
Can sensitive access be audited and can incidents be declared, communicated, and remediated?
Evidence
Evidence
Audit log viewer, observability route, uptime health, and incident runbook proof are review inputs.
Owner
Owner
Security, operations, and engineering
Reviewer package
Evidence bundle is ready; external report is pending
docs/security/external-review-checklist.md
Architecture overview
Documented
Artifact
Artifact
docs/prd/34-technical-architecture.md
Purpose
Purpose
Explain hosting, tenancy, database, jobs, providers, and environments.
Security requirements
Documented
Artifact
Artifact
docs/prd/36-security-requirements.md
Purpose
Purpose
Map SEC-R-001 through SEC-R-040 into review scope.
CI and scanner gates
Documented
Artifact
Artifact
.github/workflows/ci.yml
Purpose
Purpose
Show typecheck, tests, format, build, secret scan, license scan, audit, seed, and RLS jobs.
Critical scenarios
Documented
Artifact
Artifact
/hardening/critical-scenarios
Purpose
Purpose
Show always-green PRD 43.2 scenarios and pilot launch blocker status.
Preview/staging plan
Documented
Artifact
Artifact
docs/deployment/preview-staging.md
Purpose
Purpose
Show environment boundaries, secret groups, staging blockers, and disabled production deployment actions.
Incident runbook
Documented
Artifact
Artifact
/hardening/observability-incident
Purpose
Purpose
Show structured logs, Sentry adapter shape, health endpoint, severity definitions, roles, and runbook cadence.
External review report
External review
Artifact
Artifact
External reviewer deliverable
Purpose
Purpose
Capture findings, severities, evidence, and retest notes.
Remediation lanes
High severity findings block pilot launch
External security review findings of high severity must be resolved before pilot launch.
Critical
CRITICAL
Target
Target
Immediate fix or full production block
Pilot rule
Pilot rule
Blocks pilot and paying-school launch.
Owner
Owner
Founder and engineering
High
HIGH
Target
Target
Resolve before pilot launch
Pilot rule
Pilot rule
External security review findings of high severity must be resolved before pilot launch.
Owner
Owner
Founder, engineering, and reviewer
Medium
MEDIUM
Target
Target
Resolve before first paying school unless accepted with owner signoff
Pilot rule
Pilot rule
May be accepted for pilot only with explicit owner risk decision.
Owner
Owner
Engineering and operations
Low
LOW
Target
Target
Track with due date and regression coverage
Pilot rule
Pilot rule
Does not block pilot unless repeated or tied to sensitive data.
Owner
Owner
Engineering
Remediation tracker
External review findings are tracked but not resolved here
3 pilot blockers
SEC-F-001 - External security reviewer
External auth, tenancy, and RLS review not complete
HIGHExternal review
Due target
Due target
Before first pilot
Evidence
Evidence
SEC-R-002 requires external review of authentication, tenancy, and RLS foundations before pilot.
Blocks pilot
Blocks pilot
Yes
SEC-F-002 - Security and engineering
Live file malware scanning vendor not activated
HIGHNeeds remediation
Due target
Due target
Before production uploads
Evidence
Evidence
File upload proof covers local fixtures; production malware scanning remains external setup.
Blocks pilot
Blocks pilot
Yes
SEC-F-003 - Payments reviewer
Live payment CSP and PCI SAQ-A packet not reviewed
HIGHExternal review
Due target
Due target
Before live payments
Evidence
Evidence
SEC-R-020 requires Stripe-hosted fields, no card data in Otto, PCI SAQ-A, CSP, and script-integrity controls.
Blocks pilot
Blocks pilot
Yes
SEC-F-004 - Engineering
Preview/staging provider setup pending
MEDIUMNeeds remediation
Due target
Due target
Before external staging review
Evidence
Evidence
Ticket 156 documents hosting and environment setup but does not create external environments.
Blocks pilot
Blocks pilot
No
SEC-F-005 - Founder
Penetration test scheduled before first paying school
MEDIUMAccepted later
Due target
Due target
Before first paying school
Evidence
Evidence
SEC-R-002 requires a penetration test before the first paying school and annually after.
Blocks pilot
Blocks pilot
No
SEC-F-006 - Founder
SOC 2 and HECVAT are later sales readiness items
LOWDocumented
Due target
Due target
After first paying school timeline
Evidence
Evidence
SEC-R-003 makes SOC 2 and HECVAT P1, not a local proof completion claim.
Blocks pilot
Blocks pilot
No
Signoff gates
Pilot security signoff stays blocked externally
5 gates
External reviewer selected
External review
Owner
Owner
Founder
Evidence
Evidence
Reviewer selection is an external business action.
Scope package ready
Documented
Owner
Owner
Engineering
Evidence
Evidence
Local package items and docs identify what the reviewer needs.
High findings resolved
Blocked externally
Owner
Owner
Founder and engineering
Evidence
Evidence
External security review findings of high severity must be resolved before pilot launch.
Retest evidence captured
External review
Owner
Owner
External security reviewer
Evidence
Evidence
External reviewer retest notes are required after remediation.
Pilot security signoff
Blocked externally
Owner
Owner
Founder
Evidence
Evidence
Pilot launch stays blocked until external review blockers close.