实现示例type Formula = { name: string; url: string; sha256: string; tap: string } const allowTaps = new Set<string>(['homebrew/core','homebrew/cask','corp/tap']) function hex64(h: string): boolean { return /^[A-Fa-f0-9]{64}$/.test(h) } function validUrl(u: string): boolean { try { const x = new URL(u); return x.protocol === 'https:' } catch { return false } } function tapAllowed(t: string): boolean { return allowTaps.has(t) } function evaluate(f: Formula): { ok: boolean; errors: string[] } { const errors: string[] = [] if (!f.name || !validUrl(f.url) || !hex64(f.sha256)) errors.push('entry') if (!tapAllowed(f.tap)) errors.push('tap') return { ok: errors.length === 0, errors } } 审计与运行治理审计 Formula 的 Tap 与来源、哈希;异常阻断并输出修复建议。企业自建 Tap 需审批与归档。

发表评论 取消回复