Files
bchanot-cv/CHANGELOG.md
T

2.9 KiB
Raw Blame History

Changelog

All notable changes to this project are documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

[1.1.0] — 2026-07-23

Profile geography moved to the Loire-Atlantique · Vendée · Morbihan zone, and the CV restructured.

Changed

  • Landing profile block: Zone (Loire-Atlantique · Vendée · Morbihan) replaces the former Localisation actuelle; every mention of Yerres and of the planned Nantes relocation removed, including the ZenQuality timeline entry.
  • Presence stated as an explicit order of preference on both surfaces — full remote, then hybrid or on-site inside the zone, Paris only as a fallback and capped at 1–2 days per month.
  • CV restructured: technical skills promoted above professional experience, "Centres d'intérêt" dropped, markup trimmed 656 → 424 lines.
  • CLAUDE.md content rules: geography note rewritten to the zone model, with an explicit guard against reintroducing Yerres.

Added

  • CV_Bastien_CHANOT_General.{html,pdf} — general CV variant kept beside the served one. Repo-only: not linked from the landing, not in the Dockerfile COPY whitelist.

[1.0.0] — 2026-07-06

First tagged release. Landing page + CV live at https://bchanot.fr, served by a hardened nginx container behind the host reverse proxy.

Security

  • Container runs unprivileged: nginxinc/nginx-unprivileged digest-pinned, uid 101, internal port 8080; base at 1.30-alpine (nginx/1.30.3) covering CVE-2026-42945. Compose hardening: read_only, cap_drop: ALL, no-new-privileges, loopback-bound port.
  • Security headers (CSP, X-Content-Type-Options, X-Frame-Options, Referrer-Policy, Permissions-Policy) re-included in every nginx location (add_header inheritance trap closed); server_tokens off; CSP script-src pinned to the inline script's sha256 hash; dotfile requests 404 ahead of the caching locations.

Changed

  • Palette strictly tokenized: 6 brand hexes + documented functional neutrals
    • white-on-dark family; off-palette colors mapped to tokens.
  • CSS deduplicated via grouped selectors (landing cards, CV headers / date chips / roles / tags); dead rules and no-op declarations removed.
  • Unused Google Fonts faces trimmed from both pages (CV proven render-identical; landing verified at 375 px and 1440 px).
  • CV date chips in French with en-dashes; language/interest tags as true pills; profile geography aligned landing ↔ CV (Nantes relocation).
  • prefers-reduced-motion disables transitions as well as animations; decorative CTA arrows removed from the accessibility tree.
  • PDF served uncompressed (already flate-compressed); single container healthcheck (image HEALTHCHECK, inherited by compose).

Added

  • version.txt and this CHANGELOG — the release lineage starts here.