Skip to content

[DRAFT] Convert admitted recovered HTML into typed Prepaint Version 1 - #154

Draft
isomorphisms wants to merge 55 commits into
work/linux-shared-contractfrom
work/ib-c67-html-prepaint
Draft

isomorphisms wants to merge 55 commits into
work/linux-shared-contractfrom
work/ib-c67-html-prepaint

Conversation

@isomorphisms

@isomorphisms isomorphisms commented Oct 14, 2026 •

Copy link
Copy Markdown
Owner

Convert source-generation and digest-bound admitted HTML through IB.RecoveredInformation, IB.Information and IB.Strand into the existing Prepaint Version 1 representation. Preserve the original revision, blocks and HTML admission sidecar. A derived IB.Prepaint.Reflow layout retains decoded codepoint ranges within each heading/text/link-label block, with explicit width, manner and measurement identity. Forms, images and other nontext blocks remain intact.

The bounded IB.SourceDecoding slice decodes retained HTML bytes using the WHATWG windows-1252 index and all 17 associated labels, including ISO-8859-1. Its binary Idriç command and native Grease adapter retain the original byte digest/count, source generation, declared charset and navigation observation. The disposable UTF-8 derivative always records reader_admission=NOT_GRANTED. BOMs selecting unimplemented decoders refuse. Original HtmlEvidence, native-reader and Arena admission gates are unchanged.

Validation:

  • Actual Idriç host execution checks typed conversion, mixed-block/revision/metric preservation, Unicode span reconstruction and the existing reflow smoke. A compiled reverse-block mutant fails the independent layout oracle.
  • Fresh decoder compilation and independent Moon replay check all 256 normative scalars, binary NUL/CR/LF/C1 output, label normalization, BOM/unknown-label refusals, size/count/digest checks, nonzero producers, changed descriptors and competing publication. Two actual compiled decoder mutants fail the normative oracle.
  • The exact retained Google observation (93,166 bytes; SHA-256 f71e991ab87271e77255fe2d2454cb4cb401fe47cdf953ea550c6e0fcd8afeb4) yields byte-identical derived output because this particular body is ASCII. Its declared ISO-8859-1 charset and redirect-count-one provenance remain unchanged. Tests use an explicit fixture identity, not an invented live Arena generation.
  • Exact compiler/runtime/source digests and bounded results are retained in examples/autogenerated/source-byte-decoding/. Decoder acceptance is the separately executed Idriç/native Grease evidence; the existing hosted foundation workflow does not invoke the new decoder tests.

Integration remains incomplete. The converter's existing Arena integration uses mocked ICU metadata. Decoding does not supply the missing redirect chain, admit navigation, implement bounded streaming, join the decoded representation to Prepaint, or execute Android Binder/DEX/native paint. The 4 MiB bound remains. Physical A1/C67 acceptance, a functional search APK and real ICU-to-reader navigation remain outstanding.

Base: work/linux-shared-contract. Reflow modules are reused unchanged from isomorphisms/ib PR #159, “Preserve Unicode source offsets through selectable reflow”, exact source 4a7380c5f25409443c5e8c1ae17bd358372012fc. This one-off campaign runs directly without Flexible Pipes. Keep draft; no merge or release.

Published head: b43c1b890c2b03743cfdb8d6d3171a28324faf92; tree 9e2bce8aeb9c434fcbf3cba9187df01ff08aa8b8 exactly matches the independently qualified local tree. All three existing hosted workflows succeeded at this head: browser foundation, independent Prepaint oracle, and universal gate. Those workflows remain separate from the manually executed decoder suites.

Reuse unchanged reflow modules from 4a7380c. Preserve canonical revisions, original blocks and HTML admission sidecar; derive per-block codepoint spans with width and measurement identity.

Independent Idric host checks exercise mixed-block/source reconstruction and reject a compiled block-order mutant. Source-bound streaming, typographic shaping and Android integration remain separate. Tested tree 9d61c0e.
Add the bounded Idriç windows-1252 decoder and native Grease source-bound derivative publication. Preserve original evidence and grant no reader admission. Qualify all octets, actual capture, source/process refusals, compiled mutants and independent publication controls.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant