Struktura specifikací¶
Adresářová struktura¶
projekt/
├── openspec/
│ ├── project.md # Kontext projektu
│ ├── AGENTS.md # Instrukce pro AI agenty
│ ├── specs/ # Aktuální pravda (IS)
│ │ ├── warehouse/
│ │ │ └── spec.md
│ │ ├── invoicing/
│ │ │ └── spec.md
│ │ └── crm/
│ │ └── spec.md
│ └── changes/ # Návrhy změn (SHOULD BE)
│ ├── add-barcode-scan/
│ │ ├── proposal.md
│ │ ├── tasks.md
│ │ ├── design.md
│ │ └── specs/
│ │ └── warehouse/
│ │ └── spec.md # Delta specifikace
│ └── archive/ # Archiv dokončených změn
│ └── 2025-01-15-add-mobile-app/
Dva typy specifikací¶
1. Specs (Aktuální pravda)¶
Složka openspec/specs/ obsahuje aktuální stav systému. Co je zde napsáno = co je implementováno.
# openspec/specs/warehouse/spec.md
# Warehouse Specification
## Purpose
Správa skladových zásob, příjem a výdej zboží, inventury.
## Requirements
### Requirement: Automatické číslování příjemek
Systém MUSÍ automaticky generovat unikátní číslo příjemky.
#### Scenario: Vytvoření nové příjemky
- **WHEN** uživatel vytvoří novou příjemku
- **THEN** systém vygeneruje číslo ve formátu PR-YYYY-NNNN
- **AND** číslo je read-only
### Requirement: Evidování skladových karet
Systém MUSÍ umožnit evidenci skladových karet s historií pohybů.
#### Scenario: Zobrazení historie karty
- **GIVEN** existuje skladová karta produktu "ABC-001"
- **WHEN** uživatel otevře detail karty
- **THEN** vidí seznam všech pohybů (příjem, výdej, inventura)
- **AND** pohyby jsou seřazeny od nejnovějších
2. Changes (Návrhy změn)¶
Složka openspec/changes/ obsahuje navrhované změny ve formátu delta:
# openspec/changes/add-barcode-scan/specs/warehouse/spec.md
## ADDED Requirements
### Requirement: Skenování čárových kódů při příjmu
Systém MUSÍ umožnit skenování čárových kódů pro rychlou identifikaci produktu.
#### Scenario: Úspěšné naskenování EAN kódu
- **WHEN** uživatel naskenuje čárový kód "8590000001234"
- **THEN** systém automaticky vyplní produkt podle EAN
- **AND** kurzor se přesune na pole množství
#### Scenario: Neznámý čárový kód
- **WHEN** uživatel naskenuje neznámý čárový kód
- **THEN** systém zobrazí hlášení "Produkt nenalezen"
- **AND** nabídne možnost vytvořit nový produkt
## MODIFIED Requirements
### Requirement: Automatické číslování příjemek
Systém MUSÍ automaticky generovat unikátní číslo příjemky **s prefixem skladu**.
#### Scenario: Vytvoření nové příjemky
- **WHEN** uživatel vytvoří novou příjemku na skladu "HL"
- **THEN** systém vygeneruje číslo ve formátu HL-PR-YYYY-NNNN
- **AND** číslo je read-only
Delta operace¶
| Operace | Popis | Obsah |
|---|---|---|
ADDED |
Nové požadavky | Kompletní text s scénáři |
MODIFIED |
Změněné požadavky | Kompletní nový text |
REMOVED |
Odstraněné požadavky | Pouze název |
RENAMED |
Přejmenované požadavky | FROM a TO |
➡️ Pokračujte na Formát spec.yaml.