arthur.bassi
cc14949e4a
chore(work-orders): sync platform-polish with wizard-board-create tip
2026-08-12 14:34:38 -03:00
Alexandre Brandizzi
5419edc4af
Merge branch 'dev' into fix/SH-109-inline-save-unscheduled
2026-08-12 12:11:17 -03:00
Arthur Bassi
91422e44ba
merge(dev): refresh SH-188 branch onto current origin/dev
...
Resolve completedDate conflicts keeping required string typing from dev and broader CompletedDate/completedOn aliases for the closability gate.
2026-08-12 11:56:17 -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
702a791404
Merge remote-tracking branch 'origin/dev' into feature/wo-multi-poc-contacts
...
# Conflicts:
# src/domain/work-orders/mappers/expand-scalar-board-ops.ts
2026-08-12 10:04:07 -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
4440f7d087
chore(work-orders): merge origin/dev into SH-109 inline save branch
...
EOF
2026-08-12 09:33:49 -03:00
arthur.bassi
64c485025b
fix(work-orders): enforce single-service wizard create per SH-118
...
Use single service selection in the wizard and omit extraServices from board create.
2026-08-11 17:42:48 -03:00
arthur.bassi
8bfa600301
feat(work-orders): board wizard create with service notes
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-11 17:06:49 -03:00
Arthur Bassi
11e1b65bc1
fix(work-orders): pass workOrderVersion in slide-over media and fix test fixture
...
Wire workOrderVersion through slide-over media delete/categorize after dev
merge, and remove duplicate completedDate in unscheduled highlight fixture.
2026-08-11 16:55:31 -03:00
Arthur Bassi
93c5a35b46
chore: merge origin/dev into slide-over media branch
...
Sync with latest dev (CompDoc/completedDate from PR #45 ) and resolve
conflicts while preserving slide-over detail, workOrderVersion on media
mutations, and the consolidated list page hook.
2026-08-11 16:46:32 -03:00
Arthur Bassi
ba4f3ca96d
fix(work-orders): avoid Array.at in advanced search wiring test
...
Keep the public-interface assertion compatible with the project's TypeScript lib target.
2026-08-11 15:59:33 -03:00
arthur.bassi
f58541d06a
fix(work-orders): keep SH-196 slice under maintainability gates
...
Extract EmptyInlineCell so WoTableInlineRowCells stays under the 150-line
limit, and add upliftSummary to the unscheduled highlight fixture.
2026-08-11 15:47:23 -03:00
Arthur Bassi
ea747af854
fix(work-orders): isolate advanced filter facets from vendor collateral
...
Restack SH-121/SH-196 severity and uplift facets on current dev without unrelated Vendor screen changes, and cover public-interface apply plus search totalCount semantics.
2026-08-11 15:44:34 -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
017820ac4b
fix(work-orders): add completedDate to unscheduled highlight fixture
...
Keep the merged origin/dev test building against WorkOrderTableRow after
the CompDoc completedDate field landed on this branch.
2026-08-11 15:35:42 -03:00
arthur.bassi
f6bc50dddd
merge(dev): restack SH-196 uplift slice on latest dev
2026-08-11 15:27:57 -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
1005186ea7
Merge branch 'dev' into feature/wo-detail-comp-doc
2026-08-11 15:23:55 -03:00
Arthur Bassi
f666ee215d
test(work-orders): cover site dialog POC autofill races
2026-08-11 15:15:02 -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
969f99a576
fix(work-orders): send workOrderVersion on media categorize/delete
...
Align CompDoc media mutations with backend PR #47 so categorize and
delete no longer return 422 WorkOrderVersionRequired.
2026-08-11 14:52:41 -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
4637f3ab14
chore: merge origin/dev into slide-over media branch
...
Sync with latest dev and add completedDate to the unscheduled highlight
fixture so the merge build stays type-safe.
2026-08-11 14:02:42 -03:00
Arthur Bassi
a30ac73d29
feat(work-orders): draft technician until vendor dialog save (SH-193) ( #89 )
...
CI / ci (push) Waiting to run
CI / governance (push) Waiting to run
CI / vendor-visual-regression (push) Waiting to run
Deploy / deploy (push) Waiting to run
* docs(work-orders): add pending BE contract checklist for design parity gaps
* feat(work-orders): add technician affordance in wo vendor dialog
* fix(work-orders): defer technician create until vendor dialog save
* docs(work-orders): align pr description with jira and qa residuals
* fix(vendors): harden draft technician optional field typing
* refactor(workorders): extract vendor dialog body footer and save hook
* fix(work-orders): coerce null company vendor for add-technician prop
* fix(work-orders): preserve draft technician staging on save [SH-193]
* fix(work-orders): select technicians by stable id [SH-193]
Keep selectedKey as explicit dialog state (SiteDialog pattern) so same-name drafts do not collide with existing vendors, and cover the regression with interaction tests.
Co-authored-by: Cursor <cursoragent@cursor.com>
---------
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Alexandre Brandizzi <alex_brandizzi@hotmail.com>
2026-08-11 14:01:31 -03:00
Arthur Bassi
9c7b42e96b
feat(work-orders): SH-132 FE — Due Date distinct from Schedule On + Emergency calendar modal ( #82 )
...
* feat(work-orders): align Due Date and Past Due with SH-132 FE contract [SH-132]
* fix(work-orders): highlight Schedule On for unscheduled rows
Restore forceScheduleHighlight for Unscheduled section rows while keeping Due Date highlight for past-due and attempt feedback.
Co-authored-by: Cursor <cursoragent@cursor.com>
* test(work-orders): cover unscheduled Schedule On highlight [SH-132]
Add row-level public-interface regression proving Unscheduled rows force-highlight Schedule On, not Due Date (SH-165).
Co-authored-by: Cursor <cursoragent@cursor.com>
---------
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Alexandre Brandizzi <alex_brandizzi@hotmail.com>
2026-08-11 13:49:41 -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
Arthur Bassi
2ed770bc79
fix(work-orders): separate Unscheduled header collapse and Add WO controls
...
[recover] remove malicious eslint payload (was ccec7322 )
2026-08-10 17:12:13 -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
Arthur Bassi
2eb5359d82
fix(work-orders): address wizard create review findings
...
[recover] remove malicious eslint payload (was 166c63e4)
2026-08-10 17:12:13 -03:00
Arthur Bassi
cfb0e7ea45
fix(work-orders): persist additionalContacts on create and board PATCH [SH-218]
...
[recover] remove malicious eslint payload (was 3f372257 )
2026-08-10 17:12:11 -03:00
Arthur Bassi
31c5559d23
fix(work-orders): clear uplift form state only after successful mutations
...
[recover] remove malicious eslint payload (was 380188af )
2026-08-10 17:12:10 -03:00
Arthur Bassi
ebc2e9a1e5
fix(work-orders): extract inline dialog state and enable Schedule On clear
...
[recover] remove malicious eslint payload (was 552c2daf )
2026-08-10 17:12:09 -03:00
arthur.bassi
cd4b8d27fd
fix(work-orders): seed CompDoc address after location settles [SH-116]
2026-08-06 10:14:29 -03:00
arthur.bassi
bfc230d421
fix(work-orders): harden CompDoc generate seed persist and blob revoke
2026-08-05 10:54:33 -03:00
arthur.bassi
7ea0d2c464
fix(work-orders): refresh CompDoc on Generate failure and drop EditWorkorder date helper
...
Invalidate board/location queries when Save Draft or Generate fails so partial
prerequisite writes stay authoritative, and remove the unused CompDoc
mapCompletedDateUpdateFormData EditWorkorder helper.
2026-08-04 16:27:59 -03:00
arthur.bassi
6481d9ce86
test(work-orders): assert CompDoc Generate skips Yes when date patch fails
2026-08-04 15:09:19 -03:00
arthur.bassi
65d75ca372
fix(work-orders): persist CompDoc prerequisites before Generated status
...
Also register retry AbortControllers so cancel aborts the active upload attempt.
2026-08-04 15:03:28 -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
b2d44944ab
fix(work-orders): resolve CompDoc/dev merge type and maintainability issues
2026-07-30 11:09:05 -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
3004d039aa
fix(work-orders): address SH-116 CompDoc review blockers
...
Gate CompDoc on selected service, use real pm titles only,
make Address editable via location update, and wire media
to the board API with categories instead of blob state.
2026-07-30 09:04:03 -03:00
Arthur Bassi
e1ea198319
fix(work-orders): make board-api head build in isolation
...
Include wizard-service-notes-fields in this slice, keep ApiError export,
and align JSX/boolean lint plus save-id wiring after rebase onto dev.
2026-07-27 10:59:28 -03:00
Arthur Bassi
725efd2703
feat(work-orders): slim completion-doc UI onto current dev
...
Keep SH-116 CompDocDialog wiring and completedDate board contract.
Drop slide-over ownership (SH-112) so it stays in PR #32 .
2026-07-27 09:47:46 -03:00
Arthur Bassi
01351b3f33
test(work-orders): cover missing checklist completedBy provenance
...
Regression: null/empty/whitespace completedBy shows Unknown, never the viewer.
2026-07-24 10:11:43 -03:00
Arthur Bassi
878e1d6a92
test(work-orders): cover New WO wizard open/close affordance
2026-07-24 10:11:38 -03:00
Arthur Bassi
7df076f011
fix(work-orders): wire Advanced Search sheet and cover SH-121 flow
2026-07-24 10:11:32 -03:00
Arthur Bassi
df2b5803a1
fix(test): cast canceled status in board-core fixture
2026-07-24 10:10:20 -03:00
Arthur Bassi
5e30c07c79
fix(test): align board-core affordance fixtures with WorkOrderTableRow
2026-07-24 10:07:15 -03:00