28f8373f5d
fix(stripe): cancel_url /tarifs → /plan
...
La route /tarifs n'existe pas côté frontend (route réelle: /plan).
Cancellation Stripe Checkout aboutissait sur un 404. Bug détecté lors
du Sprint 5c frontend (gestion des retours post-Checkout).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-26 05:49:50 +03:00
6671bac347
feat(billing): TD-13 webhook idempotency + Stripe Customer Portal + doc cleanup
...
- Table stripe_webhook_events + helpers isEventProcessed/markEventProcessed
- POST /stripe/customer-portal (auth + stripe_customer_id check)
- ARCHITECTURE-backend.md: suppression POST /plans/upgrade (duplication doc)
- TD-13 fermé dans TECH_DEBT-backend.md
- Tests: 261 → 278 verts (+17)
2026-04-26 04:15:46 +03:00
ec0598d122
feat(corrections/eo): évaluation phonologique Gemini — 5 critères × /4 (Sprint 4.8)
...
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-26 03:09:13 +03:00
34b4bcdd82
docs: update CHANGELOG and ROADMAP for Sprint 4
...
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-25 08:54:58 +03:00
f5954e6d72
docs(changelog): add health check keepalive entry
...
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-25 02:29:05 +03:00