
Bez. դիտարկիչի շարժիչ, որը գեներացվում է սպեցիֆիկացիաներից և թեստերից
Bez նախագիծը դիտարկիչի շարժիչը ձեռքով գրելու փոխարեն գեներացնում է սպեցիֆիկացիաներից. մոդելը գրում է կոդի տարբերակներ, արդյունքը ստուգում են Chromium, Firefox և WebKit-ը, իսկ հաղթող տարբերակները պահվում են որպես սովորական Rust կոդ։
Ինչ է Bez-ը
Bez-ը նախագիծ է, որը դիտարկիչի շարժիչը ձեռքով գրելու փոխարեն գեներացնում է սպեցիֆիկացիաներից և թեստերից։ Հեղինակների խոսքով՝ շարժիչը ձեռքով կառուցելը պահանջում է հարյուրավոր ինժեներներ և տարիներ, ուստի այն կարող են ստեղծել միայն մի քանի ընկերություններ, և միայն նրանք են որոշում, թե ինչպես է աշխատում վեբ հարթակը։ Խողովակաշարում մոդելը սպեցիֿիկացիայից գրում է կոդի բազմաթիվ տարբերակներ. յուրաքանչյուրը բացվում է շարժիչում, և արդյունքը համեմատվում է երեք առաջատար դիտարկիչների հետ (Chromium, Firefox, WebKit). արդյո՞ք նույն տուփերը նույն տեղերում են։ Մերժված տարբերակները վերադառնում են մոդելին, իսկ հաստատվածները պահվում են որպես սովորական Rust կոդ։ Որպես թեստեր օգտագործվում է WPT-ը, իսկ մեկ անգամ կառուցված խողովակաշարից հետո յուրաքանչյուր լրացուցիչ շարժիչ էժան է։
Նախագծի ընթացիկ վիճակը
2026 թվականի սեպտեմբերի 25-ին (browser-compat-data 8.0.4, 17 259 տարր, 74 կանոն) վեբ մակերեսի 0,6%-ը գեներացված է, 0,3%-ը՝ ձեռքով գրված, 0,5%-ը՝ կապված, 5,7%-ը՝ միայն էտալոնային ստուգմամբ ծածկված, իսկ 93,0%-ը դեռ չի յուրացվել։ Ամենաառաջ CSS-ն է՝ 2,5%-ով. HTML, JavaScript, SVG, WebAssembly, HTTP և MathML դեռ ամբողջությամբ ծածկված չեն։ crates/layout/src/generated-ում CSS 2.1-ի ինը կանոն կա. ութը գրել են մոդելները և ընդունվել դիտարկիչների քվեարկությամբ, իսկ բլոկի բարձրության կանոնը մնացել է ձեռքով, քանի որ ոչ մի թեկնածու չի հաղթել։ Դրանք անցնում են 227 բաղադրատոմսային դեպք և WPT-ի 11 օգտակար էջ։

Ինչ են ցույց տալիս փորձերը
235 փաստաթղթի վրա 705 զույգային համեմատություններից 699-ը համընկել են։ Բոլոր վեց հակադրությունները վերաբերում էին մինչև տասներկու մակարդակ ներկառուցված տոկոսներին. մեծամասնությամբ աչքի ընկածը միշտ Firefox-ն էր։ Տարբերությունը վեբ համատեղելիության իրական թերություն է. Gecko-ն երկարությունը կլորացնում է մինչև 1/60 px, իսկ Blink-ն ու WebKit-ը օգտագործում են 1/64 px։ Վերարտադրությունները համընկնում են Mozilla-ի հաստատված թերություններին Slack-ում, Google Store-ում և Samsung-ում, ինչպես նաև Mozilla-ի 1719314 բագին։ WPT-ի քվեարկությունը. երեք շարժիչների մեծամասնությունը 2 282 301 դեպքից ծածկում է 2 162 676-ը (94,8%)։ Համապատասխանության փաթեթները օգտակար էտալոններ են. WebGL-ը dEQP-ի հետ՝ 99,7%, WPT canvas՝ 82,6%, WPT Web Audio՝ 74,4%, WebGPU CTS-ը վալիդացիայի համար՝ մոտավորապես 85%։ Datalog-ով գրված սահմանների ծալումը 1195 դեպքից 1195-ում համընկել է դիտարկիչների հետ և բռնել է ցանված սխալը, որը բաց թողեց երկրաչափության ստուգումը։
Նպատակներ և բաց հարցեր
Լռելյայն տարբերակը ամբողջական շարժիչ է, սակայն այլ նպատակների համար հնարավոր է միացնել միայն անհրաժեշտ ֆունկցիաները. մնացածը նույնիսկ բինարի մեջ չի մտնում, և ոչ թե պարզապես անջատված է։ Փոքր շարժիչը ավելի քիչ աշխատանք և հիշողություն է պահանջում, իսկ հավելվածներում ու սարքերում հեշտ է ներկառուցել։ Սպեցիֿիկացիան կամ թեստը փոխելիս կոդը նորից գեներացվում և ստուգվում է, այլևս ձեռքով չի վերագրվում։ Տնտեսությունը հարթակի մասի համար արդարացված է. համատեղելիության գրառումների մոտ 55-60%-ն ունի օգտակար ավտոմատ էտալոն և գեներացվող սպեցիֿիկացիա, իսկ 8-18%-ը՝ ոչ մեկը։ Բաց հարցերից են յուրաքանչյուր կանոնի ձեռքով կառուցման գինը, WPT-ի հասանելիությունը առանց JavaScript-ի և IDL-ից գեներացված կոդի սահմանները։
SiTech — AI-ով հզորացված վեբ մշակում
Ստեղծում ենք արագ ու ժամանակակից կայքեր և AI-ը ներդնում իրական բիզնես գործընթացներում։ Ունե՞ք նախագիծ կամ հարց։ Ուրախ կլինենք օգնել։