← back to Build Feature Coverage

README.md

43 lines

# Build-Feature Coverage Matrix (TK-12025)

Read-only distribution audit: **which of the fleet properties run which build-feature skills.**

## Axes (the denominators — auditable)
- **Properties (75):** the `standalone-node` fleet microsites from the authoritative
  `~/Projects/dw-fleet-registry/dw-fleet-registry.json` (each has its own repo, so it can
  independently *run* a feature). 74 scanned; 1 has no local repo (`thesetdecorator`) → NOT-MEASURED.
  The ticket said "~50"; the registry lists 75 — the full set is scanned rather than truncated.
- **Features (41):** detectable web build-features across 4 groups — drop-in UX-primitive skills,
  `~/Projects/_shared` deployed components, and Steve's standing storefront-feature rules.
  The ticket cited "64 build-feature skills" but recorded **no list** (empty body); this axis is the
  *detectable-fingerprint* operationalization. Exact membership is in `REPORT.md`.

## Method
`scan.py` greps each site's repo (`.html/.js/.mjs/.css/.liquid/.ejs/.htm`, excluding
`node_modules/.git/dist/build/logs/tmp/data/backups` and `*.bak`) for each feature's fingerprint
patterns in `features.json`. A hit = the site "runs" that feature. Output → `matrix.json`.
Three states per cell: **runs / absent / NOT-MEASURED** (no local repo — never counted as absent).

## Files
- `features.json` — the fingerprint table (feature → regex patterns)
- `matrix.json` — full result (site × feature + evidence file per hit)
- `REPORT.md` — ranked adoption tables + gap highlights + axis membership
- `coverage-matrix.html` — heatmap viewer (sort + density, localStorage-persisted)
- `scan.py` — re-runnable scanner

## Detector caveats (honesty note)
- Fingerprints are token-greps, not semantic proof. High/mid-adoption features were spot-verified
  (`age-theme` is the real token, not a substring of `image-theme`; `new-arrivals` matches a real
  promo strip). The two loosest patterns — `substitutefinder` (word "substitute") and
  `site-config-shared` (generic "site-config") — sit at the LOW end (9% / 35%) and may carry a few
  false positives; they do not affect the headline.
- The matrix answers the operational question (adoption + gaps) robustly regardless of ±1–2 low-end
  false positives.

## Headline
The fleet microsites run the **old shared-component + storefront-standard** feature set nearly
uniformly (19–21 features each), but the **new drop-in UX-primitive skills (Bundle B) are ~0%
deployed** across the fleet — that is the adoption headroom this audit was built to expose.
Only `wallpapersback` (28), `flockedwallpaper`, and `designerwallcoverings` carry any of the new
primitives; **9 features have zero fleet deployment.**