Arthur Bassi
d268ca3389
style(work-orders): fix prettier formatting on not-required actions
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-07 10:26:56 -03:00
Arthur Bassi
36d8e54d6d
fix(work-orders): type comp-doc seed status for tsc
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-07 10:17:55 -03:00
Arthur Bassi
db2ca4d933
fix(work-orders): split comp-doc dialog hook under max-lines gate
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-07 10:10:54 -03:00
arthur.bassi
31dd9d5b72
fix(work-orders): wire slide-over media retry and cancel [SH-116]
2026-08-06 10:03:37 -03:00
arthur.bassi
118d2042e6
fix(work-orders): harden CompDoc state, persist rollback, and close gate
2026-08-05 10:07:34 -03:00
arthur.bassi
346760b973
fix(work-orders): harden CompDoc generate order and media abort ownership
...
Session owns AbortControllers for retry/cancel; refresh board state on Generate
prerequisite failures; remove dead EditWorkorder completedDate mapper.
2026-08-04 16:32:40 -03:00
Alexandre Brandizzi
c0d5e556f2
fix(work-orders): persist date before Generate and fix media retry cancel
...
Keep CompDoc from marking Generated until completedDate is saved.
Bind retry AbortControllers to the uploader cancel map with upsert-by-localId.
2026-08-04 15:10:37 -03:00
Alexandre Brandizzi
9074841125
fix(work-orders): restore patchField options and harden mutations tests
...
keep slide-over save callbacks working with the board patch queue.
2026-08-04 15:10:37 -03:00
Alexandre Brandizzi
e7fb8d6122
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-08-04 15:10:37 -03:00
Arthur Bassi
5ea79ce8d1
fix(work-orders): use completedDate in CompDoc without lifecycle Completed
2026-08-04 15:10:37 -03:00
Arthur Bassi
e1daf94be2
refactor(work-orders): split slide-over and CompDoc for governance
...
Extract focused hooks and sibling components so CompDoc, slide-over,
media uploader, and list page meet maintainability ratchets.
2026-08-04 15:10:37 -03:00
Arthur Bassi
ba80dbf961
fix(work-orders): preserve slide-over draft baseline on failed save
2026-08-04 15:10:37 -03:00
Arthur Bassi
8e0737f7fb
fix(work-orders): preserve slide-over draft and gate media close
2026-08-04 15:10:37 -03:00
Arthur Bassi
6c481eaf7c
fix(work-orders): preserve comment draft until mutation succeeds
2026-08-04 15:10:37 -03:00
Arthur Bassi
bbca86c9a7
feat(work-orders): board slide-over detail with comments, audit and media
...
# Conflicts:
# src/app/(protected)/workorders/_components/comp-doc/comp-doc-dialog.tsx
# src/app/(protected)/workorders/_components/detail/work-order-assignee-menu.tsx
# src/app/(protected)/workorders/_components/detail/work-order-detail-sections.tsx
# src/app/(protected)/workorders/_components/detail/work-order-slide-over.tsx
# src/app/(protected)/workorders/_components/detail/work-order-status-menu.tsx
# src/app/(protected)/workorders/_components/media/media-upload-modal.tsx
2026-08-04 15:10:37 -03:00
Alexandre Brandizzi
ca7829036f
feat(vendors): add company roster workflows (SH-198) ( #64 )
...
CI / ci (push) Has been cancelled
CI / governance (push) Has been cancelled
Deploy / deploy (push) Has been cancelled
* feat(vendors): support company roster workflows
* fix(vendors): address roster review feedback
* test(vendors): preserve draft on roster load failure
* fix(vendors): preserve current roster selection
2026-08-04 09:53:48 -03:00
Alexandre Brandizzi
4b88a60751
fix(vendors): remove preferred contact and fix trade ordering ( #63 )
...
CI / ci (push) Waiting to run
CI / governance (push) Waiting to run
Deploy / deploy (push) Waiting to run
* fix(vendors): address SH-180 and SH-182
* refactor(vendors): satisfy maintainability gates
2026-08-03 17:53:39 -03:00
Arthur Bassi
e5300da9fb
chore(work-orders): sync feature/wo-board-api with current dev
2026-07-30 09:05:33 -03:00
Alexandre Brandizzi
bcf63dffad
refactor(vendors): satisfy maintainability gates
2026-07-28 17:27:34 -03:00
Alexandre Brandizzi
e6a3899f4c
fix(vendors): make navigation and PO filters responsive
2026-07-28 17:16:50 -03:00
Alexandre Brandizzi
95cbfff301
fix(vendors): allow sparse reactivation updates
2026-07-28 17:16:07 -03:00
Arthur Bassi
6e99dc0af2
refactor(work-orders): pass board-api governance maintainability gate
...
Split oversized API/mapper/UI modules and extract focused helpers so the
exact head satisfies godfile and complexity ratchets without relaxing thresholds.
2026-07-28 09:56:27 -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
8ae54a6173
fix(work-orders): use overdue=true and harden board patch overlays
2026-07-27 10:26:35 -03:00
Arthur Bassi
3ea136ce3c
feat(work-orders): integrate board list, search and field patch API
2026-07-27 10:19:34 -03:00
Alexandre Brandizzi
66cc892107
Merge remote-tracking branch 'origin/dev' into codex/pr44-current-base
2026-07-24 18:52:29 -03:00
Alexandre Brandizzi
09ed3693f6
refactor: enforce dispatch detail quality gates
2026-07-24 18:51:50 -03:00
Alexandre Brandizzi
fce531aeb0
Merge remote-tracking branch 'origin/dev' into codex/pr30-lint-fix
2026-07-24 18:46:55 -03:00
Alexandre Brandizzi
ea76a5d0ba
chore: integrate repaired wizard foundation
2026-07-24 18:45:46 -03:00
Alexandre Brandizzi
07c8799a3f
Merge remote-tracking branch 'origin/dev' into codex/pr30-lint-fix
2026-07-24 18:43:30 -03:00
Alexandre Brandizzi
ca9d9e9c2a
chore: integrate current dev into board foundation
2026-07-24 18:43:22 -03:00
Alexandre Brandizzi
1c451e07b4
Merge remote-tracking branch 'origin/dev' into codex/pr43-dev-integration
2026-07-24 18:41:42 -03:00
Alexandre Brandizzi
2f5ee30020
refactor: align work order wizard with frontend standards
2026-07-24 18:41:30 -03:00
Alexandre Brandizzi
5b8d8a1dfc
refactor(work-orders): split advanced search state and sections ( #54 )
2026-07-24 17:35:53 -04:00
Alexandre Brandizzi
caecc05b68
Merge remote-tracking branch 'origin/dev' into codex/pr43-dev-integration
...
# Conflicts:
# src/app/(protected)/workorders/index.tsx
# src/test/app/(protected)/workorders/work-orders-board-core-affordances.test.tsx
2026-07-24 18:13:54 -03:00
Alexandre Brandizzi
45909e7aa6
Complete vendor operations roadmap frontend ( #52 )
...
* feat(vendors): complete operations roadmap frontend
* test(vendors): cover work order assignment flow
* fix(vendors): address review feedback
* fix(vendors): prevent stale preference saves
* fix(vendors): require truthful appointment bounds
2026-07-24 18:10:45 -03:00
Arthur Bassi
52e77dc197
feat(work-orders): add board advanced search UI ( #42 )
...
* feat(work-orders): add board advanced search UI
* fix(work-orders): wire Advanced Search sheet and cover SH-121 flow
* style(work-orders): format board fixture
---------
Co-authored-by: Arthur Bassi <arthur.winiarski.ranger@outlook.com>
Co-authored-by: Alexandre Brandizzi <alex_brandizzi@hotmail.com>
2026-07-24 20:59:47 +00:00
Alexandre Brandizzi
ed12f59255
chore(work-orders): merge origin/dev into table-core branch
...
Integrate origin/dev (vendor module + maintainability conventions) after PR #39 .
- Resolve src/app/(protected)/workorders/index.tsx conflict by keeping the
PR #40 table rewrite (WoTable + WorkOrdersFilterBar); dev's only change to
this file was a {Boolean(error)} lint fix on legacy filter UI that the
rewrite already removed.
- work-order-mapper.ts auto-merged cleanly.
- Conform PR #40 table-core code to dev's new maintainability lint rules
(seahaven/no-non-boolean-jsx-and, shared Text component for raw p/h
elements, logical-AND for one-sided conditionals) using narrowing-preserving
guards (!= null) where values flow into typed props, preserving behavior.
Validation (Node v24.14.0 / npm 11.9.0): npm ci, format:check, lint, build,
test (156/156) all green.
2026-07-24 14:04:15 -03:00
Alexandre Brandizzi
4f99406388
chore(work-orders): merge origin/dev into pr39 integration branch
...
Integrate current origin/dev (vendor-core completion plus frontend
maintainability) into the work-order board shell branch.
Resolved semantic conflicts against the new frontend-maintainability
ESLint conventions introduced on dev: guard non-boolean && left
operands with Boolean()/!=null and replace raw <p> with the shared
Text component (media-upload-modal). PR #39 board shell/detail modules
and hooks preserved; merged vendor-core behavior and Text/ESLint
conventions preserved.
2026-07-24 13:45:16 -03:00
Alexandre Brandizzi
9a88f0583b
Merge pull request #51 from Sea-Haven-Industries/codex/frontend-maintainability
...
chore(frontend): enforce maintainable text rendering
2026-07-24 13:24:35 -03:00
Alexandre Brandizzi
392af77b91
refactor(ui): enforce maintainable conditional feedback
2026-07-24 11:32:58 -03:00
Arthur Bassi
40c6e3cb3d
fix(work-orders): never attribute checklist completion to viewer
2026-07-24 10:11:43 -03:00
Arthur Bassi
d2ff345965
feat(work-orders): add dispatch detail shell
2026-07-24 10:11:43 -03:00
Arthur Bassi
faa6396e56
fix(work-orders): mount New WO wizard on board page
2026-07-24 10:11:37 -03:00
Arthur Bassi
7fb4334405
feat(work-orders): add board wizard shell UI
2026-07-24 10:11:37 -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
4550acf1ea
feat(work-orders): add board advanced search UI
2026-07-24 10:11:31 -03:00
Alexandre Brandizzi
6ca45bc0ae
fix(vendors): preserve phone data across edits
2026-07-23 19:17:14 -03:00
Alexandre Brandizzi
21b7de57a1
chore(frontend): enforce maintainable text rendering
2026-07-23 18:48:15 -03:00
Alexandre Brandizzi
922d6c9a57
feat(vendors): edit assigned vendor from work order
2026-07-23 17:44:53 -03:00