From b35e2a04f0948a2a1aa93154d33a3c17750e3741 Mon Sep 17 00:00:00 2001 From: Mihaela M Date: Mon, 29 Jun 2026 12:19:17 +0200 Subject: [PATCH] build: classify the located-parse public types for coverage The located-parse port added four public Model types (LocatedValue, LocatedPair, SourceRange, SourcePosition) that the validation-coverage gate flagged as unclassified, blocking the push. They are positional projections and pure position data with no validation invariant of their own: LocatedValue and LocatedPair wrap an already-validated Model.Value, and SourceRange and SourcePosition are data-transfer. Classify all four as excluded with reasons. --- scripts/validation-coverage.tsv | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/scripts/validation-coverage.tsv b/scripts/validation-coverage.tsv index 481ec9d..ba9f61a 100644 --- a/scripts/validation-coverage.tsv +++ b/scripts/validation-coverage.tsv @@ -24,6 +24,10 @@ PureYAML.Model.Value validated core YAML value; mapping-key uniqueness is a runt PureYAML.Model.Mapping validated mapping keys must be unique within a mapping PureYAML.Model.Pair excluded data-transfer key/value pair; no invariant beyond its components PureYAML.Model.Key excluded closed sum type (string/sequence/mapping); illegal states unrepresentable +PureYAML.Model.LocatedValue excluded located projection of a Model.Value with source spans; the value invariant lives on the projected Model.Value +PureYAML.Model.LocatedPair excluded located key/value pair; data-transfer, no invariant beyond its components +PureYAML.Model.SourceRange excluded source span (start/end position); positional data-transfer, no invariant +PureYAML.Model.SourcePosition excluded source position (line/column); positional data-transfer, no invariant # --- stream --- PureYAML.Stream.Document excluded wraps a validated Model.Value plus an index; no own invariant