You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Corpus-backed, syntax-agnostic v3 dictionary fragment discovery with exact
longest-match usage accounting
Exact v3 dictionary objective scoring for overlapping whole entries and
fragments
Optional split v3 dictionary-matrix architecture with an independent
HIER4/HIER8 dictionary namespace, diagonal paths, nested nodes, runtime
loading, static code generation, and backward-compatible shared tables
Regression coverage for fragment/whole coexistence, fragment-for-whole
swaps, split dictionary matrices, generated/static round-trips, and loader
validation
Changed
V3 fragment refinement now uses deterministic dictionary-first admission:
payload training ranks by active non-overlapping use count inside isolated
dictionary gain, while embedded/amortized objectives may use potential counts
for shadowed-entry swaps
Only the strongest positive dictionary-gain class is exact-v3 evaluated in a
refinement round; an improving fragment is committed immediately and corpus
proposals are rebuilt against the new longest-match parse
V3 training now evaluates shared and split dictionary-matrix layouts and
selects the lower requested objective instead of forcing either architecture
Dictionary matrix DIRECT cells address dictionary indices directly, so
split tables avoid duplicating dictionary entries in the main symbol table
Trainer diagnostics now distinguish round-summed gain-positive proposal
observations from the small number of candidates actually exact-scored
V3 dictionary reports now show final effective uses and a clearly labelled
isolated admission gain instead of stale analyzer gain values
Fixed
Removed the pathological v3 fragment-refinement behavior that exact-scored
hundreds of thousands of corpus proposals with repeated full-corpus scans
Prevented shadow-only occurrences from inflating payload fragment admission
counts
Escaped control and non-printable bytes in fragment diagnostics so entries
such as newline-prefixed log fragments cannot break trainer output
Preserved old shared v3 table loading while extending reserved v3 metadata for
split dictionary matrices
Verified
Full test suite passes after a clean rebuild
Release build path passes make, make test, make package, and make examples
On trainings/extra/logs_corpus.txt (1,886,013 bytes), refinement processes
only 3 exact candidates across 3 rounds, adds 2 fragments, raises dictionary
byte coverage to 84.9%, and reduces the payload objective from 4,772,661 to
3,725,400 bits
Shared/split selection remains corpus-dependent: split wins before fragment
refinement on the logs corpus, while the refined distribution correctly
selects the lower-payload shared HIER8 layout