Spaces:
Runtime error
Runtime error
Commit History
-
fix: add pricing_tier to allowed line item types in invoice schema
e7d310d -
fix: convert Decimals to float in invoice generation additional_metadata for JSON serialization
8d20770 -
fix: add invoice_pricing_rules to project overview response and fix Decimal serialization
a963b0d -
fix: convert Decimal to float in invoice pricing rules for JSON serialization
8f5c70d
-
Fix report endpoints to be async for compatibility with permission decorator
93e3d85 -
Fix payroll stats 422 by removing duplicate /stats endpoint and correcting route ordering.
bb7143c -
Fix timesheets 404/403 by adding missing permissions and reordering routes to prevent path conflicts.
9962ce3
-
fix: use historical ticket counts in timesheets to track daily workload regardless of completion status
713fc8b -
fix: add 60s timeout to Cloudinary uploads with Supabase fallback for large images
756bc21 -
Fix ticket re-pickup by ignoring closed assignments when determining available actions
12f96fe
-
refactor: remove reconciliation system and all related code, tasks, and docs
d12a170
-
fix(auth): properly update user password and use valid audit enum values
d9b6bad -
Implement reopen and reassign ticket endpoints and service logic for manager actions
34bdd74 -
Add missing organization name fields to InvoiceViewResponse and add debug logs to trace deployment issues
ff92c12 -
fix: correct ProjectRegion import path in projects API module
cb9c038 -
feat: enrich invoice viewing response with region info, status history, and sales order details
94e37bb -
feat: updated the pm ticket detail endpoint to give back proper actions
24bb10d
-
feat: add completion data to the ticket detail endpoint
fd7c25c -
Fix timezone-aware datetime comparisons and correct CORS config requiring explicit allowed origins
938ea18 -
Enrich contractor invoice response with contractor/client/project names and public viewing link
0d63fec -
Improve invoice generation by auto-deriving contractor/client from project and updating schemas, logic, and docs accordingly
c651639 -
Enhance available-tickets endpoint to auto-derive contractor from project and support contractor_id=auto
5a1264e -
Fix contractor invoice list route by removing trailing slash to prevent 307 redirects and CORS failures
337e2ae -
Fix contractor invoice route prefix conflict and update frontend docs to match corrected API paths
717d701 -
Fix Tende Pay export critical edge cases: only mark exported expenses as paid, skip invalid amounts/users, warn on mixed payment methods
d566e9e -
Fix: Update ON CONFLICT to use (user_id, work_date) and align reconciliation logic with deployed migrations
a9afcba -
Corrected Timesheet enum storage by configuring SQLAlchemy Enum to persist .value strings and preventing unwanted enum coercion.
e9639af -
Fixed enum-case mismatch by allowing string-based status values and passing lowercase status directly to DB.
3071dc4 -
Fixed enum mismatch by updating schema and endpoints to use lowercase TimesheetStatus string values aligning with DB enum
3f304b5
-
Enhance profile endpoint with full project team details including roles, regions, and subcontractor info
3ad3c84 -
Fix 403 error by updating user view permissions for project managers, sales managers, and dispatchers
d078030 -
reconcilliation endpoints
940d3bc -
fix: Moved /stats and /stats/summary routes BEFORE the /{expense_id} route
87f3e2f -
Fix dashboard expense stats to filter by incurred_by_user_id instead of assignment-based query
0c7f12f -
Fix expense approval notifications by replacing asyncio.create_task with FastAPI BackgroundTasks
e44955a -
Use TicketCommentService._to_response() in ticket detail endpoint to include comment attachments
f003bca
-
fix(bulk-export): add missing imports, improve error handling, and add logging
6226e01 -
fix(notifications): update service to use correct filter fields (from_date/to_date) to prevent AttributeError
66d100e -
fix(filters): replace Pydantic Depends with custom Query-based parsers to correctly handle multi-value API filters
2fb09d0 -
fix(filters): correctly parse comma-separated query params into lists for multi-value filters
d95ce07 -
feat(filtering): implement complete end-to-end server-side filtering infrastructure and migrate tickets/projects to new system
7b90d84
-
Fix ProjectSubcontractor import scope in dashboard_service.py
b0f8513 -
fix: add missing ProjectTeam import in dashboard_service to resolve endpoint error
b463025 -
Reorder document routes so /users/me endpoints take precedence over generic entity routes
9f54fd9 -
Add dedicated /users/me document and profile photo endpoints to avoid UUID parsing errors
3e9b945 -
Make account_name optional and auto-populate it for mobile money and bank accounts
a37b051 -
Fix backend permissions to allow field agents to update full basic profile info
b6832d2
-
Fix invalid Ticket attribute usage by replacing nonexistent ticket_reference/title with correct id and ticket_name in ticket expense API
be87f92 -
Fix incorrect relationship reference by replacing ticket_assignment with assignment across service and API layers
428eb7e -
fix: replace utcnow() with timezone-aware datetime.now(timezone.utc) in days_issued to prevent offset-naive/aware errors
33d9190