XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFESystem

【Rust】XFE系统,基于Rust和汇编

公开
关注 0 Fork 0 Star 0
UTF-8

Bing CSS 与 Monaco 会话修复(2026-10-16)

本轮修复实际 Bing 页面的剩余排版问题,以及 Monaco 初始化过程中偶发的空会话。交付范围为 Desktop 单系统实验镜像;用户明确暂不写入 U 盘,本轮没有打开或改写实体磁盘。

搜索导航的自动内在宽度也曾错误使用包含块宽度来计算内部 100% 下划线,使每个标签占满整行,后续标签被页头裁剪。现在内在尺寸忽略循环百分比,并在最终排版中按确定的包含块解析一次百分比;实际七个导航标签均需进入可见绘制命令。

引用网址的排版有两个原因:嵌套行向 flex 的内在宽度原来取子项最大值,遗漏图标、正文与间距的相加;内在文字宽度按整段字符串测量,实际绘制却拆成单词和空格,字距使两者不一致。现在使用相同文字分段计量。二维 CSS transform 按矩阵顺序和 transform-origin 合成,并同步到绘制、裁剪、命中、文本范围与冻结快照;官网缩放旋转的边框箭头不再画成原始大 L。SVG 的本地 use/symbol 引用保留实际继承颜色,外部引用和循环仍受拒绝或有界限制。

Monaco 空会话已经复现并取得原异常:Jint 的 .NET Regex 在 100 ms 墙钟限制下,甚至对 27 字符的 listFilterWidget.background 执行 /./ 替换也会超时。初始化脚本因此中断,后续 undefined editor 掩盖了首个错误。单独修复字面替换仍出现其他短正则超时;同一进程的 GC 压力实验随后记录了 257.883 ms 暂停与约 1.2567 ms 墙钟减 GC 的有效时间估算。

最终修改只对有界的纯字面字符串替换使用顺序查找;复杂正则继续原实现。纯 Match / IsMatch / 字符串 Replace 仅在实际超时且观测到 GC 暂停时,用扣除已耗时后的剩余预算重试,最多两次。没有重新给完整预算,也不重放 JavaScript 回调;依赖当前文化的大小写匹配不重试。此方法是墙钟减 GC 暂停的估计,不是线程 CPU 计时。真实脚本初始化的首个错误现在会保留并显示,不再被 undefined editor 覆盖。私有补丁固定 Jint 4.11.0 原始哈希、IL 调用形状、补丁标记与收据,未修改全局 NuGet 包或官方 Monaco 资源。

Edge 使用 V8,XFESystem 使用 Jint 解释器和自研软件绘制,执行架构本来就不同;本轮修复的是已实测的错误与排版热点,并未实现 V8 JIT、GPU 渲染或 SMP。参考 Jint RegExpPrototype 与 V8 正则实现说明,没有声称替换成 Chromium/V8。

真实官网对照还暴露了脚本初始化兼容问题:网页替换 Promise 后,宿主 queueMicrotask 递归调用被替换的 Promise;现在保留独立的原生微任务入口。节点变更方法位于共享 Node 原型并使用实际接收者;增加真实有界 DOMParser、TreeWalker 和 Text.splitText。AngleSharp 1.7.1 的后向 TreeWalker 对拒绝节点不前进,已按 DOM 指针实现有界后向遍历。XML 使用固定 AngleSharp.Xml 1.2.0 的纯托管解析器,DTD/外部声明在解析前拒绝;惰性脚本在克隆、移入主文档后仍不会执行。完整 MIT 版权与包锁随包保留。

Bing 的 Rewards 脚本实际返回 application/json,另有探测脚本返回 text/html。Edge 允许未带 nosniff 的经典脚本继续解析;本轮按该规则修正 MIME 判断,仍拒绝 nosniff 不匹配、图片/音视频/CSV,保留 TLS 与 CSP。依据 HTML 经典脚本获取 和 Fetch nosniff。HTTP 与 navigator 使用同一个诚实 XFESystem User-Agent,没有冒充 Chrome。

完整宿主回归为 17 组、1666 项(浏览器 585、Jint 68),最终程序集的四工作线程、384 次实际 Monaco 打开与 GC 压力复测无空会话或原文丢失,开始与结束的程序集字节相同。此记录不代表所有负载下永无停顿。25 项 Bing 证据检查(包含实际 PowerShell 启动验证器的 34 组正负样例)、11 项单系统策略与 5 项交付分派保护通过。926 个宿主与来宾输入的工作区及暂存字节与构建哈希一致。

最终同一 Desktop 内核与镜像通过完整 QEMU 验收:Bing 主页、真实键鼠输入的 Microsoft .NET / Microsoft CSharp 查询,两个结果页各 6 张连续重叠画面覆盖至页尾;每次查询均有七个可见导航、解码后的 PNG 图标及实际像素,所有捕获帧的可见图片缺失数和待处理资源数均为零。Monaco 实际编辑、文档八阶段、终端流程、同一私有 USB 镜像两次冷启动与五个测试卷独立回读全部通过,QEMU 正常退出且源码未变化。

原生记录:build/IndependentKernel/Proof-1792113213603993800/Result.json;宿主记录:build/CSharp/HostTests-1792112065272/Result.json;详细汇总见 JSON 摘要。这些检查针对本轮实际官网响应与指定流程;不表示任意网站、未来服务器变体、完整 CSS/JavaScript 或 Chromium 逐像素兼容。仍是单 BSP、软件绘制的实验版,实体启动/网络、GPU/CUDA、SMP、完整 CLR 与长期稳定性未因此获得验收。原失败日志、字面替换单独不足以修复的记录,以及首次 XML 引入未实现 ABI 导致链接失败的记录均保留在本轮 build/BingCssMonaco20261016 下;不将它们计为成功。

第二次查询也必须有实际解码的小型 PNG 图标及对应帧缓冲像素,防止 SSR 文字先到、惰性图标尚未加载时提前通过。旧版第二次查询首屏的灰色占位截图被保留并拒绝作为最终交付证据。

交付包为 dist/XFESystem-Desktop-Independent-USB-0.3.0-dev.4-bing-css-monaco.1-1792113907524-4bb5edd7.zip,SHA256 为 235e3bfb2428070097d3e6a2a2d48fedc21055ef3eea5f1c4a8d2557efd4149b。ZIP 全回读、1613 文件解压哈希和主项目 dist 中的重定位 PowerShell 5.1 启动计划通过,原始镜像 SHA256 e463fa94b7fa162662c330b0c0fa7d1f1e9ac21a05b57086a66a3d52900c18de 未改变。启动器需要已安装的 QEMU;可按包内 Readme 通过 -QemuPath 指定。最初未指定 QEMU 路径的计划失败记录保留,后续显式路径的实际计划通过。

未写入专用 U 盘,未打开实体磁盘。主目录旧 EFI 换行差异保持原字节、未暂存;源码提交不包含编译输出、原始浏览器账户截图或 HAR。