Skip to content

core: malformed cade should stop cascading#17

Open
atagen wants to merge 6 commits into
mainfrom
fix/malformed-cade-caps-cascade
Open

core: malformed cade should stop cascading#17
atagen wants to merge 6 commits into
mainfrom
fix/malformed-cade-caps-cascade

Conversation

@atagen
Copy link
Copy Markdown
Contributor

@atagen atagen commented Jun 3, 2026

No description provided.

@atagen atagen force-pushed the fix/malformed-cade-caps-cascade branch from 2c9a7fb to 32e89ad Compare June 3, 2026 06:47
@atagen atagen force-pushed the fix/malformed-cade-caps-cascade branch from 32e89ad to 9678f47 Compare June 3, 2026 06:59
@atagen atagen force-pushed the fix/malformed-cade-caps-cascade branch from 9678f47 to 5aeb5d5 Compare June 3, 2026 07:07
atagen added 3 commits June 3, 2026 17:24
When walking the ancestor chain, a `.cade` that fails to parse now caps
the cascade at that dir instead of being silently climbed past to a valid
parent. This keeps the chain-shape decision aligned with activation, which
re-reads the same file via `config_keywords` and surfaces the parse error
there: without the cap, chain construction would build a shape that quietly
ignored a broken `.cade`, then activation would fail (or compose a parent
the user never expected) on the very same file.

The cap reuses the single per-dir parse already performed for `disinherit`
detection (`caps_the_cascade`), so no extra read is introduced. Behavior is
identical to disinherit's cap: the malformed dir itself still joins as the
chain root (its error surfaces at load), and gap-fill anchors on it without
ever reaching above.

Split out of the disinherit feature commit so this policy change lands with
its own rationale and tests.
@atagen atagen force-pushed the fix/malformed-cade-caps-cascade branch from 5aeb5d5 to 5a853e1 Compare June 3, 2026 07:28
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