Ovidiu U
acaa791eda
feat: allow Sanctum-authenticated sessions through VerifyApiKey middleware
...
Enables stateful API via Sanctum so the Vue SPA can call /api/* routes
using cookie auth, without requiring an X-Api-Key header.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-10 17:56:14 +01:00
Ovidiu U
7b6aaac661
chore: remove StationSearch, dead Volt SFCs, mobile prototype, and fix homepage CTAs
2026-04-08 09:24:40 +01:00
Ovidiu U
c935903614
feat: strip FuelFinder to layout shell, wire sub-components
2026-04-08 08:48:15 +01:00
Ovidiu U
bce5aa72c8
feat: extract fuel.map component and wire Leaflet to map-update browser event
2026-04-08 08:46:33 +01:00
Ovidiu U
0809a5340b
feat: extract fuel.recommendation Livewire component
2026-04-08 08:46:16 +01:00
Ovidiu U
c4f5fd042b
fix: remove dead search property, simplify empty state message
2026-04-07 22:04:15 +01:00
Ovidiu U
a576ef6b4a
feat: extract fuel.station-list Livewire component
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-07 22:02:08 +01:00
Ovidiu U
0b289c8ec2
feat: extract fuel.search Livewire component with stations-found dispatch
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-07 21:58:01 +01:00
Ovidiu U
6a80c11f38
feat: add LLM prediction providers with structured output support
...
linter / quality (push) Has been cancelled
tests / ci (8.3) (push) Has been cancelled
tests / ci (8.4) (push) Has been cancelled
tests / ci (8.5) (push) Has been cancelled
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-07 14:42:44 +01:00
Ovidiu U
80ae25d98a
test: add failing FuelFinder component tests
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-07 14:31:00 +01:00
Ovidiu U
4f695ca37c
test: add lat/lng to faked meta fixture in StationSearchTest
2026-04-06 09:46:17 +01:00
Ovidiu U
21aea84797
test: add postcode path assertion for meta lat/lng
2026-04-06 09:39:28 +01:00
Ovidiu U
cef21a4f0f
feat: include search lat/lng in station API meta response
2026-04-06 09:37:39 +01:00
Ovidiu U
fa94bb537b
feat: add sort option to station search form
2026-04-05 20:48:00 +01:00
Ovidiu U
649772f65f
fix: add X-Api-Key header to API feature tests and register auth routes
2026-04-05 20:32:20 +01:00
Ovidiu U
1318e3ac3b
test: fix quality issues in StationSearchTest
2026-04-05 20:27:17 +01:00
Ovidiu U
55cd68fbaa
test: add failing tests for StationSearch Livewire component
2026-04-05 20:24:20 +01:00
Ovidiu U
7101ed3550
feat: add postcode resolution to /api/stations and Filament SearchResource
...
linter / quality (push) Has been cancelled
tests / ci (8.3) (push) Has been cancelled
tests / ci (8.4) (push) Has been cancelled
tests / ci (8.5) (push) Has been cancelled
Extends NearbyStationsRequest to accept `postcode` (full or outcode) as an alternative to lat/lng. PostcodeService resolves it via postcodes.io and falls through to coordinates. Also adds SearchResource to the Filament admin panel for viewing logged search activity with fuel type filter and price/distance stats columns. Includes SQLite GREATEST/LEAST function polyfills in AppServiceProvider for test compatibility.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-05 19:10:25 +01:00
Ovidiu U
0bea50b843
feat: add GET /api/stats/searches endpoint
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 19:28:41 +01:00
Ovidiu U
8bd43ee9e4
feat: add GET /api/stations nearby stations endpoint with haversine query and search logging
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 19:27:55 +01:00
Ovidiu U
cf6a1369d4
feat: add GET /api/prediction endpoint
...
Implements PredictionRequest (fuel_type validation with ValueError→ValidationException), PredictionController delegating to NationalFuelPredictionService, and 5 feature tests. Also fixes LEAST() MySQL-only function to a CASE WHEN expression for SQLite test compatibility.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 19:26:48 +01:00
Ovidiu U
1d2eb12e83
feat: add StatsOverviewWidget to admin dashboard
...
Four-stat overview widget (users, stations, oil prediction, API errors)
with 30s polling registered on the admin panel dashboard.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 14:31:02 +01:00
Ovidiu U
52dc225b3d
feat: add StationResource with poll action and view page
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 14:27:22 +01:00
Ovidiu U
b2cc3ee0ff
feat: add BrentPriceResource with 30-day line chart widget
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 14:23:57 +01:00
Ovidiu U
d936175090
feat: add OilPredictionResource with run-prediction header action
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 14:20:51 +01:00
Ovidiu U
d602c8bde4
feat: add UserResource with is_admin toggle and delete
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 14:17:50 +01:00
Ovidiu U
9998a3e1c8
fix: improve errors_only filter and add view page test
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 14:14:35 +01:00
Ovidiu U
a8fb275793
feat: add ApiLogResource with filters and view page
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 14:09:32 +01:00
Ovidiu U
cde3a27cff
feat: add admin seeder and is_admin factory state
...
Runs is_admin migration, adds AdminSeeder for the admin user, registers
it in DatabaseSeeder, adds admin() factory state to UserFactory, and
adds AdminAccessTest covering both forbidden and ok cases.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-04 13:54:28 +01:00
Ovidiu U
c94c4f7beb
init
linter / quality (push) Has been cancelled
tests / ci (8.3) (push) Has been cancelled
tests / ci (8.4) (push) Has been cancelled
tests / ci (8.5) (push) Has been cancelled
2026-04-03 16:47:05 +01:00