Codex Review Integration
3b1da21abb
fix(workorders): preserve partial POC edits
2026-09-18 15:00:01 -03:00
Codex Review Integration
2d54ff12f8
fix(work-orders): show fixed copy for edit conflict toasts (SH-375)
2026-09-16 21:22:07 -03:00
Codex Review Integration
afc98a9daa
fix(work-orders): normalize partial-save and generic edit error toasts (SH-375)
2026-09-16 21:20:16 -03:00
Codex Review Integration
fc25d8f7c7
fix(work-orders): show generic copy for unknown edit errors (SH-375)
2026-09-16 21:14:25 -03:00
Alexandre Brandizzi
440a3d0112
Merge branch 'dev' into feat/ab/sh-222-create-error-copy
2026-09-16 20:56:26 -03:00
Codex Review Integration
09636ef590
fix(work-orders): complete the work order when its completion document is generated (SH-341)
...
Generating or uploading the completion document now moves a closable work
order to Completed without the manual confirmation, as SH-115 requires. The
SH-114 closability gate is evaluated on the row the server returned after the
document save; Save draft, Not required, Past Due, Completed and Canceled rows
are never auto-completed. The follow-up status patch uses that row's
rowVersion so it does not conflict with the document save.
2026-09-16 11:43:33 -03:00
Codex Review Integration
3ad07c9e10
fix(work-orders): keep backend validation text out of create error toasts
...
Board create failures toasted the backend message verbatim, exposing
field names such as siteCode and vendorId from the inline row and the
wizard. Map known codes to product copy and fall back to generic copy
for every other failure.
2026-09-16 11:17:37 -03:00
Arthur Bassi
747515870e
fix(workorders): correct vendor save behavior
2026-09-07 20:48:30 -03:00
Arthur Bassi
dc9cc07a73
Merge branch 'dev' into feat/SH-170-wo-inline-type-correction
2026-09-07 11:51:30 -03:00
Arthur Bassi
f51f6bd493
chore(work-orders): keep type/severity audit rules after merging origin/dev
2026-09-04 16:41:42 -03:00
Arthur Bassi
418eb3749d
fix(work-orders): restore Range tab on Schedule On for inline and slide-over
...
Share Week/Date/Range on inline, board, and slide-over DateCell.
A selected range lands on the start day, matching the wizard.
2026-09-04 15:59:53 -03:00
Arthur Bassi
27ddeb2903
feat(work-orders): align inline type correction with the board AAP
...
Keep type correction on the board: Type & severity, SEV toast, and audit copy.
2026-09-03 16:30:10 -03:00
Arthur Bassi
c2d1add79c
fix(work-orders): persist AAP auto-schedule on a single board patch
...
Merge derived status once so dated rows cannot stay Pending or Incomplete.
Create and wizard demote Scheduled when there is no concrete date.
2026-09-03 11:13:24 -03:00
Arthur Bassi
9cc9bc4dfb
feat(work-orders): align inline lifecycle transitions with AAP
...
Use the prototype status list and gates on the board and wizard.
Auto-derive Scheduled or Pending from a concrete schedule date.
2026-09-02 15:11:31 -03:00
Arthur Bassi
7e1dcb7a36
fix(work-orders): toast after assigned-to save on the board
...
Show the save toast only after the board PATCH succeeds.
2026-09-01 10:20:38 -03:00
Arthur Bassi
85ea33b0ad
Merge branch 'dev' into fix/sh-296-vendor-invalid-dispatch
2026-08-31 16:36:50 -03:00
Arthur Bassi
72417bbb77
fix(work-orders): omit non-positive primaryDispatchId on board patches
...
A GET echo of 0 on primaryDispatchId made vendor PATCH fail InvalidDispatch.
2026-08-31 15:48:31 -03:00
Arthur Bassi
07c03e99b9
test(work-orders): assert empty apptTime board PATCH and refetch
...
EOF
2026-08-31 10:54:28 -03:00
Arthur Bassi
8d755bcb11
fix(work-orders): address PR review on toast feedback
...
Scope vendor and save toasts to successful assigned-vendor and slide-over saves.
Bind patch success callbacks per operation instead of shared mutate observers.
2026-08-26 19:30:29 -03:00
Arthur Bassi
5a0e907067
feat(work-orders): add consistent save/delete toast feedback
...
Cancel WO and vendor assignment toast after a successful board PATCH.
2026-08-26 18:42:56 -03:00
Arthur Bassi
9a347a67fb
test(work-orders): pin vendor PATCH producer row onto closability
2026-08-20 15:39:39 -03:00
Arthur Bassi
d8da3a5048
test(work-orders): pin vendor PATCH response as live company assignment
...
Round-trip: board PATCH emits vendorId only; a Pending response keeps Completed
unblocked, while a leftover Refused response still raises Missing: Company.
2026-08-20 15:09:35 -03:00
Arthur Bassi
a75b094564
Merge branch 'dev' into feature/wo-multi-poc-contacts
2026-08-19 09:32:29 -03:00
arthur.bassi
090130a2c0
chore(work-orders): merge origin/dev into uplifts PR
...
Keep upliftSummary fixtures and add isAddOn after the Add-On indicator landed on dev.
2026-08-18 13:24:21 -03:00
arthur.bassi
0c2ef6ac5e
merge origin/dev into feature/wo-multi-poc-contacts
...
Use the extracted inline Schedule On cell from dev and keep additional-contacts fixtures complete.
2026-08-18 13:19:45 -03:00
arthur.bassi
1e88c3d039
chore(work-orders): merge origin/dev and keep SH-218 additional POCs
2026-08-17 14:05:49 -03:00
arthur.bassi
0941a1aa3f
chore(work-orders): merge origin/dev and keep SH-196 uplift column
2026-08-17 13:28:52 -03:00
Arthur Bassi
4a95da32d2
chore(work-orders): merge origin/dev and keep SH-184 Add-On with severity gates
2026-08-17 09:36:07 -03:00
Arthur Bassi
b4cb9d0288
feat(work-orders): severity gates and wizard type/WO# parity (SH-192) ( #106 )
...
CI / ci (push) Has been cancelled
CI / governance (push) Has been cancelled
CI / vendor-visual-regression (push) Has been cancelled
Deploy / deploy (push) Has been cancelled
* fix(work-orders): allow blank WO number in wizard create path
[recover] remove malicious eslint payload (was d0d08508 )
* fix(work-orders): emit severity before type in board scalar PATCH ops
Co-authored-by: Cursor <cursoragent@cursor.com>
* chore(work-orders): drop vendor collateral from SH-192 lane
* fix(work-orders): add severity to unscheduled highlight fixture after dev merge
* refactor(work-orders): extract inline type/severity cell under function line cap
* fix(work-orders): add severity to comp-doc and media fixtures after dev merge
PR #45 introduced completion-doc, media and table-mutation fixtures that predate the required severity field, so the integrated head failed tsc. Fill severity on those row builders (null for PM, SEV 1 for the Emergency fixture) and type the mutation BASE_ROW instead of asserting it.
* test(work-orders): align merge fixes with severity field and WO# placeholder
---------
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Arthur Bassi <bassi-arthurr@users.noreply.github.com>
Co-authored-by: Alexandre Brandizzi <alex_brandizzi@hotmail.com>
2026-08-14 11:59:52 -03:00
Arthur Bassi
50a7a030bf
chore(work-orders): merge dev into SH-218 branch
2026-08-13 15:59:54 -03:00
arthur.bassi
a8c6a629ca
merge(dev): resolve SH-196 uplift conflicts with completed date column
...
Keep UPLIFT after COMP DOC alongside COMPLETED DATE from dev, wire
uplifts through useWorkOrdersListPage, and refresh table-row fixtures.
2026-08-12 17:29:22 -03:00
arthur.bassi
dc5140b495
chore(work-orders): resolve Add-On indicator conflicts with current dev
2026-08-12 16:09:56 -03:00
arthur.bassi
f460d7854e
fix(work-orders): satisfy additionalContacts fixtures and inline row max-lines
2026-08-12 10:32:37 -03:00
arthur.bassi
99724f831c
fix(work-orders): adapt Add-On indicator unstack onto independently approvable base
...
Extract inline schedule cell for the maintainability gate, drop completedDate
patch coverage that is not on WorkOrderTableRow on dev, and align range create
expectations with assignWizardScheduleFields.
2026-08-11 15:42:29 -03:00
Arthur Bassi
8a2bc21845
fix(work-orders): sync addon-indicator with platform-polish parent
...
[recover] remove malicious eslint payload (was 692598b7 )
2026-08-11 15:08:27 -03:00
Arthur Bassi
d72be8c505
fix(work-orders): use local calendar day for slide-over completedDate
...
[recover] remove malicious eslint payload (was 6a278c01 )
2026-08-10 17:12:13 -03:00
Alexandre Brandizzi
509b3c3212
fix(work-orders): persist completedDate via board and media sh-116
...
leave EditWorkorder for completedDate; await mutations before draft saved
toast; upload-then-categorize with MIME allowlist, progress, cancel, retry.
2026-07-31 12:24:31 -03:00
Arthur Bassi
27c7c8df55
test(work-orders): align table mutations test with updateCompletedDate
...
Assert updateCompletedDate instead of getById before EditWorkorder.
2026-07-31 09:58:34 -03:00
Arthur Bassi
96f3daf20c
fix(work-orders): persist completedDate without legacy GetWorkorderById
...
Save Draft failed on GetWorkorderById (HTTP 400) before EditWorkorder.
Post only Id + CompletedDate and cover the EditWorkorder route contract.
2026-07-31 09:43:23 -03:00
Arthur Bassi
e3aa69e577
chore(work-orders): sync feature/wo-detail-comp-doc with current dev
2026-07-30 10:59:22 -03:00
Arthur Bassi
2d64c34898
fix(work-orders): extract docStatus mapper for governance ratchet
...
Keep work-order-mapper under the frozen line cap and cap addDispatchSignoff params.
2026-07-29 09:31:15 -03:00
Arthur Bassi
188499155e
fix(work-orders): persist docStatus via board PATCH with NotNeeded mapping
...
Map API NotNeeded to UI NN on read. Emit board PATCH Yes|No|NotNeeded on
write, and keep DocStatus off the EditWorkorder payload.
2026-07-29 09:23:34 -03:00
Arthur Bassi
b7056f569e
fix(work-orders): persist completion doc fields without race
...
Map docStatus through the real update payload, serialize concurrent
table patches per work order, and split CompDoc UI for governance.
2026-07-28 12:49:51 -03:00