feat(t5): Waben-Standkarte für Bienenstände (T5b B1)
Backend E2E / e2e (push) Successful in 5m47s
Backend Image / build-and-push (push) Successful in 5m11s
Frontend Image / build-and-push (push) Successful in 16m19s

- Völker als Waben-Zellen (src/components/honeycomb, src/lib/honeycomb):
  Zelle = Link mit Symbol, Kürzel und vollständigem Namen inkl. Zustand,
  Rand für fällige Durchsicht; nie nur Farbe, keine Animation.
- Standseite mit Satz, Legende, „Braucht Blick“ und aufklappbarer Liste;
  Offline-Standseite aus dem Paket; /apiaries-Karten mit Wabe (erste 20).
- Nur das Sechseck nimmt Tipps an (Zeilen greifen ineinander), Breite vor
  dem ersten Bild gemessen, 403 ohne Fehlerkarte.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
This commit is contained in:
Nick.RosenloecherandClaude Opus 5.5 committed 2026-10-19 16:08:49 +02:00
1 parent 2a6f0b684c
commit 15e671e921
22 files changed
+1497 -30

No files matched your search

@@ -186,7 +186,14 @@ const RULES: GuardRule[] = [
id: "no outline-none",
pattern: /(?<![\w-])outline-none\b/,
scope: "src/**/*.{ts,tsx}",
allow: [],
// Task B1: the one exception of spec 4.6/6.6.
allow: [
{
file: "src/components/honeycomb/honeycomb-cell.tsx",
reason:
"Zweiter Sechseckpfad zeichnet den Ring, Spec 6.6: a rectangular outline around a hexagon cell would cover its neighbours, so the link drops it and .comb-focus draws the ring in --ring with --focus-width outside the cell (styles/comb.css).",
},
],
examples: {
catches: ['"px-2 focus-visible:outline-none"', '"outline-none px-2"'],
ignores: ['"outline-hidden focus:bg-accent"', '"outline-2"'],
@@ -583,6 +590,12 @@ const DATA_VALUE_FILES = [
"src/app/(app)/colonies/[id]/colony-varroa.tsx",
"src/components/honeycomb-pattern.tsx",
"src/components/brand-mark.tsx",
// Task B1: the comb changes its fill at once after a sync (spec 6.8).
"src/components/honeycomb/honeycomb-cell.tsx",
"src/components/honeycomb/apiary-comb.tsx",
"src/components/honeycomb/apiary-comb-card.tsx",
"src/components/honeycomb/comb-legend.tsx",
"src/styles/comb.css",
];
/** Overlays of the kit (spec 17.4): enter with --motion-enter, leave with --motion-fade and --ease-in. */
const OVERLAY_FILES = ["sheet", "dialog", "dropdown-menu", "select"].map((name) => `src/components/ui/${name}.tsx`);