Skip to content

fix: distinguish diagnostic fields from entity identities - #135

Merged
iperev merged 2 commits into
mainfrom
fix/diagnostic-path-roles
Sep 19, 2026
Merged

iperev merged 2 commits into
mainfrom
fix/diagnostic-path-roles

Conversation

@iperev

@iperev iperev commented Sep 19, 2026

Copy link
Copy Markdown
Contributor

Summary

Fix the diagnostic regression identified after PR134: the valid scenario ID
examples could intercept the aggregate model path scenarios.examples and
select one scenario instead of the whole collection.

Only the model's quoted-identity syntax now enters identity lookup. Ordinary
fields and numeric positions use their existing projection; the obsolete
numeric shortcut is removed from identity-only resolution. Admission rules,
failure codes, resource limits and public source contracts are unchanged.

Verification

  • The exact regression fails against main before this fix.
  • Native Parse controls distinguish aggregate, structural-position,
    model-semantic position and quoted identity at both wire orders.
  • Assertions check exact source occurrences, including repeated equal arrays.
  • Two isolated mutation executions are detected: a wrong sibling span with
    unchanged code/path, and a model position1 span replaced with position0.
  • Paired kernel and targeted race tests pass; final committed full gate and
    applicable provider CI are required before merge.

Final committed npm run check passed clean at 2b081df8314c74f2b5a497f255dc1f26918670a6, including all333 browser cases.
Three fresh oracle-review lanes found no remaining named gap; the earlier
four-lane production review is retained for unchanged production bytes.

The first review found a real weakness in the new positional test: equal
content did not prove the original occurrence. The test-only follow-up repairs
that oracle. Existing production-review conclusions are retained separately
from the fresh oracle review; no green gate is treated as proof of perfection.

Scope

Two product files only. No new parser, public path AST, ID prohibition, source
cutover, package identity or registry publication. This closes REG-01 after
final gates; it does not complete P9-06 or the overall source-format decision.

Retro

The previous route review proved identifier/index disjointness but omitted
aggregate field names. The repair preserves the producer's existing syntactic
roles. Complete incoming-path inventory and exact occurrence oracles are the
local recurrence controls; no active skill policy was modified.

@iperev
iperev merged commit 319a619 into main Sep 19, 2026
9 checks passed
@iperev
iperev deleted the fix/diagnostic-path-roles branch September 19, 2026 16:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant