diff --git a/Architecture-and-Code-Map.-.md b/Architecture-and-Code-Map.-.md index ba20b34..dfcd3e4 100644 --- a/Architecture-and-Code-Map.-.md +++ b/Architecture-and-Code-Map.-.md @@ -288,3 +288,27 @@ Brain 解码层位于 `Brain/src/yovision_brain/decode/`,只依赖 #11 的内 内部候选包含逻辑输入引用、规则/模型版本、发生时间、匿名框和解释原因,不包含摄像头凭据、客户隐私、人脸、生物特征、机器绝对路径或证据引用。该格式不是 Brain→Bell 共享契约;Bell API、Outbox、机器身份、证据和跨项目投递必须由协调工单另行实现。 + + +## Sense↔Brain v1 契约边界 + +- Sense→Brain 配置:`contracts/source-config/v1/source-config.schema.json`;版本 `yovision.source-config/v1`。 +- Brain→Sense 状态:`contracts/runtime-status/v1/runtime-status.schema.json`;版本 `yovision.runtime-status/v1`。 +- 共同测试:`contracts/tests/source-config-v1/`、`contracts/tests/runtime-status-v1/`。 +- 生产者/消费者 mapper 责任分别记录在 `mapper-fields.md` 与 `mapping.md`;产品 adapter 后续由 #152 实现。 + +数据流固定为: + +```text +Sense Device/Profile/Area 内部事实 + → source-config/v1 mapper + → Brain adapter(后续 #152) + → Brain 内部配置与运行 + → runtime-status/v1 mapper + → Sense 只读运维投影(后续 #152) +``` + +共享契约统一使用 snake_case 与 `schema_version: yovision./v1`。源配置使用 `config_id + integer revision`;运行状态以 `configurations[]` 按 `config_id` 回报实际应用 revision。未知主版本、重复配置 ID、倒序状态、摘要失败或敏感字段必须拒绝,且不得覆盖最后已知有效配置/投影。 + +协议不得包含摄像头凭据、RTSP URL、query token、内部绝对路径、数据库模型、用户/JWT/Cookie 或 Bell Alert 语义。当前只冻结契约,没有新增网络端点、机器身份或跨端 connector。 +