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
b746087d0b
Merge branch 'dev' into fix/ab/sh-356-due-date-after-schedule
2026-09-16 18:38:23 -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
754912c643
Merge branch 'dev' into fix/ab/sh-371-pm-extra-media-gallery
2026-09-16 18:28:19 -03:00
Alexandre Brandizzi
49fd0b039c
Merge branch 'dev' into fix/ab/sh-356-due-date-after-schedule
2026-09-16 18:26:20 -03:00
Alexandre Brandizzi
632d01f373
Merge branch 'dev' into fix/ab/sh-357-sh-358-status-transitions
2026-09-16 18:22:16 -03:00
Codex Review Integration
e65049691c
chore(work-orders): remove ticket keys from lifecycle docs
2026-09-16 17:01:58 -03:00
Codex Review Integration
c75f8b6239
chore(work-orders): remove ticket keys from audit docs
2026-09-16 16:56:26 -03:00
Codex Review Integration
8774b2e0a6
fix(work-orders): render PM extra media in the gallery (SH-371)
...
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-16 15:23:24 -03:00
Codex Review Integration
b4d2d69abe
fix(work-orders): keep Due Date on or after Schedule On
2026-09-16 13:32:44 -03:00
Codex Review Integration
f6a22a9096
fix(work-orders): offer only valid manual status transitions inline (SH-357, SH-358)
...
The inline status control no longer offers the automatic Incomplete and
Scheduled states or the work order's current status. Inline create keeps its
explicit Incomplete/Pending/Scheduled creation list.
2026-09-16 11:43:34 -03:00
Codex Review Integration
e46e42df69
fix(work-orders): show full audit timestamps and previous type values (SH-361, SH-363)
...
Audit Log entries now show date and time for every entry instead of a
time-only stamp for manual changes. Type and Severity entries read
'Changed Type from X to Y', a severity cleared by a type correction reads
'from SEV N to —', and the generic fallback no longer renders a raw
FieldChanged action name.
2026-09-16 11:43:34 -03:00
Arthur Bassi
fc3e7591dc
fix(work-orders): add Unscheduled option to Advanced Filters Date range ( #181 )
...
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
* fix(work-orders): add Unscheduled option to Advanced Filters Date range
* fix(work-orders): page unscheduled results server-side
---------
Co-authored-by: Codex Review Integration <codex-review@local.invalid>
Co-authored-by: Alexandre Brandizzi <alex_brandizzi@hotmail.com>
2026-09-15 19:11:35 -03:00
Arthur Bassi
c7aec49f05
fix(work-orders): keep completion freeze on live registry edits
2026-09-10 18:47:32 -03:00
Arthur Bassi
1809694973
Merge branch 'feat/SH-191-completion-freeze' of origin into feat/SH-191-completion-freeze
2026-09-10 18:16:27 -03:00
Arthur Bassi
2fbf2ed380
Merge branch 'dev' into feat/SH-191-completion-freeze
2026-09-10 18:15:15 -03:00
Arthur Bassi
99c758872a
fix(work-orders): extract helpers to satisfy governance complexity
2026-09-10 18:15:02 -03:00
Arthur Bassi
116f65ca48
feat(work-orders): consume completion freeze snapshot on the board
...
Prefer FrozenSite, FrozenCompany, and FrozenPoc on Completed rows.
2026-09-10 15:41:01 -03:00
Codex Review Integration
fdd97c24f9
Merge branch 'dev' into feat/sh-298-sentry
...
Three conflicts, all where dev refactored code this branch had instrumented:
- api.ts — dev extracted the session-expiry helper into
lib/auth/expire-session. Took dev's import, dropped the now-duplicate local
copy, kept the tracing import.
- work-order-board-documents-api.ts — dev replaced the ky upload with
uploadFormWithProgress, an XHR path that exists because ky's
onUploadProgress streams the body and browsers refuse that over HTTP/1.1.
Kept dev's helper and wrapped it in traceHttpOperation so the upload stays
instrumented; neither change is lost.
- work-orders-api.test.ts — kept both mock surfaces, since the merged
work-orders-api calls apiRequestRaw while other code uses the ky instance.
getMediaContent arrived from dev calling `api.get` directly, which this file
no longer imports; routed it through apiRequestRaw like its siblings, which
also brings it under tracing.
2026-09-10 14:44:12 -03:00
Arthur Bassi
1fdecdd45d
Merge remote-tracking branch 'origin/dev' into feat/SH-186-schedule-clear
2026-09-09 18:18:11 -03:00
Arthur Bassi
117f7949f5
fix(work-orders): pass HTTP status into Extra Docs error helper
2026-09-09 18:05:03 -03:00
Arthur Bassi
15de3fca0a
Merge remote-tracking branch 'origin/dev' into feat/SH-186-schedule-clear
2026-09-09 17:47:37 -03:00
Arthur Bassi
11743caa61
Merge remote-tracking branch 'origin/dev' into feat/SH-171-wo-documents
2026-09-09 17:46:41 -03:00
Arthur Bassi
eab83f6562
Merge branch 'dev' into feat/SH-171-wo-documents
2026-09-09 17:46:10 -03:00
Arthur Bassi
54671baf5c
Merge remote-tracking branch 'origin/dev' into fix/SH-181-vendor-save-gate
2026-09-09 17:33:58 -03:00
Arthur Bassi
c71d9482ec
feat(work-orders): align Schedule On clear with shared demotion path
...
Board Clear uses empty-week patch; slide-over Save derives Pending via mergeAutoSchedulePatch.
2026-09-09 15:44:49 -03:00
Arthur Bassi
edf4a51d4c
feat(work-orders): fetch Extra Docs via authenticated content GET
2026-09-08 11:31:12 -03:00
Arthur Bassi
6c765e8b42
feat(work-orders): align Extra Docs accept and 50MB limits
2026-09-08 11:27:52 -03:00
Arthur Bassi
747515870e
fix(workorders): correct vendor save behavior
2026-09-07 20:48:30 -03:00
Arthur Bassi
74e5c58e5d
fix(work-orders): restore completion media uploads over HTTP/1.1
...
Use XHR for media progress so Ky does not stream the body on HTTP/1.1
(Vite proxy), and keep completion vs extra tiles from mixing after upload.
2026-09-07 15:19:39 -03:00
Arthur Bassi
dc9cc07a73
Merge branch 'dev' into feat/SH-170-wo-inline-type-correction
2026-09-07 11:51:30 -03:00
Arthur Bassi
f51f6bd493
chore(work-orders): keep type/severity audit rules after merging origin/dev
2026-09-04 16:41:42 -03:00
Arthur Bassi
418eb3749d
fix(work-orders): restore Range tab on Schedule On for inline and slide-over
...
Share Week/Date/Range on inline, board, and slide-over DateCell.
A selected range lands on the start day, matching the wizard.
2026-09-04 15:59:53 -03:00
Arthur Bassi
b0c58958ae
Merge branch 'dev' into feat/SH-169-wo-inline-lifecycle
2026-09-04 14:47:38 -03:00
Arthur Bassi
3ed8600beb
fix(work-orders): promote dated pre-schedule picks to Scheduled
...
Align create, wizard, and board status patches with AAP maybeAutoSchedule.
Include the previous status in audit copy when the API sends it.
2026-09-04 14:31:08 -03:00
Alexandre Brandizzi
d6163e7eb6
Merge branch 'dev' into feat/sh-298-sentry
2026-09-04 14:23:41 -03:00
Arthur Bassi
b8349783a7
chore(work-orders): keep carry-over display and local board row-order
2026-09-04 13:46:04 -03:00
Codex Review Integration
207199559f
feat(observability): identify and scrub Sentry transactions
2026-09-03 17:12:49 -03:00
Arthur Bassi
27ddeb2903
feat(work-orders): align inline type correction with the board AAP
...
Keep type correction on the board: Type & severity, SEV toast, and audit copy.
2026-09-03 16:30:10 -03:00
Arthur Bassi
3a8f41a444
fix(work-orders): keep explicit wizard status picks on dated drafts
...
Derive Scheduled or Pending only when the patch touches schedule fields, matching the board path.
2026-09-03 14:42:19 -03:00
Arthur Bassi
9fc67516ca
fix(work-orders): derive lifecycle status only when the schedule patch changes
2026-09-03 13:35:26 -03:00
Arthur Bassi
ddd83ffec1
fix(work-orders): skip canceled keyboard reorder and persist destination-week order
2026-09-03 13:34:28 -03:00
Arthur Bassi
c2d1add79c
fix(work-orders): persist AAP auto-schedule on a single board patch
...
Merge derived status once so dated rows cannot stay Pending or Incomplete.
Create and wizard demote Scheduled when there is no concrete date.
2026-09-03 11:13:24 -03:00
Arthur Bassi
9cc9bc4dfb
feat(work-orders): align inline lifecycle transitions with AAP
...
Use the prototype status list and gates on the board and wizard.
Auto-derive Scheduled or Pending from a concrete schedule date.
2026-09-02 15:11:31 -03:00
Arthur Bassi
dc178340de
feat(work-orders): persist board row order locally and support keyboard reorder
...
Keep same-day WO order across refresh and sign-out in the same browser.
Add keyboard reorder on the row grip.
2026-09-02 11:07:27 -03:00
Arthur Bassi
bc1e7a1fa2
fix(work-orders): keep carry-over rows in day reorder and one-char search
2026-09-02 09:47:34 -03:00
Arthur Bassi
08e00c213d
Merge branch 'dev' into feat/sh-167-wo-board-carry-over
2026-09-02 09:32:58 -03:00
Arthur Bassi
426889427c
feat(work-orders): show carry-over pill and map day-tab for prior-week WOs
...
Keep source week visible and map weekday tabs without rewriting schedule.
2026-09-01 14:16:52 -03:00
Arthur Bassi
7e1dcb7a36
fix(work-orders): toast after assigned-to save on the board
...
Show the save toast only after the board PATCH succeeds.
2026-09-01 10:20:38 -03:00
Arthur Bassi
85ea33b0ad
Merge branch 'dev' into fix/sh-296-vendor-invalid-dispatch
2026-08-31 16:36:50 -03:00