Skip to content

Asset resolution's private walk skips parsed table cells (and lacks the opaque-content guard) #476

Description

@abalter

What. enscribeAssetResolution's private walk (asset-load.js, the hand-rolled recursion near the bottom of the file) descends node.content with only an Array.isArray check (no isOpaqueContent guard — safe today only because opaque content is a string) and has NO cell descent — so a <code src="@id"> / <fig src="@id"> inside an opted-in table cell silently fails to resolve: no data: URI, no visible __asset-error, violating the always-renders framing.

Provenance. Pass-map audit §3.2 (a Wave-0 item never converted to an issue); re-confirmed on current main by the wave-1 walk-merges slice's walker inventory.

Fix shape. Route the walk through the shared discover walker (one visitor Map over fig/table/diagram/code/code-block) or add descendCellArrays + the opaque guard to the private walk. Byte-changing on documents with cell-resident @id references (they gain resolution or a visible error) — its own small output-adding slice with a fixture.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions