feat: T4b wave 7 - schema for phenology, honey movement ledger, shelf life

- Phenology reports, apiary phenology state and weather days with
  permissions for system roles
- Honey movement ledger: BOTTLING movements and initialAmount backfilled
  from existing bottlings with the same gram rounding; the migration
  reports counts and aborts if the ledger invariant fails
- Shelf life and event catalog columns; backup export/import of the new
  tables, old bundles keep importing, invariant check after imports
- e2e: test timeout 20 s (app start in hooks exceeded 5 s under load)

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
This commit is contained in:
Nick SzaunigandClaude Opus 5.5 committed 2026-10-14 19:19:32 +02:00
1 parent 326b3d9cdd
commit 22382d53a2
17 files changed
+1213 -39

No files matched your search

@@ -123,6 +123,18 @@ export const PERMISSION_CATALOG = [
],
850,
),
// Seeded with role grants by the t4_phenology migration (read with
// colonies:read, create/update with inspections:create).
...group(
'Pflanzenentwicklung',
'phenology',
[
['read', 'Ansehen'],
['create', 'Melden'],
['update', 'Bearbeiten'],
],
860,
),
...group(
'Behandlungen',
'treatments',