docs: create roadmap (1 phase)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -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
37
.planning/ROADMAP.md
Normal 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
61
.planning/STATE.md
Normal 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
|
||||||
Reference in New Issue
Block a user