Arthur Bassi
62a51a163c
fix(work-orders): drop auth-bypass from wizard mock gate
...
(cherry picked from commit 2c899ebfd8269567bc0637788aebe29288b6515c)
2026-07-28 11:06:06 -03:00
Arthur Bassi
729deff897
fix(work-orders): type-safe FormData test and Node harness stability
...
(cherry picked from commit a30326aa491e72b2b95eb1f55d77d14ef9004ec8)
2026-07-28 11:06:06 -03:00
Arthur Bassi
175682e229
refactor(work-orders): harden dispatch modals with loading and close guards
...
(cherry picked from commit a9ee990389abada03ecbd600ee63c5a052507118)
2026-07-28 11:06:06 -03:00
Arthur Bassi
c2bd1c4e60
refactor(auth): remove development auth bypass
...
(cherry picked from commit 01425aa97f43bd351a378b3f41400f07aeee3bb0)
2026-07-28 11:06:05 -03:00
Arthur Bassi
efed453f3c
feat(query): sync QueryClient cache across browser tabs
...
(cherry picked from commit 473bbced8185b8ddb92ce218a5cf870db98194bf)
2026-07-28 11:06:05 -03:00
Arthur Bassi
77ad0325f0
refactor(work-orders): split wizard components and cover date range UI
...
Extract focused wizard step/date helpers for the maintainability gate and
add a public-interface test for range click order and schedule submission.
2026-07-28 11:04:42 -03:00
Arthur Bassi
27131a1533
feat(work-orders): board wizard create with sites and service notes
2026-07-28 10:35:00 -03:00
Arthur Bassi
68b85940fe
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-07-28 10:33:09 -03:00
Arthur Bassi
ad30eb4a4d
fix(test): update work-orders board tests for slide-over navigation
2026-07-28 09:59:47 -03:00
Arthur Bassi
9a1c04c934
fix(test): align failed-save fixtures with WorkOrderTableRow
2026-07-28 09:59:08 -03:00
Arthur Bassi
aee5223757
fix(work-orders): preserve slide-over draft baseline on failed save
2026-07-28 09:59:07 -03:00
Arthur Bassi
475862003c
fix(work-orders): preserve slide-over draft and gate media close
2026-07-28 09:57:41 -03:00
Arthur Bassi
0682b47678
fix(work-orders): preserve comment draft until mutation succeeds
2026-07-28 09:57:40 -03:00
Arthur Bassi
1b5b4014d1
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-07-28 09:57:40 -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
Alexandre Brandizzi
dffa30f27a
style(locations): format site query mapping
2026-07-27 10:27:13 -03:00
Arthur Bassi
01d1795b66
fix(work-orders): add contactName to restored wizard vendor mocks
2026-07-27 10:27:12 -03:00
Arthur Bassi
6c4197dba7
fix(work-orders): restore wizard mock modules for base consumers
2026-07-27 10:27:12 -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
94bd10245b
Merge pull request #44 from Sea-Haven-Industries/feature/wo-dispatch-shell
...
CI / ci (push) Has been cancelled
CI / governance (push) Has been cancelled
Deploy / deploy (push) Has been cancelled
feat(work-orders): add dispatch detail shell
2026-07-24 18:56:51 -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
4845494af5
Merge pull request #30 from Sea-Haven-Industries/feature/wo-board-foundation
...
feat(ui): add loading/error primitives and FormData upload fix
2026-07-24 18:51:32 -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
2d2fe0d9f9
Merge pull request #43 from Sea-Haven-Industries/feature/wo-wizard-shell
...
feat(work-orders): add board wizard shell UI
2026-07-24 18:46:16 -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
4337cc662b
chore(governance): enforce frontend quality system ( #53 )
...
CI / ci (push) Waiting to run
CI / governance (push) Waiting to run
Deploy / deploy (push) Waiting to run
* chore(governance): make React/TS conventions mandatory via executable gates
Add AGENTS.md, QUALITY_GATES.md, ARCHITECTURE_AND_CODE_QUALITY.md, and
REVIEW_AND_PR_FRAMEWORK.md as the binding conventions and PR review
contract for humans and all coding/review agents.
Add a single 'npm run verify' command (format + lint + build + test +
governance) and 'npm run governance', which runs a dependency-free godfile
ratchet (whole-repo, baseline in scripts/governance-baseline.json) and a
changed-file maintainability gate (complexity<=20, function<=150, params<=4,
depth<=4) via ESLint. Legacy is handled by ratchets, not relaxation: 5
godfiles over 500 lines are grandfathered debt; maintainability thresholds
apply to changed TS/TSX (72 legacy violations across ~51 files otherwise).
Add a repo-owned 'governance' CI job that runs 'npm run verify' so every
gate is guaranteed from this repository, independent of the org reusable
workflow.
* fix(governance): make frontend ratchets fail closed
2026-07-24 16:47:34 -03:00
Alexandre Brandizzi
33001aac74
Merge pull request #40 from Sea-Haven-Industries/feature/wo-table-core
...
CI / ci (push) Waiting to run
Deploy / deploy (push) Waiting to run
feat(work-orders): add board table core and filters
2026-07-24 14:08:45 -03: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
45f4272cf7
Merge pull request #39 from Sea-Haven-Industries/feature/wo-board-shell
...
feat(work-orders): add weekly board page shell and list chrome
2026-07-24 13:50:29 -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
afb8ce67aa
Merge pull request #50 from Sea-Haven-Industries/codex/vendor-core-completion-frontend
...
Complete vendor directory and work-order vendor editing
2026-07-24 13:24:29 -03:00
Alexandre Brandizzi
17ab9845fb
fix(test): remove unused week helper import
2026-07-24 13:10:44 -03:00
Alexandre Brandizzi
620ac65153
fix(lint): enforce error typography composition
2026-07-24 11:36:30 -03:00
Alexandre Brandizzi
392af77b91
refactor(ui): enforce maintainable conditional feedback
2026-07-24 11:32:58 -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
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
878e1d6a92
test(work-orders): cover New WO wizard open/close affordance
2026-07-24 10:11:38 -03:00