feat(卡② T5-部分): validate_trigger_row 增 counter_id 前缀合法性校验(.tres 行加载致命)
判据单点 counter_id_legal(与 _push_trigger assert 同源,无第二份前缀表);meta_ 出域→errs→加载致命。 feat_vouchers 26 checks 在 ctx 化引擎下全绿(保险 V25 + 卡① A10–A12 未破,契约 5)。 引用闭合校验 + 负面套件 + manifest 归 T5 续(下一轮)。
This commit is contained in:
1 parent
7f45f90484
commit
d402ea143a
1 file changed
+5
@@ -367,6 +367,11 @@ static func validate_trigger_row(rid: String, row: Dictionary, triggers: Array,
|
||||
var kind := String(do_d.get("kind", ""))
|
||||
if not EFFECT_KINDS.has(kind):
|
||||
errs.append({"category": "enum", "message": "%s 效果类型出域(解释器闭集): %s" % [rid, kind]})
|
||||
# 计数器前缀归属合法性(.tres 行路径——写错前缀加载致命;判据单点 counter_id_legal,与 _push_trigger 同源)
|
||||
if do_d.has("counter_id"):
|
||||
var cid := String(do_d.counter_id)
|
||||
if not counter_id_legal(cid):
|
||||
errs.append({"category": "enum", "message": "%s counter_id 前缀非法(meta_ 出域/引擎不接存档级): %s" % [rid, cid]})
|
||||
# value_from/delta_from/mult_from/cap_from 引用面:行字段存在性(悬空=加载致命)——
|
||||
# do 与 when 两侧同面(when value_from=dawn_order effective_rounds 先例)
|
||||
for vf_k in ["value_from", "delta_from", "mult_from", "cap_from"]:
|
||||
|
||||
Reference in new issue
Block a user