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
251edd9c61
fix(work-orders): drop vendor collateral from slide-over PR
...
Restore vendors and page-header to origin/dev so this PR stays the WO
slide-over/media slice only. Remove stale godfile baseline entries now
under the 500-line cap.
2026-08-11 13:54:31 -03:00
Alexandre Brandizzi
b177987081
Merge branch 'dev' into feat/sh-101-uplift-lifecycle
2026-08-11 13:52:26 -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
Alexandre Brandizzi
95fb97ea3f
Merge branch 'dev' into feat/sh-101-uplift-lifecycle
2026-08-11 13:49:38 -03:00
Alexandre Brandizzi
34ebad390f
fix(uplifts): align revise validation contract
2026-08-11 13:49:03 -03:00
dependabot[bot]
ced5405746
chore(deps): bump the npm_and_yarn group across 1 directory with 3 updates ( #113 )
...
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
Bumps the npm_and_yarn group with 3 updates in the / directory: [fast-uri](https://github.com/fastify/fast-uri ), [js-yaml](https://github.com/nodeca/js-yaml ) and [postcss](https://github.com/postcss/postcss ).
Updates `fast-uri` from 3.1.4 to 3.1.5
- [Release notes](https://github.com/fastify/fast-uri/releases )
- [Commits](https://github.com/fastify/fast-uri/compare/v3.1.4...v3.1.5 )
Updates `js-yaml` from 4.3.0 to 4.3.1
- [Changelog](https://github.com/nodeca/js-yaml/blob/4.3.1/CHANGELOG.md )
- [Commits](https://github.com/nodeca/js-yaml/compare/4.3.0...4.3.1 )
Updates `postcss` from 8.5.18 to 8.5.26
- [Release notes](https://github.com/postcss/postcss/releases )
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md )
- [Commits](https://github.com/postcss/postcss/compare/8.5.18...8.5.26 )
---
updated-dependencies:
- dependency-name: fast-uri
dependency-version: 3.1.5
dependency-type: indirect
dependency-group: npm_and_yarn
- dependency-name: js-yaml
dependency-version: 4.3.1
dependency-type: indirect
dependency-group: npm_and_yarn
- dependency-name: postcss
dependency-version: 8.5.26
dependency-type: indirect
dependency-group: npm_and_yarn
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alexandre Brandizzi <alex_brandizzi@hotmail.com>
2026-08-11 10:21:42 -03:00
Arthur Bassi
f66284d78c
Merge remote-tracking branch 'origin/dev' into feature/wo-detail-comp-doc
2026-08-11 09:47:20 -03:00
Alexandre Brandizzi
889812f90f
Merge branch 'dev' into feat/sh-101-uplift-lifecycle
2026-08-11 09:02:37 -03:00
Alexandre Brandizzi
47272a0afc
Merge pull request #97 from Sea-Haven-Industries/feat/sh-98-portal-lifecycle-recovered
...
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
feat(vendor-portal): complete request lifecycle (SH-98)
2026-08-11 09:01:54 -03:00
Alexandre Brandizzi
c0e203a090
feat(uplifts): complete SH-101 vendor workflow
2026-08-11 08:57:38 -03:00
Alexandre Brandizzi
bd12351c87
Merge branch 'dev' into feat/sh-98-portal-lifecycle-recovered
2026-08-11 08:53:28 -03:00
Alexandre Brandizzi
1cba10b9a8
Merge pull request #93 from Sea-Haven-Industries/feat/sh-237-sh-238
...
fix(vendors): complete shell and visual parity gates
2026-08-11 08:52:51 -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
5108f0e816
fix(work-orders): preserve dirty POC fields during site autofill
...
Only autofill empty POC name/phone when location detail resolves so createMode edits typed before the request finishes are not overwritten.
2026-08-10 19:09:22 -03:00
arthur.bassi
d52df52de6
fix(vendors): restore blank-tech filter and deactivation gate
...
Omit empty new technician rows on save and route Active to Inactive through VendorDeactivationDialog, blocking sparse isActive:false updates.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 19:08:01 -03:00
arthur.bassi
55449a9e31
merge(work-orders): sync with platform-polish tip
2026-08-10 19:07:45 -03:00
arthur.bassi
c8a8522499
fix(work-orders): send wizard status and clear POC notes on site change
...
Map draft.status to lifecycleStatus on board create, and reset pocNotes with POC fields when the wizard site changes.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 19:06:35 -03:00
arthur.bassi
d44cda05d9
merge(work-orders): sync platform-polish with wizard-board-create tip
2026-08-10 19:04:28 -03:00
arthur.bassi
e2a11926e0
fix(work-orders): use local calendar day for completedDate
...
Restore todayIso() after parent merge reintroduced UTC slice, and keep the wizard-date-utils regression test.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 19:03:07 -03:00
arthur.bassi
150eb86bf1
merge(work-orders): sync wizard-board-create with slide-over-media tip
2026-08-10 18:58:06 -03:00
arthur.bassi
a05e768115
fix(work-orders): address Bugbot findings on slide-over and vendor roster
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 18:35:28 -03:00
Alexandre Brandizzi
bc5659eb2a
fix(vendor-portal): clear stale refusal state
2026-08-10 18:25:57 -03:00
arthur.bassi
767f0df43f
Merge remote-tracking branch 'origin/dev' into feature/wo-detail-comp-doc
2026-08-10 18:13:40 -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
6fe1cd0f27
fix(work-orders): remove legacy completedDate EditWorkorder path
...
[recover] remove malicious eslint payload (was f4e6132b )
2026-08-10 17:12:14 -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
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
0ce63b9740
test(work-orders): cover completed date board read mapping
...
[recover] remove malicious eslint payload (was 0548bbb4 )
2026-08-10 17:12:11 -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
Alexandre Brandizzi
3f4d64d7b6
fix: guard pending refusal dialog
2026-08-10 13:31:12 -03:00
Alexandre Brandizzi
4d2ee40d60
feat(vendor-portal): complete request lifecycle (SH-98)
2026-08-10 13:16:26 -03:00
Alexandre Brandizzi
cc0df8f569
fix(vendors): complete shell and visual parity gates
2026-08-10 12:11:38 -03:00
Alexandre Brandizzi
78ed8571a0
Merge pull request #76 from Sea-Haven-Industries/albrand/vendor-prototype-parity
...
CI / ci (push) Has been cancelled
CI / governance (push) Has been cancelled
Deploy / deploy (push) Has been cancelled
fix(vendors): match prototype directory experience
2026-08-07 15:43:39 -03:00
Alexandre Brandizzi
e9d556cf9a
Merge remote-tracking branch 'origin/dev' into albrand/vendor-prototype-parity
...
# Conflicts:
# e2e/vendors/vendors.spec.ts
# src/app/(protected)/vendors/_components/vendors-list-toolbar.tsx
# src/app/(protected)/vendors/_components/vendors-table.tsx
2026-08-07 11:32:36 -03:00
Arthur Bassi
88216520d8
fix(vendors): align Vendors list UI with design specs (SH-219) ( #92 )
...
CI / ci (push) Waiting to run
CI / governance (push) Waiting to run
Deploy / deploy (push) Waiting to run
* docs(work-orders): add pending BE contract checklist for design parity gaps
* fix(vendors): align list header, Total Jobs, and Filters with design (SH-219)
* test(vendors): align e2e subtitle with SH-219 technicians copy
Co-authored-by: Cursor <cursoragent@cursor.com>
---------
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-07 11:12:45 -03:00
Alexandre Brandizzi
fca5487f6d
fix(vendors): enforce prototype visual geometry
2026-08-06 23:30:23 -03:00
Alexandre Brandizzi
ec203e1f5b
fix(vendors): preserve the selected edit state
2026-08-06 22:39:11 -03:00
Alexandre Brandizzi
ff2e04b30e
refactor(vendors): satisfy changed-file governance
2026-08-06 22:31:12 -03:00
Alexandre Brandizzi
b61d46ce4b
fix(vendors): match prototype directory experience
2026-08-06 22:23:30 -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
0027ecc41f
Merge remote-tracking branch 'origin/dev' into feature/wo-detail-comp-doc
2026-08-04 10:30: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
dependabot[bot]
297efa8f73
chore(deps-dev): bump the npm_and_yarn group across 1 directory with 2 updates ( #74 )
...
Bumps the npm_and_yarn group with 2 updates in the / directory: [brace-expansion](https://github.com/juliangruber/brace-expansion ) and [undici](https://github.com/nodejs/undici ).
Updates `brace-expansion` from 5.0.8 to 5.0.9
- [Release notes](https://github.com/juliangruber/brace-expansion/releases )
- [Commits](https://github.com/juliangruber/brace-expansion/compare/v5.0.8...v5.0.9 )
Updates `undici` from 7.28.0 to 7.29.0
- [Release notes](https://github.com/nodejs/undici/releases )
- [Commits](https://github.com/nodejs/undici/compare/v7.28.0...v7.29.0 )
---
updated-dependencies:
- dependency-name: brace-expansion
dependency-version: 5.0.9
dependency-type: indirect
dependency-group: npm_and_yarn
- dependency-name: undici
dependency-version: 7.29.0
dependency-type: indirect
dependency-group: npm_and_yarn
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-04 09:40:55 -03:00