以 coder2@mindraw 身份领取统一台账 P-20260701-mexp09-frame-visual-context 的 MD-MEXP09-01,完成 Mindraw 侧 target Frame visual snapshot / visual context contract。边界:不做 H8/formal release,不重打 DMG,不修 Stitch,不做 m4c consumer,不领取 M4C-* / PM-* / H*。
frame-only。mindrawGetLiveFrameContext() 的 target Frame 过滤之后,仅用目标 Frame 内元素和内部图片 dataURL 生成 SVG,避免整图截图、整份 .mindraw promptable read 或 document visual scan。TARGET_NOT_FRAME / TARGET_NOT_FOUND。src/lib/mindrawAppReadApi.tsvisualContext / visualScopeAudit DTO。visualContext.kind="target-frame-visual-snapshot",snapshot 包含 mimeType="image/svg+xml"、尺寸、byte size、hash 和 dataURL。ocrOnly=false、ocrTextIsNotFullVisualContext=true、ocrOnlyFallbackAllowed=false、fallbackToDocumentVisualScan=false、outsideFramePixelsExcluded=true。src/lib/mindrawAppReadApi.test.ts#ff00ff。src/lib/mindrawAppApiTransport.test.tsvisualContext / visualScopeAudit。02-P/qa/mindraw-mexp09-frame-visual-context-check.md02-P/qa/mindraw-mexp09-frame-visual-context-check.json02-P/plan-progress.markdown、INDEX.md、CODEGRAPH.md、CHANGELOG.md。npm test -- --run src/lib/mindrawAppReadApi.test.ts src/lib/mindrawAppApiTransport.test.ts:PASS,2 files / 15 tests。npm run build:PASS。保留既有字体 URL、Tauri dialog import、chunk size 警告。git diff --check:PASS。PM-MEXP09-GATE 仍由 PM 复核;本轮只允许 PM 派发或恢复 M4C-MEXP09-01 visual context consumer retry。visualContext.snapshot 可用、ocrOnly=false、ocrOnlyFallbackAllowed=false、documentVisualFallbackUsed=false、outsideFramePixelsExcluded=true 时进入 UI 视觉任务。MD-* 做 native crop / compositor capture 评估。