Changelog

What changed in LOIS, version by version.

All notable changes to this project are documented here. Versions and dates correspond to the repository's v* release tags; entries are summarised from the commit history merged into develop/master between tags, not hand authored per feature.

[0.5.0] - 2026-09-14

Added

  • An implemented use-cases page at /use-cases, next to the release notes in the same information rail: the use cases LOIS actually delivers, grouped by version and, inside a version, by the SCOPE of SPECFON GN-04 §1.4.3.1, each entry naming the specification reference that defines it, and closing on the scopes not yet delivered. The document is held in French only, like the specification it reports on; only the page title and lede follow the locale.

[0.4.0] - 2026-09-08

Fixed

  • Presigned MinIO URLs are signed against the origin the browser can actually reach, so an attachment download link works from outside the container network.

[0.3.0] - 2026-08-25

Added

  • Commercial offer management and the devis (Scope 7): versionable offers, offer lines for simple articles, Flexible and welded-coupling Postes, induced consumables, discounts, margins, VAT and totals, file attachments, split/merge between won offers, and asynchronous FR/EN devis PDF generation.
  • Order management (Scope 8): transformation of a won offer into an order through the M3 interface, attachment of an existing M3 order, and the order list and record screens.
  • Ordered Flexibles (NO-11): one serialised unit per TMD/PVI quantity, each allocated a matricule, with their own list and record screens as the access point for future certificate generation.
  • Homologation management (Scope 9): homologations with their Flexible compositions, UN codes, validity tracking, revocation, and a daily status refresh driven by a configurable expiry-warning delay.
  • The UN-code referential screen (UX-13).

Changed

  • The pre-specification quote prototype is now the Offre commerciale of NO-07: entities, tables, routers, permissions, routes and translations all renamed. "Devis" now refers only to the generated PDF document.
  • The Flexible configurator restricts TMD/PVI compositions to components covered by a valid homologation, and marks components whose homologation has expired or been revoked in violet.
  • Validating a composition in either configurator now adds it to an offer as a Poste, with the KIT line inserted and locked automatically.

Fixed

  • A cloned or re-versioned TMD/PVI Flexible no longer loses the homologations it had retained.
  • The configurator no longer counts kits, services and consumables as components requiring homologation, which had made TMD/PVI coverage unsatisfiable.
  • A crimp seal supplied as a consumable can now be homologated.
  • Backend specifications now run in CI, and the MinIO service image is pinned so a registry change cannot break the pipeline.

[0.2.4] - 2026-08-18

Changed

  • Deploy pipeline prunes superseded backend/web images after a successful deploy; release asset links are now unique, and backmerge now sees hotfix branches.

Fixed

  • App icon given an alpha channel, with a new opaque apple touch icon.
  • Repo-root CHANGELOG.md kept in the pruned web Docker image.

[0.2.3] - 2026-08-17

Added

  • Dashboard placeholder (UX-18) and a chemical-compatibility screen (UX-19).
  • Delete row action on the configuration value-lists screen.

Changed

  • App shell realigned with the UX-01 Pencil mockups: full-width screens, the profile menu moved into the sidebar, a page footer, and legal pages and auth redirects wired into the shell chrome.
  • Catalog forms reworked into full-width sections with a masked-input reveal.
  • Non-spec template boilerplate purged: unused entities, schemas, i18n keys, seeds, error codes, CASL subjects, routers, Redux and the web websockets wiring all removed.

Fixed

  • A rejected session no longer redirects the user off the dashboard.
  • Configured secondary sorts stay behind the client-side sort in list views.
  • Modal close button label now translated (UX-01).
  • Docker seed and e2e jobs validate the full password policy and drop the retired SEED_ADMIN_NAME variable.

[0.2.1] - 2026-07-31

Added

  • Playwright suite extended to a re-runnable run covering every Scope 1-4 flow, with seeded per-profile e2e accounts.

Changed

  • tRPC list-query filters widened for the catalog and rules screens.
  • Oversized web components split down, fixing a nested-interactive-nav bug.

Fixed

  • Catalog family media input, field validation errors and not-found states repaired; blank optional codes now normalize to null.
  • CI and Docker hardened: runtime env now propagates through turbo to the backend, web app and e2e job, the MinIO service starts reliably, and the Playwright suite now runs on every merge request.

[0.2.0] - 2026-07-23

Added

  • User access and management (Scope 1): accounts, roles, profile-based landing.
  • Article catalogue management (Scope 2): groups, families, references.
  • Association rules engine, routers and UI (Scope 3).
  • Business account lifecycle, per-nature naming and offers summary (Scope 4).
  • DiceUI-based data table adopted across paginated list pages, with row-selection checkboxes shown only when bulk actions exist.

Fixed

  • Quote list filtering by sentAt now uses whole-day date semantics.
  • A dedicated products/new route resolves a collision with the [id] route.
  • uid and uid_sequence.prefix columns widened to fit generated values.

Testing

  • Full-stack authenticated Playwright suite covering Scopes 1-4.

[0.1.3] - 2026-05-28

Added

  • Quote builder, PDF generation and the quote-to-order lifecycle.
  • Self-service profile and settings via the user menu.
  • CASL-driven UI guards and route protection.
  • M3 customer business-account synchronisation (Interop).
  • Roles aligned with SPECDEV profiles (admin/expert/seller).
  • GitLab Release creation with image links on release tags.

Changed

  • Client reworked into BusinessAccount (compte commercial).
  • Domain naming anglicised (Devis -> Quote) across routes, entities and enums.

Fixed

  • Backend environment validated at boot via AppConfigModule.

[0.1.2] - 2026-05-25

Fixed

  • Cross-subdomain auth cookies now use SameSite=Lax instead of None/Partitioned.

[0.1.1] - 2026-05-25

Added

  • Trelleborg sales-configurator UI: quotes, catalogue, configuration and CRM screens.
  • Backend domains: devis, orders, products, categories, configuration meta-model and the read-only quote-generator catalogue.
  • Git-flow enforcement in CI, with backmerge from release branches.

Fixed

  • ESM circular entity dependencies causing a startup ReferenceError.
  • createdBy/updatedBy FK relations declared on AuditableEntity.

[0.1.0] - 2026-05-22

Added

  • Git-flow workflow enforcement in CI (verify stage, backmerge).

Fixed

  • Cross-subdomain session cookies over HTTPS.
  • Staging/production Docker configuration.