import type { Action, Rule, Safety } from "./types"; export async function checkAction( action: Action, rules: readonly Rule[], ): Promise> { for (const rule of rules) { const result = await rule.check(action); if (result.kind === "match") { return { kind: "dangerous", action, key: rule.key, reason: result.reason, metadata: result.metadata, }; } } return { kind: "safe" }; }