Arthur Bassi
d6179fcec5
refactor(work-orders): extract WoTableRow under maintainability limits
2026-07-30 10:40:55 -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
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
2d0917f052
chore(deps): apply controlled security updates ( #56 )
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
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
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
...
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
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
Arthur Bassi
df2b5803a1
fix(test): cast canceled status in board-core fixture
2026-07-24 10:10:20 -03:00
Arthur Bassi
5e30c07c79
fix(test): align board-core affordance fixtures with WorkOrderTableRow
2026-07-24 10:07:15 -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
Alexandre Brandizzi
bbbb51aed5
feat(vendors): complete core vendor workflows
2026-07-23 17:36:21 -03:00
Alexandre Brandizzi
20237f8142
feat(vendors): align directory UI with current prototype ( #46 )
...
CI / ci (push) Waiting to run
Deploy / deploy (push) Waiting to run
* feat(vendors): align directory UI with prototype
* fix(vendors): report the filtered total
* fix(vendors): keep company input in sync
* fix(vendors): scope facets to directory status
2026-07-23 15:23:03 -03:00
Arthur Bassi
c97d752dd6
fix(work-orders): hide CompDoc affordance until dialog slice
...
Omit onOpenCompDoc on board-core so View Doc/Draft are not no-ops.
2026-07-23 14:06:05 -03:00
Arthur Bassi
becc4913e3
fix(work-orders): hide unfinished affordances and route View to detail
2026-07-23 13:49:53 -03:00