epiphany/spikes/editor-toolkit/round1-candidates/c2-vello/round2_report.json

1749 lines
50 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"candidate_id": "C2 vello 0.9 + kurbo (Round 2 text)",
"check1_faithful_consumption": "Pass",
"check2_fallback": "Pass",
"check3_bidi": {
"NotRun": "ROUND2_TEXT_RECIPE.md §1.2 (2026-07-29 ruling): check 3 is NOT RUN for every candidate, on both adapters — no Arabic-capable face is installed, and pin 9 makes an absent required face environmental NOT RUN. F-D's supplementary Hebrew/Latin bidi evidence is recorded separately and must never upgrade check 3 to PASS."
},
"check4_hit_testing": "Pass",
"check5_accessibility": "Pass",
"check5_bus_unreachable_evidence": null,
"supplementary_f_d_bidi": "Pass",
"per_fixture_diffs": {
"F-A": {
"width": 1920,
"height": 1080,
"band_pixel_count": 52244,
"d1_pixels_outside_band_differing": 0,
"d1_pass": true,
"reference_ink_mass": 31933.196078430126,
"candidate_ink_mass": 31976.490196078663,
"d2_relative_delta": 0.0013557715157043208,
"d2_pass": true,
"reference_centroid": [
890.8902938917568,
507.18029108563553
],
"candidate_centroid": [
890.7587757181873,
507.20303433710444
],
"d3_delta": [
0.13151817356947504,
0.022743251468909875
],
"d3_pass": true,
"in_band_max_abs_delta_luma": 128,
"in_band_count_delta_gt_report_threshold": 4286,
"d4_regions": [
{
"label": "F-A seg0.glyph0 (face 0, gid 34)",
"reference_mass": 1962.933333333338,
"candidate_mass": 1970.2470588235328,
"relative_delta": 0.0037259163956297717,
"pass": true
},
{
"label": "F-A seg0.glyph1 (face 0, gid 77)",
"reference_mass": 1126.7843137254906,
"candidate_mass": 1127.4156862745117,
"relative_delta": 0.0005603313263507999,
"pass": true
},
{
"label": "F-A seg0.glyph2 (face 0, gid 77)",
"reference_mass": 1123.1372549019607,
"candidate_mass": 1136.8392156862762,
"relative_delta": 0.012199720670392721,
"pass": true
},
{
"label": "F-A seg0.glyph3 (face 0, gid 70)",
"reference_mass": 1347.9568627450994,
"candidate_mass": 1352.4078431372557,
"relative_delta": 0.003302019905215551,
"pass": true
},
{
"label": "F-A seg0.glyph4 (face 0, gid 72)",
"reference_mass": 2228.1019607843186,
"candidate_mass": 2215.4745098039234,
"relative_delta": 0.005667357779241938,
"pass": true
},
{
"label": "F-A seg0.glyph5 (face 0, gid 83)",
"reference_mass": 1012.6588235294114,
"candidate_mass": 1020.921568627451,
"relative_delta": 0.008159455984634176,
"pass": true
},
{
"label": "F-A seg0.glyph6 (face 0, gid 80)",
"reference_mass": 1436.8078431372576,
"candidate_mass": 1432.4274509803936,
"relative_delta": 0.003048697275551783,
"pass": true
},
{
"label": "F-A seg0.glyph8 (face 0, gid 66)",
"reference_mass": 1406.149019607845,
"candidate_mass": 1406.2352941176491,
"relative_delta": 0.00006135516833637676,
"pass": true
},
{
"label": "F-A seg0.glyph9 (face 0, gid 234)",
"reference_mass": 2515.3490196078515,
"candidate_mass": 2519.992156862748,
"relative_delta": 0.001845921666815148,
"pass": true
},
{
"label": "F-A seg0.glyph10 (face 0, gid 70)",
"reference_mass": 1349.2196078431382,
"candidate_mass": 1348.9921568627458,
"relative_delta": 0.0001685796582485247,
"pass": true
},
{
"label": "F-A seg0.glyph11 (face 0, gid 85)",
"reference_mass": 1090.1529411764707,
"candidate_mass": 1094.6941176470598,
"relative_delta": 0.004165632453083475,
"pass": true
},
{
"label": "F-A seg0.glyph12 (face 0, gid 85)",
"reference_mass": 1090.2745098039222,
"candidate_mass": 1095.3098039215693,
"relative_delta": 0.0046183727789367345,
"pass": true
},
{
"label": "F-A seg0.glyph13 (face 0, gid 86)",
"reference_mass": 1597.7372549019626,
"candidate_mass": 1609.674509803924,
"relative_delta": 0.007471350414679895,
"pass": true
},
{
"label": "F-A seg0.glyph14 (face 0, gid 80)",
"reference_mass": 1438.9960784313753,
"candidate_mass": 1433.2745098039234,
"relative_delta": 0.003976083544083664,
"pass": true
},
{
"label": "F-A seg0.glyph15 (face 0, gid 84)",
"reference_mass": 1181.8352941176502,
"candidate_mass": 1175.3803921568633,
"relative_delta": 0.005461761036343089,
"pass": true
},
{
"label": "F-A seg0.glyph16 (face 0, gid 80)",
"reference_mass": 1437.9294117647094,
"candidate_mass": 1433.2745098039234,
"relative_delta": 0.003237225640355481,
"pass": true
},
{
"label": "F-A seg0.glyph18 (face 0, gid 119)",
"reference_mass": 959.780392156863,
"candidate_mass": 959.7529411764707,
"relative_delta": 0.00002860131402617683,
"pass": true
},
{
"label": "F-A seg0.glyph20 (face 0, gid 66)",
"reference_mass": 1401.8509803921577,
"candidate_mass": 1404.6000000000026,
"relative_delta": 0.0019609927490837425,
"pass": true
},
{
"label": "F-A seg0.glyph21 (face 0, gid 77)",
"reference_mass": 1125.5294117647059,
"candidate_mass": 1126.929411764708,
"relative_delta": 0.001243859098987997,
"pass": true
},
{
"label": "F-A seg0.glyph23 (face 0, gid 97)",
"reference_mass": 2139.2784313725547,
"candidate_mass": 2139.7490196078525,
"relative_delta": 0.00021997521612736234,
"pass": true
},
{
"label": "F-A seg0.glyph24 (face 0, gid 79)",
"reference_mass": 1628.7137254901959,
"candidate_mass": 1637.3960784313776,
"relative_delta": 0.0053308035692820254,
"pass": true
},
{
"label": "F-A seg0.glyph25 (face 0, gid 70)",
"reference_mass": 1347.239215686276,
"candidate_mass": 1349.9999999999998,
"relative_delta": 0.0020492161166176664,
"pass": true
}
],
"d4_pass": true,
"d4_worst": {
"label": "F-A seg0.glyph2 (face 0, gid 77)",
"reference_mass": 1123.1372549019607,
"candidate_mass": 1136.8392156862762,
"relative_delta": 0.012199720670392721,
"pass": true
},
"pass": true
},
"F-B": {
"width": 1920,
"height": 1080,
"band_pixel_count": 16456,
"d1_pixels_outside_band_differing": 0,
"d1_pass": true,
"reference_ink_mass": 9836.71764705878,
"candidate_ink_mass": 9847.207843137221,
"d2_relative_delta": 0.00106643256976859,
"d2_pass": true,
"reference_centroid": [
407.43842537942237,
504.8943554023082
],
"candidate_centroid": [
407.6930699575255,
504.8968972193984
],
"d3_delta": [
0.25464457810312524,
0.002541817090218501
],
"d3_pass": true,
"in_band_max_abs_delta_luma": 96,
"in_band_count_delta_gt_report_threshold": 1241,
"d4_regions": [
{
"label": "F-B seg0.glyph0 (face 0, gid 36)",
"reference_mass": 1867.0078431372583,
"candidate_mass": 1865.7019607843133,
"relative_delta": 0.0006994519909196683,
"pass": true
},
{
"label": "F-B seg0.glyph1 (face 0, gid 80)",
"reference_mass": 1438.5607843137286,
"candidate_mass": 1433.0235294117663,
"relative_delta": 0.0038491629706171315,
"pass": true
},
{
"label": "F-B seg0.glyph2 (face 0, gid 83)",
"reference_mass": 1013.2980392156862,
"candidate_mass": 1020.4313725490197,
"relative_delta": 0.007039718875657539,
"pass": true
},
{
"label": "F-B seg0.glyph3 (face 0, gid 80)",
"reference_mass": 1438.847058823533,
"candidate_mass": 1434.4078431372564,
"relative_delta": 0.0030852588946502185,
"pass": true
},
{
"label": "F-B seg1.glyph0 (face 1, gid 1282)",
"reference_mass": 849.0705882352955,
"candidate_mass": 853.2901960784314,
"relative_delta": 0.004969678495054142,
"pass": true
},
{
"label": "F-B seg1.glyph1 (face 1, gid 1281)",
"reference_mass": 1425.415686274511,
"candidate_mass": 1437.1921568627452,
"relative_delta": 0.008261779845438142,
"pass": true
},
{
"label": "F-B seg1.glyph2 (face 1, gid 1280)",
"reference_mass": 1804.5176470588276,
"candidate_mass": 1803.160784313725,
"relative_delta": 0.000751925450723222,
"pass": true
}
],
"d4_pass": true,
"d4_worst": {
"label": "F-B seg1.glyph1 (face 1, gid 1281)",
"reference_mass": 1425.415686274511,
"candidate_mass": 1437.1921568627452,
"relative_delta": 0.008261779845438142,
"pass": true
},
"pass": true
},
"F-C": {
"width": 1920,
"height": 1080,
"band_pixel_count": 9595,
"d1_pixels_outside_band_differing": 0,
"d1_pass": true,
"reference_ink_mass": 5757.713725490225,
"candidate_ink_mass": 5753.564705882305,
"d2_relative_delta": 0.0007206019273851708,
"d2_pass": true,
"reference_centroid": [
295.4923870245324,
505.39794798725103
],
"candidate_centroid": [
295.5585188790057,
505.37681328336237
],
"d3_delta": [
0.06613185447332626,
0.021134703888662898
],
"d3_pass": true,
"in_band_max_abs_delta_luma": 96,
"in_band_count_delta_gt_report_threshold": 862,
"d4_regions": [
{
"label": "F-C seg0.glyph0 (face 0, gid 36)",
"reference_mass": 1867.0078431372583,
"candidate_mass": 1865.7019607843133,
"relative_delta": 0.0006994519909196683,
"pass": true
},
{
"label": "F-C seg0.glyph1 (face 0, gid 80)",
"reference_mass": 1438.5607843137286,
"candidate_mass": 1433.0235294117663,
"relative_delta": 0.0038491629706171315,
"pass": true
},
{
"label": "F-C seg0.glyph2 (face 0, gid 83)",
"reference_mass": 1013.2980392156862,
"candidate_mass": 1020.4313725490197,
"relative_delta": 0.007039718875657539,
"pass": true
},
{
"label": "F-C seg0.glyph3 (face 0, gid 80)",
"reference_mass": 1438.847058823533,
"candidate_mass": 1434.4078431372564,
"relative_delta": 0.0030852588946502185,
"pass": true
}
],
"d4_pass": true,
"d4_worst": {
"label": "F-C seg0.glyph2 (face 0, gid 83)",
"reference_mass": 1013.2980392156862,
"candidate_mass": 1020.4313725490197,
"relative_delta": 0.007039718875657539,
"pass": true
},
"pass": true
},
"F-D": {
"width": 1920,
"height": 1080,
"band_pixel_count": 38964,
"d1_pixels_outside_band_differing": 0,
"d1_pass": true,
"reference_ink_mass": 23733.22352941099,
"candidate_ink_mass": 23750.796078431424,
"d2_relative_delta": 0.0007404198169143979,
"d2_pass": true,
"reference_centroid": [
707.2675298233589,
507.4185305219683
],
"candidate_centroid": [
706.8135733902325,
507.4434049104257
],
"d3_delta": [
0.45395643312645007,
0.024874388457419627
],
"d3_pass": true,
"in_band_max_abs_delta_luma": 128,
"in_band_count_delta_gt_report_threshold": 3232,
"d4_regions": [
{
"label": "F-D seg0.glyph0 (face 0, gid 34)",
"reference_mass": 1962.933333333338,
"candidate_mass": 1970.2470588235328,
"relative_delta": 0.0037259163956297717,
"pass": true
},
{
"label": "F-D seg0.glyph1 (face 0, gid 77)",
"reference_mass": 1126.7843137254906,
"candidate_mass": 1127.4156862745117,
"relative_delta": 0.0005603313263507999,
"pass": true
},
{
"label": "F-D seg0.glyph2 (face 0, gid 77)",
"reference_mass": 1123.1372549019607,
"candidate_mass": 1136.8392156862762,
"relative_delta": 0.012199720670392721,
"pass": true
},
{
"label": "F-D seg0.glyph3 (face 0, gid 70)",
"reference_mass": 1347.9568627450994,
"candidate_mass": 1352.4078431372557,
"relative_delta": 0.003302019905215551,
"pass": true
},
{
"label": "F-D seg0.glyph4 (face 0, gid 72)",
"reference_mass": 2228.1019607843186,
"candidate_mass": 2215.4745098039234,
"relative_delta": 0.005667357779241938,
"pass": true
},
{
"label": "F-D seg0.glyph5 (face 0, gid 83)",
"reference_mass": 1012.6588235294114,
"candidate_mass": 1020.921568627451,
"relative_delta": 0.008159455984634176,
"pass": true
},
{
"label": "F-D seg0.glyph6 (face 0, gid 80)",
"reference_mass": 1436.8078431372576,
"candidate_mass": 1432.4274509803936,
"relative_delta": 0.003048697275551783,
"pass": true
},
{
"label": "F-D seg2.glyph1 (face 0, gid 68)",
"reference_mass": 1028.6627450980407,
"candidate_mass": 1023.6705882352942,
"relative_delta": 0.004853054984771197,
"pass": true
},
{
"label": "F-D seg2.glyph2 (face 0, gid 80)",
"reference_mass": 1438.725490196082,
"candidate_mass": 1433.5372549019605,
"relative_delta": 0.003606132879048713,
"pass": true
},
{
"label": "F-D seg2.glyph3 (face 0, gid 79)",
"reference_mass": 1629.4039215686275,
"candidate_mass": 1635.2980392156915,
"relative_delta": 0.0036173459318728373,
"pass": true
},
{
"label": "F-D seg2.glyph5 (face 0, gid 67)",
"reference_mass": 1962.7607843137268,
"candidate_mass": 1961.5960784313743,
"relative_delta": 0.0005934018509340657,
"pass": true
},
{
"label": "F-D seg2.glyph6 (face 0, gid 83)",
"reference_mass": 1013.5490196078433,
"candidate_mass": 1020.0549019607844,
"relative_delta": 0.006418912383200051,
"pass": true
},
{
"label": "F-D seg2.glyph7 (face 0, gid 74)",
"reference_mass": 901.1450980392156,
"candidate_mass": 898.5843137254902,
"relative_delta": 0.0028417003202894663,
"pass": true
},
{
"label": "F-D seg2.glyph8 (face 0, gid 80)",
"reference_mass": 1438.1529411764725,
"candidate_mass": 1432.7764705882369,
"relative_delta": 0.0037384553716779552,
"pass": true
},
{
"label": "F-D seg1.glyph0 (face 1, gid 1282)",
"reference_mass": 851.0117647058834,
"candidate_mass": 853.0666666666667,
"relative_delta": 0.002414657524145445,
"pass": true
},
{
"label": "F-D seg1.glyph1 (face 1, gid 1281)",
"reference_mass": 1426.3529411764723,
"candidate_mass": 1435.4549019607844,
"relative_delta": 0.006381282305068645,
"pass": true
},
{
"label": "F-D seg1.glyph2 (face 1, gid 1280)",
"reference_mass": 1805.0784313725549,
"candidate_mass": 1801.0235294117651,
"relative_delta": 0.0022463854701905853,
"pass": true
}
],
"d4_pass": true,
"d4_worst": {
"label": "F-D seg0.glyph2 (face 0, gid 77)",
"reference_mass": 1123.1372549019607,
"candidate_mass": 1136.8392156862762,
"relative_delta": 0.012199720670392721,
"pass": true
},
"pass": true
},
"F-E": {
"width": 1920,
"height": 1080,
"band_pixel_count": 27495,
"d1_pixels_outside_band_differing": 0,
"d1_pass": true,
"reference_ink_mass": 16241.003921568197,
"candidate_ink_mass": 16262.019607843147,
"d2_relative_delta": 0.0012939893602907742,
"d2_pass": true,
"reference_centroid": [
606.0381566289889,
506.37877838133613
],
"candidate_centroid": [
606.2924338317501,
506.4077932099732
],
"d3_delta": [
0.25427720276127275,
0.02901482863705951
],
"d3_pass": true,
"in_band_max_abs_delta_luma": 112,
"in_band_count_delta_gt_report_threshold": 2223,
"d4_regions": [
{
"label": "F-E seg0.glyph0 (face 0, gid 36)",
"reference_mass": 1867.0078431372583,
"candidate_mass": 1865.7019607843133,
"relative_delta": 0.0006994519909196683,
"pass": true
},
{
"label": "F-E seg0.glyph1 (face 0, gid 66)",
"reference_mass": 1406.5058823529423,
"candidate_mass": 1404.9568627451004,
"relative_delta": 0.001101324656567097,
"pass": true
},
{
"label": "F-E seg0.glyph2 (face 0, gid 71)",
"reference_mass": 1293.4627450980406,
"candidate_mass": 1291.156862745099,
"relative_delta": 0.0017827203463574063,
"pass": true
},
{
"label": "F-E seg0.glyph3 (face 0, gid 198)",
"reference_mass": 1576.113725490198,
"candidate_mass": 1577.1450980392176,
"relative_delta": 0.0006543769858350831,
"pass": true
},
{
"label": "F-E seg0.glyph5 (face 0, gid 119)",
"reference_mass": 959.780392156863,
"candidate_mass": 959.7529411764707,
"relative_delta": 0.00002860131402617683,
"pass": true
},
{
"label": "F-E seg0.glyph7 (face 0, gid 83)",
"reference_mass": 1013.5764705882351,
"candidate_mass": 1025.7019607843142,
"relative_delta": 0.011963073875463992,
"pass": true
},
{
"label": "F-E seg0.glyph8 (face 0, gid 70)",
"reference_mass": 1347.929411764708,
"candidate_mass": 1351.5176470588242,
"relative_delta": 0.002662035016669373,
"pass": true
},
{
"label": "F-E seg0.glyph9 (face 0, gid 84)",
"reference_mass": 1183.2627450980413,
"candidate_mass": 1175.768627450981,
"relative_delta": 0.006333434968781389,
"pass": true
},
{
"label": "F-E seg0.glyph10 (face 0, gid 86)",
"reference_mass": 1597.6784313725498,
"candidate_mass": 1603.2784313725497,
"relative_delta": 0.0035050858107842165,
"pass": true
},
{
"label": "F-E seg0.glyph11 (face 0, gid 78)",
"reference_mass": 2515.4901960784387,
"candidate_mass": 2524.2117647058844,
"relative_delta": 0.003467144750173305,
"pass": true
},
{
"label": "F-E seg0.glyph12 (face 0, gid 198)",
"reference_mass": 1554.384313725492,
"candidate_mass": 1554.4627450980395,
"relative_delta": 0.000050458160092726724,
"pass": true
}
],
"d4_pass": true,
"d4_worst": {
"label": "F-E seg0.glyph7 (face 0, gid 83)",
"reference_mass": 1013.5764705882351,
"candidate_mass": 1025.7019607843142,
"relative_delta": 0.011963073875463992,
"pass": true
},
"pass": true
}
},
"hittest_probe_results": [
{
"fixture_id": "F-A",
"point": {
"x": 209.765625,
"y": 540.0
},
"expected_source_offset": 0,
"expected_affinity": "Downstream",
"actual_source_offset": 0,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 278.173828125,
"y": 540.0
},
"expected_source_offset": 1,
"expected_affinity": "Downstream",
"actual_source_offset": 1,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 315.4296875,
"y": 540.0
},
"expected_source_offset": 2,
"expected_affinity": "Downstream",
"actual_source_offset": 2,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 364.697265625,
"y": 540.0
},
"expected_source_offset": 3,
"expected_affinity": "Downstream",
"actual_source_offset": 3,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 431.884765625,
"y": 540.0
},
"expected_source_offset": 4,
"expected_affinity": "Downstream",
"actual_source_offset": 4,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 493.75,
"y": 540.0
},
"expected_source_offset": 5,
"expected_affinity": "Downstream",
"actual_source_offset": 5,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 553.955078125,
"y": 540.0
},
"expected_source_offset": 6,
"expected_affinity": "Downstream",
"actual_source_offset": 6,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 604.8828125,
"y": 540.0
},
"expected_source_offset": 7,
"expected_affinity": "Downstream",
"actual_source_offset": 7,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 652.880859375,
"y": 540.0
},
"expected_source_offset": 8,
"expected_affinity": "Downstream",
"actual_source_offset": 8,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 704.833984375,
"y": 540.0
},
"expected_source_offset": 9,
"expected_affinity": "Downstream",
"actual_source_offset": 9,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 744.7265625,
"y": 540.0
},
"expected_source_offset": 10,
"expected_affinity": "Downstream",
"actual_source_offset": 10,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 795.3125,
"y": 540.0
},
"expected_source_offset": 11,
"expected_affinity": "Downstream",
"actual_source_offset": 11,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 846.826171875,
"y": 540.0
},
"expected_source_offset": 12,
"expected_affinity": "Downstream",
"actual_source_offset": 12,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 888.525390625,
"y": 540.0
},
"expected_source_offset": 13,
"expected_affinity": "Downstream",
"actual_source_offset": 13,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 947.998046875,
"y": 540.0
},
"expected_source_offset": 14,
"expected_affinity": "Downstream",
"actual_source_offset": 14,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 1021.533203125,
"y": 540.0
},
"expected_source_offset": 15,
"expected_affinity": "Downstream",
"actual_source_offset": 15,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 1083.59375,
"y": 540.0
},
"expected_source_offset": 16,
"expected_affinity": "Downstream",
"actual_source_offset": 16,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 1145.703125,
"y": 540.0
},
"expected_source_offset": 17,
"expected_affinity": "Downstream",
"actual_source_offset": 17,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 1196.630859375,
"y": 540.0
},
"expected_source_offset": 18,
"expected_affinity": "Downstream",
"actual_source_offset": 18,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 1276.611328125,
"y": 540.0
},
"expected_source_offset": 19,
"expected_affinity": "Downstream",
"actual_source_offset": 19,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 1356.640625,
"y": 540.0
},
"expected_source_offset": 22,
"expected_affinity": "Downstream",
"actual_source_offset": 22,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 1404.638671875,
"y": 540.0
},
"expected_source_offset": 23,
"expected_affinity": "Downstream",
"actual_source_offset": 23,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 1455.2734375,
"y": 540.0
},
"expected_source_offset": 24,
"expected_affinity": "Downstream",
"actual_source_offset": 24,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 1489.892578125,
"y": 540.0
},
"expected_source_offset": 25,
"expected_affinity": "Downstream",
"actual_source_offset": 25,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 1525.244140625,
"y": 540.0
},
"expected_source_offset": 26,
"expected_affinity": "Downstream",
"actual_source_offset": 26,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 1563.96484375,
"y": 540.0
},
"expected_source_offset": 27,
"expected_affinity": "Downstream",
"actual_source_offset": 27,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 1620.556640625,
"y": 540.0
},
"expected_source_offset": 28,
"expected_affinity": "Downstream",
"actual_source_offset": 28,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 139.9609375,
"y": 540.0
},
"expected_source_offset": 0,
"expected_affinity": "Downstream",
"actual_source_offset": 0,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-A",
"point": {
"x": 1677.8125,
"y": 540.0
},
"expected_source_offset": 29,
"expected_affinity": "Downstream",
"actual_source_offset": 29,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-B",
"point": {
"x": 205.322265625,
"y": 540.0
},
"expected_source_offset": 0,
"expected_affinity": "Downstream",
"actual_source_offset": 0,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-B",
"point": {
"x": 285.64453125,
"y": 540.0
},
"expected_source_offset": 1,
"expected_affinity": "Downstream",
"actual_source_offset": 1,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-B",
"point": {
"x": 345.8984375,
"y": 540.0
},
"expected_source_offset": 2,
"expected_affinity": "Downstream",
"actual_source_offset": 2,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-B",
"point": {
"x": 406.103515625,
"y": 540.0
},
"expected_source_offset": 3,
"expected_affinity": "Downstream",
"actual_source_offset": 3,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-B",
"point": {
"x": 457.03125,
"y": 540.0
},
"expected_source_offset": 4,
"expected_affinity": "Downstream",
"actual_source_offset": 4,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-B",
"point": {
"x": 494.189453125,
"y": 540.0
},
"expected_source_offset": 9,
"expected_affinity": "Downstream",
"actual_source_offset": 9,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-B",
"point": {
"x": 546.142578125,
"y": 540.0
},
"expected_source_offset": 7,
"expected_affinity": "Downstream",
"actual_source_offset": 7,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-B",
"point": {
"x": 139.9609375,
"y": 540.0
},
"expected_source_offset": 0,
"expected_affinity": "Downstream",
"actual_source_offset": 0,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-B",
"point": {
"x": 596.953125,
"y": 540.0
},
"expected_source_offset": 5,
"expected_affinity": "Downstream",
"actual_source_offset": 5,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-C",
"point": {
"x": 205.322265625,
"y": 540.0
},
"expected_source_offset": 0,
"expected_affinity": "Downstream",
"actual_source_offset": 0,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-C",
"point": {
"x": 285.64453125,
"y": 540.0
},
"expected_source_offset": 1,
"expected_affinity": "Downstream",
"actual_source_offset": 1,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-C",
"point": {
"x": 345.8984375,
"y": 540.0
},
"expected_source_offset": 2,
"expected_affinity": "Downstream",
"actual_source_offset": 2,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-C",
"point": {
"x": 406.103515625,
"y": 540.0
},
"expected_source_offset": 3,
"expected_affinity": "Downstream",
"actual_source_offset": 3,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-C",
"point": {
"x": 457.03125,
"y": 540.0
},
"expected_source_offset": 4,
"expected_affinity": "Downstream",
"actual_source_offset": 4,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-C",
"point": {
"x": 139.9609375,
"y": 540.0
},
"expected_source_offset": 0,
"expected_affinity": "Downstream",
"actual_source_offset": 0,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-C",
"point": {
"x": 493.046875,
"y": 540.0
},
"expected_source_offset": 5,
"expected_affinity": "Downstream",
"actual_source_offset": 5,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 209.765625,
"y": 540.0
},
"expected_source_offset": 0,
"expected_affinity": "Downstream",
"actual_source_offset": 0,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 278.173828125,
"y": 540.0
},
"expected_source_offset": 1,
"expected_affinity": "Downstream",
"actual_source_offset": 1,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 315.4296875,
"y": 540.0
},
"expected_source_offset": 2,
"expected_affinity": "Downstream",
"actual_source_offset": 2,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 364.697265625,
"y": 540.0
},
"expected_source_offset": 3,
"expected_affinity": "Downstream",
"actual_source_offset": 3,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 431.884765625,
"y": 540.0
},
"expected_source_offset": 4,
"expected_affinity": "Downstream",
"actual_source_offset": 4,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 493.75,
"y": 540.0
},
"expected_source_offset": 5,
"expected_affinity": "Downstream",
"actual_source_offset": 5,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 553.955078125,
"y": 540.0
},
"expected_source_offset": 6,
"expected_affinity": "Downstream",
"actual_source_offset": 6,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 604.8828125,
"y": 540.0
},
"expected_source_offset": 7,
"expected_affinity": "Downstream",
"actual_source_offset": 7,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 642.041015625,
"y": 540.0
},
"expected_source_offset": 12,
"expected_affinity": "Downstream",
"actual_source_offset": 12,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 693.994140625,
"y": 540.0
},
"expected_source_offset": 10,
"expected_affinity": "Downstream",
"actual_source_offset": 10,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 763.232421875,
"y": 540.0
},
"expected_source_offset": 8,
"expected_affinity": "Downstream",
"actual_source_offset": 8,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 817.626953125,
"y": 540.0
},
"expected_source_offset": 14,
"expected_affinity": "Downstream",
"actual_source_offset": 14,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 862.01171875,
"y": 540.0
},
"expected_source_offset": 15,
"expected_affinity": "Downstream",
"actual_source_offset": 15,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 925.390625,
"y": 540.0
},
"expected_source_offset": 16,
"expected_affinity": "Downstream",
"actual_source_offset": 16,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 997.607421875,
"y": 540.0
},
"expected_source_offset": 17,
"expected_affinity": "Downstream",
"actual_source_offset": 17,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 1050.87890625,
"y": 540.0
},
"expected_source_offset": 18,
"expected_affinity": "Downstream",
"actual_source_offset": 18,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 1102.24609375,
"y": 540.0
},
"expected_source_offset": 19,
"expected_affinity": "Downstream",
"actual_source_offset": 19,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 1162.890625,
"y": 540.0
},
"expected_source_offset": 20,
"expected_affinity": "Downstream",
"actual_source_offset": 20,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 1206.54296875,
"y": 540.0
},
"expected_source_offset": 21,
"expected_affinity": "Downstream",
"actual_source_offset": 21,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 139.9609375,
"y": 540.0
},
"expected_source_offset": 0,
"expected_affinity": "Downstream",
"actual_source_offset": 0,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-D",
"point": {
"x": 1244.90234375,
"y": 540.0
},
"expected_source_offset": 22,
"expected_affinity": "Downstream",
"actual_source_offset": 22,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-E",
"point": {
"x": 205.322265625,
"y": 540.0
},
"expected_source_offset": 0,
"expected_affinity": "Downstream",
"actual_source_offset": 0,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-E",
"point": {
"x": 282.71484375,
"y": 540.0
},
"expected_source_offset": 1,
"expected_affinity": "Downstream",
"actual_source_offset": 1,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-E",
"point": {
"x": 335.400390625,
"y": 540.0
},
"expected_source_offset": 2,
"expected_affinity": "Downstream",
"actual_source_offset": 2,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-E",
"point": {
"x": 386.71875,
"y": 540.0
},
"expected_source_offset": 3,
"expected_affinity": "Downstream",
"actual_source_offset": 3,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-E",
"point": {
"x": 433.3984375,
"y": 540.0
},
"expected_source_offset": 6,
"expected_affinity": "Downstream",
"actual_source_offset": 6,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-E",
"point": {
"x": 513.37890625,
"y": 540.0
},
"expected_source_offset": 7,
"expected_affinity": "Downstream",
"actual_source_offset": 7,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-E",
"point": {
"x": 593.359375,
"y": 540.0
},
"expected_source_offset": 10,
"expected_affinity": "Downstream",
"actual_source_offset": 10,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-E",
"point": {
"x": 634.66796875,
"y": 540.0
},
"expected_source_offset": 11,
"expected_affinity": "Downstream",
"actual_source_offset": 11,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-E",
"point": {
"x": 690.625,
"y": 540.0
},
"expected_source_offset": 12,
"expected_affinity": "Downstream",
"actual_source_offset": 12,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-E",
"point": {
"x": 748.388671875,
"y": 540.0
},
"expected_source_offset": 13,
"expected_affinity": "Downstream",
"actual_source_offset": 13,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-E",
"point": {
"x": 814.111328125,
"y": 540.0
},
"expected_source_offset": 14,
"expected_affinity": "Downstream",
"actual_source_offset": 14,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-E",
"point": {
"x": 909.228515625,
"y": 540.0
},
"expected_source_offset": 15,
"expected_affinity": "Downstream",
"actual_source_offset": 15,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-E",
"point": {
"x": 139.9609375,
"y": 540.0
},
"expected_source_offset": 0,
"expected_affinity": "Downstream",
"actual_source_offset": 0,
"actual_affinity": "Downstream",
"pass": true
},
{
"fixture_id": "F-E",
"point": {
"x": 985.72265625,
"y": 540.0
},
"expected_source_offset": 16,
"expected_affinity": "Downstream",
"actual_source_offset": 16,
"actual_affinity": "Downstream",
"pass": true
}
],
"a11y_evidence": [
{
"fixture_id": "F-A",
"platform": "at-spi2",
"observed_name": "Allegro affettuoso — al fine",
"observed_name_bytes_hex": "416c6c6567726f20616666657474756f736f20e2809420616c2066696e65",
"observed_role": "paragraph",
"prohibited_outcome": null,
"pass": true,
"notes": "a node with an accepted role ('paragraph') carries the accessible name byte-for-byte"
},
{
"fixture_id": "F-B",
"platform": "at-spi2",
"observed_name": "Coro אבג",
"observed_name_bytes_hex": "436f726f20d790d791d792",
"observed_role": "paragraph",
"prohibited_outcome": null,
"pass": true,
"notes": "a node with an accepted role ('paragraph') carries the accessible name byte-for-byte"
},
{
"fixture_id": "F-C",
"platform": "at-spi2",
"observed_name": "Coro ا",
"observed_name_bytes_hex": "436f726f20d8a7",
"observed_role": "paragraph",
"prohibited_outcome": null,
"pass": true,
"notes": "a node with an accepted role ('paragraph') carries the accessible name byte-for-byte"
},
{
"fixture_id": "F-D",
"platform": "at-spi2",
"observed_name": "Allegro אבג con brio",
"observed_name_bytes_hex": "416c6c6567726f20d790d791d79220636f6e206272696f",
"observed_role": "paragraph",
"prohibited_outcome": null,
"pass": true,
"notes": "a node with an accepted role ('paragraph') carries the accessible name byte-for-byte"
},
{
"fixture_id": "F-E",
"platform": "at-spi2",
"observed_name": "Café — resumé",
"observed_name_bytes_hex": "43616665cc8120e2809420726573756d65cc81",
"observed_role": "paragraph",
"prohibited_outcome": null,
"pass": true,
"notes": "a node with an accepted role ('paragraph') carries the accessible name byte-for-byte"
}
],
"cost": {
"baseline_commit": "c20bc93",
"dependencies_added": [
{
"name": "round2-candidatekit",
"version": "0.1.0 (path)",
"reason": "the shared fixture/oracle loader and report shape both Round 2 candidates report through (neutrality boundary)."
},
{
"name": "round2-diff",
"version": "0.1.0 (path)",
"reason": "the bounded visual differential (D1-D4) check 1 is scored against."
},
{
"name": "round2-textkit",
"version": "0.1.0 (path)",
"reason": "SpikeResolvedText and the declared-face loader/hasher (pin 9); the neutral staff->device transform (hittest::to_device)."
},
{
"name": "ttf-parser",
"version": "0.25.1",
"reason": "candidate-owned outline extraction from the resolved face into a kurbo BezPath (task instructions) — not reused from round2-svgref, whose output is an SVG path string for the reference emitter, not kurbo geometry."
},
{
"name": "serde_json",
"version": "1.0.151",
"reason": "serializes CandidateReport to JSON and parses a11y-verifier/verify.py's --json output."
},
{
"name": "winit",
"version": "0.30.13",
"reason": "check 5 needs a real window on the AT-SPI bus; matches probe-vello's Round 0 pin exactly."
},
{
"name": "accesskit",
"version": "0.24.1",
"reason": "the accessibility node/tree types this candidate builds by hand (vello ships no accessibility layer)."
},
{
"name": "accesskit_winit",
"version": "0.33.2",
"reason": "the manual winit<->accesskit bridge; matches probe-vello's Round 0 pin exactly."
}
],
"adapters": [
{
"Implemented": {
"platform": "accesskit-0.24",
"notes": "the in-process accessibility tree this binary constructs by hand (Role::Window root, Role::Paragraph children) — the same tree every platform bridge below is built from. vello ships no accessibility layer, so accesskit was absent from this crate's Round 1 dependency graph at c20bc93 and is declared here directly.",
"integration_ownership": "CandidateOwned"
}
},
{
"Implemented": {
"platform": "at-spi2",
"notes": "the round's own platform: a live window pushed through accesskit_winit 0.33 -> accesskit_unix 0.22.1, read back out-of-process by a11y-verifier/verify.py (an AT-SPI2 client via gi.repository.Atspi) for all five fixtures. See a11y_evidence in this run's report.",
"integration_ownership": "CandidateOwned"
}
},
{
"NotBuilt": {
"platform": "aria",
"reason": "no wasm/web accesskit embedding target in this spike."
}
},
{
"NotBuilt": {
"platform": "macos-nsaccessibility",
"reason": "no macOS runner available to this spike."
}
},
{
"NotBuilt": {
"platform": "windows-uia",
"reason": "no Windows runner available to this spike."
}
}
],
"integration_wiring": [
"render.rs: a ttf_parser::OutlineBuilder implementation collecting one glyph's outline directly into a device-space kurbo::BezPath (scale + y-flip), reused per glyph across every segment/face in a fixture; one vello::Scene::fill(NonZero) call per glyph, matching the reference emitter's fill rule.",
"hittest.rs: an independent point -> (byte offset, affinity) resolver — every Downstream caret stop across every cluster, converted to device space via the shared to_device transform, sorted by device x, floor-looked-up against the query point. Does not call any of round2_textkit::hittest's probe-generation functions.",
"a11y_tree.rs: builds the accessible node content by hand — one Role::Window root plus five Role::Paragraph siblings (one per fixture), each carrying that fixture's exact source string as its accessible name. No platform/adapter code.",
"a11y_wiring.rs (AccessibilityIntegrationWiring, product-side only, H1/J2): manual accesskit_winit wiring behind a generic, verifier-agnostic surface -- run_window<T> owns the winit event loop, the accesskit_winit::Adapter's lifecycle, window/bridge setup, and publishing a11y_tree.rs's tree, then blocks until any caller delivers a T via FinishHandle::finish and returns it. Nothing in this file names a verifier, a subprocess, or A11yRoundResult -- every line here is what a real editor shipping this stack would keep.",
"a11y_subprocess.rs (FixtureAndReportPlumbing, shared spike/report harness, H1/J2): drives a11y_wiring::run_window, spawning the worker thread whose only jobs are calling run_all_fixtures and delivering its result -- the coordination that exists solely because this spike scores itself out-of-process, moved out of the wiring file entirely. run_all_fixtures itself runs a11y-verifier/verify.py once per fixture as a subprocess, against a fresh run-unique --json output path deleted immediately before each invocation (F1), cross-checking the exit status against the json's own verdict and fixture_id fields before trusting either; requires the exact 'CHECK5: NOT RUN' prefix AND one of verify.py's approved environmental markers before treating exit 2 as bus-unreachable, checked as two independent conditions (H2); reduces all five fixtures' outcomes to the round's verdict only after every one has been attempted, so a FAIL found on any fixture always wins over a BusUnreachable found on another regardless of ordering (F2). This harness is common to both Round 2 candidates and is not part of either one's accessibility stack.",
"c2_round2_text.rs (FixtureAndReportPlumbing): orchestration, plus the check2/supplementary structural verifications (segment face-index and direction checks against the resolved data actually drawn from) that round2-candidatekit's neutrality boundary leaves to the candidate; the F3/H1 loc_by_part file mapping and its exhaustiveness guard."
],
"loc_by_part": [
{
"part": "TextRendering",
"lines": 342
},
{
"part": "HitTestResolution",
"lines": 254
},
{
"part": "AccessibilityTreeConstruction",
"lines": 109
},
{
"part": "AccessibilityIntegrationWiring",
"lines": 199
},
{
"part": "FixtureAndReportPlumbing",
"lines": 1925
}
]
}
}