Skip to content

docs(openspec): measure ini repeated-key precedence against Vale 3.21.0 - #340

Merged
thecodedrift merged 1 commit into
mainfrom
spec/vale-ini-last-wins
Sep 17, 2026
Merged

thecodedrift merged 1 commit into
mainfrom
spec/vale-ini-last-wins

Conversation

@thecodedrift

Copy link
Copy Markdown
Member

The cli-vale-rule-engine spec records, "measured against Vale 3.17.1", that a key assigned twice inside one matcher keeps its first assignment. Vale 3.21.0 changed that to last (upstream 1e4f6ed, "let the project's rule settings win"), the direction that already held between two different matchers. The CLI pins 3.21.0 as of #336, vale-vendor-contract.test.ts asserts last-wins in both orders, and assemble.ts says so; the spec was the one place still stating the old measurement.

What changes

  • The measurement moves to Vale 3.21.0 and the repeated-key bullet reads last-wins, with one sentence recording that 3.20.0 was first-wins.
  • A new scenario, A repeated key keeps its last assignment, pins the shape the contract test measures. The four prior scenarios are unchanged.

The requirement's rule does not change: a disable is declared after the enable it narrows, and assembly is deterministic. Under last-wins that holds in every shape rather than only across matchers.

Delivery

Single PR, no code change; the behaviour already ships. The change is archived here since the spec is the whole work. Archive dry-run per CLAUDE.md: 22 → 23 scenarios on the standing spec, +8/−2 lines, every prior scenario present.

Refs #336

Vale 3.21.0 made a key assigned twice inside one matcher keep its LAST
assignment (upstream 1e4f6ed), the direction that already held between
matchers. The spec still carried the 3.17.1 measurement saying first.
The requirement's rule is unchanged; a new scenario pins the shape the
vendor contract test measures.
@thecodedrift thecodedrift added the skip-changeset PR intentionally ships no release note (bypasses the changeset requirement) label Sep 17, 2026
@thecodedrift
thecodedrift merged commit f4f5e0e into main Sep 17, 2026
8 checks passed
@thecodedrift
thecodedrift deleted the spec/vale-ini-last-wins branch September 17, 2026 00:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip-changeset PR intentionally ships no release note (bypasses the changeset requirement)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant