Beute L1: Datenmodell, Katalog und API #18

Closed
opened 2026-10-16 05:58:13 +00:00 by Nick.Rosenloecher · 0 comments
Owner

Ziel

Jedes Volk bekommt einen Beuten-Aufbau (Ist-Zustand) mit Katalog, Operationen und Historie – die Grundlage für die 3D-Beute.

Umgesetzt

Plan-Tasks 1–7 in Commit b48fb157 (2026-10-15, CI grün):

  • Migrationen 20261017100000_hive_setup und 20261017100100_hive_catalog_zander_liebig (Zander nach Liebig, 10 Rähmchen, 14 Teile), Recht hive-systems:manage nur für ADMIN
  • Reine Domäne hive-ops.ts, hive-validate.ts, hive-facts.ts mit gemeinsamen Fixtures für Backend und Frontend
  • Endpunkte GET/POST /colonies/:id/hive, POST/GET …/changes (mit Idempotency-Key), GET …/at, Katalog GET/POST/PATCH /hive-systems, …/template, …/part-types, PATCH /hive-part-types/:id
  • Durchsicht mit optionalem hiveChange in einer Transaktion (403 HIVE_FORBIDDEN ohne colonies:update), Ereignis HiveChanged
  • Backup-Export und -Import der vier Tabellen, Doku ARCHITECTURE Abschnitt 13, Annahme 99

Offene Entscheidungen

Entschieden: Beute = JSON-Zustand plus Änderungsprotokoll, Änderungen als Operationen, Konflikt → 409 HIVE_CONFLICT; Rechte colonies:read, colonies:update, hive-systems:manage. Offen ist nur, ob STAFF colonies:update bekommt: #23

Grundlage

docs/superpowers/specs/2026-10-15-beute-3d-design.md, docs/superpowers/plans/2026-10-15-beute-3d.md, ARCHITECTURE.md Abschnitt 13. Folgepakete: #19, #20, #21, #22.

Status

Code: ja · Geprüft: ja · Gemergt: ja · Produktiv: nein
Stand: 2026-10-16 (Quelle: git origin/main b48fb157, Cluster-Abfrage 2026-10-16, Session-Status vs-code-ff, Memory)
Ausrollen: #28

## Ziel Jedes Volk bekommt einen Beuten-Aufbau (Ist-Zustand) mit Katalog, Operationen und Historie – die Grundlage für die 3D-Beute. ## Umgesetzt Plan-Tasks 1–7 in Commit b48fb157 (2026-10-15, CI grün): - [x] Migrationen `20261017100000_hive_setup` und `20261017100100_hive_catalog_zander_liebig` (Zander nach Liebig, 10 Rähmchen, 14 Teile), Recht `hive-systems:manage` nur für ADMIN - [x] Reine Domäne `hive-ops.ts`, `hive-validate.ts`, `hive-facts.ts` mit gemeinsamen Fixtures für Backend und Frontend - [x] Endpunkte `GET/POST /colonies/:id/hive`, `POST/GET …/changes` (mit `Idempotency-Key`), `GET …/at`, Katalog `GET/POST/PATCH /hive-systems`, `…/template`, `…/part-types`, `PATCH /hive-part-types/:id` - [x] Durchsicht mit optionalem `hiveChange` in einer Transaktion (403 `HIVE_FORBIDDEN` ohne `colonies:update`), Ereignis `HiveChanged` - [x] Backup-Export und -Import der vier Tabellen, Doku ARCHITECTURE Abschnitt 13, Annahme 99 ## Offene Entscheidungen Entschieden: Beute = JSON-Zustand plus Änderungsprotokoll, Änderungen als Operationen, Konflikt → 409 `HIVE_CONFLICT`; Rechte `colonies:read`, `colonies:update`, `hive-systems:manage`. Offen ist nur, ob STAFF `colonies:update` bekommt: #23 ## Grundlage `docs/superpowers/specs/2026-10-15-beute-3d-design.md`, `docs/superpowers/plans/2026-10-15-beute-3d.md`, `ARCHITECTURE.md` Abschnitt 13. Folgepakete: #19, #20, #21, #22. ## Status Code: ja · Geprüft: ja · Gemergt: ja · Produktiv: nein Stand: 2026-10-16 (Quelle: git origin/main b48fb157, Cluster-Abfrage 2026-10-16, Session-Status vs-code-ff, Memory) Ausrollen: #28
Nick.Rosenloecher added the prio/mittelart/featurestatus/erledigt labels 2026-10-16 05:58:13 +00:00
Sign in to join this conversation.