popertots
844df4c127
fix: use raw clock.Now()+40h for booking test times (avoids time-sensitive boundaries)
CI / Nginx config check (push) Successful in 24s
CI / Docker compose check (push) Successful in 25s
CI / Env docs check (push) Successful in 28s
CI / Frontend deps check (push) Successful in 44s
CI / Frontend major deps (push) Failing after 44s
CI / Secrets scan (push) Successful in 49s
CI / Go build (push) Successful in 53s
CI / Frontend build (push) Successful in 55s
CI / Knip (push) Successful in 41s
CI / Frontend a11y check (push) Successful in 2m14s
CI / Go vet (prod) (push) Successful in 2m3s
CI / Go vet (dev) (push) Successful in 2m5s
CI / go mod tidy (push) Successful in 32s
CI / Frontend QC (audit) (push) Successful in 41s
CI / Staticcheck (dev) (push) Successful in 2m56s
CI / Staticcheck (prod) (push) Successful in 3m2s
CI / golangci-lint (push) Successful in 3m16s
CI / Go vulnerabilities (push) Successful in 1m21s
CI / Frontend QC (typecheck) (push) Successful in 1m29s
CI / Security scan (prod) (push) Successful in 4m16s
CI / Security scan (dev) (push) Successful in 4m46s
CI / Frontend QC (lint) (push) Successful in 2m4s
CI / Svelte strict check (push) Successful in 1m51s
CI / Tests (prod) (push) Successful in 3m54s
CI / Tests (dev) (push) Failing after 3m59s
CI / Race (prod) (push) Successful in 7m14s
CI / Race (dev) (push) Successful in 7m25s
2026-07-11 10:35:59 +01:00
popertots
abd53baf35
fix: time-sensitive tests use savepoint pattern, avoid 48h auto-approval boundary
CI / Env docs check (push) Successful in 17s
CI / Docker compose check (push) Successful in 19s
CI / Nginx config check (push) Successful in 20s
CI / Frontend deps check (push) Successful in 27s
CI / Frontend major deps (push) Failing after 27s
CI / Secrets scan (push) Successful in 39s
CI / Go build (push) Successful in 40s
CI / Frontend build (push) Successful in 43s
CI / Knip (push) Successful in 41s
CI / Frontend a11y check (push) Successful in 1m37s
CI / Go vet (prod) (push) Successful in 1m53s
CI / go mod tidy (push) Successful in 31s
CI / Frontend QC (audit) (push) Successful in 51s
CI / Go vet (dev) (push) Successful in 2m50s
CI / Staticcheck (prod) (push) Successful in 2m57s
CI / Staticcheck (dev) (push) Successful in 3m19s
CI / Go vulnerabilities (push) Successful in 1m35s
CI / golangci-lint (push) Successful in 3m37s
CI / Frontend QC (typecheck) (push) Successful in 1m35s
CI / Security scan (prod) (push) Successful in 4m10s
CI / Security scan (dev) (push) Successful in 4m38s
CI / Frontend QC (lint) (push) Successful in 1m58s
CI / Svelte strict check (push) Successful in 1m12s
CI / Tests (prod) (push) Successful in 3m8s
CI / Tests (dev) (push) Failing after 4m8s
CI / Race (prod) (push) Successful in 7m34s
CI / Race (dev) (push) Failing after 7m40s
2026-07-11 10:14:12 +01:00
popertots
ef3cfe8c4f
fix: replace crypto/md5 with crypto/sha256 for IP hashing
2026-07-10 12:04:49 +01:00
popertots and Sisyphus
510828c924
chore: run go fix for Go 1.26 modernization
...
CI / Go vulnerabilities (push) Successful in 1m10s
CI / Build & Vet (push) Successful in 1m39s
CI / Frontend build (gate) (push) Successful in 1m42s
CI / Frontend QC (audit) (push) Successful in 56s
CI / Frontend QC (typecheck) (push) Successful in 1m36s
CI / Frontend QC (lint) (push) Successful in 1m51s
CI / Tests (prod) (push) Has been cancelled
CI / Tests (dev) (push) Has been cancelled
CI / Race (prod) (push) Has been cancelled
CI / Race (dev) (push) Has been cancelled
106 files: interface{}→any, strings.Split→SplitSeq, CutPrefix/Cut, strings.Builder, slices.Contains, remove redundant // +build directives, gofmt import ordering and indentation.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-07-09 17:25:23 +01:00
popertots and Sisyphus
2e0760f083
feat: add IP-based anon reservation cleanup to admin reserve handler
...
Extend AdminReserveSlotHandler's pre-overlap DELETE to also clean up anonymous RESERVATION:anon entries matching the admin's IP address. This handles the edge case where an admin previously reserved a slot without authentication. Also reorganise imports to follow goimports conventions.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-07-05 20:26:33 +01:00
popertots and Sisyphus
2386bd0ca2
test: add tests for reservation self-block prevention
...
Add TestReserveSlot_DoesNotSelfBlock, TestAdminReserveSlot_DoesNotSelfBlock and TestReserveSlot_CleansUpAnonReservation. Add UserIDKey context to admin approve edit request tests. Remove weekend-day adjustment in TestAdminApproveEditRequest_OverlapWithBooking_Regression and TestAdminApproveEditRequest_EvictsPendingRelease (no longer needed).
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-07-05 11:47:43 +01:00
popertots and Sisyphus
40bbd9ba49
refactor(bookings): migrate remaining handlers and tests to clock.Now()
...
Replace time.Now() with clock.Now() in bookings handlers and all test files. Includes deposit, discount, dedup, overlap, and edit request test updates.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-06-24 23:43:32 +01:00
popertots and Sisyphus
8ab7408e00
feat(bookings): support out_of_hours flag in admin create booking
...
Add OutOfHours field to AdminCreateBookingForUserRequest. When true, skip exceptional hours closed check and include out_of_hours in INSERT. Add tests verifying: bypass of exceptional closure, rejection without flag, overlap detection still works, and time blocker warning.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-06-22 12:55:00 +01:00
popertots and Sisyphus
e23cc3cc6f
feat(bookings): add comprehensive overlap detection tests
...
Covers admin create, user edit, auto-approve, service duration extension, reserve, admin reserve, admin reschedule, confirm, and admin approve edit request — all with overlap edge cases.
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent )
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-06-21 21:01:17 +01:00