chore(liveness): authorWarn sweep across all governed types + lint coverage to match#2750
Merged
Merged
Conversation
…verage to match 12 new markings so every remaining MISLEADING dead property warns at compile time (security/reliability-shaped ones prioritized: tenancy.strategy/crossTenantAccess, tool.permissions, permission.contextVariables, flow errorHandling.fallbackNodeId). The lint previously only walked objects+fields — markings on other types were silent; it now covers all governed types as flat stack collections and fans container checks over arrays (one finding per item+path). README re-anchored: counts table had drifted badly (field 34/39 listed vs 54/6 actual; action.disabled still described as ignored though live via metadata-admin since 2026-06) — replaced with regenerable numbers + the regeneration script, and added the cross-repo evidence rule (grep ../objectui before classifying dead — the enable.trackHistory lesson). check:liveness green; cli 476 tests green (14 lint contract tests incl. array fan-out and per-type coverage). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
📓 Docs Drift CheckThis PR changes 2 package(s): 97 hand-written doc(s) reference the affected code and may need an implementation-accuracy re-verification:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
#2707/#2727 收口后的 liveness 巡检发现两处缺口,本 PR 一并关闭:
1. 高危误导 dead 属性没标 authorWarn(12 项新标)
安全/可靠性语义优先:
object.tenancy.strategy/crossTenantAccess(只有 enabled+tenantField 被读——作者以为设了隔离策略/跨租户开关就生效)、tool.permissions(工具调用不被它门控)、permission.contextVariables(RLS 只认 current_user.* 内置)、flow.errorHandling.fallbackNodeId(引擎走 per-node fault edges)、flow.nodes[].outputSchema(从不校验)、action.timeout(运行期无强制)、agent.tenantId、object.abstract、field.dependencies、flow.template、dataset.measures[].certified。每项都带指向正确写法的 authorHint。良性展示元数据(label/description/tags)按 README 规则不标。2. lint 只扫 object+field——给其他类型标了也无声
lintLivenessProperties扩展到全部 governed 类型(flows/actions/agents/tools/skills/datasets/permissions/hooks/pages 作为 stack 平铺集合),并支持数组容器 fan-out(每个 flow node、每个 dataset measure;每 item+path 只报一条)。机制仍是 ledger 驱动——之后的覆盖增长继续只改 ledger 不改代码。3. README 对账 + 跨仓证据规则
计数表漂移严重(field 表里写 34 live/39 dead,ledger 实际 54/6;action 行还说 "
disabledCEL ignored",它 2026-06 就已经 live)——重写为真实数字+可再生脚本(防再漂);"Adding a type" 增加规则:判 dead 前必须 grep ../objectui(enable.trackHistory 被误标一个月的教训,#2707)。验证
check:liveness✓(gate 校验分类完整性,不受 authorWarn 影响)🤖 Generated with Claude Code