659 — Budget sources survive a value-only edit in Details¶
Description¶
PT-5832: editing only a budget's value in the Project Details form must not
reset its source. The backend keeps source untouched on a value/unit edit;
this guards the FE form's other half — that it preserves and resubmits the
existing source rather than snapping the radio back to its default (ALL /
Revenue) when the value field changes. Both budgets are seeded with
non-default sources (time = BILLABLE, price = COST) so a reset to either
default would be caught.
Preconditions¶
- Authenticated user on a fresh org.
- Project seeded via API: time budget 100h with source BILLABLE (overridden); price budget with source COST (fixture default).
Steps¶
- Open project → Details. — Expected: time source "Billable time" and price source "Cost" are selected.
- Change ONLY the time-budget value (100 → 200), Save. — Expected: "Updated" snackbar.
- Navigate away and reopen project → Details. — Expected: time value is 200; time source still "Billable time"; price source still "Cost".
Related¶
- Spec: playwright/tests/integration/project.spec.ts (describe "Budget scope selectors")
- Ticket: PT-5832