Tags give the ability to mark specific points in history as being important
-
stable-v1.0.43
Release: stable-v1.0.431c9b32fb · ·Stability checkpoint — TASKS.md cleanup (635 → 115 LOC) Single MR landed since stable-v1.0.42 (svc !178 → 1c9b32f) : 📚 Documentation - TASKS.md trim : -82% LOC after the 8-tag day. Historical DONE entries collapsed to one-line refs in a "Recently shipped" table ; pending work + concrete backlog items remain prominent. Detail lives in git tag annotations + ADRs + git log. Sections kept : Recently shipped (last 7 stable tags + theme), Phase C svc (Checkstyle flip pending), Phase B-1b (QualityReportEndpoint extraction follow-up), Phase B-7 UI (large component splits, completed/ partial/pending), User actions, Nice-to-have, Ideas pour plus tard. Sections removed : verbose DONE blocks for stable-v1.0.10 → 1.0.18 + verbose Phase OVH/Sonar/Q descriptions (rolled into git tag history). Post-merge main pipeline #774 green on SHA 1c9b32f.
-
stable-v1.0.42
Release: stable-v1.0.4228711409 · ·Stability checkpoint — ADR index refresh + audit artefact Single MR landed since stable-v1.0.41 (svc !177 → 2871140) : 📚 Documentation - ADR-0054 status flipped Scaffolded → Active in the README flat index. regen-adr-index.sh picks up the new status from the ADR file's frontmatter (was activated 2026-04-23 when GitLab Observability went live on the mirador1 group). - Stability check audit committed (docs/audit/stability-2026-04-23- 2310.md) : 🔴 1→0 (file length blocking cleared), 🟡 12→10 (improving trend). Post-merge main pipeline #772 green on SHA 2871140 (MR !177 merge).
-
stable-v1.0.41
Release: stable-v1.0.411b304f6f · ·Stability checkpoint — coverage bump (ApiError + Ollama DOWN branch) Single MR landed since stable-v1.0.40 (svc !176) : 🧪 Tests - ApiErrorTest (4 tests) — locks the Java record contract for the com.mirador.api.ApiError DTO. Was 0% covered ; brings com.mirador.api.* package coverage to 100%. - OllamaHealthIndicatorTest.unexpectedException_returnsDown — tests the Health.down() fallback for non-ResourceAccessException errors. Bumps OllamaHealthIndicator from 68% → ~75% by exercising the else branch of the "is-Ollama-just-not-running" check. Post-merge main pipeline #770 green on SHA 1b304f6 (MR !176 merge).
-
stable-v1.0.40
Release: stable-v1.0.408017022f · ·Stability checkpoint — OVH timing docs Single doc commit since stable-v1.0.39 (b450bac) : 📚 Documentation - docs(ovh): document real per-resource apply/destroy timings — measured 2026-04-23 on first real apply (Q2 activation). Per- resource breakdown : network 48s + subnet 4s + kube 4m55s + nodepool 6m45s = ~12 min total. Destroy ~2m08s. ~40% faster than GKE Autopilot equivalent. - README documents the 2 first-apply gotchas already fixed in ada4896 (private_network_id UUID + b2-7 lowercase flavor). Post-merge main pipeline #767 green on SHA 8017022.
-
stable-v1.0.39
Release: stable-v1.0.396a508171 · ·Stability checkpoint — Q2 OVH activated + observability shipped + 4 CI fixes Waves landed since stable-v1.0.38 (2026-04-23) : ✨ Features - ADR-0054 + activation : GitLab Observability dual-sink (free beta). Endpoint hardcoded for mirador1 group ; reviewers see traces/metrics/ logs in https://gitlab.com/groups/mirador1/-/observability without cloning the repo. ♻️ Refactoring - release-please removed entirely (GitHub-API-only, 401 on GitLab PAT). Replaced by bin/ship/ shell scripts (changelog.sh + gitlab-release.sh). ADR-0055 documents the trade-offs vs semantic-release / git-cliff. 🐛 Bug fixes - openapi-lint : hardcoded -Dspring.datasource.{username,password,url} on the java -jar command line. DB_PASSWORD env var wasn't being inherited by the JVM somehow → 5 main pipelines failed identically with "FATAL: password authentication failed for user demo" despite psql probe succeeding seconds before. -D bypass works. - ci/lint.yml : added postgresql-client + psql auth probe right before java -jar to verify demo user is provisioned (was the first hypothesis, necessary but not sufficient). - ci/deploy.yml terraform-plan : dropped -var=db_password (GCP module no longer declares it ; Cloud SQL was removed in favour of in-cluster postgres). Surface'd after TF_STATE_BUCKET was wired. - bin/ship/changelog.sh : fixed silent exit on chore/ci/build/style commits (set -e + [ 0 -eq 1 ] killed $(classify) callers without --include-chore). Plus regex grep that was always falling through. - bin/ship/gitlab-release.sh : wrap $TAG in braces — bash was reading $TAG followed by … (horizontal ellipsis) as a single variable name. 🌍 OVH (Q2 activation) - terraform-plan UUID fix : `regions_attributes[*].openstackid` instead of the vRack-style .id (which OVH API rejects as "not a correct uuid"). - node_flavor lowercase : `b2-7` not `B2-7` (OVH API case-sensitive). - README documents real per-resource timings : apply ~12 min total (network 48s + subnet 4s + kube 4m55s + nodepool 6m45s) ; destroy ~2m08s. ~40% faster than GKE Autopilot. 📚 Documentation - ADR-0054 (GitLab Observability dual-export) : decision + 4 alternatives - ADR-0055 (shell-based release automation) : revisit triggers explicit - ADR-0050 status refresh (UI Phase B-4 done + release-please pruned) - docs/how-to/changelog-workflow.md : 5-step release workflow - ADR-README documents the 0045/0046 reserved-never-drafted gap 🚦 CI hygiene - workflow:rules allowlists : .gitlab-ci/**/* on UI (was missing → MRs changing test.yml/security.yml merged silently with stale validation). - Stability-check section_file_length : added .owasp-data/ + .terraform/ to allowlist (auto-generated NVD cache + terraform provider artefacts). Post-merge main pipeline #765 green on SHA 6a50817 (MR !174 merge with all the openapi-lint + terraform-plan fixes). -
stable-v1.0.38
1e8db057 · ·Stability checkpoint — post-!167 (Alertmanager ON with null-receiver, ADR-0048 amended for demo-tier proof of the alert routing pipeline)
-
stable-v1.0.37
f468040f · ·Stability checkpoint — post-!166 (Sonar JaCoCo exclusions cleanup → 89.7% coverage, +32.6pp vs 57.1%; target 80% exceeded)
-
stable-v1.0.36
c28153f8 · ·Stability checkpoint — post-!165 (Phase OVH stage-2: Object Storage backend wired + LB doc pivot via K8s overlay)
-
stable-v1.0.35
0b100b5b · ·Stability checkpoint — post-!164 (QualityReportGenerator CLI tests +3 — ADR-0052 Phase Q-2 contract pinned)
-
stable-v1.0.34
6bd7298c · ·Stability checkpoint — post-!163 (Phase 4.2 cont: 52 svc tests / 9 files including CustomerController 21 + QualityReportEndpoint 11 — 47→80% Sonar push)
-
stable-v1.0.33
a482f6b3 · ·Stability checkpoint — post-!162 (Phase OVH: 2nd canonical K8s target, Terraform + OpenTofu dual-compat, K8s overlay, CI, cost audit)
-
stable-v1.0.32
28bf2061 · ·Stability checkpoint — post-!161 (test wave: KafkaConfig + WebSocketConfig + OpenApiConfig + SecurityConfig — 30 svc tests cumul)
-
-
stable-v1.0.30
3dde9729 · ·Stability checkpoint stable-v1.0.30 (svc) — Phase 4.2 wave continued: 7 MetricsSectionProvider tests pinning per-package complexity aggregation, top-10 sorted DESC, untested-classes alphabetic + non-zero-method filter. Cumulative svc Phase 4.2 across v1.0.21-30: 246 new svc tests across 26 test files. Post-merge main pipeline #718 SUCCESS.
-
stable-v1.0.29
af9d4554 · ·Stability checkpoint stable-v1.0.29 (svc) — Phase 4.2 wave continued: 5 JwtAuthenticationFilter tests for the 3-strategy external JWT decoder (Keycloak realm_access roles, Auth0 namespace claim, Auth0-no-RBAC fallback), invalid signature path, and strategy-precedence (realm_access > Auth0 namespace). Filter is now 12/12 covered across both built-in + external auth paths. Cumulative svc Phase 4.2: 242 tests across 27 test files. Post-merge main pipeline #716 SUCCESS.
-
stable-v1.0.28
ee86152e · ·Stability checkpoint stable-v1.0.28 (svc) — Phase 4.2 wave continued: 17 CustomerService unit tests covering ALL public methods (CRUD + cursor pagination + batch import + search) with 6 mocked collaborators. Pin the create() side-effect contract end-to-end (repository + Kafka event port + WebSocket + SSE + recent buffer + audit). Cumulative svc Phase 4.2: 237 tests across 26 test files. Post-merge main pipeline #714 SUCCESS.
-
stable-v1.0.27
a19b9b5f · ·Stability checkpoint stable-v1.0.27 (svc) — Phase 4.2 wave continued: 6 DependenciesSectionProvider tests against the real classpath pom.xml + GIF regen backlog item added to TASKS.md. Closes the parser/provider Phase 4.2 sub-wave: ALL 6 quality report parsers + ALL 5 quality section providers now have rich tests beyond the smoke layer. Cumulative svc Phase 4.2 across v1.0.21-27: 220 new tests across 25 test files. Post-merge main pipeline #712 SUCCESS.
-
stable-v1.0.26
c290a5f5 · ·Stability checkpoint stable-v1.0.26 (svc) — Phase 4.2 wave continued: 8 SurefireReportParser tests using multi-file classpath fixtures (TEST-com.example.AliceTest.xml + BobTest.xml). Now ALL 6 quality report parsers have rich tests beyond the existing smoke layer (Surefire/JaCoCo/SpotBugs/Pmd/Checkstyle/Owasp helpers/Pitest), plus 4 of 5 quality providers (BuildInfo/Licenses/Api smoke/Metrics smoke). Cumulative svc Phase 4.2 across v1.0.21-26: 214 new tests across 24 test files. Post-merge main pipeline #709 SUCCESS.
-
stable-v1.0.25
fb0b5bd9 · ·Stability checkpoint stable-v1.0.25 (svc) — Phase 4.2 wave continued: 19 more tests across 3 quality providers/parsers (PitestReportParser +7, LicensesSectionProvider +7, BuildInfoSectionProvider +5). Pitest mutation-score formula pinned. Licenses incompatible-flag (GPL/AGPL/LGPL/CDDL/EPL) pinned. BuildInfo doubles as a 'build-info Maven goal alive' canary. Cumulative svc Phase 4.2 across v1.0.21-25: 206 new tests across 23 test files. Post-merge main pipeline #707 SUCCESS.
-
stable-v1.0.24
91a1cc6a · ·Stability checkpoint stable-v1.0.24 (svc) — Phase 4.2 wave continued: 26 unit tests for 4 quality report parsers (SpotBugs, PMD, Checkstyle, JaCoCo) using classpath fixture XML/CSV files at src/test/resources/META-INF/build-reports/. Pattern unblocks all parsers that were previously only smoke-tested. Coverage: each parser's totals + per-category aggregation + label mapping + edge cases (no-slash file path, malformed lines, default package). Cumulative svc Phase 4.2 across v1.0.21-24: 187 new tests across 20 test files. Post-merge main pipeline #703 SUCCESS.