docs(codechart): document the U1F200-class failure mode + strategy chain#83
Merged
Conversation
The U1F200 fix shipped in v0.4.0 (PR #82) introduced three new behaviors in the EmbeddedFonts pipeline that the docs did not reflect: * range-aware bail — when the caller threads a block_range and ToUnicode's result has zero in-block intersection, the intrinsic strategy is dropped so positional strategies can take over. * force_positional_for_font_ids override — escape hatch for the partial-overlap case where ToUnicode covers some in-block codepoints but positional attribution is still required for the rest. * positional-precedence merge — when both produce a result, positional wins on conflict (chart geometry is authoritative for in-block specimens). README.md gains a "Which blocks work" subsection under Code Chart extraction that enumerates the three failure shapes (no /ToUnicode, wrong /ToUnicode, partial overlap) and points at the architecture doc. The "What pillar 1 does not cover" list gains the wrong-CMap case alongside the existing no-CMap case. docs/architecture.md Pillar 1 + Pillar 2 sections describe the new orchestration: Catalog threads block_range through to CodepointMapper; positional strategies declare positional? == true so the orchestrator partitions them apart; positional is gated behind three conditions; results merge with positional precedence. Provenance numbers updated to include U1F200 (64/64 in-block via positional attribution after auto-bail, was 0 before).
🔗 Link Check Failed |
🔗 Link Check Failed |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Updates extraction docs to reflect the v0.4.0 EmbeddedFonts pipeline changes (PR #82):
/ToUnicode, wrong/ToUnicode, partial overlap) and how the orchestrator handles each. "What pillar 1 does not cover" gains the wrong-CMap case alongside the existing no-CMap case.positional?predicate, partition, range-aware bail,force_positional_for_font_idsoverride, positional-precedence merge. Provenance numbers updated to include U1F200 (64/64 in-block via positional attribution after auto-bail, was 0 before).No code changes — documentation only.
Test plan