# 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: ```bash cd /mnt/DATA/git/govoplan-core ./.venv/bin/python -m pip install -r requirements-dev.txt ``` Run focused calendar tests from the core environment: ```bash 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.