Codex Review Integration
0b229fd054
fix(work-orders): validate inline technician phone before roster save
...
The inline technician rows on the wizard's Vendor & time step had no
client-side phone check, so a number that does not normalize to ten digits
failed the roster PATCH and blocked the whole Create with the raw backend
message in a toast. Validate each staged phone with the same
isValidNorthAmericanPhone predicate the vendor roster schema uses, so the
inline path matches the modal path. A blank phone stays valid.
2026-09-16 19:45:07 -03:00
Alexandre Brandizzi
c0a20e74ac
Merge pull request #192 from Sea-Haven-Industries/fix/ab/sh-194-week-scoped-search
...
SH-194: Keep keyword search week-scoped and Advanced Filters global
2026-09-16 19:42:24 -03:00
Codex Review Integration
1b17cbec01
feat(dashboard): build dashboard experience (SH-336)
2026-09-16 19:37:15 -03:00
Alexandre Brandizzi
ef199e19b6
Merge branch 'dev' into fix/ab/sh-320-inline-sh-prefix-wo-number
2026-09-16 19:34:20 -03:00
Codex Review Integration
71756ca3a5
fix(work-orders): clear registry service when WO type changes
...
Selecting a work-order type on wizard step 1 only patched type and
severity, leaving pm, serviceId, extraServices, and the vendor filtered
by that service in the draft. Switching type (e.g. PM -> Reactive) then
submitted a serviceId that is not in the new type's registry list, which
backend ResolveServiceAsync (SH-187/#131) rejects as ServiceInvalid and
the create toast renders as the generic "Unable to create the work
order". Clear the service and its vendor whenever the type actually
changes; re-selecting the same type leaves the selection untouched.
2026-09-16 19:33:08 -03:00
Alexandre Brandizzi
aeb6f7d224
Merge branch 'dev' into fix/ab/sh-341-generate-completes-work-order
2026-09-16 19:32:26 -03:00
Alexandre Brandizzi
f752ced38d
Merge branch 'dev' into feat/ab/sh-195-date-header-tooltips
2026-09-16 19:32:23 -03:00
Alexandre Brandizzi
40301e23ab
Merge branch 'dev' into feat/ab/sh-278-vendor-service-area
2026-09-16 19:32:20 -03:00
Alexandre Brandizzi
3ec6540271
Merge branch 'dev' into fix/ab/sh-194-week-scoped-search
2026-09-16 19:30:44 -03:00
Alexandre Brandizzi
d40090a5c0
Merge pull request #201 from Sea-Haven-Industries/feat/ab/sh-235-severity-badge
...
SH-235: guard severity tooltip and escalation toast rules with tests
2026-09-16 19:30:23 -03:00
Codex Review Integration
1fa9f6ec02
fix(work-orders): close wizard before saving vendor notes on create
...
The create mutation's onSuccess awaited saveCompanyNotes before calling
onOpenChange(false). Because isCreating is createMutation.isPending ||
isCheckingDuplicate, and isPending drops to false the moment the work-order
create resolves, the dialog stayed open with Create re-enabled and pointer
events unlocked for the length of the roster GET plus notes PATCH. A second
Create click ran handleCreate again; with a blank provisional WO number the
duplicate lookup short-circuits without an API call, so createMutation.mutate
fired a second time and created a duplicate work order.
Close the dialog first, then fire saveCompanyNotes unawaited. The save does
not need the dialog open: fetchCurrentBaseline reads the roster when the
baseline is missing, and the failure toast is raised from the mutation's
option-level onError, so it still surfaces after the dialog unmounts.
2026-09-16 19:29:29 -03:00
Alexandre Brandizzi
68c4809a16
Merge branch 'dev' into fix/ab/sh-341-generate-completes-work-order
2026-09-16 19:18:28 -03:00
Alexandre Brandizzi
331de59f97
Merge branch 'dev' into feat/ab/sh-278-vendor-service-area
2026-09-16 19:18:25 -03:00
Alexandre Brandizzi
638e33af72
Merge branch 'dev' into feat/ab/sh-235-severity-badge
2026-09-16 19:18:21 -03:00
Alexandre Brandizzi
a793e1c2d9
Merge branch 'dev' into fix/ab/sh-320-inline-sh-prefix-wo-number
2026-09-16 19:18:18 -03:00
Codex Review Integration
04f8b51eab
refactor(work-orders): use Tailwind tokens for search scope label
...
Swap the inline fontSize/color on the week-scope status label for the
text-(length:--text-xs) and text-muted-foreground classes already used
across the header, so it tracks future token changes. --text-xs is 11px
and text-muted-foreground resolves to --muted-foreground, so rendering is
unchanged.
2026-09-16 19:17:28 -03:00
Alexandre Brandizzi
9cce2966f1
Merge branch 'dev' into feat/ab/sh-195-date-header-tooltips
2026-09-16 19:16:15 -03:00
Alexandre Brandizzi
dabdc86c69
Merge pull request #204 from Sea-Haven-Industries/fix/ab/sh-356-due-date-after-schedule
...
SH-356: keep Due Date on or after Schedule On
2026-09-16 19:14:18 -03:00
Codex Review Integration
1c66f8d60e
fix(services): cache completion template options
2026-09-16 19:13:28 -03:00
Codex Review Integration
b449df97e6
fix(services): use completion document templates
2026-09-16 19:13:00 -03:00
Codex Review Integration
0b63d882ab
refactor(services): split registry management view
2026-09-16 19:05:02 -03:00
Alexandre Brandizzi
33a979c79d
Merge branch 'dev' into fix/ab/sh-341-generate-completes-work-order
2026-09-16 19:04:30 -03:00
Alexandre Brandizzi
0ca032ef8f
Merge branch 'dev' into feat/ab/sh-195-date-header-tooltips
2026-09-16 19:04:26 -03:00
Alexandre Brandizzi
0b219311b5
Merge branch 'dev' into feat/ab/sh-278-vendor-service-area
2026-09-16 19:04:23 -03:00
Alexandre Brandizzi
448ba70d87
Merge branch 'dev' into feat/ab/sh-235-severity-badge
2026-09-16 19:04:20 -03:00
Alexandre Brandizzi
51739fd155
Merge branch 'dev' into fix/ab/sh-356-due-date-after-schedule
2026-09-16 19:04:17 -03:00
Alexandre Brandizzi
b120b43b0f
Merge branch 'dev' into fix/ab/sh-320-inline-sh-prefix-wo-number
2026-09-16 19:04:14 -03:00
Alexandre Brandizzi
2583ad63d1
Merge pull request #198 from Sea-Haven-Industries/feat/ab/sh-197-inline-create-fields
...
Frontend checks / Build and test (push) Waiting to run
Frontend checks / governance (push) Waiting to run
Frontend checks / Visual regression (push) Waiting to run
Deploy dev content / Deploy shoc-frontend-new-dev through Terraform (push) Waiting to run
SH-197: inline create cells as fields with persistent required asterisks
2026-09-16 19:00:20 -03:00
Codex Review Integration
de79daefb1
feat(team-members): add searchable team member registry (SH-324)
2026-09-16 18:54:33 -03:00
Alexandre Brandizzi
f33580972d
Merge branch 'dev' into feat/ab/sh-195-date-header-tooltips
2026-09-16 18:52:33 -03:00
Alexandre Brandizzi
7876b6ca42
Merge branch 'dev' into feat/ab/sh-278-vendor-service-area
2026-09-16 18:52:29 -03:00
Alexandre Brandizzi
dd34e79e19
Merge branch 'dev' into fix/ab/sh-356-due-date-after-schedule
2026-09-16 18:52:26 -03:00
Alexandre Brandizzi
cd611fd09c
Merge branch 'dev' into fix/ab/sh-320-inline-sh-prefix-wo-number
2026-09-16 18:52:23 -03:00
Alexandre Brandizzi
79f9e52870
Merge branch 'dev' into fix/ab/sh-341-generate-completes-work-order
2026-09-16 18:50:23 -03:00
Alexandre Brandizzi
5d1b6e5aa0
Merge branch 'dev' into feat/ab/sh-197-inline-create-fields
2026-09-16 18:50:20 -03:00
Alexandre Brandizzi
1e15eab573
Merge branch 'dev' into feat/ab/sh-235-severity-badge
2026-09-16 18:50:17 -03:00
Alexandre Brandizzi
77b679b8f6
Merge pull request #209 from Sea-Haven-Industries/fix/ab/sh-371-pm-extra-media-gallery
...
SH-371: show extra media in the gallery on PM work orders
2026-09-16 18:48:17 -03:00
Codex Review Integration
c9ab1f3598
feat(services): add registry management page
2026-09-16 18:42:31 -03:00
Alexandre Brandizzi
55723a1cfd
Merge branch 'dev' into fix/ab/sh-341-generate-completes-work-order
2026-09-16 18:38:38 -03:00
Alexandre Brandizzi
8b5b5903fa
Merge branch 'dev' into feat/ab/sh-197-inline-create-fields
2026-09-16 18:38:35 -03:00
Alexandre Brandizzi
c081ea8d97
Merge branch 'dev' into feat/ab/sh-195-date-header-tooltips
2026-09-16 18:38:32 -03:00
Alexandre Brandizzi
42b5642fec
Merge branch 'dev' into feat/ab/sh-278-vendor-service-area
2026-09-16 18:38:29 -03:00
Alexandre Brandizzi
d3b74afe5a
Merge branch 'dev' into feat/ab/sh-235-severity-badge
2026-09-16 18:38:26 -03:00
Alexandre Brandizzi
b746087d0b
Merge branch 'dev' into fix/ab/sh-356-due-date-after-schedule
2026-09-16 18:38:23 -03:00
Alexandre Brandizzi
551ed863f4
Merge branch 'dev' into fix/ab/sh-320-inline-sh-prefix-wo-number
2026-09-16 18:38:20 -03:00
Alexandre Brandizzi
2152d2d31c
Merge branch 'dev' into fix/ab/sh-369-completion-doc-service-gate
2026-09-16 18:38:17 -03:00
Alexandre Brandizzi
0f34e8c7c6
Merge branch 'dev' into fix/ab/sh-371-pm-extra-media-gallery
2026-09-16 18:38:14 -03:00
Alexandre Brandizzi
e2a81e3ff8
Merge pull request #195 from Sea-Haven-Industries/fix/ab/sh-357-sh-358-status-transitions
...
SH-357, SH-358: offer only valid manual status transitions inline
2026-09-16 18:34:26 -03:00
Alexandre Brandizzi
ac2642d5b9
Merge branch 'dev' into fix/ab/sh-320-inline-sh-prefix-wo-number
2026-09-16 18:28:25 -03:00
Alexandre Brandizzi
c135605c87
Merge branch 'dev' into fix/ab/sh-369-completion-doc-service-gate
2026-09-16 18:28:22 -03:00