Full-codebase-audit 2026-05-30 outputs: - Audit report: 09 - Audits/Full Codebase Audit - 2026-05-30.md - 81 issue files ISSUE-055..135 (decisions + 1 skipped no-brainer). - Scanner docs from scratch (was zero): architecture, data model, API ref, payment flow, operations runbook + repo README. - Doc-sync updates across API reference, data models, flows, design system. - Secret Rotation Runbook (08 - Operations) for the exposed credentials. - Reusable workflow guide (07 - Development) + .claude/workflows/full-codebase-audit.js. Issues remain status:open intentionally — the code fixes are uncommitted-then-committed working-tree changes per repo and aren't "resolved" until merged/deployed. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1.5 KiB
1.5 KiB
issue, title, severity, domain, status, resolved, fix, labels, status, created, source
| issue | title | severity | domain | status | resolved | fix | labels | status | created | source | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 052 | 'completed' payment status not counted in successfulPayments stats — admin dashboard undercounts | major | Payment | resolved | 2026-05-29 | Added case 'completed' to the successfulPayments switch in paymentService.ts getPaymentStats. |
|
open | 2026-05-29 | Doc vs Code Audit 2026-05-29 |
🟠 'completed' payment status not counted in successfulPayments stats — admin dashboard undercounts
Severity: major Domain: Payment Labels: backend, bug
Description
paymentService.getPaymentStats() aggregate counts only 'confirmed' as successfulPayments. 'completed' is excluded. Most SHKeeper/DePay payments follow the terminal path pending → processing → completed, so the bulk of successful payments are invisible in the success count.
Current Behavior
Admin dashboard successfulPayments count excludes all 'completed' payments. For a platform where SHKeeper is the primary provider, this count reads close to zero even after many successful payments.
Expected Behavior
successfulPayments should count both 'confirmed' and 'completed' (the terminal success states), or the stat should be clearly documented as confirmed-only.
Affected Files
backend/src/services/payment/paymentService.ts—getPaymentStats()aggregate pipeline
References
- Doc vs Code Audit Report — Finding M36