FP_POC / packages /shared /README.md
github-actions[bot]
Space-Deploy aus GitHub main
9de795a
|
Raw History Blame Contribute Delete
1.28 kB
# @fp/shared – die Verträge (Single Source of Truth)
Hier leben die **JSON-Schemas** der Vertrags-Artefakte (Brain →
`vault/20_Architektur/Domaenenmodell-Schema-Spezifikation.md`), die daraus
**generierten TS-Typen**, der **TS-Regel-Interpreter** (Live-Feedback im
Viewer) und die **goldenen Fixtures** für den Regel-Paritätstest.
```text
schemas/ # JSON Schema draft 2020-12 – DIE Quelle, von Hand gepflegt
src/generated/ # TS-Typen aus den Schemas – NIE von Hand ändern (pnpm codegen)
src/rules/ # deklarativer Regel-Interpreter (TS) – Spiegel von fp_engines/rules
fixtures/ # goldene Testfälle: Input (Raum+Plan+Regeln) + erwartete Urteile
tests/ # vitest: Fixture-Validierung + Interpreter gegen Fixtures
```
**Eisernes Gesetz:** TS- und Python-Interpreter müssen auf den Fixtures
**identisch urteilen** (Paritätstest, beidseitig in CI). Wer Regeln/Interpreter
ändert, ändert beide Seiten + Fixtures im selben Commit.
- Schema-Änderung: additiv = minor, Bedeutung/Pflicht = major + Migrationsnotiz
(`schemaVersion` im Artefakt).
- `pnpm codegen` erzeugt TS-Typen (hier) und pydantic-Modelle (in
`services/engines/src/fp_engines/generated/`).
- `pnpm schema-check` validiert alle `data/`-Stammdaten gegen die Schemas.