pjh123
|
875f6dac60
|
test: 对象模块内联测试整块迁入兄弟测试文件
|
2026-09-15 18:05:00 +00:00 |
|
pjh123
|
66ad14159d
|
test: 值/形状/私有键/内存内联测试迁入兄弟测试文件
|
2026-09-15 18:04:15 +00:00 |
|
pjh123
|
263bdb5d27
|
test: 内联测试移入 oxide_dce 集成测试
|
2026-09-15 17:50:18 +00:00 |
|
pjh123
|
f834c2dd9c
|
test: runtime_api 公开 API 测试移入集成测试
|
2026-09-15 17:45:15 +00:00 |
|
pjh123
|
f8ca6ddc92
|
refactor: runtime_api 强转函数族整体移入 coercion 模块
|
2026-09-15 17:41:07 +00:00 |
|
pjh123
|
c2f0df9cf1
|
refactor: runtime_api 返回值类型与 trait 面拆出独立模块
|
2026-09-15 17:34:54 +00:00 |
|
pjh123
|
b0ed3641f3
|
test: 构造器内联测试移入 oxide_ir 集成测试
|
2026-09-15 17:21:01 +00:00 |
|
pjh123
|
7b1a37cd66
|
test: 契约内联测试移入 oxide_ir 集成测试
|
2026-09-15 17:20:26 +00:00 |
|
pjh123
|
54c1da6433
|
fix: eval 顶层 let/const 的 delete 探针臂收窄至 var/函数名集
|
2026-09-15 17:05:59 +00:00 |
|
pjh123
|
6cde7738b1
|
fix: 块级函数声明支臂不再块入口物化,声明点按入口物化状态区分写回
|
2026-09-15 16:41:37 +00:00 |
|
pjh123
|
7ca2f764c2
|
test: 移除 var 与 let 寄存器数相等的过时断言
|
2026-09-15 15:21:20 +00:00 |
|
pjh123
|
0418820115
|
fix: 块级函数 builtin 名守卫收窄至只读三常量面,可配置 builtin 恢复实例化写回
|
2026-09-15 06:42:12 +00:00 |
|
pjh123
|
1b26bc7ed8
|
fix: 块级函数声明闭包物化提前至块入口,声明点退化为外层 var 写回
|
2026-09-15 05:42:08 +00:00 |
|
pjh123
|
4452f1da69
|
fix: delete 标识符按 DeleteBinding 三分类发运行期探针,补真删与读侧效应
|
2026-09-15 05:03:28 +00:00 |
|
pjh123
|
aafd07728c
|
fix: delete 非对象基按 ToObject 装箱判删,仅 null/undefined 基抛错
|
2026-09-15 03:56:18 +00:00 |
|
pjh123
|
320c660620
|
fix: 块级函数声明补 web-compat 外层 var 绑定实例化与声明点写回
|
2026-09-15 03:48:19 +00:00 |
|
pjh123
|
0f5bd1577e
|
fix: 字符串面 GetIterator 尊重用户 @@iterator 覆盖
String 臂此前对原始串与装箱串一律走码元步进、忽略用户覆盖的
@@iterator。改为按 GetMethod 语义以值自身为 receiver 读 @@iterator
(原始串落 String.prototype、装箱串读自身→原型链),默认迭代器
自别名即 @@iterator 槽本身、以绑定层捕获的函数指针比较走快速
路径避免递归回本臂;覆盖则调用、receiver 为值。peek 对非字符串
原始值先装箱再读 @@iterator;Iterator.from 增 GetIteratorFlattenable
前置校验,非字符串原始值非对象 → TypeError(不装箱)。
|
2026-09-15 02:18:12 +00:00 |
|
pjh123
|
4b0b52ade3
|
fix: 语义重名诊断引擎侧复核,放行跨语句列的函数名合并
供应商语义检查器把"同语句列"近似为"声明域非 Top/Function
且前一项是函数声明",for-in/for-of 域用空 ScopeFlags 因而漏掉
Top|Function 守卫,误拒跨语句列的函数名与 var 头合法合并。
引擎侧在归一化前按 AST 复核:仅当函数非任一 block/case 列表
直接成员、或其外层链不含该列表时剔除该重名诊断,复核后无
剩余错误则落回解析成功。
|
2026-09-15 02:18:07 +00:00 |
|
pjh123
|
da5e6d13ba
|
fix: for-in/of 词法头建独立 TDZ 环境,捕获与右值直读归正
|
2026-09-14 23:58:10 +00:00 |
|
pjh123
|
169e3aa62b
|
fix: delete 补括号剥层与非引用目标恒真臂,未声明名归真
|
2026-09-14 23:54:56 +00:00 |
|
pjh123
|
c50eb9e566
|
fix: 复合语句域收敛真实完成值,空体物化 undefined 不沿用前值
|
2026-09-14 22:51:29 +00:00 |
|
pjh123
|
92df76565b
|
fix: 迭代可选入口对非空不可调用 @@iterator 抛错并实现 IsHTMLDDA 宿主值
|
2026-09-14 22:16:43 +00:00 |
|
pjh123
|
5cfd3162ba
|
fix: 顶层模块求值完成值归空记录,依赖命名空间返回口径不变
|
2026-09-14 21:20:17 +00:00 |
|
pjh123
|
ca5c27574e
|
fix: directive 序言字符串按源序先发射且完成值参与收敛
|
2026-09-14 21:07:10 +00:00 |
|
pjh123
|
647fb31af7
|
fix: 模块顶层路径归一绝对口径,自导入不再误判为外部依赖
|
2026-09-14 20:39:58 +00:00 |
|
pjh123
|
fa67988ab4
|
fix: 变量声明完成值归空记录,脚本保留末非空完成值
|
2026-09-14 20:15:08 +00:00 |
|
pjh123
|
53da6ef817
|
fix: @@iterator 解析不到可调用时迭代可选入口回退 array-like
|
2026-09-14 19:45:52 +00:00 |
|
pjh123
|
71e3e6c829
|
test: 钉五位与花括号 unicode 转义解码边界及三非法形
|
2026-09-14 18:36:52 +00:00 |
|
pjh123
|
eff4de358a
|
style: rustfmt 折行同步
|
2026-09-14 17:42:30 +00:00 |
|
pjh123
|
c7ebcea305
|
fix: with reject 分支负分量先校验范围再截断
|
2026-09-14 17:41:05 +00:00 |
|
pjh123
|
d67e1469c1
|
fix: 迭代器快速路径尊重用户覆盖的 @@iterator
|
2026-09-14 17:35:40 +00:00 |
|
pjh123
|
e5d0558388
|
test: 类原型断言期望同步 session 直分形
|
2026-09-14 16:35:47 +00:00 |
|
pjh123
|
954ceb2109
|
fix: PlainTime 构造器负时间分量改抛 RangeError 不再饱和归零
|
2026-09-14 16:31:51 +00:00 |
|
pjh123
|
fe57b4bcc5
|
docs: 检查段注释门禁指代改语义措辞
|
2026-09-14 16:16:47 +00:00 |
|
pjh123
|
99c1254fab
|
fix: for-in 与 for-of 头 var 名补编译期预声明臂
|
2026-09-14 16:14:31 +00:00 |
|
pjh123
|
b00147eff1
|
test: 顶层函数声明撞不可定义全局补两阶段回归钉
|
2026-09-14 16:05:53 +00:00 |
|
pjh123
|
a9118200ce
|
fix: 测试宿主 evalScript 改走普通脚本作用域
|
2026-09-14 15:05:41 +00:00 |
|
pjh123
|
2598c2647b
|
fix: 解析不可恢复错误透传 oxc 真实诊断并补 concise 箭头体回归钉
|
2026-09-14 14:53:55 +00:00 |
|
pjh123
|
d161b7cfe3
|
fix: 顶层声明撞不可定义全局按规范抛 TypeError
|
2026-09-14 14:32:39 +00:00 |
|
pjh123
|
91946f3fe3
|
fix: PlainDateTime 构造器显式 undefined 时间分量取默认值
|
2026-09-14 13:40:32 +00:00 |
|
pjh123
|
2760edfbb9
|
fix: PlainDate 与 PlainTime 构造器数字分量走 number-only 转换面
|
2026-09-14 13:29:58 +00:00 |
|
pjh123
|
d877e63cf1
|
fix: 全局对象成员写与删后镜像槽反向同步防裸读失步
|
2026-09-14 13:10:17 +00:00 |
|
pjh123
|
4284aed79a
|
chore: 移除键域调试探针与死代码并修正动态源注释
|
2026-09-14 10:56:32 +00:00 |
|
pjh123
|
7feb88f14d
|
fix: 重启保留旁路失败行按已消费偏移增量合并
|
2026-09-14 10:56:03 +00:00 |
|
pjh123
|
75b98e7f78
|
fix: 良形 FFFD 属性键收口到编码键空间形态
|
2026-09-14 10:55:53 +00:00 |
|
pjh123
|
be06931380
|
bench: 新增每 VM BuiltinWorld 构造成本测量用例
|
2026-09-14 09:41:32 +00:00 |
|
pjh123
|
68d2974eb5
|
kernel/builtins/test262: 本批新码 clippy 三则 + fmt 归净——obfuscated_if_else(source_escape_to_key 值域判定改 if/else)、needless_range_loop(decode_uri_units 保留字符原样段改 extend_from_slice)、needless_borrows_for_generic_args(844f2f4 rename 调用两处冗余借用);fmt 漂移(compiler.rs/vm.rs 构造体折行)一并归净。七 crate clippy 零告警、fmt --check 净、七 crate 2879/1(唯一失败 compile_class_declaration 既有)、release 子集 8/8 + 2/2 终验
|
2026-09-14 08:18:38 +00:00 |
|
pjh123
|
eb6bc412d9
|
builtins/vm: JSON.stringify 序列化与键面改单元域——孤立 surrogate 串值不再被 lossy 串值打碎
jsvalue_to_json 串值分支原经 to_owned_string(lossy)后按 char 流序列化:孤立
surrogate 单元被打成 U+FFFD 且输出裸非法码单元(非 well-formed JSON,
JSON.parse 无法复原同值)。现按单元流序列化(stringify_string_units):良配
代理对原样输出 astral 字符,非配对孤立 surrogate 输出 \\uXXXX(well-formed
JSON 要求,round-trip 复原同值),C0/C1 控制码输出 \\uXXXX,其余按 JSON
转义规则。
toJSON/replacer 键参数同改:键 si 物化为单元序列(整数键 → ASCII 数字串,
字符串键 → 码表键经 decode_key 还原含孤立 surrogate 单元),new_string_units_owned
建参——与 0c750fa 键物化面(Object.keys/ownKeys/entries/Reflect.ownKeys/json
reviver 键同源)口径一致,replace/reviver 键参数不再走 lossy 串值。
三并钉:json_tests 增补 stringify 孤立 surrogate round-trip / 代理对 astral
直出 / 键面单元传递三则;JSON 套件 37/0,node 13 用例对照一致。
|
2026-09-14 07:33:51 +00:00 |
|
pjh123
|
6f70d7d09f
|
vm/kernel/emit/builtins: 动态源编码重设计 + 数值键 2^32 边界 + 单元域解码/Source 面——14 头独占 test262 回归 13 修 0 新增
全量 A/B 差分撞出 14 个头独占回归,本提交闭合 13(text-self.js 双树同败归 pre-existing):
数值键 u32 回绕(release 态,debug 为 panic 故单测未现):canonical_index_str/
units 的 v.checked_mul(10)? + d as u32 在乘积合法而和溢出 2^32 时静默回绕
(10 位数字串 "4294967296".."4294967299" 误判整数键 0..3,属性查找回
退、Object.keys 串键),改 checked_mul+checked_add 双段防溢出;str/units 各
钉一枚 2^30-1/2^30/2^32-1/2^32 边界(Group B 5 文件:defineProperty/
defineProperties 2^32 键族 + Array property-cast-number)。
decodeURI/decodeURIComponent 单元域重写(Group A 2 文件):decode_uri_units
按单元扫描(非 % 单元原样透传——孤立 surrogate 往返不再被 lossy 串值面
打碎),%XX 解单元入缓冲;string_arg_units 经 to_units_full 取单元。
动态源编码(eval/Function/$262.evalScript)重设计(Group A 6 文件 + value-u):
source_escape 旧设计把源码域反斜杠恒双写(与 marker 起始区分),但源码即
JS 程序、反斜杠恒为字面量内转义序列起始,双写改变程序语义——
/\u{1d306}/u 变 /\\u{1d306}/u,u 模式撞裸 { 直接 SyntaxError(value-u 回归
根因)。现反斜杠原样透传;孤立 surrogate/FFFD 单元仍以 \\uXXXX 转义文本
注入(Rust str 无法承载裸孤立 surrogate,转义文本是唯一注入形态);
source_escape_to_key 逆路径仅还原注入 marker(\\ud800..\\udfff/\\ufffd
小写转义文本 → FFFD+hex4 池键形态,物化 decode_key 还原原始单元,正则
.source 按原始源返回;用户转义文本 \\u0041/\\u{1d306} 等逐字透传),
\\+marker 拼接形态(数据反斜杠紧邻注入,S7.8.5_A1.4 族 cu=d800 断言)按
前瞻还原 [数据反斜杠, 单元]。source_encoded 标志经 Compiler→Emitter→CompileCtx
(嵌套继承)贯通,仅动态编译入口置位;静态源切片维持 pool_key_plain 不变。
RegExp [[Source]]/[[Flags]] 单元域(regexp 构造器):to_units_full →
new_string_units_owned 入键(旧 lossy to_string 把孤立 surrogate 单元打成
FFFD,src_match 探针 false);regress 编译仍 lossy(既有缺口,另行报告)。
三并钉:source_escape marker 形态 / 反斜杠透传 / decode_key∘to_key∘escape
闭环(含 \\+marker 相邻与 astral 对)。实测:Group A 8/8、Group B 5/5、
value-u 1/1;8178 文件回归子集(13 目录)双树 A/B 差分 HEAD-only=∅、
13 文件转双树同 pass;text-self.js 双树同 compile 败
(requested module export is not exported: default)归 pre-existing;
七 crate 单测 2879/1(唯一失败 compile_class_declaration_emits_constructor
为 HEAD~0 既有,本提交未引入)。
|
2026-09-14 07:16:00 +00:00 |
|
pjh123
|
844f2f455b
|
oxide_test262: 监督模式旁路失败行跨子进程重启保留 + 窗口结束归档——超时/崩溃杀子进程重启时原会删掉旁路 .fails 文件,此前子进程的全部失败记录丢失,收尾 fail_records 只剩末段(全量单窗口跑实测 9374 失败仅存 6276 条),逐文件回归差分被静默破坏;现重启只重开心跳文件、旁路失败行追加保留(写序心跳先行、旁路后追加,跨重启同一测试至多重录一条,消费侧按下标去重);窗口结束旁路文件改名归档 .fails.done 而非删除,终态落盘供逐文件差分(统计已入父进程内存,归档件纯分析用途)。单测 33/0,小集合复跑记录数与失败计数逐一吻合
|
2026-09-14 04:03:09 +00:00 |
|