yml2213
fe1415508a
feat(VM): cd 槽位表可静态导出 + 槽位语义还原(符号求值)
tdc_program 新增 symbolic_assignments(): 对小程序做线性符号求值, 把字节码还原成
`r6 = c.navigator.userAgent` 这样的可读表达式(覆盖字面串/BIND_THIS/MAKE_(REG_)PROP_REF/
GET_GLOBAL_PROP/NEW_FUNC/CALL_*/STORE_REG/LOAD_REG_IMM/REVERSE_TOP2/DUP/算术)。
tdc_layout 新增:
* slot_value_expr(): 精确规则 —— 采集器模块把值存进某寄存器, `get` 闭包只返回它
(caps 的父寄存器就是取值寄存器); 含"模块里唯一闭包"的兜底
* slot_semantics(): 合并"工厂赋值链 + require 委派 + 内部闭包"三条线索
* 输出改成叶子语义 + 真机明文并排核对
实测确认(线上构建 + 同会话解出的真机 collect):
* 清单模块 = registry[7], 构造方式是 `r6[r6.length] = require(N)` 追加
-> **require 顺序即 cd 槽位顺序**(37 个 require + 1 个字面量槽 = 38, 与真机完全吻合)
* 语义已精确命中: cd[3] <- c.navigator.userAgent, cd[5] <- c.navigator.languages
* 仍有若干槽的语义标签未对齐(取值寄存器规则需再收口), 已在账本记录
2026-10-12 00:17:30 +08:00
..
2026-10-11 23:59:42 +08:00
2026-10-11 23:59:42 +08:00
2026-10-11 23:59:42 +08:00
2026-10-11 23:59:42 +08:00
2026-10-11 23:59:42 +08:00
2026-10-12 00:13:27 +08:00
2026-10-11 22:49:23 +08:00
2026-10-11 22:21:53 +08:00
2026-10-12 00:17:30 +08:00
2026-10-12 00:13:27 +08:00
2026-10-11 22:27:29 +08:00
2026-10-12 00:17:30 +08:00
2026-10-11 22:15:43 +08:00
2026-10-11 22:04:44 +08:00
2026-10-11 21:47:27 +08:00
2026-10-11 22:15:51 +08:00
2026-10-11 20:13:14 +08:00