Skip to content

Bound rejected source index retention - #139

Merged
iperev merged 1 commit into
mainfrom
perf/rejected-source-index
Sep 20, 2026
Merged

iperev merged 1 commit into
mainfrom
perf/rejected-source-index

Conversation

@iperev

@iperev iperev commented Sep 20, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Bound retained JSON-index state by structural reachability. Unknown or incompatible containers keep their boundary type/span without retaining descendant values and raw paths.
  • Preserve complete lexical parsing, duplicate detection, Unicode checks, nesting checks and existing error precedence. Valid source values and source maps remain unchanged.
  • Add permanent retention, exact-span, failure-isolation and recovery controls; fail explicitly if the valid fuzz seed cannot be built.
  • Prepare compatible release 0.14.21. No public format, CLI, resource limit, dependency or platform change.

Why

A 6,150-byte rejected input retained 4,203,435 bytes of repeated raw-pointer prefixes. Its descendants cannot be consumed by successful structural validation. Discarding only their retained state fixes that mechanism without returning early and hiding higher-precedence lexical errors.

Validation

  • Exact committed npm run check passed, including 333 browser tests.
  • Codec race tests passed.
  • 91 paired complete baseline/candidate observations preserve accepted projections/source maps and full rejected diagnostics.
  • 17 model pre-copy cases and 20 codec stage/recovery cases passed.
  • Two separately retained bounded fuzz campaigns completed 10,000 executions each.
  • Mutations restoring full retention or skipping duplicate validation fail the permanent tests for their intended reasons.
  • Independent frozen review covers preservation, recursive reachability, test oracles and claim boundaries. GitHub checks must complete on this exact head before merge.

Boundaries

This is a private codec resource repair, not a public source-v2 cutover or full Batch B/P9-05 closure. Finite tests do not establish arbitrary grammar equivalence or an OS memory ceiling. No active skill or provider policy changed.

Retrospective

Correct final errors did not observe unnecessary retention before rejection. An independent retained-cardinality oracle now distinguishes it. Existing model qualification was reused; no new parser or duplicated schema was introduced.

@iperev
iperev marked this pull request as ready for review September 20, 2026 22:00
@iperev
iperev marked this pull request as draft September 20, 2026 22:01
@iperev
iperev marked this pull request as ready for review September 20, 2026 22:05
@iperev
iperev merged commit 76a30f8 into main Sep 20, 2026
11 checks passed
@iperev
iperev deleted the perf/rejected-source-index branch September 20, 2026 22:12
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