Commit graph

86 commits

Author SHA1 Message Date
fe4bbc95fb
fix(cd): name the missing deploy prerequisites 2026-09-26 16:49:44 -04:00
0a16df1cfe
fix(cd): report the real health status when curl fails 2026-09-26 16:43:38 -04:00
da959dda93
fix(cd): block the Google IdP until real credentials are set 2026-09-26 16:39:28 -04:00
9b56475656
ci: print this repo's OIDC claim format 2026-09-26 16:29:23 -04:00
f0a200f6e9
fix(cd): keep SHA-tagged API images for rollback 2026-09-26 16:23:42 -04:00
15e80d56c0
fix(ci): report migrate run-task failures directly 2026-09-25 18:51:30 -04:00
91e8740eca
merge(cd): keep dev deploy docs on main 2026-09-25 18:48:15 -04:00
Adam Moussa
864531b51e
feat(api): portal contract, cookie auth, and domain stubs (AP-51) (#64)
* feat(api): serve portal-shaped health and error envelope

Move liveness to GET /api/health { stage, sha } with a Node 24 image on 8080 so ALB probes and deploy verify do not need auth or a database ping.

* feat(api): switch live auth to host cookie BFF

Replace Bearer as the documented session path with Cognito hosted UI plus __Host-ap_* cookies so the SPA can call /api with credentials include.

* feat(web): add unused cookie SPA API client

Land a credentials-include fetch helper and hand-synced health/me types without wiring pages or domain hooks, so mocks stay the default data path.

* feat(api): add master-data OpenAPI and Hono stubs

* feat(api): add invoice, line, and document stubs

* feat(api): add approval policy, inbox, and activity stubs

* test(web): fix SPA client fetch mock types

* test(web): cast fetch mock call args for tsc

* fix(api): do not default DEV_AUTH_BYPASS outside local migrate

* fix(api): replace invoice lines in a single transaction

* fix(api): create invoices and lines in one transaction

* fix(api): inline GIT_SHA from the image build arg

* fix(api): stop PATCH from skipping the approval workflow

* fix(api): address review feedback

* fix(ci): format upsert-user test

* fix(api): document only the auth statuses the routes return

* fix(api): drop health 400 responses the routes never return
2026-09-25 22:43:44 +00:00
renovate[bot]
81d5d5c97a
chore(deps): update dependency vitest to v5 (#63)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-09-25 22:39:24 +00:00
Adam Moussa
f10dddf6f2
feat(web): add minimal Filter slide-over for invoice processing (AP-46) (#19)
* feat(web): fix shell chrome, logo home, and live nav badges

Refs: AP-42

* feat(web): add invoice grid lines and bold headers

Refs: AP-44

* feat(web): support auto row height for multi-line invoice cells

Refs: AP-44

* feat(web): expand mock invoice fields for Stampli column catalog

Refs: AP-47

* feat(web): add Action and Vendor filters to invoice processing

Refs: AP-43

* feat(web): add multi-line Stampli invoice cell renderers

Refs: AP-47

* feat(web): align filter toolbar layout, field shapes, and tabs

Refs: AP-43

* feat(web): add Columns slide-over with Stampli HTML defaults

Refs: AP-45

* feat(web): add minimal Filter slide-over for invoice processing

Refs: AP-46

* fix(web): address review feedback

* fix(web): address review feedback

* fix(web): address review feedback

* ci: remove the pr policy caller

* fix(web): keep mock catalog dates and updates in sync

* fix(web): render the attention banner as text

* fix(web): keep pay date editable on the approved grid

* fix(web): make the attention banner non-interactive copy

* fix(web): derive mock action labels from invoice status

* fix(web): restore link-style attention banner copy

* fix(ci): drop the unused catalog refresh index

* fix(web): assert the vendor column by its grid field

* fix(ci): format invoice mock helpers

* fix(web): hide Payment Date when the drawer omits it

* test(web): keep filters applied when the drawer closes

* fix(web): count filtered rows on invoice tabs
2026-09-25 22:35:10 +00:00
Adam Moussa
ee2f7a9902
feat(web): add Columns slide-over with Stampli HTML defaults (AP-45) (#18)
* feat(web): fix shell chrome, logo home, and live nav badges

Refs: AP-42

* feat(web): add invoice grid lines and bold headers

Refs: AP-44

* feat(web): support auto row height for multi-line invoice cells

Refs: AP-44

* feat(web): expand mock invoice fields for Stampli column catalog

Refs: AP-47

* feat(web): add Action and Vendor filters to invoice processing

Refs: AP-43

* feat(web): add multi-line Stampli invoice cell renderers

Refs: AP-47

* feat(web): align filter toolbar layout, field shapes, and tabs

Refs: AP-43

* feat(web): add Columns slide-over with Stampli HTML defaults

Refs: AP-45

* fix(web): address review feedback

* fix(web): address review feedback

* fix(web): address review feedback

* ci: remove the pr policy caller

* fix(web): keep mock catalog dates and updates in sync

* fix(web): render the attention banner as text

* fix(web): keep pay date editable on the approved grid

* fix(web): make the attention banner non-interactive copy

* fix(web): derive mock action labels from invoice status

* fix(web): restore link-style attention banner copy

* fix(ci): drop the unused catalog refresh index

* fix(web): assert the vendor column by its grid field

* fix(ci): format invoice mock helpers

* fix(web): hide Payment Date when the drawer omits it

* fix(web): count filtered rows on invoice tabs

* fix(web): close the columns drawer before editing pay date
2026-09-25 22:28:05 +00:00
Adam Moussa
fad8461274
feat(web): action/vendor filters, toolbar layout, and tabs (AP-43) (#17)
* feat(web): fix shell chrome, logo home, and live nav badges

Refs: AP-42

* feat(web): add invoice grid lines and bold headers

Refs: AP-44

* feat(web): support auto row height for multi-line invoice cells

Refs: AP-44

* feat(web): expand mock invoice fields for Stampli column catalog

Refs: AP-47

* feat(web): add Action and Vendor filters to invoice processing

Refs: AP-43

* feat(web): add multi-line Stampli invoice cell renderers

Refs: AP-47

* feat(web): align filter toolbar layout, field shapes, and tabs

Refs: AP-43

* fix(web): address review feedback

* fix(web): address review feedback

* ci: remove the pr policy caller

* fix(web): keep mock catalog dates and updates in sync

* fix(web): render the attention banner as text

* fix(web): make the attention banner non-interactive copy

* fix(web): derive mock action labels from invoice status

* fix(web): restore link-style attention banner copy

* fix(ci): drop the unused catalog refresh index

* fix(ci): format invoice mock helpers

* fix(web): count filtered rows on invoice tabs

* fix(web): match the filter toolbar to MUI 9
2026-09-25 22:13:00 +00:00
Adam Moussa
c6867e6bec
feat(web): expand mock invoice fields and multi-line cells (AP-47) (#16)
* feat(web): fix shell chrome, logo home, and live nav badges

Refs: AP-42

* feat(web): add invoice grid lines and bold headers

Refs: AP-44

* feat(web): support auto row height for multi-line invoice cells

Refs: AP-44

* feat(web): expand mock invoice fields for Stampli column catalog

Refs: AP-47

* feat(web): add multi-line Stampli invoice cell renderers

Refs: AP-47

* fix(web): address review feedback

* ci: remove the pr policy caller

* fix(web): keep mock catalog dates and updates in sync

* fix(web): derive mock action labels from invoice status

* fix(ci): drop the unused catalog refresh index

* fix(ci): format invoice mock helpers
2026-09-25 21:51:59 +00:00
c770c59a40
fix(ci): run deploy scripts from the trusted workflow commit 2026-09-25 17:03:05 -04:00
cb9b9fc9d3
Merge remote-tracking branch 'origin/feature/api-portal-contract-and-stubs' into feature/seahaven-dev-spa-api-cd 2026-09-25 16:48:45 -04:00
b9a384d1c9
fix(ci): format upsert-user test 2026-09-25 16:48:03 -04:00
3b0ab4aa83
fix(cd): address review feedback 2026-09-25 16:37:08 -04:00
70a8fdde38
fix(api): address review feedback 2026-09-25 16:37:06 -04:00
5c5300a2a8
chore: empty commit to retrigger CI 2026-09-23 19:42:29 -04:00
b2043de28f
chore: empty commit to retrigger CI 2026-09-23 18:46:30 -04:00
3d221e0b24
chore: empty commit to retrigger CI 2026-09-23 18:37:45 -04:00
2bf8d3a6cc
chore: empty commit to retrigger CI 2026-09-23 17:55:49 -04:00
2240fad7e8
chore: empty commit to retrigger CI 2026-09-23 17:52:25 -04:00
Adam Moussa
df6ccc7ade
chore(ci): remove unused Mergify stub (#66) 2026-09-22 18:41:48 +00:00
fdd891ce51
fix(cd): force DEV_AUTH_BYPASS off for the migrate task 2026-09-22 14:05:54 -04:00
3fd8b545fb
style(cd): format placeholder HTML for Prettier 2026-09-22 14:05:54 -04:00
352830ef3e
feat(cd): seahaven-dev SPA and API terraform plus deploy (AP-11) 2026-09-22 14:05:54 -04:00
963d48f140
fix(api): stop PATCH from skipping the approval workflow 2026-09-22 13:57:50 -04:00
d96fb4fc18
fix(api): inline GIT_SHA from the image build arg 2026-09-22 13:52:58 -04:00
7e186e060b
fix(api): create invoices and lines in one transaction 2026-09-22 13:49:03 -04:00
2d3c3cb099
fix(api): replace invoice lines in a single transaction 2026-09-22 13:20:52 -04:00
280014e89d
fix(api): do not default DEV_AUTH_BYPASS outside local migrate 2026-09-22 13:20:52 -04:00
c0ad22e3a7
test(web): cast fetch mock call args for tsc 2026-09-22 13:10:44 -04:00
335b3f5be2
test(web): fix SPA client fetch mock types 2026-09-22 12:54:02 -04:00
9ae54d4a2a
feat(api): add approval policy, inbox, and activity stubs 2026-09-22 12:51:50 -04:00
f08b538a19
feat(api): add invoice, line, and document stubs 2026-09-22 12:48:42 -04:00
ebee62acd0
feat(api): add master-data OpenAPI and Hono stubs 2026-09-22 12:44:51 -04:00
1c295d854d
feat(web): add unused cookie SPA API client
Land a credentials-include fetch helper and hand-synced health/me types without wiring pages or domain hooks, so mocks stay the default data path.
2026-09-22 12:39:44 -04:00
bbfa6e4a3c
feat(api): switch live auth to host cookie BFF
Replace Bearer as the documented session path with Cognito hosted UI plus __Host-ap_* cookies so the SPA can call /api with credentials include.
2026-09-22 12:39:00 -04:00
cc637e3732
feat(api): serve portal-shaped health and error envelope
Move liveness to GET /api/health { stage, sha } with a Node 24 image on 8080 so ALB probes and deploy verify do not need auth or a database ping.
2026-09-22 12:33:19 -04:00
renovate[bot]
894a73dd13
fix(deps): update npm minor and patch (#62)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-09-21 16:14:46 +00:00
renovate[bot]
cbc4a5ecfa
chore(deps): update sea-haven-industries/.github action to v1.0.11 (#60)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-09-14 17:46:09 +00:00
renovate[bot]
91ff2e4b06
fix(deps): update npm minor and patch (#61)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-09-14 17:45:53 +00:00
renovate[bot]
8b6aa3bc4e
fix(deps): update npm minor and patch (#58)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-09-10 23:14:55 +00:00
renovate[bot]
a424c7b883
chore(deps): update sea-haven-industries/.github action to v1.0.10 (#57)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-09-09 18:46:55 +00:00
renovate[bot]
24c36d3080
fix(deps): update dependency hono to ^4.13.7 [security] (#59)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-09-09 18:45:55 +00:00
renovate[bot]
a2cbcfb7e8
fix(deps): update dependency @mui/material to v9 (#53)
* fix(deps): update dependency @mui/material to v9

* fix(deps): couple @mui/icons-material v9 and migrate system props

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Adam Moussa <adam@seahavenind.com>
2026-08-25 20:26:42 +00:00
renovate[bot]
63986295ab
chore(deps): update dependency @vitejs/plugin-react to v6 (#45)
* chore(deps): update dependency @vitejs/plugin-react to v6

* fix(deps): regenerate lockfile for @vitejs/plugin-react v6

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Adam Moussa <adam@seahavenind.com>
2026-08-25 20:26:40 +00:00
renovate[bot]
4051323135
chore(deps): update dependency vite to v8 (#48)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-25 18:27:09 +00:00
renovate[bot]
1f7132198f
chore(deps): update node.js to v24 (#49)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-25 18:19:38 +00:00