New pull request
feat(api): i18n stragglers — no hardcoded body strings (FR-I18N-05)
All checks were successful
qa / qa-1 (pull_request) Successful in 29s
qa / qa-1 (push) Successful in 27s
qa / qa (pull_request) Successful in 0s
qa / qa (push) Successful in 0s
#25 by charles was merged 2026-06-17 16:00:39 +00:00
feat(api): finish i18n coverage (trip/list/login/relevance/errors)
All checks were successful
qa / qa-1 (push) Successful in 1m27s
qa / qa (push) Successful in 0s
qa / qa-1 (pull_request) Successful in 8m44s
qa / qa (pull_request) Successful in 0s
#24 by charles was merged 2026-06-17 15:52:11 +00:00
feat(api): i18n the validate (tree) screen
All checks were successful
qa / qa-1 (push) Successful in 35s
qa / qa (push) Successful in 0s
qa / qa-1 (pull_request) Successful in 5m11s
qa / qa (pull_request) Successful in 0s
#23 by charles was merged 2026-06-17 15:44:12 +00:00
feat(api): export a saved trip as JSON
All checks were successful
qa / qa-1 (push) Successful in 43s
qa / qa-1 (pull_request) Successful in 44s
qa / qa (push) Successful in 0s
qa / qa (pull_request) Successful in 0s
#22 by charles was merged 2026-06-17 15:34:40 +00:00
feat(api): MapLibre map on validate + trip screens
All checks were successful
qa / qa-1 (push) Successful in 2m34s
qa / qa-1 (pull_request) Successful in 2m35s
qa / qa (push) Successful in 0s
qa / qa (pull_request) Successful in 0s
#21 by charles was merged 2026-06-17 15:31:12 +00:00
feat(api): i18n foundation (fluent) + FR/EN key-parity CI gate
All checks were successful
qa / qa-1 (pull_request) Successful in 2m32s
qa / qa (pull_request) Successful in 0s
qa / qa-1 (push) Successful in 5m8s
qa / qa (push) Successful in 0s
#20 by charles was merged 2026-06-17 15:20:13 +00:00
feat(api): accessibility baseline — landmarks, labels, skip-link
All checks were successful
qa / qa-1 (push) Successful in 23s
qa / qa (push) Successful in 0s
qa / qa-1 (pull_request) Successful in 4m55s
qa / qa (pull_request) Successful in 0s
#19 by charles was merged 2026-06-17 15:08:32 +00:00
feat: refine chat — adjust a saved trip by message
All checks were successful
qa / qa-1 (push) Successful in 27s
qa / qa (push) Successful in 0s
qa / qa-1 (pull_request) Successful in 3m43s
qa / qa (pull_request) Successful in 0s
#18 by charles was merged 2026-06-17 15:00:15 +00:00
test(builder),docs: e2e happy-path test + status refresh
All checks were successful
qa / qa-1 (push) Successful in 1m18s
qa / qa (push) Successful in 0s
qa / qa-1 (pull_request) Successful in 3m12s
qa / qa (pull_request) Successful in 0s
#17 by charles was merged 2026-06-17 14:48:34 +00:00
feat(builder): agent story-link narration (AgentBuilder)
All checks were successful
qa / qa-1 (push) Successful in 1m33s
qa / qa (push) Successful in 0s
qa / qa-1 (pull_request) Successful in 4m2s
qa / qa (pull_request) Successful in 0s
#16 by charles was merged 2026-06-17 14:39:59 +00:00
feat: trip persistence — save / list / view saved trips
All checks were successful
qa / qa-1 (push) Successful in 18s
qa / qa (push) Successful in 0s
qa / qa-1 (pull_request) Successful in 4m27s
qa / qa (pull_request) Successful in 0s
#15 by charles was merged 2026-06-17 14:32:50 +00:00
feat(api): minimal auth + trip-build UI — full flow clickable
All checks were successful
qa / qa-1 (push) Successful in 16s
qa / qa-1 (pull_request) Successful in 17s
qa / qa (push) Successful in 0s
qa / qa (pull_request) Successful in 0s
#14 by charles was merged 2026-06-17 14:21:33 +00:00
feat(builder): M6 — deterministic trip builder (replaces StubBuilder)
All checks were successful
qa / qa-1 (pull_request) Successful in 1m55s
qa / qa-1 (push) Successful in 1m56s
qa / qa (pull_request) Successful in 0s
qa / qa (push) Successful in 0s
#13 by charles was merged 2026-06-17 14:15:12 +00:00
feat(integrations): M5 — transport/lodging/activity traits + affiliate links
All checks were successful
qa / qa-1 (push) Successful in 1m15s
qa / qa-1 (pull_request) Successful in 1m15s
qa / qa (push) Successful in 0s
qa / qa (pull_request) Successful in 0s
#12 by charles was merged 2026-06-17 14:09:37 +00:00
feat(agent): M4b — OpenAI-compatible HTTP provider (Qwen/Kimi)
All checks were successful
qa / qa-1 (pull_request) Successful in 1m4s
qa / qa (pull_request) Successful in 0s
qa / qa-1 (push) Successful in 4m21s
qa / qa (push) Successful in 0s
#11 by charles was merged 2026-06-17 14:05:19 +00:00
feat(agent): M4 — bounded tool-use loop + LlmProvider (scripted fake)
All checks were successful
qa / qa-1 (pull_request) Successful in 56s
qa / qa (pull_request) Successful in 0s
qa / qa-1 (push) Successful in 4m1s
qa / qa (push) Successful in 0s
#10 by charles was merged 2026-06-17 13:57:33 +00:00
feat(api): M3 — editable place validation (exclude/relevance/confirm)
All checks were successful
qa / qa-1 (push) Successful in 1m0s
qa / qa (push) Successful in 0s
qa / qa-1 (pull_request) Successful in 3m58s
qa / qa (pull_request) Successful in 0s
#9 by charles was merged 2026-06-17 13:48:03 +00:00
feat(integrations): M3 — geocoding (Nominatim) in the import slice
All checks were successful
qa / qa-1 (pull_request) Successful in 56s
qa / qa (pull_request) Successful in 0s
qa / qa-1 (push) Successful in 4m26s
qa / qa (push) Successful in 0s
#8 by charles was merged 2026-06-17 13:42:36 +00:00
feat(service): M2b — Postgres persistence (sqlx) behind a feature flag
All checks were successful
qa / qa-1 (pull_request) Successful in 47s
qa / qa (pull_request) Successful in 0s
qa / qa-1 (push) Successful in 6m6s
qa / qa (push) Successful in 0s
#7 by charles was merged 2026-06-17 13:18:21 +00:00
refactor(service): M2b — async ports + capabilities
All checks were successful
qa / qa-1 (push) Successful in 41s
qa / qa (push) Successful in 0s
qa / qa-1 (pull_request) Successful in 2m11s
qa / qa (pull_request) Successful in 0s
#6 by charles was merged 2026-06-17 12:50:19 +00:00