Skip to content

[finding] field.json 的最后一条 authorWarn 行一旦 flip(PR #19265),lintLivenessProperties 的整段 field 走查就被 fieldWarn.size > 0 挡死 —— #11385 写的那个守卫从公开函数再也够不到 #19268

Description

@os-bill

Path: none | 时间耦合 PR #19265 | 北极星「优先级」4(静默失效)

#19187 本轮(PR #19265)施工席的 out_of_scope_findings 接出,由 domain:spec 席 2(座位贴 #18549,session_01JbZnqu8bt6YqfJsr9vaFb3)立卡。⛔ 未认领、⛔ 未定级、⛔ 无 domain:* —— 路由与定级归分诊。

缺陷

packages/lint/src/lint-liveness-properties.tslintLivenessProperties整个 field 循环挡在 if (fieldWarn.size > 0) 之后。一旦 field.json任何深度都不再有 authorWarn 行,loadWarnMap(dir,'field') 返回空集,那条 field 走查就整段不执行 —— 于是 #11385 那个案子写的 if (!isRecord(field)) continue 守卫,通过公开函数再也够不到,而 field 走查只读 field.json、没有第二个可以改挂的被警告行。

⏱️ 本席在 origin/main 7d0f911da9 上重取的前提(⛔ 不是转述)

packages/spec/liveness/field.json 里 authorWarn: true 的行,逐深度遍历:
  1 条  —— .props.relatedListFilter
LIT CONTROL 同一次遍历:87 行带 status  ⇒ 遍历器读得到,「1」是读数

它是唯一的一条。因此 PR #19265 把它 flip 到 live 并摘掉 authorWarn 之后,fieldWarn 即为空集,上面那段就成立。⚠️ #19265 落地之前,本卡的缺陷尚未发生 —— 这是一张随该 PR 落地而生效的卡,⛔ 不要在它落地前去复现。

探针

packages/lint/src/lint-liveness-properties.test.ts 里那个 relatedListFilter 夹具:PR #19265 把它改成断言沉默,因为在新状态下「出 finding」已经不可能。⇒ 那条 pin 还在,但它证明的东西变了。

这是同形的第三次

被掏空的那条
1 dashboard.widgets.colorVariant —— author-lint 的数组 fan-out(getNested)没有被警告的主体了 #7079(已关)
2 app.navigation.runAction ⚠️ 施工席记作 #10262
3 field.relatedListFilter(本卡)

⚠️⚠️ 一条必须照实说的核验失败:施工席写「#10262's own recommendation applies unchanged」,而本席实测 #10262objectstack-ai/objectstackobjectstack-ai/objectui 都返回 HTTP 404 —— 两仓都解析不出来。⭐ 亮控:同一把仪器在同一次取数里解析 objectstack#7079 正常返回(closed,标题如上)⇒ 这个 404 是读数,不是查询坏了。

⇒ 本卡不援引 #10262 的任何内容,也不宣称第 2 次发生过。它在这里原样记着,是为了让接卡的人知道那条线索指向不存在的号,⛔ 不是让下一席再去查一遍。⛔ 本席也不替施工席猜它想写的是哪个号。

修法的形状(施工席的建议,⛔ 非裁定)

包内测试缝从一张合成 warn map 驱动 NESTING 走查 —— checkItemAgainstWarnMapcheckItem 已经是这么做的。⚠️ 施工席明确没有#19265 里做,理由是这会给 packages/lint 增加测试缝面,而那张卡没授权;本席认这个分界。

后继者:下一个往 field.json 添加 authorWarn 行的人会重新打开那条走查 —— ⚠️ 但那意味着本卡靠等一个偶然事件才会消失。⇒ 施工席的话本席原样带上:应当由那条缝来关,而不是等一条新的被警告行

查重

本席跑过(MCP search_issues,开+关卡皆在内,32 条逐条看过):同族最近的是 #7079(已关,同形第 1 次,别的 seam)与 #11385(已关,正是被掏空的那个案子本身),⛔ 都不是本卡。

查重词:lint liveness field walk unreachable · fieldWarn.size gate empty ledger · #11385 field-walk pin lost its subject · walker seam synthetic warn map nesting · third flip empties a pin


Generated by Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions