1.7 KiB
1.7 KiB
NEXPA SourceHub 3.8 QA RESULT
검증일: 2026-09-07
자동 테스트
- Python compile: PASS
- Frontend JavaScript syntax: PASS
- API pytest: 6 passed
- Health/System status: PASS
- 7개 Current Baseline seed: PASS
- 실제 파일 upload: PASS
- Server-side SHA-256: PASS
- Immutable R2 revision: PASS
- Signed download URL: PASS
- 변조된 download token 차단: PASS
- 역할별 approval permission: PASS
- Git binding permission: PASS
- Deployment Gate / disabled executor 처리: PASS
- 배포 실패/비활성 상태 감사 로그 기록: PASS
인증 Gate 검증
- OIDC 모드 미인증
/: 로그인 화면만 표시 — PASS /static/index.html직접 접근: 404 — PASS
Migration / Recovery Drill
- Alembic initial migration: PASS
alembic_version생성: PASS- SQLite DB backup → restore: PASS
- Local storage backup → restore: PASS
- 복구 파일 무결성 확인: PASS
구현된 Production Hardening
- Trusted Host
- Security Headers / CSP
- Secure Session 옵션
- CSRF
- ClamAV adapter
- SHA-256 before persistence
- Expiring HMAC download URL
- Server-side deployment target allowlist
- Deployment Gate enforcement
- Alembic
- DB/storage backup & restore tools
- DB/MinIO startup retry
아직 실제 운영값이 필요한 Gate
다음은 코드 QA 대상이 아니라 실제 NEXPA 서버 Credential/Infrastructure가 필요합니다.
- NEXPA Core OIDC Metadata / Client ID / Secret
- PostgreSQL 운영 Credential
- MinIO 운영 Credential
- ClamAV 운영 Container 연결 확인
- Gitea URL / Token / Repository Binding
- 실제 CI/CD Webhook URL / Secret
- TLS certificate / Nginx 적용
이 값이 채워지기 전에는 /api/system/status가 production_ready=false를 반환합니다.