From 0b0d28c50444c8cb26318e583c3a0e38e3177ad2 Mon Sep 17 00:00:00 2001 From: ila <2+ila@noreply.git.ilapage.cn> Date: Mon, 31 Aug 2026 15:20:09 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E8=AE=B0=E5=BD=95=20#152/#153=20connec?= =?UTF-8?q?tor=20=E9=AA=8C=E6=94=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Architecture-and-Code-Map.-.md | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/Architecture-and-Code-Map.-.md b/Architecture-and-Code-Map.-.md index ccdda21..7769d70 100644 --- a/Architecture-and-Code-Map.-.md +++ b/Architecture-and-Code-Map.-.md @@ -290,27 +290,28 @@ Brain 解码层位于 `Brain/src/yovision_brain/decode/`,只依赖 #11 的内 -## Sense↔Brain v1 契约边界 +## Sense↔Brain v1 connector 结构 -- 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 实现。 +共享协议仍位于 `contracts/source-config/v1/**` 与 `contracts/runtime-status/v1/**`。#152 的产品实现位于: -数据流固定为: +- Sense:`Sense/server/app/sense/integration/brain_control/**`;运行投影迁移为 `2026083112000_brain_runtime.go`。 +- Brain:`Brain/src/yovision_brain/integration/sense_control/**`。 +- 双端集成测试:`Sense/tests/integration/brain_control/**`、`Brain/tests/integration/sense_control/**`。 + +数据流为: ```text -Sense Device/Profile/Area 内部事实 - → source-config/v1 mapper - → Brain adapter(后续 #152) - → Brain 内部配置与运行 - → runtime-status/v1 mapper - → Sense 只读运维投影(后续 #152) +Sense Device/Profile/Area + → source-config/v1 mapper + revision store + → machine identity transport adapter + → Brain strict consumer + last-known-good + persistent replay + → runtime-status/v1 mapper + monotonic sequence + → Sense read-only runtime projection + stale/offline/recovery ``` -共享契约统一使用 snake_case 与 `schema_version: yovision./v1`。源配置使用 `config_id + integer revision`;运行状态以 `configurations[]` 按 `config_id` 回报实际应用 revision。未知主版本、重复配置 ID、倒序状态、摘要失败或敏感字段必须拒绝,且不得覆盖最后已知有效配置/投影。 +配置以 `config_id + integer revision` 唯一标识,状态以 Brain instance + sequence 保证时序。未知主版本、摘要失败、过期 revision、错误 Profile/几何或倒序状态拒绝且不覆盖最后有效事实。双端不共享数据库、用户会话、摄像头凭据或内部模型。 -协议不得包含摄像头凭据、RTSP URL、query token、内部绝对路径、数据库模型、用户/JWT/Cookie 或 Bell Alert 语义。当前只冻结契约,没有新增网络端点、机器身份或跨端 connector。 +#152 提供可注入传输 adapter 和持久恢复边界;根级进程编排及部署级 HTTP hosting 由 #154 绑定,#155 验证真实跨进程故障隔离。