Background
The unit test suite (now 176+ tests via the Mocha migration) covers extracted pure helpers well. However, two of the most impactful bugs in recent history were wiring bugs at the call site, not logic bugs in the helpers:
Both were invisible to the 176 green unit tests. The extension-host suite caught neither — it has ~10 tests, mostly activation and basic hover.
Proposed
Add extension-host tests covering the seams most likely to regress:
- Cache → provider integration:
detectIncludeComponent returns correct component for a branch ref on second hover (i.e. freshness logic wires end-to-end).
- Catalog fetch: a project with one malformed template still returns the other valid components (the
try/catch placement regression).
- Validation fires correct diagnostics after a local include's
spec.inputs changes (unsaved vs saved).
- Completion offers only missing inputs after a multi-line array input.
Priority
Medium — blocking a regression requires a wiring bug to slip past code review. Current review discipline is the main guard; these tests would be the safety net.
Background
The unit test suite (now 176+ tests via the Mocha migration) covers extracted pure helpers well. However, two of the most impactful bugs in recent history were wiring bugs at the call site, not logic bugs in the helpers:
exactMatchearly-return indetectIncludeComponentbypassed branch freshness before the fix.GitLabSpecParser.parsesat outside the per-templatetry/catchinbuildCatalogComponents, aborting the whole catalog on one bad file.Both were invisible to the 176 green unit tests. The extension-host suite caught neither — it has ~10 tests, mostly activation and basic hover.
Proposed
Add extension-host tests covering the seams most likely to regress:
detectIncludeComponentreturns correct component for a branch ref on second hover (i.e. freshness logic wires end-to-end).try/catchplacement regression).spec.inputschanges (unsaved vs saved).Priority
Medium — blocking a regression requires a wiring bug to slip past code review. Current review discipline is the main guard; these tests would be the safety net.