fix: convert Decimals to float in invoice generation additional_metadata for JSON serialization 8d20770 kamau1 commited on Dec 15, 2025
fix: convert Decimal to float in invoice pricing rules for JSON serialization 8f5c70d kamau1 commited on Dec 15, 2025
feat: add flexible invoice pricing system with tiered, flat rate, time-based, and custom pricing models f18d2f1 kamau1 commited on Dec 15, 2025
feat: add smart validation for activation requirements with 6 new field types and auto-generated validation rules dddd6c6 kamau1 commited on Dec 15, 2025
Register reports router, fix CSV BaseModel import, enforce report permissions, and add frontend API docs. f10602a kamau1 commited on Dec 14, 2025
fix: use historical ticket counts in timesheets to track daily workload regardless of completion status 713fc8b kamau1 commited on Dec 13, 2025
Trigger real-time timesheet updates on journey start and arrival actions c001b0a kamau1 commited on Dec 13, 2025
Update timesheets in real time when bulk approving expenses (including past dates) 2caf3a4 kamau1 commited on Dec 13, 2025
fix: add missing and_ import to fix timesheet expense aggregation crash 104d481 kamau1 commited on Dec 13, 2025
Fix ticket expense runtime errors by correcting Decimal aggregation and removing invalid currency references. 4687303 kamau1 commited on Dec 13, 2025
Fixed timesheet aggregation issues: corrected self-assignment counting, updated expense approval logic, and documented dropped vs cancelled ticket semantics. 207b4a1 kamau1 commited on Dec 13, 2025
Fix notification role handling to support both enum and string role values bb7aae2 kamau1 commited on Dec 13, 2025
Fix ticket re-pickup by ignoring closed assignments when determining available actions 12f96fe kamau1 commited on Dec 13, 2025
Enhance stats endpoints with time-based breakdowns for richer dashboard analytics 3a13ba4 kamau1 commited on Dec 13, 2025
feat: reporting with advanced filtering, pagination, and performance optimizations. 34b4d1d kamau1 commited on Dec 12, 2025
Update timesheet service: allow past timesheet updates, keep future date safety check, add manual trigger API ad5b0b2 kamau1 commited on Dec 12, 2025
feat: unified sync notification system, realtime timesheets and payroll, simplified project role compensation 95005e1 kamau1 commited on Dec 12, 2025
refactor: remove reconciliation system and all related code, tasks, and docs d12a170 kamau1 commited on Dec 12, 2025
implement CSV bulk invitations using in-memory analysis and metadata field 01f85fe kamau1 commited on Dec 11, 2025
Implement automatic clearing of irrelevant compensation fields when compensation_type changes, including validation updates and helper logic in project_service 6be93fb kamau1 commited on Dec 11, 2025
Add missing status-history creation for all ticket status transitions including cancel, reopen, reassign, and all reactivation paths 4e26259 kamau1 commited on Dec 11, 2025
Implement reopen and reassign ticket endpoints and service logic for manager actions 34bdd74 kamau1 commited on Dec 11, 2025
Add missing organization name fields to InvoiceViewResponse and add debug logs to trace deployment issues ff92c12 kamau1 commited on Dec 11, 2025
fix: add missing AppRole import in projects API and enable eager loading in invoice viewing service 04b997c kamau1 commited on Dec 11, 2025
fix: correct ProjectRegion import path in projects API module cb9c038 kamau1 commited on Dec 11, 2025
fix: correct ProjectRegion import path in invoice viewing service 8d499f1 kamau1 commited on Dec 11, 2025
feat: enrich invoice viewing response with region info, status history, and sales order details 94e37bb kamau1 commited on Dec 11, 2025
feat: updated the pm ticket detail endpoint to give back proper actions 24bb10d kamau1 commited on Dec 11, 2025
Fix timezone-aware datetime comparisons and correct CORS config requiring explicit allowed origins 938ea18 kamau1 commited on Dec 10, 2025
Implement full end-to-end invoice generation & public viewing system (migrations, models, schemas, services, routes) 93efe54 kamau1 commited on Dec 10, 2025
Fix notification filtering by switching list-based fields from == to .in_() to prevent PostgreSQL text=text[] errors 15d1bcf kamau1 commited on Dec 10, 2025
Fix Tende Pay export notification: handle AMOUNT key and improve user guidance 51e0775 kamau1 commited on Dec 10, 2025
Improve Tende Pay export UX: fallback to valid financial account phone and show actionable error messages 4756596 kamau1 commited on Dec 10, 2025
Fix Tende Pay export critical edge cases: only mark exported expenses as paid, skip invalid amounts/users, warn on mixed payment methods d566e9e kamau1 commited on Dec 10, 2025
Feature: Implement Tende Pay CSV export for ticket expenses with formatter, endpoints, and tests 1dedcdf kamau1 commited on Dec 10, 2025
Fix: Correct expense status logic and add real-time reconciliation for bulk approve/reject actions 33127cf kamau1 commited on Dec 10, 2025
Fix: Correct date filtering, action logic, and check-in/out calculations in reconciliation query for accurate daily timesheet aggregation e832a39 kamau1 commited on Dec 10, 2025
Fix: Serialize audit payloads to JSON before inserting into timesheet_updates for PostgreSQL compatibility d930817 kamau1 commited on Dec 10, 2025
Fix: Use partial index name idx_timesheets_user_date_unique in ON CONFLICT to align with soft-delete unique constraint 2e1b4ca kamau1 commited on Dec 10, 2025
Fix: Update ON CONFLICT to use (user_id, work_date) and align reconciliation logic with deployed migrations a9afcba kamau1 commited on Dec 10, 2025
Fix: Remove invalid enum values and rewrite reconciliation filters using valid AssignmentAction enums for reliable real-time updates de77159 kamau1 commited on Dec 10, 2025
Fix: Replace ANY() array binding with explicit IN() params to resolve mixed parameter style errors in reconciliation SQL 373feab kamau1 commited on Dec 10, 2025
Fix: Cast user_ids to UUID array in reconciliation SQL to resolve uuid=text ANY() errors 6574f8d kamau1 commited on Dec 10, 2025
Fix: Standardize time tracking fields and add migration to rename clock_in/clock_out to check_in/check_out fec074b kamau1 commited on Dec 10, 2025
Made /stats accessible to field agents by removing restrictive permission decorator and cleaned up debug logging. caf8129 kamau1 commited on Dec 10, 2025
Added deleted_at=None filtering across TimesheetService and converted deletes to soft-deletes to fix empty /me/timesheets results. cbadf7a kamau1 commited on Dec 10, 2025
Corrected Timesheet enum storage by configuring SQLAlchemy Enum to persist .value strings and preventing unwanted enum coercion. e9639af kamau1 commited on Dec 10, 2025
Forced enum serialization to lowercase DB values by explicitly converting TimesheetStatus to .value before model creation. 9ac8532 kamau1 commited on Dec 10, 2025