docs: add calendar integration spec

This commit is contained in:
2026-05-05 13:02:14 -04:00
parent f6c351c31e
commit 6e658b8215
6 changed files with 434 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
# Task: Backend calendar source foundation
## Goal
Add backend storage and APIs for organization, workspace, and user calendar sources.
## Feature Spec
- `docs/FEATURES/calendar-integrations.md`
## Scope
- Add a calendar integrations module under `backend/src/Socialize.Api/Modules/CalendarIntegrations`.
- Model calendar sources for organization, workspace, and user scopes.
- Support organization inheritance modes: required and optional.
- Track source URL, catalog reference, display title, color, category, enabled state, and sync metadata.
- Add endpoints to list visible sources for a workspace/user context.
- Add endpoints to create/update/delete sources according to scope permissions.
- Show inherited organization sources in workspace responses as read-only.
- Add validation for source URLs, colors, scope, and inheritance mode.
- Add focused backend tests for permissions and inherited source visibility.
## Relevant Files
- `backend/src/Socialize.Api/Modules/CalendarIntegrations/`
- `backend/src/Socialize.Api/Data/AppDbContext.cs`
- `backend/src/Socialize.Api/Program.cs`
- `backend/tests/Socialize.Tests/`
- `shared/openapi/openapi.json`
- `frontend/src/api/schema.d.ts`
## Validation
```bash
dotnet build backend/Socialize.slnx
dotnet test backend/Socialize.slnx
./scripts/update-openapi.sh
```