docs: create roadmap (1 phase)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-10 21:39:02 +01:00
parent 9d70ea0547
commit 890365fd25
3 changed files with 99 additions and 1 deletions

View File

@@ -51,4 +51,4 @@
--- ---
*Requirements defined: 2026-03-10* *Requirements defined: 2026-03-10*
*Last updated: 2026-03-10 after initial definition* *Last updated: 2026-03-10 after roadmap creation*

37
.planning/ROADMAP.md Normal file
View File

@@ -0,0 +1,37 @@
# Roadmap: PomyslowePrezenty.pl — Stabilizacja zamówień
## Overview
Ten milestone likwiduje konkretne bugi w procesie składania zamówień, które mogą skutkować duplikatami zamówień, niespójnym stanem bazy danych lub wielokrotnym użyciem kuponu. Jedna faza — jeden cel: zamówienie tworzone jest dokładnie raz, atomowo i bezpiecznie.
## Phases
**Phase Numbering:**
- Integer phases (1, 2, 3): Planned milestone work
- Decimal phases (2.1, 2.2): Urgent insertions (marked with INSERTED)
Decimal phases appear between their surrounding integers in numeric order.
- [ ] **Phase 1: Atomowe tworzenie zamówień** - Zamówienie tworzone dokładnie raz, atomowo, bez możliwości duplikatu
## Phase Details
### Phase 1: Atomowe tworzenie zamówień
**Goal**: Klient może złożyć zamówienie bez ryzyka duplikatu — wielokrotny submit, błąd sieci ani race condition nie powoduje dwóch zamówień; dekrementacja stanu magazynowego i zużycie kuponu są spójne z insertiem zamówienia
**Depends on**: Nothing (first phase)
**Requirements**: ORD-01, ORD-02, ORD-03
**Success Criteria** (what must be TRUE):
1. Dwukrotne kliknięcie "Zamów" lub szybkie ponowne wysłanie formularza tworzy tylko jedno zamówienie w bazie danych
2. Jeśli insert zamówienia się powiedzie ale dekrementacja stanu magazynowego się nie powiedzie, całe zamówienie jest wycofywane (brak zamówienia bez zmniejszenia stanu)
3. Jeśli kupon jest użyty, jego zużycie jest wycofywane razem z zamówieniem w przypadku błędu transakcji
4. Mechanizm ochrony (token jednorazowy lub lock) uniemożliwia wysłanie zduplikowanego zamówienia z tego samego koszyka
**Plans**: TBD
## Progress
**Execution Order:**
Phases execute in numeric order: 1
| Phase | Plans Complete | Status | Completed |
|-------|----------------|--------|-----------|
| 1. Atomowe tworzenie zamówień | 0/? | Not started | - |

61
.planning/STATE.md Normal file
View File

@@ -0,0 +1,61 @@
# Project State
## Project Reference
See: .planning/PROJECT.md (updated 2026-03-10)
**Core value:** Sklep musi działać stabilnie — klienci mogą bez problemów składać zamówienia i płacić
**Current focus:** Phase 1 — Atomowe tworzenie zamówień
## Current Position
Phase: 1 of 1 (Atomowe tworzenie zamówień)
Plan: 0 of ? in current phase
Status: Ready to plan
Last activity: 2026-03-10 — Roadmap created
Progress: [░░░░░░░░░░] 0%
## Performance Metrics
**Velocity:**
- Total plans completed: 0
- Average duration: -
- Total execution time: 0 hours
**By Phase:**
| Phase | Plans | Total | Avg/Plan |
|-------|-------|-------|----------|
| - | - | - | - |
**Recent Trend:**
- Last 5 plans: -
- Trend: -
*Updated after each plan completion*
## Accumulated Context
### Decisions
Decisions are logged in PROJECT.md Key Decisions table.
Recent decisions affecting current work:
- [Init]: Bugfix-first approach — sklep działa produkcyjnie, bugi wpływają na klientów
- [Init]: Nowe funkcje odłożone — najpierw stabilizacja, potem rozwój
### Pending Todos
None yet.
### Blockers/Concerns
- [Research flag]: Tpay HMAC algorithm — nie zweryfikowano względem aktualnej dokumentacji Tpay API; dotyczy przyszłych faz (poza v1)
- [Research flag]: Produkcyjna wersja PHP — niezweryfikowana; wpływa na wybór PHPUnit 11.x vs 12.x w przyszłych fazach
## Session Continuity
Last session: 2026-03-10
Stopped at: Roadmap created, Phase 1 ready to plan
Resume file: None