REQ-FUN-101
Schedule activity CRUD scoped to project and work package
What
System SHALL provide CRUD endpoints for schedule activities at /v1/projects/{id}/activities (and the equivalent MCP tools). Each activity has id, project_id, work_package_id (optional), name, description, planned_start, planned_finish, estimated_duration_days, actual_start, actual_finish, percent_complete, responsible_actor_id, status, created_at, updated_at.
Why
established project management guidelines Define Activities + Estimate Activity Durations require a first-class schedule-activity record below the work-package (WBS leaf) level. The existing plan/plan_step rows are milestone-grained and insufficient for full Schedule Management.
How
New activity table FK-bound to project and to work_package; REST CRUD + MCP parity per REQ-FUN-050/051; standard audit row on every mutation (REQ-FUN-070); status transitions follow the same proposed/in_progress/done state machine the requirement table uses; soft-delete only.
Done when
Activity CRUD round-trips via REST, MCP, and web UI with identical audit rows; FK enforcement blocks dangling project_id/work_package_id; OpenAPI spec describes the surface.
Out of scope
Sub-activity decomposition (single level under WBS leaf for MVP); calendar/working-day semantics beyond simple day-count durations.
established project management guidelines Mapping
Activity CRUD is the foundation of established project management guidelines Define Activities and Develop Schedule.