用途
Consent Registry 是规范化的同意与实时抑制权威工具。它记录证据;由 SEND 审计器判定 S2/N1,由分段构建器执行排除。撤回操作绝不能作为待处理提案而等待。
主要能力
- 记录 opt-in:使用请求/根绑定的宿主能力所有者追加(upsert),包含来源、时间戳、依据/证明引用以及 expected_revision。
- 即时抑制:退订、投诉或硬退信通过普通追加立即发出 direct suppress。这是仅拒绝(deny-only)的窄路径,任何经校验的生产者均可立即添加,因为它不能授权联系或清除状态。
- 恢复(restore):仅限宿主能力,要求 subscription_status 为 subscribed、非空的 basis_ref 等于 source.ref、具有带时区的时间戳且严格晚于撤回时间的证据,以及不早于该证据的 restore 事件。
- 删除(erase):宿主验证数据主体后发出绑定到规范化请求的安全能力,保留抑制墓碑(suppression tombstone),移除投影载荷。
- 查询当前抑制状态:通过 is-suppressed 重放事件流,优先于缓存。
使用方式
- 读取 registry-event-protocol.md 与 runtime-invocation.md。解析 AARON_SKILLS_ROOT,并在调用前校验注册脚本、事件 schema 与系统目录。
- 对每次资格/发送查询,运行 python3 "$AARON_SKILLS_ROOT/scripts/registry-events.py" is-suppressed <subject-id>。
- 新增 opt-in 事实使用请求/根绑定的宿主能力所有者追加,携带 upsert、来源、时间戳、依据/证明引用与 expected_revision。缺失依据保持显式 Unknown/none-on-file。
- 退订/投诉/硬退信立即通过普通追加发出 direct suppress。仅在 verified root runtime 可用时追加;否则返回一次 immediate-suppress-handoff,保持执行状态 NEEDS_INPUT,并声明在 handoff 运行前未发生任何变更。
- 从已接受的投影重新生成任意按主题的人类视图,然后对变更主题验证同意并重新运行 is-suppressed。
适用场景
- 记录某订阅者的 opt-in。
- 记录退订/投诉。
- 查询法定依据。
- 邮件发送前的资格/抑制检查。
- 数据主体删除请求处理。
限制
- 本注册表从不发送邮件、不编辑 ESP 状态,也不声明列表安全。下游 ESP 同步是单独的显式副作用,必须先读取实时抑制结果。
- 绝不在聚合 ID、幂等键、来源引用、载荷或报告中放入 email、电话、姓名、地址或原始标识符。运行时 NFKC 规范化字符串,仅允许类型化同意字段/不透明证明引用,并要求无主体的原因代码;仅存储伪匿名 ID 与最少证明指针。
- 普通非安全导入可作 propose 到达;接受/拒绝而不删除历史。绝不因相似性而合并主题。
- 缺少 verified root runtime/schema/catalog 时,无法追加、恢复、投影或声明规范同意状态。
- 部分事实(如具体价格、收费模式、平台支持、效果数据)暂未提供。
后续技能
- 应用排除:list-segment-builder
- 审计 SEND:email-quality-auditor
- 可交付性事件:deliverability-qa
- 删除/归档:memory-management