Commit Graph
580 Commits
Author SHA1 Message Date
popertotsandSisyphus 1d8247e655 fix(auth,services,profile): add request struct validation
Add validate tags and validators.Validate.Struct() calls on request structs for auth verification, service creation, and user patch test endpoints.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-31 18:49:12 +01:00
popertotsandSisyphus 577cceb304 fix(bookings): add request struct validation and fix patch test notice logic
Add validators.Validate.Struct() calls across booking handlers. Fix patch test notice period check to compare against booking start time (not current time) and fix expiry check similarly. Update test to match new error message.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-31 18:49:07 +01:00
popertotsandSisyphus 304a54c283 fix(admin): replace string(rune) with strconv.Itoa and validate status param
Fix query parameter construction by using strconv.Itoa instead of string(rune('0'+argNum)). Add status filter validation against allowed values.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-31 18:49:02 +01:00
popertotsandSisyphus 253d8785a4 fix(main): add request body size limits to API routes
Add limitBody(defaultBodyLimit) middleware to register, login, verify, booking, guest user, and admin routes.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-31 18:48:57 +01:00
popertotsandSisyphus 306f942d00 feat(mw): add dev-mode rate limiting bypass
Add build tag split: real rate limiter under !dev, no-op under dev build tag.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-31 18:48:53 +01:00
popertotsandSisyphus d7857766fb chore: configure env-based DAV_ADMIN_PASSWORD and add security headers
Ultraworked with Sisyphus (https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-31 10:55:43 +01:00
popertotsandSisyphus 1a6947a9b6 fix: enforce request body size limits across the API
Ultraworked with Sisyphus (https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-31 10:55:33 +01:00
popertotsandSisyphus 700b7c1152 fix: extract client IP via net.SplitHostPort consistently
Ultraworked with Sisyphus (https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-31 10:55:23 +01:00
popertotsandSisyphus a38fda612e fix: harden notification pagination and ID validation
Ultraworked with Sisyphus (https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-31 10:55:19 +01:00
popertotsandSisyphus 453fd0dc1d feat: validate image type on server-side upload
Ultraworked with Sisyphus (https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-31 10:55:09 +01:00
popertotsandSisyphus 965b8b2794 feat: validate admin and time-blocker request structs
Ultraworked with Sisyphus (https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-31 10:54:59 +01:00
popertotsandSisyphus 605c1422b9 feat: validate auth and user request structs
Ultraworked with Sisyphus (https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-31 10:54:48 +01:00
popertotsandSisyphus 8b72c3fbef deps: add go-playground/validator/v10 and update crypto deps
Ultraworked with Sisyphus (https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-31 10:54:40 +01:00
popertots 0de5128201 fix copy 2026-05-31 00:57:33 +01:00
popertotsandSisyphus 6e901690fd chore: apply project-wide formatting and UI library updates
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 20:23:14 +01:00
popertots ef650e013a feat: implement patch test management and validation improvements 2026-05-29 20:21:26 +01:00
popertots ddaa468a3e fix: correctly validate number inputs against null/NaN bypass in admin modals 2026-05-29 18:35:11 +01:00
popertots cf81916278 fix: safely enforce validation onblur for HolidayHours modal without dropping code 2026-05-29 18:28:13 +01:00
popertots 6625a3a699 fix: enforce derived validation onblur in patch tests modal to block invalid submissions 2026-05-29 18:24:03 +01:00
popertots 20bd3e3310 fix: add inputmode to number inputs across admin modals to enforce numeric keyboard on mobile 2026-05-29 18:20:30 +01:00
popertots c21a59d61d fix: validate Patch Test modal inputs 2026-05-29 18:12:39 +01:00
popertots 0750c7ac0e fix: deduplicate service list in PatchTestsManagement to prevent each_key_duplicate 2026-05-29 18:10:40 +01:00
popertots eda4b6d865 fix: deduplicate service list to prevent each_key_duplicate 2026-05-29 18:09:35 +01:00
popertots 94f3f77985 fix: restore ServicesManagement.svelte component 2026-05-29 18:09:06 +01:00
popertots 7d1266707c refactor: use shadcn Checkbox in PatchTestsManagement 2026-05-29 18:06:05 +01:00
popertots db4c3aa076 feat: complete PatchTestsManagement UI and modal logic 2026-05-29 18:04:27 +01:00
popertots df32f5518c fix: resolve svelte syntax error and cleanup ServicesManagement.svelte 2026-05-29 17:57:33 +01:00
popertots a22ddb7a0f fix: remove duplicate and deprecated createService implementation 2026-05-29 17:55:23 +01:00
popertots e1c0d3a03f fix: remove duplicate validateMinimumAgeField 2026-05-29 17:54:00 +01:00
popertots 10bb1b4e9e fix: remove duplicate validation functions 2026-05-29 17:52:25 +01:00
popertots dec3e1023e fix: remove duplicated validation functions in ServicesManagement.svelte 2026-05-29 17:51:36 +01:00
popertots f5c2c26fe4 fix: resolve compilation errors in frontend and backend 2026-05-29 17:46:15 +01:00
popertots f36497090a feat: migrate to dedicated patch test management 2026-05-29 17:19:02 +01:00
popertots 9d8015f1b8 feat: add comprehensive test suite for recent backend changes 2026-05-29 17:13:16 +01:00
popertotsandSisyphus 9ba4949d37 docs: update all documentation for referral codes, admin schedule page, BookingFlow welcome step, format utilities, and patch_test_duration_hours
- README: add new features (referral codes, admin schedule page, welcome step, format utils, patch_test_duration_hours, created_by_name, admin login redirect), update project structure, update test count to 446/449

- Overview: add referral code support to Auth section, created_by_name to Booking System, admin schedule page to Scheduling and Admin Features, welcome step to Customer Features, update test coverage

- Technical Manual: add format.ts utilities to Shared Utilities, add /admin/schedule route, update handler descriptions (auth, bookings, services), add Referral Code System, Admin Schedule Page, BookingFlow Welcome Step, and patch_test_duration_hours sections, update test coverage

- Admin Manual: add Schedule page to main pages list, add full Schedule (Weekly Calendar View) section, add patch test duration to service creation, update referral history description

- User Manual: add referral code field to registration, add welcome step explanation to Step 1

- Future Work: update header, add #52-58 completed items, update #21 referral system status, add Phase 6 execution order

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:21:18 +01:00
popertotsandSisyphus ec097af0f6 refactor: route pages with shared formatting and layout updates
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:10:29 +01:00
popertotsandSisyphus 5705ef71b8 refactor: dialog and alert-dialog UI primitives
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:10:07 +01:00
popertotsandSisyphus 3aa0814b1a fix: navbar layout and styling improvements
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:09:46 +01:00
popertotsandSisyphus 040a47401e refactor: user payment modal
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:09:25 +01:00
popertotsandSisyphus 91999d8244 refactor: account modals with auto-select and formatting
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:09:05 +01:00
popertotsandSisyphus fc69fec361 refactor: today page components with calendar grid and stats
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:08:44 +01:00
popertotsandSisyphus 18d8822c47 refactor: admin user modal, image upload, and new schedule page
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:08:25 +01:00
popertotsandSisyphus a44972fbc6 refactor: admin edit and approval modals
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:08:05 +01:00
popertotsandSisyphus b2788b2269 refactor: admin management components (discounts, holidays, schedule, time blockers)
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:07:44 +01:00
popertotsandSisyphus 96ab71a579 refactor: admin booking modals with shared formatting and auto-select
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:07:26 +01:00
popertotsandSisyphus 0b3d26914b refactor: booking flow wizard with step indicator improvements
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:07:02 +01:00
popertotsandSisyphus aa75217898 refactor: bookings and services handlers with shared formatting
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:06:40 +01:00
popertotsandSisyphus 9deae1b0d7 feat: referral code validation in registration with tests
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:06:19 +01:00
popertotsandSisyphus 0f118205d6 feat: add created_by_name field to Booking type
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:05:56 +01:00
popertotsandSisyphus e8c03d6c30 refactor: extract shared formatting utilities (duration, date, age)
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-05-29 16:05:35 +01:00