# Starter HEAD skips require an exact-version deferred review

> Source: https://github.com/max-listov/stitchkit/blob/master/docs/decisions/0099-starter-head-skips-require-versioned-review.md

---

# 0099 — Starter HEAD skips require an exact-version deferred review

## Status

Accepted. Refines ADR 0061.

## Context

ADR 0061 keeps the published starter target independent from framework HEAD.
The later breaking-release bridge inferred a HEAD skip solely from a breaking
changelog heading and mismatched pre-1.0 minors. Several consecutive breaking
releases could therefore leave the template untested against HEAD; its first
additive successor inherited the delayed failure.

A hard cut can still make one template source unable to compile against both
the published target and the unpublished core. Removing the bridge entirely
would recreate the release cycle ADR 0061 avoided.

## Decision

Packed local-HEAD validation is fail-closed: it runs for additive, aligned and
unaligned breaking releases. An unaligned breaking release may skip it only
when `scripts/starter-head-review.json` names the exact core version, uses the
literal outcome `deferred`, and records a non-empty reason. Missing, stale and
unknown records run HEAD; invalid JSON refuses the release-plan command.

CI and pre-push use the same decision. Target validation is never skipped, and
the HEAD lane continues to install a locally packed core rather than querying
npm for an unpublished version.

## Consequences

- A new breaking SHA exposes starter drift immediately unless somebody records
  the incompatibility debt deliberately.
- A genuine dual-version source conflict remains releasable without aliases or
  compatibility wrappers.
- Review records cannot silently carry into another core version and are
  removed when the starter target advances.
- The rare skip is inspectable in source, CI output and release history.
