artifact-graph 0.5.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,47 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 0.6.0
6
+
7
+ ### Added
8
+
9
+ - **E2E coverage proof mechanism**: `validate --include e2e-coverage` now outputs executable_ref
10
+ coverage statistics (total TCs, with executable_ref, rate), status breakdown, chain_type breakdown,
11
+ uncovered scenarios, and uncovered features. JSON and human-readable formats supported.
12
+ - Configurable thresholds via `artifact-graph.config.yaml` `e2e` section:
13
+ `executable_ref_warning`, `executable_ref_error`, `report_uncovered_scenarios`,
14
+ `report_uncovered_features`, `scenario_waivers`, `feature_waivers`.
15
+ - Threshold violations produce `E2E_COVERAGE_WARNING` / `E2E_COVERAGE_ERROR` findings.
16
+
17
+ - **TC status lifecycle validation**: TCs with invalid `status` values produce `E2E_INVALID_TC_STATUS`.
18
+ `waived` status requires non-empty `waived_reason` (`E2E_WAIVED_NO_REASON`).
19
+
20
+ - **chain_type vocabulary validation**: Invalid chain_type produces `E2E_INVALID_CHAIN_TYPE`.
21
+ Deprecated aliases `core_only` → `core_e2e`, `frontend_only` → `mock_playwright` produce
22
+ `E2E_DEPRECATED_CHAIN_TYPE` migration warnings.
23
+
24
+ - **ac_coverage_rate freetext detection**: Handwritten percentages produce
25
+ `E2E_AC_COVERAGE_RATE_FREETEXT` — this field must be computed, not manually entered.
26
+
27
+ - **Deterministic checklist rules**:
28
+ - `E2E-UNIT-TEST-NOT-E2E`: executable_ref pointing to `.test.ts` instead of `.spec.ts`.
29
+ - Version-lock liveness: E2E spec files with no active `@e2e_test`/`@tc` annotations produce
30
+ `orphan_lock` liveness warnings.
31
+
32
+ - **`generate-e2e-registry` command**: Deterministic, idempotent E2E registry generation from
33
+ Markdown test files. `--deterministic` flag sets `generated_at` to epoch for diff checks.
34
+ `--out <path>` writes output to file.
35
+
36
+ - **E2E-TRACE-004 Markdown authority**: When a TC explicitly declares `chain_type: desktop_chain`,
37
+ conflicts with source-level `mock_playwright` annotations are downgraded to info (per
38
+ artifact-chain-spec §5.2: Markdown side is authoritative).
39
+
40
+ ### Changed
41
+
42
+ - **`validate --format json`** output is now wrapped in `{ issues, e2eCoverage }` when
43
+ `--include e2e-coverage` is specified. Without `--include e2e-coverage`, output remains a raw
44
+ issues array (backward compatible).
45
+
5
46
  ## 0.5.0
6
47
 
7
48
  ### Added