AyCode.Blazor/CONSUMERS.md

32 lines
2.3 KiB
Markdown

# AyCode.Blazor — Consumer Workspace Map
> **Bounded consumer-awareness exception** to the Framework-First Design Principle (LLMP-DEC-62): this single file lists which higher-layer repos consume `AyCode.Blazor` (Layer 1 UI framework). For change-impact assessment when modifying ACBLAZOR — NOT a coupling vector.
>
> **Strict rule**: AyCode.Blazor code, types, namespaces, topic IDs, and any other `.md` files MUST NOT name any specific consumer listed here. **This is the SINGLE place** in ACBLAZOR that may name consumer repos.
## Workspace consumer map (as of 2026-07-08)
| Prefix | Repo | Layer | Type | Path (workspace-relative) | Brief usage |
|------------|--------------------|------:|-----------------|-------------------------------|---------------------------------------------------------------------------|
| `FBANKAPP` | FruitBankHybridApp | 2 | product (hybrid)| `Mango/Source/FruitBankHybridApp` | MAUI/Blazor hybrid client — MgGrid + SignalR datasource stack |
| `GIAAPP` | GiaApp | 2 | product (web) | `Mango/Source/GiaApp` | Blazor Server app — MgGrid with server-side data (no SignalR datasource) |
(See `AyCode.Core/.github/REPO_PREFIXES.md` for the prefix scheme; each consumer's own `.github/copilot-instructions.md` `@repo` block declares its `prefix` value.)
## When modifying AyCode.Blazor — change-impact lens
- A breaking change to `MgGridBase` / `MgGridWithInfoPanel` affects both consumers above.
- A change to `MgGridSignalRDataSource` affects only SignalR-datasource consumers (FBANKAPP; GIAAPP binds server-side data directly).
- DevExpress version bumps cascade to every consumer (license + API compatibility check per consumer).
**Do NOT** use this list to write framework code that conditionalizes on specific consumers. Generic abstractions only. The list is a **HEURISTIC for impact**, not an **INPUT to logic**.
## Maintenance
When a repo joins or leaves the workspace consuming AyCode.Blazor, update the table above. The list ITSELF is workspace-meta-tooling — not framework code domain.
## Cross-references
- **Decision Log entries**: LLMP-DEC-62 (CONSUMERS.md pattern introduction); LLMP-DEC-69 (GiaApp join).
- **AyCode.Core's consumer map**: `AyCode.Core/CONSUMERS.md`.