|
2 | 2 |
|
3 | 3 | ## [2.0.0b5] |
4 | 4 |
|
| 5 | +Expands the canonical contract with adoption, API-surface, and coverage-join layers; clarifies run interpretation |
| 6 | +across MCP/HTML/clients; tightens MCP launcher/runtime behavior. |
| 7 | + |
5 | 8 | ### Contracts, metrics, and review surfaces |
6 | 9 |
|
7 | | -- Bump canonical report schema to `2.5` for `metrics.families.coverage_adoption` |
8 | | - and `metrics.families.api_surface`. |
9 | | -- Bump clone baseline schema to `2.1` and standalone metrics-baseline schema to |
10 | | - `1.2` for compact `api_surface` wire payloads (`local_name` on disk, |
11 | | - reconstructed full qualnames in runtime) while keeping read-compatibility for |
12 | | - earlier `2.0` / `1.1` baseline files in the current b5 line. |
13 | | -- Add shared public/private visibility classification for public-symbol-aware |
14 | | - metrics, without changing clone/fingerprint semantics. |
15 | | -- Add canonical type/docstring adoption coverage: |
16 | | - parameter coverage, return coverage, public docstring coverage, and explicit |
17 | | - `Any` counts. |
18 | | -- Add opt-in public API surface inventory and baseline diff: |
19 | | - public symbol snapshots, added symbols, and breaking changes against a |
20 | | - trusted metrics baseline. |
21 | | -- Add new gates: |
22 | | - `--min-typing-coverage`, `--min-docstring-coverage`, |
23 | | - `--fail-on-typing-regression`, `--fail-on-docstring-regression`, |
24 | | - `--fail-on-api-break`. |
25 | | -- Surface adoption and API metrics compactly in MCP summaries/detail, the HTML |
26 | | - Overview tab, and canonical report payloads without adding a new HTML tab. |
27 | | -- Extend the normal CLI `Metrics` block with adoption coverage and public API |
28 | | - facts, while keeping the quiet compact metrics line unchanged. |
29 | | -- Make unified clone baselines preserve embedded metrics and optional |
30 | | - `api_surface` payloads safely across saves. |
31 | | - |
32 | | -### MCP, HTML, and docs |
33 | | - |
34 | | -- Surface the effective runtime analysis profile (`min_loc`, `min_stmt`, block, and segment thresholds) in canonical |
35 | | - report metadata, MCP summary/triage projections, and the HTML Executive Summary subtitle. |
36 | | -- Clarify MCP interpretation with compact `health_scope`, `focus`, and `new_by_source_kind` fields in summary/triage |
37 | | - projections. |
38 | | -- Make baseline mismatch handling more explicit in MCP and the VS Code client by surfacing baseline/runtime python tags |
39 | | - and whether comparison is proceeding without a valid baseline. |
40 | | -- Make the Claude Desktop bundle and Codex plugin prefer workspace-local launchers before `PATH`, with Poetry environment fallback for |
41 | | - python-tag-safe MCP startup. |
42 | | -- Add `workspace_root` user-config field to the Claude Desktop bundle: setting it to the project directory forces the |
43 | | - launcher to prefer `.venv` inside that path even when Claude Desktop starts with a different working directory |
44 | | - (fixes python-tag mismatch caused by system-wide interpreter fallback). |
45 | | -- Validate `git_diff_ref` inputs as safe single revision expressions in both |
46 | | - CLI and MCP before invoking `git diff`. |
47 | | -- Replace the segment-group raw digest `repr()` payload with canonical JSON |
48 | | - bytes for cross-version-safe determinism. |
49 | | -- Align the tests workflow coverage gate with the canonical `fail_under = 99` |
50 | | - policy and refresh the remaining `actions/checkout` pin in `codeclone.yml`. |
51 | | -- Refresh branch metadata and client docs for the `2.0.0b5` line. |
52 | | -- Update the README repository health badge to `87 (B)`. |
53 | | - |
54 | | -## [2.0.0b4] |
| 10 | +- Report schema `2.8`: add `coverage_adoption`, `api_surface`, `coverage_join`, and optional |
| 11 | + `clones.suppressed.*` (for `golden_fixture_paths`); separate coverage hotspots vs scope gaps. |
| 12 | +- Baselines: clone `2.1`, metrics `1.2`; compact `api_surface` payload (`local_name` on disk, qualnames at runtime); |
| 13 | + read-compatible with `2.0` / `1.1`. |
| 14 | +- Add public/private visibility classification for public-symbol metrics (no clone/fingerprint changes). |
| 15 | +- Add annotation/docstring adoption coverage: parameter, return, public docstrings, explicit `Any`. |
| 16 | +- Add opt-in API surface inventory + baseline diff (snapshots, additions, breaking changes). |
| 17 | +- Add coverage join (`--coverage`): per-function facts + findings for below-threshold or missing-in-scope functions; |
| 18 | + current-run only (not baseline truth, no fingerprint impact). |
| 19 | +- Add `golden_fixture_paths`: exclude matching clone groups from health/gates while keeping suppressed facts. |
| 20 | +- Add gates: `--min-typing-coverage`, `--min-docstring-coverage`, `--fail-on-typing-regression`, |
| 21 | + `--fail-on-docstring-regression`, `--fail-on-api-break`, `--fail-on-untested-hotspots`, `--coverage-min`. |
| 22 | +- Surface adoption/API/coverage-join in MCP, CLI Metrics, report payloads, and HTML (Overview + Quality subtab). |
| 23 | +- Preserve embedded metrics and optional `api_surface` in unified baselines. |
| 24 | +- Cache `2.4`: drop stale API-surface entries; preserve parameter order; align warm/cold API diffs. |
| 25 | + |
| 26 | +### MCP, HTML, and client interpretation |
| 27 | + |
| 28 | +- Surface effective analysis profile in report meta, MCP summary/triage, and HTML subtitle. |
| 29 | +- Add `health_scope`, `focus`, `new_by_source_kind` to MCP summary/triage. |
| 30 | +- Make baseline mismatch explicit (python tags + no-valid-baseline signal). |
| 31 | +- Prefer workspace-local launchers over `PATH` (Poetry fallback). |
| 32 | +- Add `workspace_root` to force project `.venv` selection. |
| 33 | + |
| 34 | +### Safety and maintenance |
| 35 | + |
| 36 | +- Validate `git_diff_ref` as safe single-revision expressions. |
| 37 | +- Replace segment digest `repr()` with canonical JSON bytes (determinism). |
| 38 | +- Align CI coverage gate (`fail_under = 99`) and refresh `actions/checkout` pin. |
| 39 | +- Refresh branch metadata/docs for `2.0.0b5`; update README badge to `89 (B)`. |
| 40 | + |
| 41 | +## [2.0.0b4] - 2026-04-05 |
55 | 42 |
|
56 | 43 | ### MCP server |
57 | 44 |
|
|
0 commit comments