Skip to content

proposal 0002: validate warning for dead renames overlay entries (#19)#26

Merged
adworzynski merged 2 commits into
mainfrom
proposal/0002-dead-renames-warning
Jul 6, 2026
Merged

proposal 0002: validate warning for dead renames overlay entries (#19)#26
adworzynski merged 2 commits into
mainfrom
proposal/0002-dead-renames-warning

Conversation

@adworzynski

Copy link
Copy Markdown
Owner

Draft proposal for #19.

Adds a non-blocking validate warning (renames.dangling) for each manifest renames entry that resolves to no applied rename — the missing overlay-consistency mirror to the existing policy.dangling (policies) and relationship.overlay_dangling (relationships) diagnostics. Core, read-only, additive; no exit-code or schema change.

Key design decisions recorded in the doc:

  • Detection via provenance, not id presence — a live kind: rule rename stamps source.original_id on the materialized rule; an entry is dead iff (pack, from) is absent from that applied-set. Precise reading of "from matches no active rule."
  • Warn on forward-looking entries too, for parity with policy.dangling — a mistyped pack is indistinguishable from a legitimately-staged forward-looking one, and the warning register keeps a green repo green either way. Tiered/suppressing alternatives recorded as forks.
  • One additive model touch: RuleDef gains a source field (the model currently discards the provenance the store carries).

Forks considered: do-nothing, refuse-at-rename add, to-id heuristic, tiered forward-looking suppression, fold-into-#8.

Refs #19.

@adworzynski adworzynski merged commit 5a420c9 into main Jul 6, 2026
2 checks passed
@adworzynski adworzynski deleted the proposal/0002-dead-renames-warning branch July 6, 2026 11:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant