Arthur Bassi
4c9f8b7d81
fix(work-orders): treat vendor save as a live company assignment
...
Clear leftover primary dispatch status on vendor patch so Completed is not
blocked after a new company is chosen. Keep Jira keys out of source comments.
2026-08-20 14:17:20 -03:00
Arthur Bassi
e9b00bab57
fix(work-orders): ignore inactive primary dispatch on board closability (SH-183)
...
Board Completed must not treat Cancelled/Canceled/Refused leftover vendorId as a live company assignment.
2026-08-20 10:52:43 -03:00
Arthur Bassi
e3b8360a68
fix(work-orders): treat Canceled and Refused dispatches as inactive (SH-183)
...
Backend returns Cancelled, Canceled, and Refused; only Cancelled was skipped,
so Complete stayed enabled with no live vendor.
2026-08-19 15:04:50 -03:00
Arthur Bassi
a43de20ed4
fix(work-orders): ignore cancelled dispatches in detail closability (SH-183)
2026-08-19 12:02:17 -03:00
Arthur Bassi
1554cf30d0
fix(work-orders): require vendor company not technician to complete (SH-183)
2026-08-19 11:49:19 -03:00
arthur.bassi
ce6e19ebaa
Merge remote-tracking branch 'origin/dev' into feature/sh-114-wo-closability-gate
...
# Conflicts:
# src/app/(protected)/workorders/_components/list/table/cells/status-cell.tsx
# src/domain/work-orders/utils/wo-closability.ts
# src/test/domain/work-orders/utils/wo-closability.test.ts
2026-08-18 21:18:49 -03:00
arthur.bassi
a109a68f40
fix(work-orders): keep SH-188 tooltip when mixed with other gaps
...
Stop copying WO lifecycle status into uplift primaryStatus on flat board rows.
2026-08-18 17:28:14 -03:00
arthur.bassi
37a6098ecb
fix(work-orders): require company not technician for Completed (SH-183)
2026-08-17 13:54:05 -03:00
Arthur Bassi
5d7ac297e4
fix(work-orders): drop vendor string from Completed closability (SH-114)
2026-08-14 10:55:06 -03:00
Arthur Bassi
1835a5939a
fix(work-orders): dedupe completedDate and gate Completed on technician (SH-188)
...
Refresh onto current dev and resolve exact-head review blockers:
- Remove duplicate WorkOrderBoardRowApi.completedDate after merge with dev
- Add SH-114 Technician closability gate alongside company/vendor check
- Update wo-closability regressions for missing technician
2026-08-13 15:21:16 -03:00
Arthur Bassi
8a221c8819
fix(work-orders): consume board pendingUpliftCount for SH-188 gate
...
Map the authoritative board/search/detail pendingUpliftCount into the
Completed closability gate and align the pending-uplift tooltip with SH-188.
2026-08-12 09:55:34 -03:00
arthur.bassi
dd60b1d72e
fix(work-orders): allow comp-doc generate without existing completion document
...
canGenerateCompDoc now ignores the completion-document closability gap so PM/Overdue drafts can enter generation.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-11 15:28:00 -03:00
arthur.bassi
67c4ee8119
fix(work-orders): only block Completed on evidenced pending uplift
...
Absence of optional uplift fields means no pending, per SH-188.
2026-08-11 15:28:00 -03:00
arthur.bassi
a3e9a20477
fix(work-orders): fail closed on unknown uplift status
2026-08-11 15:28:00 -03:00
arthur.bassi
6b415f732c
fix(work-orders): unify closability with sh-114 and pending uplift
2026-08-11 15:26:21 -03:00
arthur.bassi
f5414e4b14
feat(work-orders): block completed when uplift is pending
2026-08-11 15:26:21 -03:00
arthur.bassi
5e3b7b8057
fix(work-orders): use authoritative type/doc/media for detail closability
...
Stop treating integration source as WorkOrderType.
Enrich detail from board detail for SH-114/SH-183 gates.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-11 14:06:54 -03:00
arthur.bassi
8cd6d92ba7
fix(work-orders): map detail problem and source into closability
...
detailToClosabilityInput now uses WorkOrderDetail.problem as pm and source as WO type so Done is not permanently blocked by a false Service gap.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 19:11:35 -03:00
Arthur Bassi
c850be2aeb
fix(work-orders): compare completion labels via string helper
...
[recover] remove malicious eslint payload (was 19dfa0f9 )
2026-08-10 17:12:14 -03:00