render: widen strict bitmap/svg glyph payload corpus#1416
Closed
seo-rii wants to merge 5 commits into
Closed
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Adds strict bitmap/SVG glyph resource tracking so variant selection and JSON export can validate and key advanced glyph payloads using actual interned bytes/fragments.
Changes:
- Extend
ResourceArenato intern image bytes and SVG fragments, with lookup/iteration APIs and tests. - Reject strict bitmap/SVG glyph variants when required payload resources are missing; add corresponding diagnostics/tests.
- Append resource digest-based keys into
payloadResourceKey, export new JSON metadata/features, and bump schema minor version.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| src/renderer/layer_renderer.rs | Threads ResourceArena into variant evaluation and adds rejection reason/tests for missing payload resources. |
| src/paint/schema.rs | Bumps schema minor version to reflect new exported capabilities. |
| src/paint/resources.rs | Adds image/SVG interning and query APIs to ResourceArena plus dedupe tests. |
| src/paint/paint_op.rs | Extends glyph payload resource keys to optionally incorporate digest-derived resource identities. |
| src/paint/json.rs | Passes resources into JSON writer, exports digest-aware payload keys and new feature flags/fields. |
| docs/text-ir-v2.md | Documents the producer corpus/resource identity changes for strict bitmap/SVG glyph payloads. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
edwardkim
pushed a commit
that referenced
this pull request
Jun 16, 2026
edwardkim
pushed a commit
that referenced
this pull request
Jun 16, 2026
Owner
|
@seo-rii 기여 감사합니다. PR #1416의 변경은 maintainer 쪽에서 현재 devel 기준으로 cherry-pick 반영했습니다. 반영 커밋: 검증 결과:
이 PR은 cherry-pick으로 반영 완료되었으므로 여기서 닫겠습니다. 감사합니다. |
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.
What
ResourceArena에서 이미지 바이트와 static SVG fragment를 font blob과 같이 intern할 수 있게 했습니다.payloadResourceKey가 실제 resource digest를 포함하도록 보강했습니다.svgRef와 함께 명확한 static vector alias인vectorResourceId를 같이 내보냅니다.Why
P19/P20에서 advanced glyph payload vocabulary와 resource proof 방향은 열었지만, bitmap/SVG payload가 숫자 id만으로 strict cache/resource identity를 주장하면 같은
imageRef또는svgRef가 다른 payload bytes를 가리키는 경우를 구분하기 어렵습니다.이 PR은 bitmap/SVG glyph replay를 기본 경로로 여는 것이 아니라, 나중에 backend replay를 열 때 필요한 resource identity와 strict payload 조건을 먼저 고정합니다.
Compatibility
TextRunfallback 경로는 유지됩니다.Non-goals
Checks
cargo fmt --checkgit diff --check upstream/devel...HEADCARGO_INCREMENTAL=0 cargo test --lib paint::json -- --nocaptureCARGO_INCREMENTAL=0 cargo test --lib renderer::layer_renderer -- --nocaptureCARGO_INCREMENTAL=0 cargo check --lib