Commit graph

194 commits

Author SHA1 Message Date
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
d6179fcec5 refactor(work-orders): extract WoTableRow under maintainability limits 2026-07-30 10:40:55 -03:00
Alexandre Brandizzi
2a37609b41
Merge pull request #31 from Sea-Haven-Industries/feature/wo-board-api
Some checks failed
CI / ci (push) Has been cancelled
CI / governance (push) Has been cancelled
Deploy / deploy (push) Has been cancelled
feat(work-orders): integrate board list, search and field patch API
2026-07-30 10:06:23 -03:00
Arthur Bassi
e5300da9fb chore(work-orders): sync feature/wo-board-api with current dev 2026-07-30 09:05:33 -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
Alexandre Brandizzi
978e56b7c9
Merge pull request #59 from Sea-Haven-Industries/codex/vendor-nav-layout-fixes
Some checks are pending
CI / ci (push) Waiting to run
CI / governance (push) Waiting to run
Deploy / deploy (push) Waiting to run
fix(vendors): close reactivation and navigation QA regressions
2026-07-29 21:59:09 -03:00
Arthur Bassi
36b936c4c6 chore(work-orders): sync feature/wo-board-api with current dev 2026-07-29 09:34:11 -03:00
Arthur Bassi
2d64c34898 fix(work-orders): extract docStatus mapper for governance ratchet
Keep work-order-mapper under the frozen line cap and cap addDispatchSignoff params.
2026-07-29 09:31:15 -03:00
Arthur Bassi
6869ef70ee chore(work-orders): sync feature/wo-detail-comp-doc with current dev 2026-07-29 09:24:51 -03:00
Arthur Bassi
188499155e fix(work-orders): persist docStatus via board PATCH with NotNeeded mapping
Map API NotNeeded to UI NN on read. Emit board PATCH Yes|No|NotNeeded on
write, and keep DocStatus off the EditWorkorder payload.
2026-07-29 09:23:34 -03:00
Alexandre Brandizzi
a228db29e3
Merge branch 'dev' into codex/vendor-nav-layout-fixes 2026-07-29 07:21:31 -03:00
Alexandre Brandizzi
2d0917f052
chore(deps): apply controlled security updates (#56)
Some checks are pending
CI / ci (push) Waiting to run
CI / governance (push) Waiting to run
Deploy / deploy (push) Waiting to run
2026-07-29 07:20:23 -03:00
Alexandre Brandizzi
bcf63dffad refactor(vendors): satisfy maintainability gates 2026-07-28 17:27:34 -03:00
Alexandre Brandizzi
b1cf3a0678 test(vendors): isolate mutable reactivation state 2026-07-28 17:22:42 -03:00
Alexandre Brandizzi
4fe9319d7a fix(vendors): support sparse updates on current target 2026-07-28 17:20:07 -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
b7056f569e fix(work-orders): persist completion doc fields without race
Map docStatus through the real update payload, serialize concurrent
table patches per work order, and split CompDoc UI for governance.
2026-07-28 12:49:51 -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
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
Alexandre Brandizzi
94bd10245b
Merge pull request #44 from Sea-Haven-Industries/feature/wo-dispatch-shell
Some checks failed
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)
Some checks are pending
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
Some checks are pending
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