Jeppe Bundgaard
|
92d79b867a
|
Remove ws package and all associated files from edge-agent.
|
2026-04-13 10:06:07 +02:00 |
|
Jeppe Bundgaard
|
a83b850aba
|
Remove edge_broker_client.php and related unit tests. Add new dependencies and configuration files for edge-agent, including build scripts and package-lock updates.
|
2026-04-13 09:42:35 +02:00 |
|
Jeppe Bundgaard
|
16c9cd9931
|
Extend agent-cli with sync command, enhance schema validation for complaints, and add coverage for gateway command tests.
|
2026-04-09 16:31:58 +02:00 |
|
Jeppe Bundgaard
|
2a0a3468c1
|
Add dockerized fake-agent for integration testing and live edge-broker smoke tests. Introduce agent CLI status command and report helpers. Add browser shell session handling for disconnected agents. Extend tests and improve token validation flow.
|
2026-04-09 16:31:38 +02:00 |
|
Jeppe Bundgaard
|
745e68aa4f
|
Add wash_date and category fields to complaints, update schema and OpenAPI spec, and extend unit and integration tests for validation and route handling.
|
2026-04-09 14:16:35 +02:00 |
|
Jeppe Bundgaard
|
22f856c62a
|
Add unit tests for invoicing, orders normalization, gateway commands, and department complaints. Update schema bootstraps and improve agent command execution logic.
|
2026-04-09 12:24:22 +02:00 |
|
Jeppe Bundgaard
|
9e9372db05
|
Add unit tests for Bird department gate phone call logic, Edge Broker configuration, and gateway heartbeat status. Refactor warnings handling, Slack notifications, Bird client usage, and Edge gateway probes for improved maintainability and error clarity.
|
2026-04-09 08:53:10 +02:00 |
|
Jeppe Bundgaard
|
45b7250480
|
Add Edge Agent implementation for gateway connection lifecycle, agent commands, Shelly device discovery, relay control, and WebSocket communication with broker. Include unit tests for critical flows.
|
2026-04-08 19:01:42 +02:00 |
|
Jeppe Bundgaard
|
653680376a
|
Add unit and integration tests for collected invoice queue handling, route hardening, lifecycle validation, and manual batch processing logic.
|
2026-04-08 15:53:22 +02:00 |
|
Jeppe Bundgaard
|
c5cd42be7f
|
Add unit and integration tests for economic_transfer_queue and related endpoints, replacing synchronous fallback methods with queue-based processing.
|
2026-04-08 12:29:57 +02:00 |
|
Jeppe Bundgaard
|
ba23ad6e8f
|
Add economic_transfer_executor and economic_transfer_queue classes for handling e-conomic invoice transfer logic, queue management, and processing. Include unit tests for Redis cache validation.
|
2026-04-08 11:20:08 +02:00 |
|
Jeppe Bundgaard
|
551161b692
|
Add unit tests for Bird webhook lifecycle, economic customer handling, and payment terms routes with improved error scenarios and response validation. Refactor configuration to support economic API fallback tokens.
|
2026-04-01 17:44:25 +02:00 |
|
Jeppe Bundgaard
|
368e03ce48
|
Remove redundant methods and IVR handling logic from Bird voice call webhook route, focusing on streamlined call flow and improved maintainability.
|
2026-03-27 11:15:27 +01:00 |
|
Jeppe Bundgaard
|
0dc1581eb4
|
Add unit tests for self-serve invoice billing logic, refactor minute-based billing calculations, and improve error handling for billable minutes adjustments.
|
2026-03-26 21:09:21 +01:00 |
|
Jeppe Bundgaard
|
b42a1a69a0
|
Refactor and centralize Shelly rate-limiting logic in the shelly class, add global enforcement and unit tests, and remove redundant implementations in self-serve lane controllers.
|
2026-03-26 20:15:36 +01:00 |
|
Jeppe Bundgaard
|
0d825fb45a
|
Refactor Bird voice call route with streamlined call flow, department options listing, and removed redundant methods. Adjust self-serve lane command invoicing logic for better sequence clarity.
|
2026-03-26 18:29:21 +01:00 |
|
Jeppe Bundgaard
|
b0ed00cb0c
|
Add exception annotation to openDepartmentGateForCommand method for clarity
|
2026-03-26 16:38:48 +01:00 |
|
Jeppe Bundgaard
|
2ba9c30b85
|
Add bird_payload classes for payload abstraction and normalization across flash and voice call routes, integrate with request validators, and add unit tests.
|
2026-03-26 15:56:49 +01:00 |
|
Jeppe Bundgaard
|
b7fa5540e5
|
Update Bird class call logic: adjust polling interval and replace flash call creation with voice call creation
|
2026-03-26 15:29:18 +01:00 |
|
Jeppe Bundgaard
|
fcf9924adc
|
Add bird_flash_calls_client implementation with endpoint builder, request schemas, and validator for managing flash call functionality.
|
2026-03-26 15:18:55 +01:00 |
|
Jeppe Bundgaard
|
a292c8a277
|
Enhance Bird class with flash call fallback logic, caller ID validation, and unit test coverage. Update gate call handling to prefer flash calls with fallback to regular calls.
|
2026-03-26 13:51:41 +01:00 |
|
Jeppe Bundgaard
|
6208f0ee1c
|
Add flash call functionality to Bird class with support for gate flash call handling and unit tests.
|
2026-03-26 13:40:26 +01:00 |
|
Jeppe Bundgaard
|
b4ef513ff4
|
Refactor hangup cause handling in Bird class and add new unit tests for call flow validation.
|
2026-03-26 13:22:35 +01:00 |
|
Jeppe Bundgaard
|
95063d2a70
|
Add Bird gate call flow unit tests, self-serve machine wash minutes config, relay sync improvements, and OpenAPI updates. Refactor Bird call handling with terminal status detection and timeout normalization.
|
2026-03-26 13:16:18 +01:00 |
|
Jeppe Bundgaard
|
a4654398d0
|
Add dynamic_images_vehicle_type column to legacy self-serve schemas, update wash flow logic, and add unit tests for schema compatibility.
|
2026-03-26 11:58:12 +01:00 |
|
Jeppe Bundgaard
|
f148b39a85
|
Add unit tests for legacy schema compatibility, property gate commands, lane state transitions, and relay synchronization. Extend relay logic with demo relay handling, dynamic image updates, phone normalization, and machine relay hard set methods.
|
2026-03-26 11:11:34 +01:00 |
|
Jeppe Bundgaard
|
76729f1b99
|
Add department self-serve config versioning routes with lifecycle actions (list, validate, publish, rollback) and associated logic for managing config versions.
|
2026-03-25 17:54:41 +01:00 |
|
Jeppe Bundgaard
|
482a17f093
|
Add unit tests for cleaner and machine relay flows, refactor relay logic with hard set methods, enhance route handling for lane state transitions, and update session management.
|
2026-03-25 15:08:50 +01:00 |
|
Jeppe Bundgaard
|
416eba7de5
|
Add unit tests and route updates for department self-serve enabled flag relay synchronization. Refactor relay handling with hard set methods and lane status guard bypass.
|
2026-03-25 14:24:30 +01:00 |
|
Jeppe Bundgaard
|
2a9ed5af0f
|
Add unit tests for STOP command flow, including relay shutoff sequencing, vehicle-type product addition, and invoice handling. Refactor STOP logic to enable relay configuration checks, error handling, and session finalization without blocking.
|
2026-03-25 14:12:31 +01:00 |
|
Jeppe Bundgaard
|
4c81cfd0fe
|
Add unit tests for lane relay Shelly batching, rate limit handling, and retry logic. Refactor Shelly relay state handling with snapshot caching, readiness checks, and reduced delay intervals.
|
2026-03-25 13:40:12 +01:00 |
|
Jeppe Bundgaard
|
5a29683fe8
|
Add MACHINE_PROGRAM_PICKER and MACHINE_CLEANER relay endpoints with GET/POST actions, unit tests, retry logic, and OpenAPI spec updates.
|
2026-03-25 12:21:47 +01:00 |
|
Jeppe Bundgaard
|
7fc70184df
|
Add unit tests and routes for department weather targets, including GET/PUT endpoints, thresholds validation, and aggregate status handling. Extend OpenAPI spec with schema mappings for department weather targets and machine relay endpoints.
|
2026-03-25 11:14:25 +01:00 |
|
Jeppe Bundgaard
|
6fdc8d466e
|
Add unit tests for various modules: attachments grouping, department weather caching behaviors, economic module order sanitization, enriched order batching, and user cashier name lookups. Update related route logic for enhanced data fetching and caching integrations.
|
2026-03-24 14:59:16 +01:00 |
|
Jeppe Bundgaard
|
4a5dd3a83f
|
Add unit tests for department weather API: cache helpers, fallback behavior, timeline range handling, and schema conformance. Enhance route logic with custom date ranges, cache support, and fallback handling. Update OpenAPI spec and schema mappings.
|
2026-03-24 13:59:57 +01:00 |
|
Jeppe Bundgaard
|
228efb74fb
|
Enhance department weather timeline API: support multiple IDs, add timeline date override, improve ID parsing, update schema examples, and expand related tests.
|
2026-03-24 13:06:40 +01:00 |
|
Jeppe Bundgaard
|
c714af6c9e
|
Add unit tests for Workfeed weather timeline range, schema conformance, and employee hours calculations. Enhance Workfeed API with improved department ID resolution, timeline range configuration, and workfeed shift handling. Update route logic to remove opening hours dependency and integrate Workfeed data.
|
2026-03-24 12:50:01 +01:00 |
|
Jeppe Bundgaard
|
28b571e2e6
|
Add unit tests for advanced target duration parsing, goal range calculations, and Workfeed query normalization. Extend OpenAPI spec with updated schemas and examples.
|
2026-03-24 11:35:13 +01:00 |
|
Jeppe Bundgaard
|
8c9388546b
|
Add advanced target duration configurations and parsing logic to Goals module. Update Workfeed with new CompanyID config. Extend OpenAPI spec with detailed schema mappings and examples.
|
2026-03-24 11:23:08 +01:00 |
|
Jeppe Bundgaard
|
40171d9719
|
Update Workfeed OpenAPI spec with detailed schema definitions for employees, shifts, and departments. Add pagination support and replace generic response references with specific ones.
|
2026-03-24 10:37:43 +01:00 |
|
Jeppe Bundgaard
|
48a74ad34d
|
Add Workfeed module with routes, configurations, and API integration handling for employees, shifts, and departments. Update OpenAPI spec and include unit tests for endpoint wiring and filtering logic.
|
2026-03-24 10:33:17 +01:00 |
|
Jeppe Bundgaard
|
ac164a5e81
|
Add debug Redis configuration support, enhance Redis connection handling, and refactor worker status endpoint
|
2026-03-24 10:09:37 +01:00 |
|
Jeppe Bundgaard
|
de89c4d635
|
Add database and Redis port configuration support, connection health checks, and refactor worker status endpoint.
|
2026-03-20 13:01:21 +01:00 |
|
Jeppe Bundgaard
|
219f739b54
|
Invalidate user permission and session caches when group permissions change; add tests.
|
2026-03-19 17:13:45 +01:00 |
|
Jeppe Bundgaard
|
b547a8b029
|
Refactor permission handling to leverage standardized "forbidden" responses and enhance unit test coverage.
|
2026-03-19 15:59:25 +01:00 |
|
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
|
b3772293f3
|
Add auto-generated documentation for new API endpoints: branding option, button press webhook, and customer attribute.
|
2026-03-17 16:51:10 +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
|
425c2c9142
|
Update README to include self-serve module implementation and API guide location
|
2026-03-16 13:08:21 +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
|
39ab007281
|
Update Copilot workflow to create GitHub issues for assigned tasks with proper permissions and repository checkout
|
2026-03-16 11:41:00 +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
|
69c7c834d9
|
Update OpenAPI spec to add InvoicingWashSubscriptionsDistributionResponse schema and reference it in the related endpoint
|
2026-03-12 18:51:10 +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
|
72454ff328
|
Update OpenAPI spec to include application/json response schemas and add optional request bodies where applicable
|
2026-03-12 16:51:18 +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
|
0deeb7f121
|
Add scripts to clone live DB into debug DB for local development
|
2026-03-12 14:10:06 +01:00 |
|
Jeppe Bundgaard
|
c78ea57409
|
Add mysql-debug to local development stack and update related configurations
|
2026-03-12 13:48:07 +01:00 |
|
Jeppe Bundgaard
|
5cb197898d
|
Improve live DB clone speed
|
2026-03-12 13:26:22 +01:00 |
|
Jeppe Bundgaard
|
e91dda0799
|
Add run scripts and actions setup
|
2026-03-12 12:27:46 +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 Bundgaard
|
be358309d6
|
Add schema definitions for InvoicingFixedPricingDistributionResponse and related components in OpenAPI spec
|
2026-03-12 11:26:25 +01:00 |
|
Jeppe Bundgaard
|
bd36540f2b
|
Add schema definitions and responses for Weather API endpoints in OpenAPI spec
|
2026-03-12 09:19:17 +01:00 |
|
Jeppe Bundgaard
|
36c9472a40
|
Integrate historical data into weather forecast, sort timeline entries, and update local development server URL in OpenAPI configuration.
|
2026-03-11 14:31:39 +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
|
6bb026ad61
|
Merge remote-tracking branch 'origin/codex/setup-ingoing-call-automation-for-bird' into codex/setup-ingoing-call-automation-for-bird
# Conflicts:
# services/nginx/app/routes/birdVoiceWebhooksRoute.php
|
2026-03-09 09:46:39 +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 |
|