parsa aghaei
ea3bdf1ea3
feat(enamad): dynamic enamad HTML embedding with exact code fallback & admin edit support
Deploy Canina / deploy (push) Failing after 29s
2026-08-08 18:12:42 +03:30
parsa aghaei
74b3d24622
fix(api/auth): allow public GET on ui-texts & scientific-terms, fix refresh attempt loop, remove duplicate error toasts and prevent unwanted modal popups
Deploy Canina / deploy (push) Failing after 28s
2026-08-08 18:11:17 +03:30
parsa aghaei
adbfa60343
fix(frontend/backend): suppress unauth toast on init, fix admin-login DTO validation and RSC directives
Deploy Canina / deploy (push) Failing after 29s
2026-08-08 18:02:43 +03:30
parsa aghaei
acc662fce8
fix(backend): add dev fallbacks for JWT secrets to prevent local bootstrap crash
Deploy Canina / deploy (push) Has been cancelled
2026-08-08 17:51:48 +03:30
parsa aghaei
59fba0484c
fix(backend): add js-yaml dependency and type definitions for openapi generator
Deploy Canina / deploy (push) Failing after 28s
2026-08-08 17:48:28 +03:30
parsa aghaei
e281ef75da
feat(security/devops): disable swagger in prod, secure staging with basic auth & noindex, add DB backup script and uploads volume persistence
Deploy Canina / deploy (push) Failing after 29s
2026-08-08 17:46:42 +03:30
9f11d8fb2d
chore(workspace): eradicate all tsc errors and eslint warnings across frontend, admin, and backend
Deploy Canina / deploy (push) Failing after 29s
2026-08-07 07:39:26 +03:30
4659a7b1de
feat(storefront): implement Phase C API integration replacing static fallbacks
Deploy Canina / deploy (push) Failing after 28s
2026-08-07 00:16:03 +03:30
f70c1fe3c2
feat(admin): implement Phase B management modules based on frontend integration contract
Deploy Canina / deploy (push) Failing after 28s
2026-08-06 23:58:10 +03:30
8dc2b1e586
docs(audit): generate frontend integration requirements based on new API contracts
Deploy Canina / deploy (push) Failing after 28s
2026-08-06 23:49:27 +03:30
1ae4c99ffc
feat(backend): implement Phase A database models and controllers for cross-boundary dependencies
Deploy Canina / deploy (push) Failing after 28s
2026-08-06 23:45:51 +03:30
74fcaa6a4e
feat(application): implement Phase 3 strict DTOs, eradicate any types, and add Suspense boundaries
Deploy Canina / deploy (push) Failing after 29s
2026-08-06 23:15:25 +03:30
57596f5aaf
feat(application): implement Phase 2 SEO metadata, Next.js image optimization, and HTTP security headers
Deploy Canina / deploy (push) Failing after 28s
2026-08-06 23:02:07 +03:30
9c334c39ae
refactor(application): restore RSC root layout, add server-side data fetching, and use granular Zustand selectors
Deploy Canina / deploy (push) Failing after 28s
2026-08-06 22:55:54 +03:30
102494cef0
import for useeffect added to sidebar
Deploy Canina / deploy (push) Failing after 28s
2026-08-06 22:33:12 +03:30
ad3f149789
feat(devops,docs,verify): implement Phase 4 CI pipeline, OpenAPI synchronization, and E2E verification matrix
Deploy Canina / deploy (push) Failing after 28s
2026-08-06 22:27:56 +03:30
27abaa3e05
fix(admin): use type-only import for ComponentType in adminRoutes.tsx
Deploy Canina / deploy (push) Failing after 28s
2026-08-06 22:05:21 +03:30
eaa2621a17
feat(admin): implement Phase 3 Admin SPA Router and Dual-Token Auth integration
2026-08-06 22:02:39 +03:30
71e19bfe43
fix(orders): add type assertions for Prisma relations in checkAndSendRefillReminders
Deploy Canina / deploy (push) Failing after 28s
2026-08-06 21:44:44 +03:30
809c69f923
feat(phase2): implement database optimization and RBAC enforcement
...
Deploy Canina / deploy (push) Failing after 28s
- TASK-FIN-001: Eliminate N+1 query loop in OrdersService.create with batched findMany query.
- Perform monetary calculations strictly using Prisma.Decimal methods (.add(), .mul(), .sub()).
- Add validation for duplicate product IDs and invalid quantities in order items.
- Implement global DecimalInterceptor registered in main.ts to serialize Prisma.Decimal values into exact string representations in API responses.
- TASK-SEC-003: Create roles.decorator.ts and roles.guard.ts in common directory with backward-compatible re-exports in auth directory.
- Enforce RBAC on SettingsController with @UseGuards(JwtAuthGuard, RolesGuard) and @Roles('Admin').
- Add unit specs for DecimalInterceptor, RolesGuard, SettingsController, and OrdersService Decimal batch operations.
2026-08-06 21:29:20 +03:30
a64291a19a
feat(security): implement phase 1 core security & build hygiene
Deploy Canina / deploy (push) Failing after 28s
2026-08-06 21:15:18 +03:30
f4cdca4ed1
docs(audit): finalize Phase 3 Master Task Backlog and audit planning artifacts
Deploy Canina / deploy (push) Failing after 29s
2026-08-06 20:54:44 +03:30
parsa aghaei
6f04474195
md file deleted.
Deploy Canina / deploy (push) Failing after 28s
2026-08-05 16:00:54 +03:30
parsa aghaei
bac9a02c49
fix(reports): add optional value property to TopCouponItem interface [TASK-26.20]
Deploy Canina / deploy (push) Failing after 27s
2026-08-05 15:48:51 +03:30
parsa aghaei
053d6f06d8
fix(types): resolve type errors in ReportData, SmsService, and GetProductsDto
Deploy Canina / deploy (push) Waiting to run
2026-08-05 15:48:11 +03:30
parsa aghaei
aac0716046
feat: complete all section 26 backlog tasks including pet image upload [TASK-26.18]
Deploy Canina / deploy (push) Waiting to run
2026-08-05 15:45:11 +03:30
parsa aghaei
187aa7c962
feat: add excel export to reports and video view counter increment [TASK-26.20]
Deploy Canina / deploy (push) Waiting to run
2026-08-05 14:42:38 +03:30
parsa aghaei
8a05854aa0
feat(orders): atomic order transaction and refill cron job handler [TASK-26.19]
2026-08-05 14:41:58 +03:30
parsa aghaei
cbcff26e63
feat(pets): add admin pet health records query and paginated pet list endpoint [TASK-26.17]
2026-08-05 14:41:26 +03:30
parsa aghaei
d94b33f96d
feat(admin): wallet adjustment endpoint and atomic prisma wallet topup transaction [TASK-26.14] [TASK-26.15] [TASK-26.16]
2026-08-05 14:40:35 +03:30
parsa aghaei
3497a743b3
feat(products): fix search query filter overwrite and add minPrice maxPrice sorting filters [TASK-26.10] [TASK-26.11]
2026-08-05 14:39:58 +03:30
parsa aghaei
7f3c04acf5
fix(auth): complete logout state cleanup and admin protected route token validation [TASK-26.8] [TASK-26.9]
2026-08-05 14:39:31 +03:30
parsa aghaei
350182c5a4
security(auth): remove OTP console log and hardcoded admin credentials [TASK-26.4] [TASK-26.5]
2026-08-05 14:38:57 +03:30
parsa aghaei
3fe379a1d2
docs: add section 26 mega tasks to backlog [TASK-26]
2026-08-05 14:38:31 +03:30
parsa aghaei
ce30ade808
feat: complete all remaining backlog tasks 25.1 to 25.14
Deploy Canina / deploy (push) Waiting to run
2026-08-05 14:37:44 +03:30
parsa aghaei
1542c85b29
feat(pet): allow direct manual supplement add for stock monitoring [TASK-25.5]
2026-08-05 14:29:38 +03:30
parsa aghaei
d5f4d2a610
feat(advisor): allow direct number input for age and weight [TASK-25.4]
2026-08-05 14:29:08 +03:30
parsa aghaei
070c68e4c9
feat(admin): complete full user management page with detail modal and profile edit [TASK-25.3]
2026-08-05 14:28:42 +03:30
parsa aghaei
81a2837c04
feat: restore profile pets dropdown, fix logout handler, cleanup task titles, fix maintenance guard, add catalog settings & shipping fee calculation
Deploy Canina / deploy (push) Waiting to run
2026-08-05 14:17:13 +03:30
parsa aghaei
c79b0fa394
docs: add tasks 25.1 to 25.14 to backlog
2026-08-05 14:10:42 +03:30
parsa aghaei
b6453d05b9
fix(admin): fix Topbar profile dropdown and logout action [TASK-26.1]
Deploy Canina / deploy (push) Failing after 28s
2026-08-03 17:23:16 +03:30
parsa aghaei
7c69a48910
docs(backlog): add TASKS 25 to 38 covering user requests
2026-08-03 17:22:17 +03:30
parsa aghaei
71ff923d35
fix(admin): relocate dosage logic to general tab & clean up syntax
2026-08-03 16:53:40 +03:30
parsa aghaei
c6aa77f7c9
feat(admin): add product buy price field, dual price/percentage margin calculator, and security sanitization [TASK-BUYPRICE]
2026-08-03 12:04:27 +03:30
parsa aghaei
38261c2f76
fix(admin): update Category resolution type check in Products.tsx
2026-08-03 12:02:46 +03:30
parsa aghaei
68c7656964
fix(admin): safely resolve category name for Category | string union type on product list row
2026-08-03 12:00:27 +03:30
parsa aghaei
bf213bb05d
fix(admin): resolve mediaImageError state and category name type errors in Products.tsx
2026-08-03 11:58:06 +03:30
parsa aghaei
262c759055
fix(admin): use onMouseDown for symptom autocomplete options to prevent focus blur loss
2026-08-03 11:55:47 +03:30
parsa aghaei
1da8fdda21
fix(ssr): wrap localStorage access in window check in ClientLayout.tsx
2026-08-03 11:54:28 +03:30
parsa aghaei
3d0139da53
fix(build): import missing useSettingsStore in ArchivePage.tsx
2026-08-03 11:53:47 +03:30