feat(projects): accept actual_end_date on create for edit-form parity #278
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/pms-361-create-project-symmetry"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The New Project form is meant to expose the same status/date/manager fields the Edit form does, so a project can be created in a non-default state in one submission instead of "create then edit" (PMS-361 finding #4). The server side already accepted status, project_manager_id, start_date and target_end_date on POST /projects and persisted them; the one CreateProjectRequest field UpdateProjectRequest had that Create lacked was actual_end_date.
Add actual_end_date to CreateProjectRequest and thread it through the create_project INSERT so the create DTO is fully symmetric with the update DTO. The "planning" status default is unchanged, so a create with no override still matches today's behaviour.
Add an integration test (create_accepts_status_dates_and_manager) proving the AC3 round-trip: a project created with status=active, a project manager, start_date, target_end_date and actual_end_date lands in the row and reads back on the detail endpoint, and that omitting status keeps the "planning" default.
Create-vs-Edit asymmetry audit (server DTOs):
#PMS-361