Flea Flicker
ed51a59c80
docs: add AGENTS.md and CONTRIBUTING.md (GRO-2381) ( #215 )
...
CI / Lint & Typecheck (push) Successful in 30s
CI / Test (push) Successful in 31s
CI / Build & Push Docker Images (push) Successful in 1m20s
Co-authored-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
Co-committed-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
2026-06-12 17:00:40 +00:00
Flea Flicker
bedeb05a67
Promote uat → main (PROD): GRO-2359 OOBE portal-creation routing (api) ( #214 )
...
CI / Lint & Typecheck (push) Successful in 30s
CI / Test (push) Failing after 30s
CI / Build & Push Docker Images (push) Has been skipped
GRO-2359: add POST /api/portal/clients-from-auth for OOBE (#214 )
Co-authored-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
Co-committed-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
2026-06-12 16:47:30 +00:00
Flea Flicker
a629331a04
Merge pull request 'Promote dev → uat: GRO-2359 clients-from-auth endpoint' ( #213 ) from promote/GRO-2359-dev-to-uat into uat
...
CI / Test (push) Successful in 27s
CI / Lint & Typecheck (push) Successful in 34s
CI / Build & Push Docker Images (push) Successful in 38s
Promote dev → uat: GRO-2359 clients-from-auth endpoint (#213 )
2026-06-11 16:44:52 +00:00
Flea Flicker
5363e1d5dc
feat(GRO-2359): add POST /api/portal/clients-from-auth for OOBE (web)
...
CI / Test (pull_request) Successful in 28s
CI / Lint & Typecheck (pull_request) Successful in 34s
CI / Build & Push Docker Images (pull_request) Successful in 42s
The OOBE flow on the web portal calls this endpoint to create a fresh
`clients` row bound to the Better Auth user's email when the SSO
bridge returns 404. Returns 201 on success, 409 if a client with that
email already exists (portal-selection case), 401/503 on auth issues,
400 on invalid body.
The OOBE success path navigates the user back to `/` and lets the
existing `session-from-auth` re-bridge; the new client is now
resolvable by email, so the bridge mints a real portal session.
Tests cover: 401 (no session), 400 (zod), 201 + persisted values
(name trimmed, optional fields normalized to null), 409 (existing
client or unique-constraint race), 503 (auth not configured).
Paired with the web PR on `feature/2357-p2-sso-to-oobe-routing`.
Co-Authored-By: Paperclip <noreply@paperclip.ing >
(cherry picked from commit cdeebec021 )
2026-06-11 16:35:26 +00:00
Flea Flicker
10b78d810d
Merge pull request 'feat(GRO-2359): add POST /api/portal/clients-from-auth for OOBE' ( #212 ) from feature/2357-p2-portal-clients-from-auth into dev
...
CI / Test (push) Successful in 26s
CI / Lint & Typecheck (push) Successful in 32s
CI / Build & Push Docker Images (push) Successful in 41s
GRO-2359 (api): feat(GRO-2359): add POST /api/portal/clients-from-auth for OOBE (#212 )
2026-06-11 16:34:34 +00:00
Flea Flicker
cdeebec021
feat(GRO-2359): add POST /api/portal/clients-from-auth for OOBE (web)
...
CI / Test (pull_request) Successful in 29s
CI / Lint & Typecheck (pull_request) Successful in 41s
CI / Build & Push Docker Images (pull_request) Successful in 1m40s
The OOBE flow on the web portal calls this endpoint to create a fresh
`clients` row bound to the Better Auth user's email when the SSO
bridge returns 404. Returns 201 on success, 409 if a client with that
email already exists (portal-selection case), 401/503 on auth issues,
400 on invalid body.
The OOBE success path navigates the user back to `/` and lets the
existing `session-from-auth` re-bridge; the new client is now
resolvable by email, so the bridge mints a real portal session.
Tests cover: 401 (no session), 400 (zod), 201 + persisted values
(name trimmed, optional fields normalized to null), 409 (existing
client or unique-constraint race), 503 (auth not configured).
Paired with the web PR on `feature/2357-p2-sso-to-oobe-routing`.
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-11 16:17:16 +00:00
Flea Flicker
58305d7a89
uat→main (PROD): GRO-2342 portal waitlist service {id, name} (frozen @47e2021 + cherry-pick c737bfe) ( #211 )
...
CI / Test (push) Successful in 29s
CI / Lint & Typecheck (push) Successful in 32s
CI / Build & Push Docker Images (push) Failing after 57s
Merge pull request 'GRO-2342: portal/appointments — symmetric service {id, name} on both card paths' (#211 ) from release/main-GRO-2342-api into main
GRO-2342: GET /portal/appointments populates service: {id, name} on the synthetic waitlist card (was {id} only) and on the appointment card (consistent shape). TC-API-8.20 in UAT_PLAYBOOK.md.
Approved CTO. Squashed from release/main-GRO-2342-api @ c737bfe .
Refs: GRO-2342, GRO-2344, GRO-2345, GRO-2346, PR #211 .
Co-authored-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
Co-committed-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
2026-06-11 08:33:52 +00:00
Flea Flicker
4cc51b32d3
Merge pull request 'Promote dev → uat: GRO-2342 portal waitlist service {id, name}' ( #209 ) from promote/dev-to-uat-gro-2342 into uat
CI / Test (push) Successful in 27s
CI / Lint & Typecheck (push) Successful in 30s
CI / Build & Push Docker Images (push) Successful in 26s
CI / Test (pull_request) Successful in 24s
CI / Lint & Typecheck (pull_request) Failing after 10m19s
CI / Build & Push Docker Images (pull_request) Has been skipped
2026-06-10 09:24:53 +00:00
Flea Flicker
e932050b45
Promote dev → uat: GRO-2342 portal waitlist service {id, name}
...
CI / Test (pull_request) Successful in 25s
CI / Lint & Typecheck (pull_request) Successful in 25s
CI / Build & Push Docker Images (pull_request) Successful in 33s
Resolves conflicts in UAT_PLAYBOOK.md, src/routes/portal.ts, and
src/__tests__/portal.test.ts (dev side wins — GRO-2342 changes are
the only diff in scope). Carries forward GRO-2139 reset.ts advisory
lock + GRO-2294 infra mcp trigger that were merged to dev but not
yet promoted to uat.
- src/routes/portal.ts: GET /portal/appointments now populates
service: {id, name} on both the synthetic waitlist card and the
appointment card (was {id} only). Same shape, no portal change
required.
- src/__tests__/portal.test.ts: services mock + TC-API-8.20 GRO-2342
assertions on the synthetic waitlist card service name.
- UAT_PLAYBOOK.md: TC-API-8.20 (GRO-2342) appended; TC-API-8.19
(GRO-2319) retained verbatim.
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-10 09:17:15 +00:00
Flea Flicker
1d6b906202
Merge pull request 'fix(GRO-2342): portal waitlist card populates service {id, name}' ( #208 ) from feat/GRO-2342-portal-waitlist-servicename into dev
CI / Test (push) Successful in 28s
CI / Lint & Typecheck (push) Successful in 29s
CI / Build & Push Docker Images (push) Successful in 33s
2026-06-10 09:13:55 +00:00
Flea Flicker
277f459237
fix(GRO-2342): portal waitlist card populates service {id, name}
...
CI / Test (pull_request) Successful in 26s
CI / Lint & Typecheck (pull_request) Successful in 29s
CI / Build & Push Docker Images (pull_request) Successful in 1m15s
Cosmetic follow-up to GRO-2319 (Phase 4 review by CTO). The synthetic
waitlist card on GET /portal/appointments returned service: {id} only,
so the portal fell back to the literal 'Service' label. CMPO spec did
not call for a service name on the waitlist card, but populating the
real name is non-urgent and closes the cosmetic gap.
- src/routes/portal.ts: include a services SELECT (in addition to
pets and staff) covering both appointment and waitlist serviceIds.
serviceMap feeds a service.name lookup. The synthetic waitlist
card's service object is now {id, name} — same shape the
appointments join returns — so the portal renders the real name.
The appointments join also gains a name (consistent shape, no
regression for the existing path).
- src/__tests__/portal.test.ts: mock the services table and assert
service: {id, name} on both the synthetic waitlist card and the
appointment card.
- UAT_PLAYBOOK.md: TC-API-8.20 covering the waitlist card service
name (TC-API-8.19 retained verbatim for the original GRO-2319
surfacing contract).
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-10 09:11:08 +00:00
Flea Flicker
47e2021cf4
Promote uat → main (PROD): GRO-2319 portal waitlist surfacing + seed ( #207 )
...
CI / Test (push) Successful in 23s
CI / Lint & Typecheck (push) Successful in 26s
CI / Build & Push Docker Images (push) Successful in 41s
Co-authored-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
Co-committed-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
2026-06-10 08:58:26 +00:00
Flea Flicker
31404befee
uat→main (PROD): GRO-2311 seed portal StatusBadge appointments (frozen @df5e768) ( #206 )
...
CI / Test (push) Successful in 26s
CI / Lint & Typecheck (push) Successful in 29s
CI / Build & Push Docker Images (push) Successful in 31s
uat→main (PROD): GRO-2311 seed portal StatusBadge appointments (squash)
Co-authored-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
Co-committed-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
2026-06-09 11:18:03 +00:00
Flea Flicker
18640908ed
feat(GRO-2319): dev→uat — portal waitlist surfacing + seed (api) ( #205 )
CI / Test (push) Successful in 30s
CI / Lint & Typecheck (push) Successful in 36s
CI / Build & Push Docker Images (push) Successful in 1m15s
2026-06-09 11:04:16 +00:00
Scrubs McBarkley
a9db0ca9ac
uat→main (PROD): GRO-2172 pet extended-field schema fix (frozen @c4385617) ( #203 )
...
CI / Test (push) Successful in 26s
CI / Lint & Typecheck (push) Successful in 29s
CI / Build & Push Docker Images (push) Successful in 1m7s
Phase-4 promotion. CTO-approved, CI 3/3 green. Single-file diff (src/routes/pets.ts +26/-2), frozen @c4385617. GRO-2311 excluded.
2026-06-09 10:52:37 +00:00
Flea Flicker
ef18ed7376
feat(GRO-2319): surface active waitlist entries on portal appointments + seed ( #204 )
CI / Test (push) Successful in 28s
CI / Lint & Typecheck (push) Successful in 33s
CI / Build & Push Docker Images (push) Successful in 45s
2026-06-09 10:41:08 +00:00
Flea Flicker
4bbb0c9fc5
uat→main (PROD): GRO-2172 pet extended-field schema fix (frozen @c4385617)
...
CI / Test (pull_request) Successful in 30s
CI / Lint & Typecheck (pull_request) Successful in 34s
CI / Build & Push Docker Images (pull_request) Successful in 1m21s
Promote GRO-2172 from uat to main. Pins src/routes/pets.ts to its exact
content at uat merge commit c4385617 (PR #200 ), adding the extended pet
profile fields to createPetSchema/updatePetSchema and wiring medicalAlerts
into POST/PATCH /pets:
- temperamentScore: int 1–5
- temperamentFlags: string[] (≤20, each ≤100 chars)
- medicalAlerts: {type,description,severity}[] (≤50)
- preferredCuts: string[] (≤20, each ≤200 chars)
- coatType already present on main; schema now references all 5 fields
Based on main HEAD (03f79a37 ) so the PR diff is limited to src/routes/pets.ts.
GRO-2311 (uat HEAD 807ccb45 ) is intentionally excluded.
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-09 10:19:25 +00:00
Flea Flicker
807ccb455f
dev → uat: GRO-2311 seed portal StatusBadge appointments ( #201 ) ( #202 )
CI / Lint & Typecheck (push) Successful in 28s
CI / Test (push) Successful in 24s
CI / Build & Push Docker Images (push) Successful in 1m23s
2026-06-09 09:56:34 +00:00
Flea Flicker
d61607f4c5
feat(seed): seed upcoming appointments across statuses for UAT portal customer (GRO-2311) ( #201 )
CI / Test (push) Successful in 31s
CI / Lint & Typecheck (push) Successful in 2m35s
CI / Build & Push Docker Images (push) Successful in 1m25s
2026-06-09 09:53:04 +00:00
Flea Flicker
c4385617c6
dev → uat: GRO-2172 extended pet fields ( #200 )
CI / Test (push) Successful in 23s
CI / Lint & Typecheck (push) Successful in 24s
CI / Build & Push Docker Images (push) Successful in 39s
2026-06-09 09:22:12 +00:00
Flea Flicker
2853ce73a5
GRO-2172: add missing extended pet fields to create/update schemas ( #199 )
CI / Lint & Typecheck (push) Successful in 1m13s
CI / Test (push) Successful in 2m31s
CI / Build & Push Docker Images (push) Successful in 35s
2026-06-09 08:56:22 +00:00
Flea Flicker
1e0747324d
fix(GRO-2139): serialize reset→migrate→seed under the seed advisory lock ( #160 )
...
CI / Test (push) Successful in 24s
CI / Lint & Typecheck (push) Successful in 37s
CI / Build & Push Docker Images (push) Successful in 36s
Serialize the entire db:reset chain (DROP → migrate → seed) inside one withSeedAdvisoryLock callback so a concurrent same-PRNG seeder cannot interleave and collide on invoices_pkey. Pool sized max:6 (1 reserved for the lock + work headroom) to avoid the connection-starvation deadlock the CTO caught. Verified with three end-to-end live db:reset runs against a throwaway Postgres.
cc @cpfarhood
2026-06-09 08:44:58 +00:00
Flea Flicker
03f79a3701
uat → main: GRO-2299 redact googleMapsApiKey from PATCH /api/admin/settings ( #198 )
...
CI / Test (push) Successful in 27s
CI / Lint & Typecheck (push) Successful in 30s
CI / Build & Push Docker Images (push) Successful in 30s
GRO-2299: redact googleMapsApiKey from PATCH /api/admin/settings response
Co-authored-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
Co-committed-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
2026-06-09 07:49:49 +00:00
Flea Flicker
2b92c2ab6c
uat→main (PROD): GRO-2294 Route Optimization security hardening (frozen @2566fb8) ( #197 )
...
CI / Lint & Typecheck (push) Successful in 30s
CI / Test (push) Failing after 11m41s
CI / Build & Push Docker Images (push) Has been skipped
feat(security): GRO-2294 Route Optimization security hardening [squash]
Co-authored-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
Co-committed-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
2026-06-09 07:38:02 +00:00
Flea Flicker
8cd5a2ef4d
dev → uat: GRO-2299 redact googleMapsApiKey from PATCH /api/admin/settings ( #196 )
CI / Test (push) Failing after 10m55s
CI / Lint & Typecheck (push) Failing after 10m55s
CI / Build & Push Docker Images (push) Has been skipped
2026-06-09 06:58:39 +00:00
Flea Flicker
b4b48f7b50
fix(GRO-2299): redact googleMapsApiKey from PATCH /api/admin/settings response ( #195 )
CI / Test (push) Successful in 26s
CI / Lint & Typecheck (push) Successful in 30s
CI / Build & Push Docker Images (push) Successful in 38s
2026-06-09 06:52:48 +00:00
Flea Flicker
2566fb8f20
Promote GRO-2294 to UAT: Route Optimization security hardening ( #194 )
CI / Lint & Typecheck (push) Successful in 28s
CI / Test (push) Successful in 29s
CI / Build & Push Docker Images (push) Successful in 39s
CI / Test (pull_request) Successful in 25s
CI / Lint & Typecheck (pull_request) Successful in 37s
CI / Build & Push Docker Images (pull_request) Successful in 1m8s
2026-06-09 06:27:17 +00:00
Flea Flicker
fe412933ea
GRO-2294: Route Optimization security hardening (geocode-batch limit cap + redact settings secret) ( #193 )
CI / Test (push) Successful in 27s
CI / Lint & Typecheck (push) Successful in 35s
CI / Build & Push Docker Images (push) Successful in 38s
2026-06-09 06:17:42 +00:00
Flea Flicker
e9ad92de01
uat→main (PROD): GRO-2157 nav export + GRO-2225/2235 (frozen @4868f18) ( #192 )
...
CI / Test (push) Successful in 28s
CI / Lint & Typecheck (push) Successful in 31s
CI / Build & Push Docker Images (push) Successful in 28s
feat: nav export + conflict guard + UAT seed (GRO-2157, GRO-2225, GRO-2235)
Squash-merges PR #192 : uat→main PROD promotion.
Freezes at validated SHA 4868f18 (UAT regression GRO-2261 11/11 PASS).
Bundles: GRO-2157 (nav export), GRO-2225 (UAT seed), GRO-2235 (conflict guard).
CTO-reviewed and approved (review #4542 ).
Co-authored-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
Co-committed-by: Flea Flicker <22+gb_flea@noreply.git.farh.net >
2026-06-09 01:23:06 +00:00
Flea Flicker
bfe1a29c08
Merge pull request 'uat→main (PROD): GRO-2234 portal session fix + validated batch' ( #191 ) from flea/uat-to-main-gro-2234-api into main
CI / Test (push) Successful in 26s
CI / Lint & Typecheck (push) Successful in 29s
CI / Build & Push Docker Images (push) Successful in 28s
2026-06-09 00:37:35 +00:00
Lint Roller
4868f18dfd
Merge pull request 'Promote dev→uat: GRO-2225 + GRO-2235 + GRO-2157 (atomic)' ( #188 ) from promote/dev-to-uat-gro-2225 into uat
...
CI / Test (push) Successful in 29s
CI / Lint & Typecheck (push) Successful in 36s
CI / Build & Push Docker Images (push) Successful in 41s
CI / Test (pull_request) Successful in 28s
CI / Lint & Typecheck (pull_request) Successful in 31s
CI / Build & Push Docker Images (pull_request) Successful in 1m17s
Promote dev→uat: GRO-2225 + GRO-2235 + GRO-2157 (atomic)
QA-approved on 37e42b3 . CI green (Test, Lint & Typecheck, Build & Push).
2026-06-09 00:26:18 +00:00
Flea Flicker
37e42b3104
ci: re-trigger checks (transient pnpm/action-setup runner flake)
...
CI / Test (pull_request) Successful in 26s
CI / Lint & Typecheck (pull_request) Successful in 30s
CI / Build & Push Docker Images (pull_request) Successful in 27s
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-09 00:21:03 +00:00
Flea Flicker
d617c69571
Merge remote-tracking branch 'origin/dev' into promote/dev-to-uat-gro-2225
CI / Test (pull_request) Failing after 5s
CI / Lint & Typecheck (pull_request) Successful in 28s
CI / Build & Push Docker Images (pull_request) Has been skipped
2026-06-09 00:18:24 +00:00
Flea Flicker
cd2f60e282
feat(GRO-2157): navigation export endpoints (Phase 2.3) ( #190 )
CI / Test (push) Successful in 24s
CI / Lint & Typecheck (push) Successful in 40s
CI / Build & Push Docker Images (push) Successful in 26s
2026-06-09 00:16:42 +00:00
Flea Flicker
6702086c7b
fix(GRO-2235): return 409 on duplicate portal waitlist submit ( #189 )
CI / Test (push) Failing after 14m19s
CI / Lint & Typecheck (push) Failing after 14m19s
CI / Build & Push Docker Images (push) Has been skipped
2026-06-08 23:50:21 +00:00
Scrubs McBarkley
1ad43ce701
Merge pull request 'promote(uat→main FROZEN @6120b96): + GRO-2156 route buffer/reorder (supersedes #185 )' ( #186 ) from release/main-6120b96 into main
...
CI / Test (push) Successful in 25s
CI / Lint & Typecheck (push) Successful in 29s
CI / Build & Push Docker Images (push) Successful in 1m19s
promote(uat→main FROZEN @6120b96): GRO-2214+GRO-2211+GRO-2203+GRO-2155+GRO-2163+GRO-2156
CTO-reviewed, CEO-merged per SDLC Phase 4 governance.
Carries: GRO-2214 waitlist validation, GRO-2211, GRO-2203 pet PATCH, GRO-2155+GRO-2163 route optimization, GRO-2156 route buffer/reorder.
All gates passed: QA, Security, UAT 6/6 PASS.
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-08 23:29:58 +00:00
Flea Flicker
76d9850464
Promote dev→uat: GRO-2225 UAT seed route cohort + receptionist credential
CI / Test (pull_request) Successful in 30s
CI / Lint & Typecheck (pull_request) Successful in 31s
CI / Build & Push Docker Images (pull_request) Failing after 15s
2026-06-08 23:16:51 +00:00
Flea Flicker
27e6674b9a
feat(GRO-2225): UAT seed route cohort + receptionist credential ( #187 )
CI / Test (push) Successful in 30s
CI / Lint & Typecheck (push) Successful in 32s
CI / Build & Push Docker Images (push) Successful in 45s
2026-06-08 23:15:51 +00:00
Flea Flicker
96dbb8c41d
Merge pull request 'Promote dev → uat: GRO-2155/2156/2203/2211/2163 + GRO-2234 (cumulative batch)' ( #182 ) from flea/dev-to-uat-gro-2156 into uat
CI / Test (push) Successful in 25s
CI / Lint & Typecheck (push) Successful in 30s
CI / Build & Push Docker Images (push) Successful in 1m24s
CI / Test (pull_request) Successful in 27s
CI / Lint & Typecheck (pull_request) Successful in 30s
CI / Build & Push Docker Images (pull_request) Successful in 1m11s
2026-06-08 19:42:25 +00:00
Flea Flicker
636fa713e1
Merge dev into uat: add GRO-2234 portal session sliding TTL + re-mint to dev→uat batch
CI / Test (pull_request) Successful in 28s
CI / Lint & Typecheck (pull_request) Successful in 28s
CI / Build & Push Docker Images (pull_request) Successful in 27s
2026-06-08 19:17:15 +00:00
Flea Flicker
aabedc8152
fix(GRO-2234): bounded sliding expiration for SSO portal sessions ( #183 )
CI / Test (push) Successful in 28s
CI / Lint & Typecheck (push) Successful in 29s
CI / Build & Push Docker Images (push) Successful in 38s
2026-06-08 18:55:43 +00:00
Flea Flicker
6120b96c7c
Merge dev into uat: promote GRO-2156 route travel buffer + reorder (Phase 2.2)
...
CI / Test (pull_request) Successful in 26s
CI / Lint & Typecheck (pull_request) Successful in 28s
CI / Build & Push Docker Images (pull_request) Successful in 1m2s
Resolves UAT_PLAYBOOK.md conflict by unioning uat-only TC-UAT-2/3 (GRO-2100)
with dev's §4.16 update + new §4.17. Code files taken from dev (superset).
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-08 18:11:05 +00:00
Flea Flicker
ca62fb8ef6
feat(GRO-2156): travel buffer + reorder endpoint (Phase 2.2) ( #180 )
CI / Test (push) Successful in 27s
CI / Lint & Typecheck (push) Successful in 30s
CI / Lint & Typecheck (pull_request) Successful in 25s
CI / Test (pull_request) Successful in 24s
CI / Build & Push Docker Images (push) Successful in 43s
CI / Build & Push Docker Images (pull_request) Successful in 27s
2026-06-08 18:07:54 +00:00
Flea Flicker
eb92f99c4a
dev → uat: GRO-2203 portal pet PATCH malformed-petId 500→404 ( #178 )
CI / Test (push) Successful in 27s
CI / Lint & Typecheck (push) Successful in 32s
CI / Build & Push Docker Images (push) Successful in 1m1s
CI / Test (pull_request) Successful in 27s
CI / Lint & Typecheck (pull_request) Successful in 31s
CI / Build & Push Docker Images (pull_request) Successful in 1m4s
2026-06-08 17:53:01 +00:00
Flea Flicker
29c42e3130
fix(portal): validate waitlist preferredTime/preferredDate, return 400 on bad input (GRO-2211) ( #179 )
CI / Test (pull_request) Successful in 26s
CI / Test (push) Successful in 29s
CI / Lint & Typecheck (pull_request) Successful in 31s
CI / Lint & Typecheck (push) Successful in 34s
CI / Build & Push Docker Images (pull_request) Failing after 13s
CI / Build & Push Docker Images (push) Successful in 48s
2026-06-08 17:19:39 +00:00
Flea Flicker
b842237425
fix(portal): GRO-2203 validate petId as UUID before PATCH lookup (500→404) ( #177 )
CI / Lint & Typecheck (push) Successful in 29s
CI / Test (push) Successful in 29s
CI / Lint & Typecheck (pull_request) Failing after 2s
CI / Test (pull_request) Successful in 25s
CI / Build & Push Docker Images (pull_request) Has been skipped
CI / Build & Push Docker Images (push) Successful in 47s
2026-06-08 17:03:44 +00:00
Flea Flicker
587fd4ec95
dev → uat: GRO-2155 route optimization endpoints (carries GRO-2163) ( #176 )
CI / Test (push) Successful in 26s
CI / Lint & Typecheck (push) Successful in 27s
CI / Build & Push Docker Images (push) Successful in 25s
2026-06-08 16:45:44 +00:00
Flea Flicker
d0c0b1b646
feat(GRO-2155): route CRUD + optimization endpoint (Phase 2.1) ( #175 )
CI / Test (push) Successful in 25s
CI / Lint & Typecheck (push) Successful in 28s
CI / Test (pull_request) Successful in 24s
CI / Build & Push Docker Images (push) Successful in 35s
CI / Lint & Typecheck (pull_request) Successful in 26s
CI / Build & Push Docker Images (pull_request) Successful in 25s
2026-06-08 13:57:07 +00:00
Flea Flicker
b9fc688769
fix(db): wait for/retry DB DNS resolution before drizzle-kit migrate (GRO-2163) ( #161 )
CI / Test (push) Successful in 28s
CI / Lint & Typecheck (push) Successful in 31s
CI / Build & Push Docker Images (push) Successful in 47s
2026-06-08 13:37:30 +00:00
Flea Flicker
6e2e46daf8
Merge uat → main: portal pet PATCH + photoKey S3 key-hijack fix (GRO-2187) ( #174 )
CI / Test (push) Successful in 25s
CI / Lint & Typecheck (push) Successful in 28s
CI / Build & Push Docker Images (push) Successful in 40s
2026-06-08 13:25:46 +00:00