Přeskočit obsah

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.