first commit
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
# Quality Risks
|
||||
|
||||
**Aktualizacja:** 2026-07-06 (post-apply Plan 2 — degraded)
|
||||
|
||||
## Zaakceptowane świadomie
|
||||
- **Kopiowanie wzorców zapytań** z `OperationModel` do `InvOperationModel`/`ValuationModel` (filtered/join). Osobna domena (brak type income/expense, dochodzą wyceny) — nie konsolidować w bazowy model, kod krótki.
|
||||
- **Format kwoty** `number_format(...,2,',',' ').' zł'` powtórzony w widokach jako lokalna funkcja `$fmt`. Trywialny, świadomie nie wydzielony do helpera (YAGNI).
|
||||
|
||||
## Rozwiązane
|
||||
- Zarobek netto: jedno źródło prawdy `InstrumentModel::withStats` (`net_invested`, `profit`, `percent`); nie liczony w widokach.
|
||||
- Typ operacji inwestycyjnej: ENUM `deposit|withdraw` w DB + walidacja `in_list` w modelu + sanity w kontrolerze.
|
||||
- Integralność: FK RESTRICT na `inv_operations`/`inv_valuations`.
|
||||
|
||||
## Odłożone
|
||||
- Pełna indeksacja `codebase-memory-mcp` — `$paul-map-codebase`.
|
||||
- jscpd/ast-grep — wyłączone polityką w `config.md` (skan on-demand).
|
||||
|
||||
## Do obserwacji
|
||||
- `portfolioTimeline` liczony w PHP O(daty × operacje) — trywialne przy ręcznych wycenach; przy dużej liczbie wpisów rozważyć agregację SQL.
|
||||
Reference in New Issue
Block a user