🥳 Welcome to v0.9.9.98-1
This release covers 39 day(s) of work, from 2025-12-24T13:24:15.000Z to 2026-02-02T07:40:06.000Z.
📦 Stats
- Diff: compare
- Changed files: 1500
- Commits: 1130
- Additions: 67737 / Deletions: 32696
🙈 Other changes (216)
| PR | Title | Author |
| -----------------------------------------------------------: | --------------------------------------------------------------------------------------------------------------------- | --------------- | ------------------------------------------------ | --------- |
| PR 2461 | Update FAQ content and impact CTA | @GoulvenF |
| PR 2469 | Refine product tile card layout | @GoulvenF |
| PR 2471 | Add device-specific scan and voice controls to search | @GoulvenF |
| PR 2472 | Add divers aggregate handling for impact details | @GoulvenF |
| PR 2465 | Support multi-category EPREL configuration | @GoulvenF |
| PR 2477 | Add tile pricing thumbnail and category results link in nudge recommendations | @GoulvenF |
| PR 2475 | feat(frontend): redesign product hero hero layout | @GoulvenF |
| PR 2481 | feat(frontend): support pack-aware home hero background and switch default asset to WebP | @GoulvenF |
| PR 2484 | Normalize parallax asset references and simplify i18n entries | @GoulvenF |
| PR 2483 | Add attribute sourcing audit table to product attributes | @GoulvenF |
| PR 2488 | Add open-data millions interpolation to home hero helpers | @GoulvenF |
| PR 2496 | Consolidate DJL embedding: centralize image embeddings and use concrete Djl* services | @GoulvenF |
| PR 2498 | feat(frontend): add homepage photo invitation CTA | @GoulvenF |
| PR 2500 | Respect reduced motion when zoomed | @GoulvenF |
| PR 2502 | Redesign ImpactScore badge, surface attribute sourcing in details, and add aggregate i18n labels | @GoulvenF |
| PR 2524 | Add global search/suggest APIs with searchMode/searchType and frontend integration | @GoulvenF |
| PR 2528 | test(frontend): add Playwright sitemap SSR checks and run Nuxt dev during tests | @GoulvenF |
| PR 2555 | Reorder nudge wizard steps and guard zero-results selections | @GoulvenF |
| PR 2560 | Home hero: remove icon, full-width helper copy; restore split visuals with rotated gain image; add i18n keys | @GoulvenF |
| PR 2562 | Improve suggestion routing and use flat ImpactScore in listings | @GoulvenF |
| PR 2564 | Add dynamic product navigation submenus, impact grouping and history anchors | @GoulvenF |
| PR 2565 | Improve product title resolution and attribute mapping | @GoulvenF |
| PR 2561 | Simplify home hero, add ecoscore CTA to category filters (drawer + sidebar), update i18n and tests | @GoulvenF |
| PR 2566 | Add oven-specific attributes and update oven vertical configuration | @GoulvenF |
| PR 2568 | Refine dishwasher vertical: add attributes, filters and i18n copy fixes | @GoulvenF |
| PR 2567 | Update home hero helpers and restore split visuals | @GoulvenF |
| PR 2569 | Add refrigerator-specific attributes and update refrigerator vertical copy/config | @GoulvenF |
| PR 2570 | Add English i18n and new washing-machine attributes (capacity, spin) | @GoulvenF |
| PR 2571 | Fix TV vertical copy and add HDMI_PORTS_QUANTITY attribute | @GoulvenF |
| PR 2572 | Expose per-category product counts in stats DTO, wire to frontend and adjust pnpm check | @GoulvenF |
| PR 2573 | Fix homepage asset rendering (use local WebP and avoid IPX 404s) | @GoulvenF |
| PR 2574 | Revert "Expose per-category product counts in stats DTO, wire to fron… | @GoulvenF |
| PR 2575 | Expose category product counts for homepage hero stats | @GoulvenF |
| PR 2577 | Enable semantic fallback for suggest search | @GoulvenF |
| PR 2576 | Add generic IP quota tracking | @GoulvenF |
| PR 2578 | Enable semantic vertical search for category queries | @GoulvenF |
| PR 2579 | Add accessibility dropdown with theme & zoom controls to hero and mobile menus | @GoulvenF |
| PR 2581 | Limit search results and auto-redirect semantic searches | @GoulvenF |
| PR 2580 | chore(deps): update dependency @typescript-eslint/parser to v8.53.0 | @renovate[bot] |
| PR 2585 | Fix home solution image asset and rotation | @GoulvenF |
| PR 2584 | Group product timeline events by month and add tooltip surface styling | @GoulvenF |
| PR 2583 | Add table view toggle for product attributes | @GoulvenF |
| PR 2582 | Add opt-in Hotjar recording gate (/?record) with middleware, client plugin, docs and tests | @GoulvenF |
| PR 2586 | Defer nudge icon random timing until hydration to fix SSR style mismatch | @GoulvenF |
| PR 2588 | Update product impact score presentation | @GoulvenF |
| PR 2587 | Add guest privacy panel to account menus | @GoulvenF |
| PR 2591 | Add localized impact score utility explanations and surface them on product page | @GoulvenF |
| PR 2590 | Add translucent average/product marker columns to subscore distribution chart | @GoulvenF |
| PR 2592 | Add energy class display (label & image) for CLASSE_ENERGY/SDR/HDR subscores | @GoulvenF |
| PR 2593 | Add percentile fallback for low-entropy impact scores | @GoulvenF |
| PR 2594 | Add dyslexia-friendly reading mode toggle | @GoulvenF |
| PR 2595 | chore(deps): update capacitor monorepo to v8.0.1 | @renovate[bot] |
| PR 2596 | chore(deps): update docker.elastic.co/elasticsearch/elasticsearch docker tag to v9.2.4 | @renovate[bot] |
| PR 2597 | chore(deps): update docker.elastic.co/kibana/kibana docker tag to v9.2.4 | @renovate[bot] |
| PR 2598 | chore(deps): update dependency happy-dom to v20.3.0 | @renovate[bot] |
| PR 2599 | chore(deps): update dependency prettier to v3.8.0 | @renovate[bot] |
| PR 2600 | Refactor privacy menu: account privacy card UI, user-agent tooltip, and guest icon spacing | @GoulvenF |
| PR 2601 | Add provider-agnostic prompt providers (OpenAI/Perplexity/Gemini), grounded review flow and JSON repair | @GoulvenF |
| PR 2602 | retour à la HP plus propre | @tavax |
| PR 2604 | chore(deps): update dependency h3 to v1.15.5 | @renovate[bot] |
| PR 2603 | Propagate category resolution errors to SSR and return proper 404 | @GoulvenF |
| PR 2605 | fix(deps): update dependency com.android.tools.build:gradle to v9 | @renovate[bot] |
| PR 2607 | chore(deps): update dependency happy-dom to v20.3.1 | @renovate[bot] |
| PR 2606 | Add streaming events, Vertex Gemini grounding and OpenAI search-preview citation handling for review generation | @GoulvenF |
| PR 2608 | Add built-in documentation site (Nuxt Content) with docs browser, search and Impact Score docs | @GoulvenF |
| PR 2610 | chore(deps): update dependency eslint-plugin-vue to v10.7.0 | @renovate[bot] |
| PR 2609 | chore(deps): update dependency @nuxt/content to v3.11.0 | @renovate[bot] |
| PR 2611 | Refactor prompt providers: switch to Spring AI OpenAI/Gemini and add batch handling (OpenAI + Vertex Gemini) | @GoulvenF |
| PR 2613 | feat(frontend): add reusable NudgerCard and docs | @GoulvenF |
| PR 2614 | Refine footer navigation hierarchy | @GoulvenF |
| PR 2616 | Adjust nudge tool wizard height transitions | @GoulvenF |
| PR 2617 | Refactor hero highlights into three-card component and add localized highlights | @GoulvenF |
| PR 2618 | Streamline Maven site reporting and scope specialized dependencies | @GoulvenF |
| PR 2620 | feat(frontend): staggered home reveal animations & hover micro-interactions | @GoulvenF |
| PR 2619 | Add missing-vertical semantic results and refactor search UI to two-column semantic layout | @GoulvenF |
| PR 2623 | Restore card styles from previous PR | @GoulvenF |
| PR 2621 | chore(deps): update dependency better-sqlite3 to v12.6.2 - autoclosed | @renovate[bot] |
| PR 2622 | chore(deps): update gradle to v9.3.0 | @renovate[bot] |
| PR 2624 | fix(deps): update dependency com.google.cloud:google-cloud-storage to v2.62.0 | @renovate[bot] |
| PR 2625 | chore(deps): update dependency happy-dom to v20.3.3 | @renovate[bot] |
| PR 2626 | chore(deps): update dependency org.codehaus.mojo:versions-maven-plugin to v2.21.0 | @renovate[bot] |
| PR 2627 | Remove legacy AI text artifacts and aiTexts API exposure | @GoulvenF |
| PR 2628 | Centralize home scroll reveals and add blur variant | @GoulvenF |
| PR 2629 | Align accessibility menu layout in hero menu | @GoulvenF |
| PR 2630 | Add price display to search suggestions | @GoulvenF |
| PR 2632 | Add analytics instrumentation and tracking helpers for frontend interactions | @GoulvenF |
| PR 2631 | Add localized preferred product names and ProductDesignation component; use localized titles across front-end and API | @GoulvenF |
| PR 2633 | Search: hero filters, date-range filters, i18n keys and semantic ranking boost | @GoulvenF |
| PR 2635 | chore(deps): update dependency @typescript-eslint/parser to v8.53.1 | @renovate[bot] |
| PR 2636 | chore(deps): update dependency happy-dom to v20.3.4 | @renovate[bot] |
| PR 2637 | Add datasources admin tab and enable authenticated AI review generation (captcha bypass & force) | @GoulvenF |
| PR 2639 | Add batch review generation scheduling and API endpoints | @GoulvenF |
| PR 2638 | Adjust category product card title placement | @GoulvenF |
| PR 2640 | feat(frontend): add AI review request dialog and banner | @GoulvenF |
| PR 2641 | Refactor product hero pricing panels | @GoulvenF |
| PR 2643 | chore(deps): update dependency nuxt-site-config to v3.2.18 | @renovate[bot] |
| PR 2645 | Schedule and trigger impact-score-based review generation batches | @GoulvenF |
| PR 2644 | Add per-category score cardinality stats endpoints | @GoulvenF |
| PR 2646 | Improve search fallback and embeddings; centralize time-ago & product utilities | @GoulvenF |
| PR 2647 | Redesign Curieux menu layout and soften product menu borders | @GoulvenF |
| PR 2649 | Capture raw GTIN strings during aggregation | @GoulvenF |
| PR 2652 | Revamp product attributes layout, split detail tables, and normalize color tokens | @GoulvenF |
| PR 2650 | chore(deps): update dependency prettier to v3.8.1 | @renovate[bot] |
| PR 2656 | chore(deps): update pnpm to v10.28.1 | @renovate[bot] |
| PR 2655 | chore(deps): update dependency vuetify-nuxt-module to v0.19.3 | @renovate[bot] |
| PR 2651 | chore(deps): update dependency vite-plugin-vuetify to v2.1.3 | @renovate[bot] |
| PR 2658 | Refine semantic search relevance and diagnostics | @GoulvenF |
| PR 2653 | chore(deps): update dependency sass to v1.97.3 | @renovate[bot] |
| PR 2663 | feat(frontend): add commercial event band for new price chart | @GoulvenF |
| PR 2662 | chore(deps): update dependency vite-plugin-vuetify to v2.1.3 | @renovate[bot] |
| PR 2661 | chore(deps): update dependency prettier to v3.8.1 | @renovate[bot] |
| PR 2659 | chore(deps): update dependency @typescript-eslint/parser to v8.53.1 | @renovate[bot] |
| PR 2660 | chore(deps): update dependency happy-dom to v20.3.4 | @renovate[bot] |
| PR 2664 | Add technicalShortReview to AI review pipeline and surface AI summaries in UI | @GoulvenF |
| PR 2665 | feat(frontend): refresh product hero with themed SVG background and simpler styling | @GoulvenF |
| PR 2666 | Product page: move impact score corner, pricing UX improvements, AI sources collapse & i18n updates | @GoulvenF |
| PR 2654 | chore(deps): update dependency vuetify to v3.11.7 | @renovate[bot] |
| PR 2668 | chore(deps): update dependency vuetify-nuxt-module to v0.19.3 | @renovate[bot] |
| PR 2667 | chore(deps): update dependency happy-dom to v20.3.7 | @renovate[bot] |
| PR 2669 | Add reusable Category CTA card, assistant CTA, and sorting fallback | @GoulvenF |
| PR 2670 | Switch global search to semantic-only; remove search mode/type from API and update frontend clients and UI | @GoulvenF |
| PR 2671 | Add per-attribute scoring config and normalization strategies; wire through aggregation, API and frontend | @GoulvenF |
| PR 2672 | Align impact scoring: remove statsScope/EXCLUDE, add compositeScores, prefer WORST policy | @GoulvenF |
| PR 2673 | Link AI review citations to sources | @GoulvenF |
| PR 2674 | Add Impact Score Available Criteria panel and composable | @GoulvenF |
| PR 2675 | Add reading-level toggles to AI review synthese (technical / ecological / community) | @GoulvenF |
| PR 2676 | Improve product AI review UI, empty states and error handling | @GoulvenF |
| PR 2677 | Update product page AI review layout and baseline | @GoulvenF |
| PR 2681 | Adjust pricing alternatives and highlight AI review reference links | @GoulvenF |
| PR 2680 | Move AI review data-quality panel next to sources and remove page-side card | @GoulvenF |
| PR 2678 | chore(deps): update dependency vue-tsc to v3.2.3 | @renovate[bot] |
| PR 2679 | fix(deps): update dependency @nuxt/icon to v2.2.1 | @renovate[bot] |
| PR 2684 | Refine impact subscore components: explanation layout, chart normalization, i18n & tests | @GoulvenF |
| PR 2688 | Improve impact subscore UI: center values, add method info & ranking badge, update i18n | @GoulvenF |
| PR 2693 | docs: add impact score scoring methods guide | @GoulvenF |
| PR 2695 | Add MINMAX_OBSERVED normalization method and strategy | @GoulvenF |
| PR 2694 | Disable ESG nudge tool score via config flag | @GoulvenF |
| PR 2691 | fix(deps): update vue monorepo to v3.5.27 | @renovate[bot] |
| PR 2690 | fix(deps): update swagger.core.v3.version to v2.2.42 | @renovate[bot] |
| PR 2689 | fix(deps): update spring boot to v3.5.10 | @renovate[bot] |
| PR 2683 | fix(deps): update dependency de.codecentric:spring-boot-admin-starter-client to v3.5.7 | @renovate[bot] |
| PR 2685 | fix(deps): update dependency de.codecentric:spring-boot-admin-starter-server to v3.5.7 | @renovate[bot] |
| PR 2686 | fix(deps): update dependency io.swagger.core.v3:swagger-annotations to v2.2.42 | @renovate[bot] |
| PR 2682 | fix(deps): update dependency de.codecentric:spring-boot-admin-server-ui to v3.5.7 | @renovate[bot] |
| PR 2698 | Align impact score normalization with market-relative scoring | @GoulvenF |
| PR 2697 | chore(deps): update dependency @openapitools/openapi-generator-cli to v2.28.0 | @renovate[bot] |
| PR 2701 | Expose ImpactScore & uncategorised counts and add AI summary to home hero | @GoulvenF |
| PR 2700 | chore(deps): update dependency nuxt to v4.3.0 | @renovate[bot] |
| PR 2699 | chore(deps): update dependency @playwright/test to v1.58.0 | @renovate[bot] |
| PR 2696 | chore(deps): update dependency @nuxt/eslint-config to v1.13.0 | @renovate[bot] |
| PR 2703 | Align global search with semantic filters and sorting payloads | @GoulvenF |
| PR 2704 | Make search filters always visible and add lexical fallback for missing-vertical results | @GoulvenF |
| PR 2702 | chore(deps): update mysql docker tag | @renovate[bot] |
| PR 2692 | chore(deps): update dependency @nuxt/eslint to v1.13.0 | @renovate[bot] |
| PR 2705 | Fix stats: expose ECOSCORE-rated totals and align reviewed counts | @GoulvenF |
| PR 2706 | Home hero: add reviewed products count, compact counts and AI summary layout | @GoulvenF |
| PR 2707 | Add SVG variant to ImpactScore and render it on Product Hero | @GoulvenF |
| PR 2708 | Search: segmented search-mode toggle and baseline aggregations for empty-query filters | @GoulvenF |
| PR 2709 | Center home hero highlights and make reviewed-products counts locale-aware | @GoulvenF |
| PR 2710 | Codex/make impact methodology text clickable 4ts9cw | @usernamedddlsi |
| PR 2711 | chore(deps): update dependency happy-dom to v20.3.9 | @renovate[bot] |
| PR 2712 | chore(deps): update dependency undici to v7 | @renovate[bot] |
| PR 2713 | chore(deps): update dependency vue-tsc to v3.2.4 - autoclosed | @renovate[bot] |
| PR 2717 | chore(deps): update dependency @typescript-eslint/parser to v8.54.0 | @renovate[bot] |
| PR 2716 | chore(deps): update pnpm to v10.28.2 | @renovate[bot] |
| PR 2715 | improving [category]/ecoscore page | @usernamedddlsi |
| PR 2714 | adjustments on impact-score page | @usernamedddlsi |
| PR 2718 | feat(frontend): replace end-of-life alert with support card | @GoulvenF |
| PR 2719 | Add per-datasource product descriptions and aggregation | @GoulvenF |
| PR 2720 | Redesign product competition card with tiered visuals and i18n updates | @GoulvenF |
| PR 2721 | Add compact corner variant to ImpactScore and normalize small size | @GoulvenF |
| PR 2722 | Improve commercial event overlays in price chart | @GoulvenF |
| PR 2723 | chore(deps): update capacitor monorepo to v8.0.2 | @renovate[bot] |
| PR 2724 | chore(deps): update dependency vuetify to v3.11.8 | @renovate[bot] |
| PR 2725 | Add EPREL support timeline events and latest-version handling | @GoulvenF |
| PR 2726 | Refactor home hero highlights and add promises section | @GoulvenF |
| PR 2727 | Impact subscore: rich read‑indicator, unit pluralisation and i18n updates | @GoulvenF |
| PR 2728 | chore(deps): update appleboy/ssh-action action to v1.2.5 | @renovate[bot] |
| PR 2731 | Add nudge-tool threshold computation and ECOSCORE-based impact subsets | @GoulvenF |
| PR 2730 | chore(deps): update dependency vuetify-nuxt-module to v0.19.5 | @renovate[bot] |
| PR 2729 | chore(deps): update dependency nuxt-site-config to v3.2.19 | @renovate[bot] |
| PR 2732 | Add reusable AI review action button and integrate into product cards/hero | @GoulvenF |
| PR 2734 | Fix AI review reference anchoring | @GoulvenF |
| PR 2736 | fix(deps): update dependency com.google.cloud:google-cloud-storage to v2.62.1 | @renovate[bot] |
| PR 2733 | Add EPREL support-end timeline labels, icons and i18n | @GoulvenF |
| PR 2735 | chore(deps): update gradle to v9.3.1 | @renovate[bot] |
| PR 2737 | Fix Hotjar record badge activation | @GoulvenF |
| PR 2740 | Map description attributes into datasource descriptions | @GoulvenF |
| PR 2739 | chore(deps): update dependency @nuxtjs/seo to v3.4.0 | @renovate[bot] |
| PR 2738 | chore(deps): update dependency @nuxtjs/robots to v5.7.0 | @renovate[bot] |
| PR 2742 | chore(deps): update dependency happy-dom to v20.4.0 | @renovate[bot] |
| PR 2741 | chore(deps): update dependency @nuxtjs/sitemap to v7.6.0 | @renovate[bot] |
| PR 2750 | chore(deps): update semantic-release monorepo | @renovate[bot] |
| PR 2749 | chore(deps): update dependency @playwright/test to v1.58.1 | @renovate[bot] |
| PR 2751 | Add tilt unlock effect for home visuals | @GoulvenF |
| PR 2748 | Expose designation variants and deterministic GTIN-shuffled ordering for product names | @GoulvenF |
| PR 2747 | Add CategoryResultsToolbar and integrate into category & global search views | @GoulvenF |
| PR 2752 | Expand designation variants, expose them in DTOs, add deterministic ordering and impact i18n | @GoulvenF |
| PR 2753 | Add feed indexation by datasource/provider name | @GoulvenF |
| PR 2754 | chore(deps): update dependency @vuetify/mcp to ^0.5.0 | @renovate[bot] |
| PR 2755 | Add Google Indexation service and front‑API dispatch | @GoulvenF |
| PR 2756 | fix(deps): update dependency com.google.auth:google-auth-library-oauth2-http to v1.42.1 | @renovate[bot] |
| PR 2759 | Update homepage headings and redirect /search to /rechercher | @GoulvenF |
| PR 2758 | chore(deps): update vueuse monorepo to v14.2.0 | @renovate[bot] |
| PR 2757 | chore(deps): update mikepenz/release-changelog-builder-action action to v6.1.0 | @renovate[bot] |
| PR 2760 | Add HOTJAR_MODE (always | query | never) and remove enabled-only gating for Hotjar | @GoulvenF |
| PR 2761 | fix(frontend): align hero heading and category links | @GoulvenF |
| PR 2763 | Add product index copy support | @GoulvenF |
| PR 2762 | Replace event-pack seasonal i18n with theme-based asset overrides and simplify parallax resolution | @GoulvenF |
| PR 2764 | chore(deps): update dependency org.apache.maven.plugins:maven-compiler-plugin to v3.15.0 | @renovate[bot] |
| PR 2765 | Add geocode microservice with GeoNames lookup | @GoulvenF |
| PR 2766 | Add yearly usage cost calculation (usageCostYear) and vertical defaults | @GoulvenF |
| PR 2767 | Add MaxMind GeoIP integration and front-api user geolocation endpoint (remove local MMDB fixture) | @GoulvenF |
| PR 2769 | fix(deps): update dependency org.apache.commons:commons-compress to v1.28.0 | @renovate[bot] |
| PR 2768 | fix(deps): update dependency com.maxmind.geoip2:geoip2 to v4.4.0 | @renovate[bot] |
| PR 2770 | fix(deps): update dependency com.maxmind.geoip2:geoip2 to v5 | @renovate[bot] |