REQ-FUN-104
Schedule baseline as versioned, immutable snapshot
What
System SHALL capture a schedule baseline as a versioned snapshot of all activities, their planned_start/planned_finish/estimated_duration, and their dependency edges at the moment of baseline approval. Baseline rows are insert-only.
Why
established project management guidelines Develop Schedule outputs the schedule baseline as the comparison reference for Control Schedule. It is a configuration-managed artifact and must not drift retroactively.
How
schedule_baseline table (baseline_id, project_id, version_int, captured_at, captured_by, approved_signoff_id) + schedule_baseline_activity table containing the per-activity snapshot. Baseline capture is triggered by an approved sign-off on the schedule (REQ-FUN-030..033 pattern). DB role grants only INSERT on these tables (REQ-NFR-068 enforces).
Done when
A baseline can be captured via REST and MCP; subsequent activity edits do not modify the baseline rows; GET /v1/projects/{id}/schedule/baselines lists every baseline version with its captured_at + signoff link.
Out of scope
Multi-baseline merge; partial-baseline scope.
established project management guidelines Mapping
Captures the canonical established project management guidelines Schedule Baseline deliverable.