Files
reloop-v2/.claude/state/contracts/QA-2.sprint-contract.json
reloop 40232af429 qa: breezing audit — 6 tasks, 10 critical + 9 major findings
- QA-1 Backend API contract: APPROVE (minor type contract 2)
- QA-2 Persona forget algorithm: APPROVE (math verified)
- QA-3 Auth & security: REQUEST_CHANGES
  - email normalize missing / JWT revalidate / secret fallback / whitelist
- QA-4 Frontend runtime: REQUEST_CHANGES
  - review double-submit race / subjects/[id] NaN / history error states / native alerts
- QA-5 Prisma & transactions: REQUEST_CHANGES
  - reviews.submit snapshot outside tx / tag cascade data loss / iteration race
- QA-6 Build & deploy: REQUEST_CHANGES
  - missing migrations, postinstall, lockfile, PM2 ecosystem

Follow-up fix proposals saved to .claude/state/pending-fix-proposals.jsonl (18 tickets)
2026-04-11 23:58:37 +09:00

26 lines
1.1 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"task_id": "QA-2",
"title": "Persona forget algorithm verification",
"goal": "망각 곡선 알고리즘의 수학적 정합성과 경계 조건 검증",
"checks": [
"updateS0 함수의 모든 result 경로 (correct/partial/incorrect) 수식 확인",
"schedule() 함수 역함수 유도 검증: σ(k(S₀e^(-λt) - D)) = threshold → t = -(1/λ)·ln((D + logit(τ)/k)/S₀)",
"경계 조건: s0=0, s0=1, D>=s0, D<=0, target<=0, target>=s0",
"MAX_INTERVAL_DAYS=60 cap 동작 확인",
"predictP 함수 정합성",
"sampleCurve 배열 길이 / 마지막 점 정확도",
"PERSONA_LAMBDA / INTENSITY_THRESHOLD 상수 PLAN.md와 일치 여부",
"persona-forget.service.spec.ts 테스트 커버리지 평가 — 모든 persona × intensity × result 조합 테스트 존재 여부"
],
"non_goals": [
"벤치마크",
"알고리즘 교체 제안",
"테스트 파일 수정"
],
"runtime_validation": [],
"browser_validation": [],
"risk_flags": ["needs-spike"],
"reviewer_profile": "static",
"deliverable": ".qa/QA-2.md"
}