Jeppe Bundgaard
|
3752fdec4c
|
Add support for "forbidden" response with missing permissions in Nginx response handler
|
2026-03-19 14:39:23 +01:00 |
|
Jeppe Bundgaard
|
60f6cbee84
|
Enhance CORS handling with dynamic origin validation and credentials support in Nginx. Update Traefik to include additional allowed origins.
|
2026-03-18 14:15:28 +01:00 |
|
Jeppe Bundgaard
|
6b928cfce7
|
Add PreRenderDynamicImagesCron for dynamic image variant caching and idempotency guard for order bookings.
|
2026-03-18 13:59:48 +01:00 |
|
Jeppe Bundgaard
|
90acf50b55
|
Add idempotency handling for order booking creation using Redis to prevent duplicate requests.
|
2026-03-18 13:42:47 +01:00 |
|
Jeppe Bundgaard
|
da2cbee987
|
Disable sending welcome emails to info@truckwash.dk as requested by Christian.
|
2026-03-18 13:29:37 +01:00 |
|
Jeppe Bundgaard
|
7c55beae42
|
Refactor self-serve wash flow to decouple visible question logic, improve condition evaluation, and handle nullable fields in the OpenAPI spec.
|
2026-03-18 13:05:41 +01:00 |
|
Jeppe Bundgaard
|
f04f79e3da
|
Update Traefik configuration with enhanced routing rules, local IP allowlist for dashboard access, new strip prefix middleware, and extended CORS origins. Add ACME account configurations for certificate management.
|
2026-03-18 10:58:17 +01:00 |
|
Jeppe Bundgaard
|
db42f9ef95
|
Add staging environment configuration for Caddy, Nginx, and Traefik with updated routing and logging settings
|
2026-03-18 10:32:41 +01:00 |
|
Jeppe Bundgaard
|
6cc5dc2210
|
Add initial Copenhagen Truck Wash API documentation, including API overview, authentication, error handling, introduction, and Writerside configuration.
|
2026-03-17 15:55:11 +01:00 |
|
Jeppe Bundgaard
|
979b0f8fac
|
Add atomic reservation support in Redis for goal alert deduplication with expiration. Update Cron logic and add unit tests for validation.
|
2026-03-17 15:23:02 +01:00 |
|
Jeppe Bundgaard
|
bd4a90cdaa
|
Add bulk booked invoice line handling and optimized distribution logic for department 75. Update unit tests, Economic endpoint URL encoding, and service integration.
|
2026-03-17 14:53:20 +01:00 |
|
Jeppe Bundgaard
|
6aa04eb951
|
Add logic for booked department 75 redistribution with fixed pricing and subscription weights. Update OpenAPI spec, unit tests, and service integration.
|
2026-03-16 13:40:03 +01:00 |
|
Jeppe Bundgaard
|
2ecae070a2
|
Add documentation for the self-serve module, detailing architecture, flow, API routes, domain model, runtime tables, and eligibility rules. Includes end-to-end examples and PHP usage.
|
2026-03-16 13:06:17 +01:00 |
|
Jeppe Bundgaard
|
d890d589ff
|
Add reusable routes for department self-serve machine types, n8n workflows, and executions, with corresponding unit tests and service integration.
|
2026-03-16 11:36:48 +01:00 |
|
Jeppe Bundgaard
|
ca573783d2
|
Add support for department_goals entity in system search with title resolution logic and unit tests
|
2026-03-15 18:58:52 +01:00 |
|
Jeppe Bundgaard
|
78a8dd35b9
|
Add system_search_document_index class to manage document indexing for system search with table creation, entity-specific document builders, and index refresh logic.
|
2026-03-13 13:58:48 +01:00 |
|
Jeppe Bundgaard
|
1e1576fe87
|
Add system_search_economic_customer_index class with table creation, refresh logic, and integration into system search fields, synonyms, and entity matching. Update service logic, unit tests, and cron tasks accordingly.
|
2026-03-13 01:52:33 +01:00 |
|
Jeppe Bundgaard
|
5be31bee1c
|
Extend system search to include local e-conomic customer index fields, synonym expansion (e.g., rabat -> discount), and enhanced entity matching. Update OpenAPI spec, unit tests, and cron sync tasks accordingly.
|
2026-03-13 00:59:40 +01:00 |
|
Jeppe Bundgaard
|
efc5906974
|
Expand system search to include users entity type with comprehensive OpenAPI spec updates, route adjustments, and unit test coverage.
|
2026-03-12 23:09:50 +01:00 |
|
Jeppe Bundgaard
|
a22a3f4ee9
|
Add comprehensive unit tests for invoicing period cache logic, system search behavior, and OpenAPI spec coverage. Expand search service with generic entity support and refine association type handling.
|
2026-03-12 21:21:14 +01:00 |
|
Jeppe Bundgaard
|
1190290899
|
Strengthen SQL injection safeguards across objects and traits, add input validation and sanitization, and refine query efficiency with deduplication and null checks.
|
2026-03-12 20:36:08 +01:00 |
|
Jeppe Bundgaard
|
a5963da4e6
|
Cap expanded query terms, aliases, and hints to prevent amplification, add permission-context scoping for query cache, and encapsulate term capping logic in helper methods with relevant tests.
|
2026-03-12 20:20:43 +01:00 |
|
Jeppe Bundgaard
|
6e887b315f
|
Introduce a centralized search service with OpenAI-powered intent parsing and caching
|
2026-03-12 20:14:06 +01:00 |
|
Jeppe Bundgaard
|
f651309d6a
|
Add caching for Economic V2 distribution responses and optimize service methods with localized in-memory caches
|
2026-03-12 19:32:57 +01:00 |
|
Jeppe Bundgaard
|
4ef20a1c90
|
Add economic V2 modules for history backfill, comparison, and distribution services.
|
2026-03-12 17:57:27 +01:00 |
|
Jeppe Bundgaard
|
4523115584
|
Introduce centralized date normalization and duplicate filtering for invoicing logic, and add comprehensive unit tests
|
2026-03-12 16:09:54 +01:00 |
|
Jeppe Bundgaard
|
2ca29a77f1
|
Optimize order and transaction processing logic with caching, and implement opt-in Slack summaries to reduce request latency.
|
2026-03-12 16:00:57 +01:00 |
|
Jeppe Bundgaard
|
07dab83e36
|
Add caching for department metadata and invoicing exclusion checks, optimize department resolution logic in invoicing route
|
2026-03-12 14:40:47 +01:00 |
|
Jeppe Bundgaard
|
5cb197898d
|
Improve live DB clone speed
|
2026-03-12 13:26:22 +01:00 |
|
Jeppe Bundgaard
|
e7ff44bf50
|
Return vehicle subscriptions array
|
2026-03-12 12:19:59 +01:00 |
|
Jeppe Bundgaard
|
ddc45bf206
|
Update getCustomersWithVehicleSubscriptions to exclude fixed pricing customers and remove unused return statement in invoicing route
|
2026-03-12 12:17:52 +01:00 |
|
Jeppe B
|
9002b3a113
|
Merge pull request #139 from copenhagentruckwash/document-canonical-relationship-model-for-entities
Clarify canonical self-serve relationships and condition/question naming intent
|
2026-03-12 08:49:50 +01:00 |
|
Jeppe B
|
3607aef2ca
|
Align WeatherAPI OpenAPI schemas with actual response envelopes
|
2026-03-11 14:37:37 +01:00 |
|
Jeppe B
|
3ec338457e
|
Clarify self-serve entity relationships and naming intent
|
2026-03-11 13:54:11 +01:00 |
|
Jeppe Bundgaard
|
6713a67eb5
|
Update generateDirectDownloadUrl to use static https://api.truckwash.io host and simplify URL generation logic
|
2026-03-11 11:25:53 +01:00 |
|
Jeppe Bundgaard
|
44a0146c9f
|
Enable permission checks, adjust weekly iteration logic, and update cache key for department weekly results functionality
|
2026-03-11 11:21:14 +01:00 |
|
Jeppe Bundgaard
|
ed19a7482d
|
Add offset support to getFieldsWhereContaining for enhanced query control
|
2026-03-11 11:07:48 +01:00 |
|
Jeppe Bundgaard
|
15a7a7b8a5
|
Add weekly department results route, enhance date handling in invoicing and statistics logic, and improve Slack notification configuration
|
2026-03-11 10:52:49 +01:00 |
|
Jeppe Bundgaard
|
4945abfd8e
|
Add new route for superuser invoicing period distribution and enhance date handling logic
|
2026-03-10 11:01:11 +01:00 |
|
Jeppe Bundgaard
|
d82c7d88ec
|
Implement Bird gate IVR flow
|
2026-03-09 11:03:45 +01:00 |
|
Jeppe Bundgaard
|
682bf8151c
|
Introduce Bird module with API integration for voice calls and number management, along with configurable channelId and workplaceId.
|
2026-03-09 10:18:16 +01:00 |
|
Jeppe Bundgaard
|
16bcc3a00c
|
Add custom monthly target calculation in goals_progress_alert_renderer for specific periods.
|
2026-03-09 09:58:48 +01:00 |
|
Jeppe Bundgaard
|
5d1980768a
|
Refactor birdVoiceWebhooksRoute to simplify gate handling by removing single-gate auto-selection logic, enhance multi-gate prompt text, and improve configuration parsing in callGateToOpen.
|
2026-03-04 16:11:54 +01:00 |
|
Jeppe Bundgaard
|
d24a2c7cec
|
Refactor birdVoiceWebhooksRoute to simplify gate handling by removing single-gate auto-selection logic, enhance multi-gate prompt text, and improve configuration parsing in callGateToOpen.
|
2026-03-04 14:39:30 +01:00 |
|
Jeppe Bundgaard
|
72a4c91e5f
|
Refactor Bird API client to extract reusable executeCallAndHangupWhenAccepted method, update callGateAndHangupWhenAccepted and test outbound call logic to use shared implementation, and enhance timeout handling.
|
2026-03-04 14:24:11 +01:00 |
|
Jeppe Bundgaard
|
da8a01479b
|
Add callGateAndHangupWhenAccepted method to Bird API client, refactor gate opening logic in birdVoiceWebhooksRoute, and implement separate entrance/exit gate handling in department_gates_o.
|
2026-03-04 14:16:53 +01:00 |
|
Jeppe Bundgaard
|
342209fd2f
|
Add input gathering feature to Bird API client and routes, integrate multi-gate selection flow in birdVoiceWebhooksRoute, and enhance error handling for invalid or expired sessions.
|
2026-03-04 13:43:19 +01:00 |
|
Jeppe Bundgaard
|
84ba2a1fad
|
Localize user-facing messages in birdVoiceWebhooksRoute to Danish.
|
2026-03-04 13:25:28 +01:00 |
|
Jeppe Bundgaard
|
4f5ce36667
|
Simplify getCallerDepartments in birdVoiceWebhooksRoute by removing redundant user and subuser handling, reducing logic to fetch visible department IDs.
|
2026-03-04 13:20:23 +01:00 |
|
Jeppe Bundgaard
|
db41842162
|
Enhance birdVoiceWebhooksRoute to handle automated gate opening via inbound calls, introduce gate/relay identification methods, refactor phone normalization logic, and improve error handling for unmatched destinations and departments.
|
2026-03-04 13:13:37 +01:00 |
|