WorkClub Automation
|
9b1ceb1fb4
|
fix(k8s): fix image names, keycloak 26 envs, and bump resource limits for RPi
CI Pipeline / Backend Build & Test (push) Successful in 52s
CI Pipeline / Frontend Lint, Test & Build (push) Successful in 42s
CI Pipeline / Infrastructure Validation (push) Successful in 5s
|
2026-03-10 22:16:31 +01:00 |
|
WorkClub Automation
|
90ae752652
|
fix(k8s): enable keycloak health endpoints and increase probe delays
CI Pipeline / Backend Build & Test (push) Successful in 1m2s
CI Pipeline / Frontend Lint, Test & Build (push) Successful in 29s
CI Pipeline / Infrastructure Validation (push) Successful in 3s
|
2026-03-10 22:07:02 +01:00 |
|
WorkClub Automation
|
3c41f0e40c
|
fix(k8s): use args instead of command for keycloak to allow default entrypoint
CI Pipeline / Backend Build & Test (push) Successful in 1m19s
CI Pipeline / Frontend Lint, Test & Build (push) Successful in 26s
CI Pipeline / Infrastructure Validation (push) Successful in 4s
|
2026-03-10 22:02:48 +01:00 |
|
WorkClub Automation
|
b204f6aa32
|
fix(k8s): register secrets and postgres-patch in dev kustomization
CI Pipeline / Frontend Lint, Test & Build (push) Has been cancelled
CI Pipeline / Infrastructure Validation (push) Has been cancelled
CI Pipeline / Backend Build & Test (push) Has been cancelled
|
2026-03-10 21:42:31 +01:00 |
|
WorkClub Automation
|
0a4d99b65b
|
fix(k8s): add dev secrets and use emptyDir for postgres on storage-less cluster
CI Pipeline / Frontend Lint, Test & Build (push) Has been cancelled
CI Pipeline / Infrastructure Validation (push) Has been cancelled
CI Pipeline / Backend Build & Test (push) Has been cancelled
|
2026-03-10 21:18:19 +01:00 |
|
WorkClub Automation
|
c5b3fbe4cb
|
Added Kubernetes Cluster Deployment
CI Pipeline / Backend Build & Test (push) Failing after 55s
CI Pipeline / Frontend Lint, Test & Build (push) Failing after 33s
CI Pipeline / Infrastructure Validation (push) Successful in 9s
|
2026-03-10 19:58:55 +01:00 |
|
WorkClub Automation
|
326a4f30e8
|
infra(k8s): add dev overlay with resource limits and health checks
Implements Task 25: Kustomize Dev Overlay + Resource Limits + Health Checks
Files Created:
- infra/k8s/overlays/dev/kustomization.yaml - Dev overlay config
- References base manifests
- Namespace: workclub-dev
- Replicas: 1 for all deployments
- Image tags: dev for workclub-api and workclub-frontend
- Environment label: development
- infra/k8s/overlays/dev/patches/backend-resources.yaml
- Backend resources: cpu=50m-200m, memory=128Mi-256Mi
- Strategic merge patch targeting workclub-api deployment
- infra/k8s/overlays/dev/patches/frontend-resources.yaml
- Frontend resources: cpu=50m-200m, memory=128Mi-256Mi
- Strategic merge patch targeting workclub-frontend deployment
- frontend/src/app/api/health/route.ts
- Missing health endpoint (declared in base manifest but not implemented)
- Simple Next.js route handler returning {status: 'ok'}
Resource Limits (Dev vs Base):
- Dev: 50m-200m CPU, 128Mi-256Mi memory (50% of base)
- Base: 100m-500m CPU, 256Mi-512Mi memory
Verification:
- kustomize build succeeds (exit 0)
- All deployments replicas=1
- Lower resource limits applied correctly
- Image tags set to dev
- Frontend /api/health route registered
- Evidence saved to .sisyphus/evidence/task-25-kustomize-dev.yaml (495 lines)
Note: commonLabels deprecated warning (non-blocking), consider using labels in future.
|
2026-03-03 21:11:18 +01:00 |
|
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 |
|