SuperAPI AI 工具集

snowflake-pipeline-guardian

通用与其它

查看项目

更新于 10-15 23:29

技能介绍

用途:用于 Snowflake 数据管道出现停滞、跳过、延迟等跨对象症状时,在只读、有界的证据范围内做诊断与分类,不执行任何变更。

主要能力:通过 scripts/analyze_pipeline_state.py 做确定性分类;遍历已提供的依赖路径;严格区分观测事实、推导结论、假设与未知项。支持六类 schema-2 证据面:pipeline(任务运行、动态表刷新、copy 加载的显式半开 UTC 历史)、pipeline-task-current、pipeline-stream-current、pipeline-dynamic-table-current、pipeline-pipe-current、pipeline-pipe-status。

使用方式:先选定不超过七天的显式 UTC 历史窗口,用 collect_snowflake_evidence.py 按面采集,例如 --surface pipeline --connection <approved-readonly-profile> --window-start <window-start-UTC> --window-end <exclusive-window-end-UTC> --output ./pipeline-history.json;各 current 面在同授权上下文中各采集一次;对 current_pipes 中每个哈希用三段式非引号标识符 --surface pipeline-pipe-status --pipe DATABASE.SCHEMA.PIPE 采集一条状态回执。随后计算并单独记录 bundle 摘要,再传入分析器:python3 "${CLAUDE_SKILL_DIR}/scripts/analyze_pipeline_state.py" --input ./pipeline-evidence-bundle.json --trusted-input-sha256 "sha256:<separately-recorded-digest>" --evaluated-at "<explicit-UTC-evaluation-time>"。

限制:仅只读诊断,绝不执行或输出可运行 SQL。空、被权限隐藏、过期、触顶、上下文不符或不可信结果不得判为健康或完整。不得用当前控制面状态当作历史运行证明,也不得用滞后的 Account Usage 历史当作当前状态。不从图顺序或当前/历史冲突推断因果。不得请求或保留原始 SQL、对象名、查询 ID、路径、端点、集成名或原始 SYSTEM$PIPE_STATUS JSON;不得用 SYSTEM$STREAM_HAS_DATA 诊断。历史上限 5000 行、各 current 清单上限 10000 对象,触顶即不完整。任务结算滞后 45 分钟、动态表刷新 3 小时、copy 加载 48 小时。采集失败或证据不合规时须报告失败类别并抑制正向结论;无匹配信号只能说“所提供证据中无匹配信号”。适用场景、收费与安装细节暂未提供。