Files
work-club-manager/.sisyphus/evidence/task-6-resource-names.txt
WorkClub Automation ba024c45be feat(domain): add core entities — Club, Member, WorkItem, Shift with state machine
- Create domain entities in WorkClub.Domain/Entities: Club, Member, WorkItem, Shift, ShiftSignup
- Implement enums: SportType, ClubRole, WorkItemStatus
- Add ITenantEntity interface for multi-tenancy support
- Implement state machine validation on WorkItem with C# 14 switch expressions
- Valid transitions: Open→Assigned→InProgress→Review→Done, Review→InProgress (rework)
- All invalid transitions throw InvalidOperationException
- TDD approach: Write tests first, 12/12 passing
- Use required properties with explicit Guid/Guid? for foreign keys
- DateTimeOffset for timestamps (timezone-aware, multi-tenant friendly)
- RowVersion byte[] for optimistic concurrency control
- No navigation properties yet (deferred to EF Core task)
- No domain events or validation attributes (YAGNI for MVP)
2026-03-03 14:09:25 +01:00

27 lines
919 B
Plaintext

Full Resource List from kustomize build
========================================
Deployments:
- workclub-api (port 8080, dotnet-api service)
- workclub-frontend (port 3000, nextjs service)
- workclub-keycloak (port 8080, auth service)
StatefulSet:
- workclub-postgres (port 5432, database service)
Services (ClusterIP):
- workclub-api (selector: app=workclub-api)
- workclub-frontend (selector: app=workclub-frontend)
- workclub-keycloak (selector: app=workclub-keycloak)
- workclub-postgres (selector: app=workclub-postgres)
- workclub-postgres-headless (clusterIP: None, for StatefulSet DNS)
ConfigMaps:
- workclub-config (application settings: log-level, cors-origins, api-base-url, etc.)
- postgres-init (initialization script for database setup)
Ingress:
- workclub-ingress (path-based routing: / → frontend, /api → backend)
All resources created with consistent workclub- prefix