1.5 KiB
1.5 KiB
GovOPlaN Calendar Codex Guide
Scope
This repository owns the calendar module: calendar collections, VEVENT storage, iCalendar import/export, availability primitives, backend module manifest, and @govoplan/calendar-webui.
Core owns auth, tenants, RBAC, database/session primitives, shared WebUI shell/components, and module discovery. Calendar integrations with tasks, mail, scheduling, appointments, workflow, DMS, notifications, and external groupware must stay optional and use core module metadata or capability boundaries.
Local Commands
Install and run through core:
cd /mnt/DATA/git/govoplan-core
./.venv/bin/python -m pip install -r requirements-dev.txt
Run focused calendar tests from the core environment:
cd /mnt/DATA/git/govoplan-core
PYTHONPATH=/mnt/DATA/git/govoplan-calendar/src:/mnt/DATA/git/govoplan-tenancy/src:/mnt/DATA/git/govoplan-access/src:/mnt/DATA/git/govoplan-core/src ./.venv/bin/python -m unittest discover -s /mnt/DATA/git/govoplan-calendar/tests
Working Rules
- Keep calendar semantics in this module, not core.
- Preserve unknown iCalendar properties and parameters unless a migration explicitly changes the storage model.
- Do not import optional modules directly from calendar. Use capabilities or API contracts for tasks, mail, scheduling, appointments, and external groupware.
- Treat recurrence expansion, free/busy, and CalDAV sync as calendar-owned primitives even when another module initiates them.