artifact-graph 0.5.0 → 0.6.1

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,61 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 0.6.1
6
+
7
+ ### Fixed
8
+
9
+ - **CHANGELOG documentation corrections**: correct two 0.6.0 CHANGELOG descriptions to match
10
+ actual implementation:
11
+ - `E2E-UNIT-TEST-NOT-E2E`: the trigger condition is based on `e2e.runners[].kind` and runner
12
+ root/include/exclude/testIgnore acceptance, not `.test.ts` / `.spec.ts` file suffix.
13
+ - `E2E-TRACE-004`: when Markdown explicitly declares `chain_type: desktop_chain`, conflicts with
14
+ source-level `mock_playwright` annotations are entirely suppressed (not downgraded to info).
15
+
16
+ ## 0.6.0
17
+
18
+ ### Added
19
+
20
+ - **E2E coverage proof mechanism**: `validate --include e2e-coverage` now outputs executable_ref
21
+ coverage statistics (total TCs, with executable_ref, rate), status breakdown, chain_type breakdown,
22
+ uncovered scenarios, and uncovered features. JSON and human-readable formats supported.
23
+ - Configurable thresholds via `artifact-graph.config.yaml` `e2e` section:
24
+ `executable_ref_warning`, `executable_ref_error`, `report_uncovered_scenarios`,
25
+ `report_uncovered_features`, `scenario_waivers`, `feature_waivers`.
26
+ - Threshold violations produce `E2E_COVERAGE_WARNING` / `E2E_COVERAGE_ERROR` findings.
27
+
28
+ - **TC status lifecycle validation**: TCs with invalid `status` values produce `E2E_INVALID_TC_STATUS`.
29
+ `waived` status requires non-empty `waived_reason` (`E2E_WAIVED_NO_REASON`).
30
+
31
+ - **chain_type vocabulary validation**: Invalid chain_type produces `E2E_INVALID_CHAIN_TYPE`.
32
+ Deprecated aliases `core_only` → `core_e2e`, `frontend_only` → `mock_playwright` produce
33
+ `E2E_DEPRECATED_CHAIN_TYPE` migration warnings.
34
+
35
+ - **ac_coverage_rate freetext detection**: Handwritten percentages produce
36
+ `E2E_AC_COVERAGE_RATE_FREETEXT` — this field must be computed, not manually entered.
37
+
38
+ - **Deterministic checklist rules**:
39
+ - `E2E-UNIT-TEST-NOT-E2E`: executable_ref target is only accepted by unit runner(s)
40
+ (per `e2e.runners[].kind` and runner root/include/exclude/testIgnore acceptance), not by any
41
+ e2e/integration runner.
42
+ - Version-lock liveness: E2E spec files with no active `@e2e_test`/`@tc` annotations produce
43
+ `orphan_lock` liveness warnings.
44
+
45
+ - **`generate-e2e-registry` command**: Deterministic, idempotent E2E registry generation from
46
+ Markdown test files. `--deterministic` flag sets `generated_at` to epoch for diff checks.
47
+ `--out <path>` writes output to file.
48
+
49
+ - **E2E-TRACE-004 Markdown authority**: When a TC explicitly declares `chain_type: desktop_chain`
50
+ in its Markdown, the Markdown side is authoritative (per artifact-chain-spec §5.2) — conflicts
51
+ with source-level `mock_playwright` annotations are entirely suppressed (not emitted as warning
52
+ or info).
53
+
54
+ ### Changed
55
+
56
+ - **`validate --format json`** output is now wrapped in `{ issues, e2eCoverage }` when
57
+ `--include e2e-coverage` is specified. Without `--include e2e-coverage`, output remains a raw
58
+ issues array (backward compatible).
59
+
5
60
  ## 0.5.0
6
61
 
7
62
  ### Added