关闭 Q1、Q2、Q4–Q12,并保留 M3/M5 下游合规上线门禁。
This commit was merged in pull request #4.
This commit is contained in:
+5
-3
@@ -19,14 +19,15 @@ YoVision 不是单机 NVR 的换皮,而是“通用底座 + 场景包”:
|
|||||||
- 通用底座负责设备、媒体、推理、事件、预警、租户、权限、审计与可观测。
|
- 通用底座负责设备、媒体、推理、事件、预警、租户、权限、审计与可观测。
|
||||||
- 场景包只装规则模板、升级策略、话术和报表口径,不复制通用代码。
|
- 场景包只装规则模板、升级策略、话术和报表口径,不复制通用代码。
|
||||||
- 三个独立系统通过明确契约协作:Sense 供流与信号,Brain 产出事件,Bell 消费事件并追到人。
|
- 三个独立系统通过明确契约协作:Sense 供流与信号,Brain 产出事件,Bell 消费事件并追到人。
|
||||||
|
- 首期以一个客户一套的私有化实例交付;租户标识、RBAC、schema 和集成契约仍按 SaaS-ready 边界设计,避免后续区级统采时重构。
|
||||||
|
|
||||||
## MVP
|
## MVP
|
||||||
|
|
||||||
MVP 在一个合规场景中,以默认 16 路跑通:
|
MVP 在 **S2 民办寄宿学校**中,以客户侧 16 路高风险点位跑通:
|
||||||
|
|
||||||
`设备接入 → 稳定供流 → 推理/规则 → 事件与证据 → 预警投递 → ack/升级 → 误报反馈`
|
`设备接入 → 稳定供流 → 推理/规则 → 事件与证据 → 预警投递 → ack/升级 → 误报反馈`
|
||||||
|
|
||||||
第一阶段先做可验证地基,不同时铺开所有场景。M0–M2 建接入基础,M3 才形成首个端到端 MVP。
|
首期只交付越线、危险区域、聚集等匿名安全规则,不启用人脸。M0–M2 建 ONVIF/RTSP 接入基础,M3 形成首个端到端 MVP;先用民办学校形成样板,再评估公办统采。
|
||||||
|
|
||||||
## 产品原则
|
## 产品原则
|
||||||
|
|
||||||
@@ -45,11 +46,12 @@ MVP 在一个合规场景中,以默认 16 路跑通:
|
|||||||
- 本期不实现高空抛物专用算法;建议独立立项或外采。
|
- 本期不实现高空抛物专用算法;建议独立立项或外采。
|
||||||
- M4 前不投入工厂/园区场景包,只验证架构可扩展性。
|
- M4 前不投入工厂/园区场景包,只验证架构可扩展性。
|
||||||
- 人脸识别不是默认能力,不得替代匿名 ReID;没有租户授权和合规前置条件时不可见、不可用。
|
- 人脸识别不是默认能力,不得替代匿名 ReID;没有租户授权和合规前置条件时不可见、不可用。
|
||||||
|
- M1–M3 不交付 GB/T 28181、信创硬件适配或独立原生 App;这些能力按独立任务和里程碑评估。
|
||||||
- 不承诺单进程、单机或单 GPU 承载 128 路。
|
- 不承诺单进程、单机或单 GPU 承载 128 路。
|
||||||
|
|
||||||
## 成功标准
|
## 成功标准
|
||||||
|
|
||||||
- M3:默认 16 路端到端稳定运行,首个场景三类规则可用,首次预警与 ack/升级可观察,误报数据开始回流。
|
- M3:S2 民办寄宿学校默认 16 路端到端稳定运行,至少三类匿名安全规则可用,首次预警与 ack/升级可观察,误报数据开始回流。
|
||||||
- M5:128 路横向扩展不修改业务代码;第二、第三场景通过纯配置交付。
|
- M5:128 路横向扩展不修改业务代码;第二、第三场景通过纯配置交付。
|
||||||
- 新场景需要修改 L1–L4 通用底座代码时,视为架构验收失败,需要先复盘分层。
|
- 新场景需要修改 L1–L4 通用底座代码时,视为架构验收失败,需要先复盘分层。
|
||||||
|
|
||||||
|
|||||||
+22
-6
@@ -13,12 +13,14 @@
|
|||||||
5. 预警 ack、超时升级、双路径投递、限时静默和重启续跑。
|
5. 预警 ack、超时升级、双路径投递、限时静默和重启续跑。
|
||||||
6. 误报标记与样本回流。
|
6. 误报标记与样本回流。
|
||||||
|
|
||||||
|
交付边界已定为客户侧私有化部署的 S2 民办寄宿学校,默认 16 路高风险点位;代码保留 SaaS-ready 租户边界。M1–M3 只接 ONVIF/RTSP,只验证 NVIDIA x86/Jetson 主路径,不包含 GB/T 28181、信创适配、人脸或独立原生 App。
|
||||||
|
|
||||||
## 2. 当前 M0 验收
|
## 2. 当前 M0 验收
|
||||||
|
|
||||||
- 在隔离实验室运行 MiBeeNvr 等现成测试台,不改 `_reference/`,不接真实客户摄像头。
|
- 在隔离实验室运行 MiBeeNvr 等现成测试台,不改 `_reference/`,不接真实客户摄像头。
|
||||||
- 选择 3–5 款候选摄像头,逐款通过 `GetProfiles`、`GetStreamUri`、`SetSystemDateAndTime`。
|
- 选择 3–5 款候选摄像头,逐款通过 `GetProfiles`、`GetStreamUri`、`SetSystemDateAndTime`。
|
||||||
- 记录断线恢复、认证失败、时间漂移、主/子码流和厂商差异,形成采购白名单。
|
- 记录断线恢复、认证失败、时间漂移、主/子码流和厂商差异,形成采购白名单。
|
||||||
- 回答 `raw/01-需求收集.md` §8 中仍开放且会改变架构的问题。
|
- 执行 `raw/01-需求收集.md` §8 已批准的决策台账;只将明确记录的下游法务、客户、硬件和供应商门禁留到对应里程碑。
|
||||||
- M0 代码与临时配置可丢弃,不作为生产基线;可借鉴范围严格遵循 NVR 白名单。
|
- M0 代码与临时配置可丢弃,不作为生产基线;可借鉴范围严格遵循 NVR 白名单。
|
||||||
|
|
||||||
## 3. P0 功能要求
|
## 3. P0 功能要求
|
||||||
@@ -62,6 +64,12 @@
|
|||||||
- 断网时边缘缓存事件,恢复后补传。
|
- 断网时边缘缓存事件,恢复后补传。
|
||||||
- 不在代码、日志、证据文件名和工单中泄露摄像头凭据、客户名或敏感地址。
|
- 不在代码、日志、证据文件名和工单中泄露摄像头凭据、客户名或敏感地址。
|
||||||
|
|
||||||
|
### 3.6 管理端与外部集成
|
||||||
|
|
||||||
|
- Bell 自研并持有事件、Alert、ack、升级链、租户和审计真相;客户既有平台不得成为这些状态的唯一真相源。
|
||||||
|
- 对外使用版本化 OpenAPI/Webhook;M3 客户端为值班室 Web + 响应式移动 H5,可嵌入客户系统。
|
||||||
|
- 投递层必须使用供应商无关的 provider 接口;试点至少有本地声光/Web 与一条短信或语音,生产前补齐两条独立路径及故障切换。
|
||||||
|
|
||||||
## 4. 容量与性能
|
## 4. 容量与性能
|
||||||
|
|
||||||
| 维度 | 默认交付 | 本阶段上限 | 验收方式 |
|
| 维度 | 默认交付 | 本阶段上限 | 验收方式 |
|
||||||
@@ -79,15 +87,16 @@
|
|||||||
|
|
||||||
## 5. 场景优先级
|
## 5. 场景优先级
|
||||||
|
|
||||||
- 首个场景在 M0 开放问题关闭后选定;不得由 agent 自行决定。
|
- 首个场景为 S2 民办寄宿学校:客户侧 16 路高风险点位,先做越线、危险区域、聚集等匿名安全规则,不启用人脸。
|
||||||
- S1 居家养老、S2 校园、S3 社区是目标场景;MVP 只跑通其中一个。
|
- S1 居家养老、S3 社区仍是后续目标场景;S1 卧室/卫生间只能使用非成像传感器,该能力在 M6 实现。
|
||||||
- S4 工厂/园区在 M4 前不实现。
|
- S4 工厂/园区在 M4 前不实现;首个人脸试点最早 M5,仅候选成人访客/承包商白名单且首库不超过 10,000 人。
|
||||||
- 高空抛物不进通用底座。
|
- 高空抛物不进通用底座。
|
||||||
|
|
||||||
## 6. 合规门禁
|
## 6. 合规门禁
|
||||||
|
|
||||||
- 家庭卧室、卫生间不安装摄像头,只能使用非成像传感器。
|
- 家庭卧室、卫生间不安装摄像头,只能使用非成像传感器。
|
||||||
- 未成年人影像、人脸识别、留存期限必须完成法务确认;未完成时阻塞相关 M3/M5 功能上线。
|
- 真实 S2 生产试点在 M3 上线前,客户/法务必须确认未成年人影像处理、公共安全视频法规适用性、告示/备案、角色权限和最终留存期限;不阻塞 M1 实验室 Sense 骨架。
|
||||||
|
- 首个人脸试点在 M5 上线前,必须完成必要性与个人信息保护影响评估、单独同意/替代方式、合法底库来源和撤回/删除流程;方向批准不等于法务批准。
|
||||||
- 人脸特征加密、独立审计、有效期必填、到期失效;原始人脸图不与普通事件证据混存。
|
- 人脸特征加密、独立审计、有效期必填、到期失效;原始人脸图不与普通事件证据混存。
|
||||||
- YOLO 商用必须取得 Ultralytics Enterprise License;未获批则走已记录的开源替代路线。
|
- YOLO 商用必须取得 Ultralytics Enterprise License;未获批则走已记录的开源替代路线。
|
||||||
|
|
||||||
@@ -95,10 +104,17 @@
|
|||||||
|
|
||||||
- 不使用完整 MiBeeNvr 作为生产系统。
|
- 不使用完整 MiBeeNvr 作为生产系统。
|
||||||
- 不在 M1 开发完整管理端、人脸、异构传感器或多场景包。
|
- 不在 M1 开发完整管理端、人脸、异构传感器或多场景包。
|
||||||
|
- M1–M3 不实现 GB/T 28181、国产化信创适配和独立原生 App。
|
||||||
- 不为 128 路提前堆一套分布式平台,但所有边界必须可分片、可配置、可观测。
|
- 不为 128 路提前堆一套分布式平台,但所有边界必须可分片、可配置、可观测。
|
||||||
- 不承诺未经现场数据验证的检出率或误报率;先建立可重复测试集和基线。
|
- 不承诺未经现场数据验证的检出率或误报率;先建立可重复测试集和基线。
|
||||||
|
|
||||||
## 8. 追溯
|
## 8. 验收与证据留存
|
||||||
|
|
||||||
|
- M3 先 dry-run 不少于 2 周,冻结站点机位、规则版本、人工标注口径和现场标注集。
|
||||||
|
- 效果指标按规则分别报告召回率与每路每天误报数;现场基线形成后,在站点验收附件中签署数值阈值,不使用跨场景统一“准确率”。
|
||||||
|
- 事件片段默认存客户侧 MinIO/S3 兼容对象存储,常态录像留在客户 NVR。技术默认 30 天并在目的完成后删除;客户/法务确认最终期限。元数据、审计、人脸与训练样本使用独立策略。
|
||||||
|
|
||||||
|
## 9. 追溯
|
||||||
|
|
||||||
- 原始需求编号与优先级:[`raw/01-需求收集.md`](raw/01-需求收集.md)。
|
- 原始需求编号与优先级:[`raw/01-需求收集.md`](raw/01-需求收集.md)。
|
||||||
- 需求分层、状态机、数据模型与风险:[`raw/02-需求分析.md`](raw/02-需求分析.md)。
|
- 需求分层、状态机、数据模型与风险:[`raw/02-需求分析.md`](raw/02-需求分析.md)。
|
||||||
|
|||||||
+10
-6
@@ -6,20 +6,24 @@
|
|||||||
|
|
||||||
| 范围 | 选择 | 状态与说明 |
|
| 范围 | 选择 | 状态与说明 |
|
||||||
| --- | --- | --- |
|
| --- | --- | --- |
|
||||||
|
| 首期部署 | 客户侧私有化实例 | 保留 `tenant_id`、RBAC、schema 和 API 的 SaaS-ready 隔离边界 |
|
||||||
|
| M1–M3 视频接入 | ONVIF / RTSP | 售前盘点存量 NVR;GB/T 28181-2022 不进当前 MVP,按需另建适配任务 |
|
||||||
| Sense | Go | 设备、ONVIF、MediaMTX 控制与对账 |
|
| Sense | Go | 设备、ONVIF、MediaMTX 控制与对账 |
|
||||||
| 媒体数据面 | MediaMTX 独立二进制 | MIT;M1 正式生产基线 |
|
| 媒体数据面 | MediaMTX 独立二进制 | MIT;M1 正式生产基线 |
|
||||||
| MediaMTX API | 从官方 OpenAPI 用 `oapi-codegen` 生成 + 薄封装 | 不依赖第三方非官方 SDK |
|
| MediaMTX API | 从官方 OpenAPI 用 `oapi-codegen` 生成 + 薄封装 | 不依赖第三方非官方 SDK |
|
||||||
| Brain | Python / CUDA | 推理流水线与判定内核 |
|
| Brain | Python / CUDA | 推理流水线与判定内核 |
|
||||||
| 推理框架主选 | Savant / NVIDIA DeepStream | 具体版本与目标 GPU 待 M0/M1 压测冻结 |
|
| 推理框架主选 | Savant / NVIDIA DeepStream | M1–M3 只验证 NVIDIA x86/Jetson;具体版本与目标 GPU 待 M0/M1 压测冻结 |
|
||||||
| 推理框架备选 | Pipeless | 硬件变化、规模缩小或信创要求触发 |
|
| 推理框架/硬件逃生通道 | ONNX 接口 + 可替换框架适配层;Pipeless 候选 | 信创不在 M1–M3 承诺内,海光/鲲鹏/昇腾/寒武纪走独立硬件 POC 与报价 |
|
||||||
| 模型主选 | Ultralytics YOLO(含 pose) | 商用前必须购买 Enterprise License |
|
| 模型主选 | Ultralytics YOLO(含 pose) | 商用前必须购买 Enterprise License |
|
||||||
| 模型备选 | YOLOX + RTMPose | 主选授权未批或目标硬件不适配时启用 |
|
| 模型备选 | YOLOX + RTMPose | 主选授权未批或目标硬件不适配时启用 |
|
||||||
| 跟踪/同一性 | ByteTrack 或 BoT-SORT + ReID | 具体组合待基准测试;ReID 默认、人脸可选 |
|
| 跟踪/同一性 | ByteTrack 或 BoT-SORT + ReID | 具体组合待基准测试;ReID 默认、人脸可选 |
|
||||||
| Bell 后端 | Go | 事件、规则、预警、租户与审计 |
|
| Bell 后端 | Go | 事件、规则、预警、租户与审计 |
|
||||||
| Bell 前端 | 待定 | 必须经 UI 原型和团队技术评审后冻结 |
|
| Bell 客户端 | 值班室 Web + 响应式移动 H5 | 前端框架仍须经 UI 原型和技术评审冻结;M3 不做独立原生 App |
|
||||||
|
| Bell 对外集成 | 版本化 OpenAPI / Webhook | Bell 持有事件、Alert、ack、升级链、租户与审计真相 |
|
||||||
| M1 本地存储 | SQLite | schema 与生产 PostgreSQL 保持一致,仅 Sense 初期使用 |
|
| M1 本地存储 | SQLite | schema 与生产 PostgreSQL 保持一致,仅 Sense 初期使用 |
|
||||||
| 生产数据库 | PostgreSQL,一个实例、`sense`/`bell` schema 分离 | Brain 无业务 schema |
|
| 生产数据库 | PostgreSQL,一个实例、`sense`/`bell` schema 分离 | Brain 无业务 schema |
|
||||||
| 证据对象存储 | MinIO / S3 兼容 | 版本、保留与加密策略待定 |
|
| 证据对象存储 | 客户侧 MinIO / S3 兼容 | 常态录像留在客户 NVR;事件片段技术默认 30 天,最终期限由客户/法务确认 |
|
||||||
|
| 通知投递 | Bell provider 接口 | 供应商待项目采购;试点使用本地声光/Web + 一条短信或语音,生产前两条独立路径并支持故障切换 |
|
||||||
| 边缘隧道 | WireGuard | 控制面管理 |
|
| 边缘隧道 | WireGuard | 控制面管理 |
|
||||||
| 指标 | Prometheus + Grafana | 三系统统一可观测入口 |
|
| 指标 | Prometheus + Grafana | 三系统统一可观测入口 |
|
||||||
| 追踪 | OpenTelemetry + Jaeger | 端到端事件链路 |
|
| 追踪 | OpenTelemetry + Jaeger | 端到端事件链路 |
|
||||||
@@ -37,8 +41,8 @@
|
|||||||
- Bell 前端框架和组件库。
|
- Bell 前端框架和组件库。
|
||||||
- 事件投递 transport 从 HTTP 起步还是直接采用消息总线。
|
- 事件投递 transport 从 HTTP 起步还是直接采用消息总线。
|
||||||
- 目标 GPU/边缘硬件、解码能力和每 worker 的 `max_sources`。
|
- 目标 GPU/边缘硬件、解码能力和每 worker 的 `max_sources`。
|
||||||
- MinIO/S3 的证据保留、加密与生命周期策略。
|
- MinIO/S3 的精确版本、加密实现,以及客户/法务确认后的最终生命周期策略。
|
||||||
- App 技术栈和 push/短信/语音供应商。
|
- 短信/语音供应商及生产双路径组合;是否开发原生 App 最早在 M4 根据试点反馈决定。
|
||||||
|
|
||||||
这些选项必须在对应任务中记录基准、许可证、运维成本和退出路线。
|
这些选项必须在对应任务中记录基准、许可证、运维成本和退出路线。
|
||||||
|
|
||||||
|
|||||||
+23
-8
@@ -22,7 +22,14 @@ YoVision 使用“通用底座 + 场景包”,按变化频率分为:
|
|||||||
|
|
||||||
MediaMTX、PostgreSQL、MinIO、Prometheus 等作为独立基础设施部署。
|
MediaMTX、PostgreSQL、MinIO、Prometheus 等作为独立基础设施部署。
|
||||||
|
|
||||||
## 3. 核心数据流
|
## 3. 部署与系统边界
|
||||||
|
|
||||||
|
- 首期每个客户部署一套私有实例,数据和事件证据留在客户环境;数据库实体、RBAC、配置与 API 从第一版携带 `tenant_id` 并保持 SaaS-ready 边界。
|
||||||
|
- Bell 自研且是事件、Alert、ack、升级链、租户和审计的唯一业务真相源;客户平台通过版本化 OpenAPI/Webhook 集成,不反向接管核心状态机。
|
||||||
|
- M1–M3 的视频入口只有 ONVIF/RTSP。现有 NVR 在售前盘点;仅支持 GB/T 28181 的项目必须建立独立适配器任务,不把国标信令混入 Sense 最小骨架。
|
||||||
|
- M3 客户端为值班室 Web + 响应式移动 H5,可嵌入客户系统;是否开发原生 App 在 M4 后另行决定。
|
||||||
|
|
||||||
|
## 4. 核心数据流
|
||||||
|
|
||||||
```text
|
```text
|
||||||
摄像头/传感器
|
摄像头/传感器
|
||||||
@@ -32,7 +39,7 @@ Sense ── 视频流/触发信号 ──> Brain
|
|||||||
│ │
|
│ │
|
||||||
│ 设备与切片 API │ 事件契约 v0.1
|
│ 设备与切片 API │ 事件契约 v0.1
|
||||||
│ ▼
|
│ ▼
|
||||||
└────────────────────────── Bell ──> App/短信/语音/Webhook/值班台
|
└────────────────────────── Bell ──> Web/H5/短信/语音/Webhook/本地声光
|
||||||
└──> outcome/误报反馈回 Brain
|
└──> outcome/误报反馈回 Brain
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -46,7 +53,9 @@ Sense ── 视频流/触发信号 ──> Brain
|
|||||||
6. Bell 发起 pre-roll 证据回捞,Sense 提供切片接口。
|
6. Bell 发起 pre-roll 证据回捞,Sense 提供切片接口。
|
||||||
7. 用户标记 outcome,反馈进入 Brain 的数据闭环。
|
7. 用户标记 outcome,反馈进入 Brain 的数据闭环。
|
||||||
|
|
||||||
## 4. 七条不可越界的决定
|
首个 M3 数据流部署在 S2 民办寄宿学校的 16 路高风险点位,只运行越线、危险区域和聚集等匿名规则,不加载人脸底库。
|
||||||
|
|
||||||
|
## 5. 九条不可越界的决定
|
||||||
|
|
||||||
1. MediaMTX 独立运行,Sense 管配置与生命周期。
|
1. MediaMTX 独立运行,Sense 管配置与生命周期。
|
||||||
2. 设备型触发源归 Sense;需要解码的像素级触发归 Brain。
|
2. 设备型触发源归 Sense;需要解码的像素级触发归 Brain。
|
||||||
@@ -55,8 +64,10 @@ Sense ── 视频流/触发信号 ──> Brain
|
|||||||
5. 一个 PostgreSQL 实例,`sense`/`bell` schema 分离;Brain 无业务 schema。
|
5. 一个 PostgreSQL 实例,`sense`/`bell` schema 分离;Brain 无业务 schema。
|
||||||
6. 16/128 都不是单机保证;媒体与推理按独立分片横向扩展。
|
6. 16/128 都不是单机保证;媒体与推理按独立分片横向扩展。
|
||||||
7. Bell 拥有 `site.max_video_channels`,Sense 在设备写路径执行;不跨 schema 直接写。
|
7. Bell 拥有 `site.max_video_channels`,Sense 在设备写路径执行;不跨 schema 直接写。
|
||||||
|
8. 事件片段写入客户侧 MinIO/S3,常态录像留在客户 NVR;元数据/审计、人脸和训练样本使用独立生命周期。
|
||||||
|
9. 投递状态机只依赖 Bell provider 接口,不直接依赖某家短信或语音 SDK;生产前至少两条独立路径并能故障切换。
|
||||||
|
|
||||||
## 5. 容量架构
|
## 6. 容量架构
|
||||||
|
|
||||||
- `site.max_video_channels` 默认 16、最大 128。
|
- `site.max_video_channels` 默认 16、最大 128。
|
||||||
- `media_shard.max_streams` 初始建议 32,可按故障域降为 16,最终由压测确定。
|
- `media_shard.max_streams` 初始建议 32,可按故障域降为 16,最终由压测确定。
|
||||||
@@ -65,7 +76,7 @@ Sense ── 视频流/触发信号 ──> Brain
|
|||||||
- 单分片故障不能扩散到其他分片。
|
- 单分片故障不能扩散到其他分片。
|
||||||
- 管理端默认查看 16 路,但按 128 路设计分页、虚拟列表、筛选和批量操作。
|
- 管理端默认查看 16 路,但按 128 路设计分页、虚拟列表、筛选和批量操作。
|
||||||
|
|
||||||
## 6. 一致性与失败处理
|
## 7. 一致性与失败处理
|
||||||
|
|
||||||
- PostgreSQL 是期望态真相源;MediaMTX、推理 worker 和对象存储是可对账的实际态。
|
- PostgreSQL 是期望态真相源;MediaMTX、推理 worker 和对象存储是可对账的实际态。
|
||||||
- 对账器水平触发、幂等、指数退避、限制并发;部分失败不做跨系统回滚,只持续收敛。
|
- 对账器水平触发、幂等、指数退避、限制并发;部分失败不做跨系统回滚,只持续收敛。
|
||||||
@@ -73,15 +84,17 @@ Sense ── 视频流/触发信号 ──> Brain
|
|||||||
- 配额读取失败只阻止新增/启用,不中断已有流。
|
- 配额读取失败只阻止新增/启用,不中断已有流。
|
||||||
- Brain 投递失败落本地队列重试,不阻塞实时推理主链路。
|
- Brain 投递失败落本地队列重试,不阻塞实时推理主链路。
|
||||||
- Alert 先落库再投递,进程重启恢复未完成升级链。
|
- Alert 先落库再投递,进程重启恢复未完成升级链。
|
||||||
|
- 事件证据技术默认保留 30 天并按生命周期删除;客户/法务在 M3 生产上线前确认法规适用性和最终期限,技术默认值不能覆盖其结论。
|
||||||
|
|
||||||
## 7. 数据与契约
|
## 8. 数据与契约
|
||||||
|
|
||||||
- 核心实体:Tenant → Site → Area/Device → StreamBinding/Zone;Rule → Event → Alert → DeliveryAttempt/Ack。
|
- 核心实体:Tenant → Site → Area/Device → StreamBinding/Zone;Rule → Event → Alert → DeliveryAttempt/Ack。
|
||||||
- Event 与 Alert 不合并:一个事件可触发多次预警与投递,一次预警也可聚合多个事件。
|
- Event 与 Alert 不合并:一个事件可触发多次预警与投递,一次预警也可聚合多个事件。
|
||||||
- 事件 v0.1 以 `raw/contracts/event-v0.1.schema.json` 与 `raw/contracts/README.md` 为准;未知顶层字段拒绝,只允许通过 `ext` 扩展。
|
- 事件 v0.1 以 `raw/contracts/event-v0.1.schema.json` 与 `raw/contracts/README.md` 为准;未知顶层字段拒绝,只允许通过 `ext` 扩展。
|
||||||
- v0.1 还需代码校验时间自洽、`confidence` 当前为 null、证据文件名隐私、唯一 primary sensor 等跨字段约束。
|
- v0.1 还需代码校验时间自洽、`confidence` 当前为 null、证据文件名隐私、唯一 primary sensor 等跨字段约束。
|
||||||
|
- S2 MVP 不处理人脸。首个人脸试点最早 M5,只允许经法务/客户门禁确认的 S4 成人访客/承包商白名单(≤10,000 人),并提供非人脸替代方式。
|
||||||
|
|
||||||
## 8. 目录目标
|
## 9. 目录目标
|
||||||
|
|
||||||
```text
|
```text
|
||||||
Sense/cmd + Sense/internal/{device,onvif,mtx,reconcile,probe,trigger,tunnel,authcb,store}
|
Sense/cmd + Sense/internal/{device,onvif,mtx,reconcile,probe,trigger,tunnel,authcb,store}
|
||||||
@@ -92,7 +105,7 @@ Bell/{web,packs,contracts}
|
|||||||
|
|
||||||
当前只有空目录占位;真实脚手架必须由对应任务创建。
|
当前只有空目录占位;真实脚手架必须由对应任务创建。
|
||||||
|
|
||||||
## 9. 开发顺序
|
## 10. 开发顺序
|
||||||
|
|
||||||
- M0 不写生产代码。
|
- M0 不写生产代码。
|
||||||
- M1 只动 Sense,5 路接入骨架与 MediaMTX。
|
- M1 只动 Sense,5 路接入骨架与 MediaMTX。
|
||||||
@@ -100,4 +113,6 @@ Bell/{web,packs,contracts}
|
|||||||
- M3 Brain 与 Bell 同时起步,事件契约首次被真实使用。
|
- M3 Brain 与 Bell 同时起步,事件契约首次被真实使用。
|
||||||
- M4/M5 再做 64/128 路分片、完整管理端和多个场景包。
|
- M4/M5 再做 64/128 路分片、完整管理端和多个场景包。
|
||||||
|
|
||||||
|
M3 先执行不少于 2 周的 dry-run,冻结现场标注集,按规则报告召回率和每路每天误报数;现场基线评审后才把数值阈值写入站点验收附件。算法效果指标与系统 SLA 分开验收。
|
||||||
|
|
||||||
任何任务若违反顺序或跨越系统边界,必须先修改架构决策并经评审,不得“先写再说”。
|
任何任务若违反顺序或跨越系统边界,必须先修改架构决策并经评审,不得“先写再说”。
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
- `docs/raw/contracts/event-v0.1.schema.json` 已冻结,并有多份示例与语义说明。
|
- `docs/raw/contracts/event-v0.1.schema.json` 已冻结,并有多份示例与语义说明。
|
||||||
- harness coding 文档、上下文清单、Gitea Issue/PR 模板和治理脚本已接入。
|
- harness coding 文档、上下文清单、Gitea Issue/PR 模板和治理脚本已接入。
|
||||||
- Gitea 已初始化 11 个协作标签;首批 Issue 已建立,实时可领取状态必须从 Gitea 查询,不在本文复制。
|
- Gitea 已初始化 11 个协作标签;首批 Issue 已建立,实时可领取状态必须从 Gitea 查询,不在本文复制。
|
||||||
- 远端协调只读审计已通过,当前没有 claim 分支、工作分支或 PR。
|
- T-002 已关闭架构影响型问题:首期 S2 民办寄宿学校、客户侧私有部署、ONVIF/RTSP、NVIDIA 主路径、自研 Bell、Web/H5 与客户侧证据存储等边界已批准。
|
||||||
- `_reference/mibeenvr` 为本地只读参考仓库,已被忽略;只允许 M0 实验与白名单借鉴。
|
- `_reference/mibeenvr` 为本地只读参考仓库,已被忽略;只允许 M0 实验与白名单借鉴。
|
||||||
|
|
||||||
## 当前可运行命令
|
## 当前可运行命令
|
||||||
@@ -39,14 +39,15 @@ python scripts/validate_harness_governance.py
|
|||||||
## 当前 blocker / 待确认
|
## 当前 blocker / 待确认
|
||||||
|
|
||||||
- 尚未完成 3–5 款候选摄像头的 ONVIF/RTSP 实机矩阵和采购白名单。
|
- 尚未完成 3–5 款候选摄像头的 ONVIF/RTSP 实机矩阵和采购白名单。
|
||||||
- `raw/01-需求收集.md` §8 的 Q1、Q2、Q4–Q12 仍需产品/客户/技术共同关闭。
|
- S2 真实生产试点的未成年人影像、公共安全视频法规适用性和最终留存政策仍需客户/法务确认,阻塞 M3 上线但不阻塞 M1 实验室骨架。
|
||||||
- 人脸、未成年人影像和留存政策的法务结论未完成,阻塞相关上线范围。
|
- 人脸方向已延后至 M5 的 S4 成人园区候选试点;必要性/PIP 影响评估、单独同意与替代方式、合法底库来源和删除流程未完成,阻塞人脸能力上线。
|
||||||
|
- 短信/语音具体供应商未选;生产前必须选定两条独立投递路径并验证故障切换。
|
||||||
- Go/Python/PostgreSQL/MediaMTX/Savant 的精确版本、目标硬件和 Bell 前端栈尚未冻结。
|
- Go/Python/PostgreSQL/MediaMTX/Savant 的精确版本、目标硬件和 Bell 前端栈尚未冻结。
|
||||||
- 代码知识图谱在无业务代码阶段可能为空;工具不可用时使用 `rg` 处理文档与配置。
|
- 代码知识图谱在无业务代码阶段可能为空;工具不可用时使用 `rg` 处理文档与配置。
|
||||||
|
|
||||||
## 下一步
|
## 下一步
|
||||||
|
|
||||||
从 Gitea 的 `status/todo` 工单中由 dispatcher 分配依赖已满足、编号最靠前且写路径不冲突的任务。当前路线图从 T-001(摄像头兼容性矩阵)和 T-002(开放问题闭环)开始;不要仅凭本文宣称领取成功。
|
从 Gitea 的 `status/todo` 工单中由 dispatcher 分配依赖已满足、编号最靠前且写路径不冲突的任务。下一项优先完成 T-001(摄像头兼容性矩阵);T-003 仍需等待 T-001,T-002 已满足。不要仅凭本文宣称领取成功。
|
||||||
|
|
||||||
## 已知风险
|
## 已知风险
|
||||||
|
|
||||||
|
|||||||
+32
-24
@@ -1,6 +1,6 @@
|
|||||||
# 📋 YoVision 智能视频事件平台 — 需求收集文档
|
# 📋 YoVision 智能视频事件平台 — 需求收集文档
|
||||||
|
|
||||||
> 版本 v0.3 · 2026-08-03
|
> 版本 v0.4 · 2026-08-03
|
||||||
> 配套文档:《02-需求分析》《03-通用场景应用方案》
|
> 配套文档:《02-需求分析》《03-通用场景应用方案》
|
||||||
> 参考输入:`其他项目的文档/` 下三份跌倒检测项目文档(居家养老单场景),本文档将其经验泛化到多场景
|
> 参考输入:`其他项目的文档/` 下三份跌倒检测项目文档(居家养老单场景),本文档将其经验泛化到多场景
|
||||||
|
|
||||||
@@ -72,7 +72,7 @@
|
|||||||
| 场景走访 | 家庭 / 学校 / 社区各 2–3 个点位实地踏勘 | ⬜ 待执行 |
|
| 场景走访 | 家庭 / 学校 / 社区各 2–3 个点位实地踏勘 | ⬜ 待执行 |
|
||||||
| 竞品与开源调研 | Frigate / ZoneMinder / Shinobi / MiBeeNvr / mediamtx / Savant | 🔶 NVR 选型已完成,见《03》§1.4;推理框架与商业竞品继续调研 |
|
| 竞品与开源调研 | Frigate / ZoneMinder / Shinobi / MiBeeNvr / mediamtx / Savant | 🔶 NVR 选型已完成,见《03》§1.4;推理框架与商业竞品继续调研 |
|
||||||
| 硬件兼容性摸底 | 采购 3–5 款候选摄像头做 ONVIF 实测 | ⬜ 待执行(M0 出口) |
|
| 硬件兼容性摸底 | 采购 3–5 款候选摄像头做 ONVIF 实测 | ⬜ 待执行(M0 出口) |
|
||||||
| 法务咨询 | 人脸识别、未成年人影像、留存期限 | ⬜ 待执行(阻塞 M3) |
|
| 法务咨询 | 人脸识别、未成年人影像、留存期限 | ⬜ 待执行(分别作为 M3/M5 上线门禁) |
|
||||||
| 现场误报采集 | 试点期真实误报案例库 | ⬜ 待执行(M3 首要产出) |
|
| 现场误报采集 | 试点期真实误报案例库 | ⬜ 待执行(M3 首要产出) |
|
||||||
|
|
||||||
> **踏勘清单**(走访时必须带回的东西):点位平面图与摄像头安装高度/俯角、现场网络出口带宽与是否有公网 IP、现有 NVR/平台型号、值班人员的实际工作流(现在出事怎么处理)、他们目前最痛的三件事。
|
> **踏勘清单**(走访时必须带回的东西):点位平面图与摄像头安装高度/俯角、现场网络出口带宽与是否有公网 IP、现有 NVR/平台型号、值班人员的实际工作流(现在出事怎么处理)、他们目前最痛的三件事。
|
||||||
@@ -224,6 +224,8 @@
|
|||||||
> ReID 产生的是会话内的匿名 track/person 标识,能回答"是不是同一个人在这徘徊 10 分钟",但不回答"他是谁"。它满足 RQ-S3-05(徘徊)、RQ-S2-04(尾随)等大部分需求,且不涉及生物识别信息的采集与存储。
|
> ReID 产生的是会话内的匿名 track/person 标识,能回答"是不是同一个人在这徘徊 10 分钟",但不回答"他是谁"。它满足 RQ-S3-05(徘徊)、RQ-S2-04(尾随)等大部分需求,且不涉及生物识别信息的采集与存储。
|
||||||
>
|
>
|
||||||
> 人脸识别只用在**必须知道"是谁"**的需求上:白名单放行(本校学生/住户)、重点关注人员告警、访客登记核验。这类需求要逐条论证"为什么 ReID 不够"。
|
> 人脸识别只用在**必须知道"是谁"**的需求上:白名单放行(本校学生/住户)、重点关注人员告警、访客登记核验。这类需求要逐条论证"为什么 ReID 不够"。
|
||||||
|
>
|
||||||
|
> **首期边界(2026-08-03 已定)**:S2 校园 MVP 不启用人脸。首个人脸试点最早在 M5,候选为 S4 成人园区的访客/承包商白名单,首库不超过 10,000 人,不用于考勤、课堂分析、未成年人或一般匿名同一性场景,并必须提供等效的非人脸替代方式。
|
||||||
|
|
||||||
## 5.2 人脸识别启用的前置条件
|
## 5.2 人脸识别启用的前置条件
|
||||||
|
|
||||||
@@ -343,7 +345,9 @@
|
|||||||
|
|
||||||
> 事项 3 是逃生通道,不是默认路径。把它写进文档是为了让"授权没批下来"不至于卡死 M3——迁移代价可控(关键点定义相同)。
|
> 事项 3 是逃生通道,不是默认路径。把它写进文档是为了让"授权没批下来"不至于卡死 M3——迁移代价可控(关键点定义相同)。
|
||||||
|
|
||||||
## 7.3 合规约束(开工前需法务确认,**阻塞 M3**)
|
## 7.3 合规上线门禁
|
||||||
|
|
||||||
|
下列事项不阻塞 M1 的 Sense 技术骨架,但必须在对应真实业务上线前,由客户与法务形成可审计结论:
|
||||||
|
|
||||||
- [ ] 视频/图像证据的最长保存期限
|
- [ ] 视频/图像证据的最长保存期限
|
||||||
- [ ] 各角色可查看范围的法定边界(家属能看什么、物业能看什么、校方能看什么)
|
- [ ] 各角色可查看范围的法定边界(家属能看什么、物业能看什么、校方能看什么)
|
||||||
@@ -351,7 +355,9 @@
|
|||||||
- [ ] 公共区域摄像头的告示牌义务
|
- [ ] 公共区域摄像头的告示牌义务
|
||||||
- [ ] 数据出境/第三方云服务使用的限制
|
- [ ] 数据出境/第三方云服务使用的限制
|
||||||
|
|
||||||
**人脸识别专项**(客户已确认将授权使用,但授权 ≠ 合规完成,见 §5.2):
|
其中,真实公共安全视频场景进入 M3 生产试点前,必须确认适用法规、告示/备案义务、角色查看范围和最终留存期限。技术默认值不能替代该结论。
|
||||||
|
|
||||||
|
**人脸识别专项**(方向已确认,但授权 ≠ 合规完成,见 §5.2;阻塞 M5 人脸试点上线):
|
||||||
|
|
||||||
- [ ] 租户授权书模板(用途、范围、期限、底库来源合法性承诺)
|
- [ ] 租户授权书模板(用途、范围、期限、底库来源合法性承诺)
|
||||||
- [ ] 人脸信息的单独同意取得方式(生物识别信息通常需要单独同意,不能与一般隐私政策打包)
|
- [ ] 人脸信息的单独同意取得方式(生物识别信息通常需要单独同意,不能与一般隐私政策打包)
|
||||||
@@ -363,26 +369,26 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 8. 待确认问题清单
|
# 8. 架构影响型问题决策台账(2026-08-03 已批准)
|
||||||
|
|
||||||
需要与客户/产品明确的开放问题,**答案会实质改变架构**:
|
项目负责人已确认以下产品与技术方向。涉及个人信息和公共安全视频的项目,批准的是架构边界与治理路径;客户/法务仍须在对应上线里程碑前完成专项审查,不能把本表当作法律意见。
|
||||||
|
|
||||||
| # | 问题 | 影响 |
|
| # | 已批准决策 | 状态 / 后续门禁 |
|
||||||
| --- | --- | --- |
|
| --- | --- | --- |
|
||||||
| Q1 | 首期落地哪一个场景?三个都做还是选一个打穿? | 决定 M1–M4 的取舍与工期 |
|
| Q1 | 首期打穿 **S2 民办寄宿学校**;客户侧 16 路高风险点位,优先越线、危险区域、聚集等匿名安全规则,不启用人脸 | 已关闭;M3 场景基线 |
|
||||||
| Q2 | 是私有化交付(一个客户一套)还是 SaaS 多租户? | 决定多租户隔离深度、计费、升级方式 |
|
| Q2 | 客户侧私有化部署优先;`tenant_id`、RBAC、schema 与租户边界从第一版保留,代码保持 SaaS-ready | 已关闭 |
|
||||||
| ~~Q3~~ | ~~单个项目典型规模(路数)与总体目标规模?~~ **已答:默认 16 路,按 32 / 64 / 128 路横向扩展,单站点本阶段上限 128 路。见 §1.3** | ✅ 已闭环 |
|
| Q3 | 默认 16 路,按 32 / 64 / 128 路横向扩展,单站点本阶段上限 128 路 | 已关闭,见 §1.3 |
|
||||||
| Q4 | 是否已有存量 NVR/平台需要对接(GB/T 28181 国标)? | 国标接入是独立工作量,需单列 |
|
| Q4 | M1–M3 只保证 ONVIF/RTSP;售前盘点存量 NVR。GB/T 28181-2022 不进入当前 MVP,客户只能走国标时另建适配任务 | 已关闭;项目级适配任务按需触发 |
|
||||||
| Q5 | 是否必须支持国产化信创环境(海光/鲲鹏 + 昇腾/寒武纪)? | 决定推理框架能否用 DeepStream/Savant |
|
| Q5 | M1–M3 只验证 NVIDIA x86/Jetson + Savant/DeepStream,不承诺信创;保留 ONNX/框架适配边界,信创作为独立硬件 POC 和报价 | 已关闭;目标硬件版本仍由基准任务冻结 |
|
||||||
| Q6 | 「管理系统」是本项目自研还是对接客户现有系统? | 决定前端工作量与 API 契约 |
|
| Q6 | 自研 Bell 核心管理系统;以版本化 OpenAPI/Webhook 对接客户平台。事件、Alert、ack、升级链、租户和审计以 Bell 为真相源 | 已关闭 |
|
||||||
| Q7 | 「App」是自研还是嵌入客户已有 App?推送用什么厂商通道? | 决定移动端工作量 |
|
| Q7 | M3 不做独立原生 App;交付值班室 Web + 响应式移动 H5,并提供嵌入/API;M4 根据试点反馈再决定原生 App | 已关闭 |
|
||||||
| ~~Q8~~ | ~~是否需要人脸识别(C 类身份判定)?~~ **已答:需要,客户将授权。默认仍以 ReID 为主,人脸用于必须知道"是谁"的需求。见 §5.1–5.3** | ✅ 已闭环 |
|
| Q8 | 人脸属于后续可选能力,默认仍以 ReID 为主,只用于必须知道“是谁”的需求 | 已关闭,见 §5.1–5.3 |
|
||||||
| Q8-a | 人脸能力先在**哪个场景**落地?底库规模量级? | 决定底库存储与比对性能方案 |
|
| Q8-a | S2 不启用人脸。首个人脸试点最早 M5,候选为 S4 成人园区访客/承包商白名单,首库 ≤ 10,000 人,且提供非人脸替代 | 架构方向已关闭;法务/客户专项门禁阻塞 M5 人脸上线 |
|
||||||
| Q8-b | 底库数据由客户提供还是系统现场采集? | 决定录入模块工作量与合规责任划分 |
|
| Q8-b | 客户作为个人信息处理者负责合法来源、告知和单独同意;YoVision 作为受托处理方提供加密导入/现场录入、有效期、撤回和删除。禁止抓取或购买第三方人脸底库,原图默认不长期留存 | 治理方向已关闭;数据来源与处理流程须由客户/法务在 M5 前签字确认 |
|
||||||
| Q9 | 家庭场景是否同步引入毫米波雷达做一级触发? | 决定 GPU 数量能否降一个数量级 |
|
| Q9 | 首期 S2 不使用毫米波雷达;S1 卧室/卫生间的非成像传感器在 M6 实现,Sense 先保留设备型触发接口 | 已关闭 |
|
||||||
| Q10 | 语音呼叫/短信是否有既定供应商? | 决定投递层对接工作量 |
|
| Q10 | Bell 使用供应商无关的 provider 接口。试点采用本地声光/Web + 一条短信或语音;生产前补齐两条独立路径及故障切换,供应商按客户采购、覆盖和成本选定 | 架构方向已关闭;生产供应商选择仍是交付门禁 |
|
||||||
| Q11 | 事件视频存哪(客户 NAS / 对象存储 / 公有云)?留多久? | 决定存储成本与合规 |
|
| Q11 | 事件片段存客户侧 MinIO/S3,常态录像仍在客户 NVR;技术默认 30 天并在目的完成后删除,元数据/审计另设策略,人脸和训练样本独立且更短 | 技术方向已关闭;客户/法务在 M3 前确认法规适用性和最终期限 |
|
||||||
| Q12 | 验收标准如何定义?准确率/召回率的可接受阈值? | ⚠️ 必须在合同前定,见 §9 |
|
| Q12 | 不承诺统一“准确率 ≥ X%”;M3 至少 dry-run 2 周,冻结现场标注集,按规则报告召回率和每路每天误报数,数字阈值在基线后写入站点验收附件;系统 SLA 独立验收 | 验收方法已关闭;站点阈值由客户在基线后签署 |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -400,6 +406,8 @@
|
|||||||
| 运营期 | 承诺**误报收敛趋势**(如:运营 3 个月后每路每天误报 ≤ N 次)而非绝对准确率 |
|
| 运营期 | 承诺**误报收敛趋势**(如:运营 3 个月后每路每天误报 ≤ N 次)而非绝对准确率 |
|
||||||
| 全程 | 承诺**系统性 SLA**(延迟、可用性、投递成功率),这些是可测可控的 |
|
| 全程 | 承诺**系统性 SLA**(延迟、可用性、投递成功率),这些是可测可控的 |
|
||||||
|
|
||||||
|
M3 试点必须先进入不少于 2 周的 dry-run:冻结站点、机位、规则版本与人工标注口径,形成现场标注集;按每条规则分别计算召回率与每路每天误报数。只有基线报告评审后,客户与项目方才在站点验收附件中签署数值阈值,不将一个场景的阈值直接复制到另一场景。
|
||||||
|
|
||||||
## 9.2 系统性 SLA 目标(可承诺,待 M3 实测校准)
|
## 9.2 系统性 SLA 目标(可承诺,待 M3 实测校准)
|
||||||
|
|
||||||
| 指标 | 目标 |
|
| 指标 | 目标 |
|
||||||
@@ -417,9 +425,9 @@
|
|||||||
|
|
||||||
| 动作 | 责任方 | 阻塞什么 |
|
| 动作 | 责任方 | 阻塞什么 |
|
||||||
| --- | --- | --- |
|
| --- | --- | --- |
|
||||||
| 回答 §8 剩余问题(Q1–Q7、Q8-a/b、Q9–Q12) | 产品 / 客户 | 需求分析定稿 |
|
| 按 §8 已批准决策拆解里程碑与任务,并持续跟踪下游门禁 | 产品 / 技术负责人 | M1–M6 范围控制 |
|
||||||
| 采购 3–5 款摄像头做 §6.1 实测 | 硬件 / 交付 | M0 出口、所有接入开发 |
|
| 采购 3–5 款摄像头做 §6.1 实测 | 硬件 / 交付 | M0 出口、所有接入开发 |
|
||||||
| 法务确认 §7.3 通用五项 | 法务 | M3 上线 |
|
| 客户/法务确认 §7.3 通用五项及公共安全视频法规适用性 | 客户 / 法务 | M3 真实生产试点上线 |
|
||||||
| **法务确认 §7.3 人脸专项七项 + 出具授权书模板** | 法务 | **人脸能力启用(不阻塞 M3 主线)** |
|
| **法务确认 §7.3 人脸专项七项 + 出具授权书模板** | 法务 | **人脸能力启用(不阻塞 M3 主线)** |
|
||||||
| **采购 Ultralytics Enterprise License(§7.2.1)** | 采购 / 技术负责人 | **M3 前必须完成,否则走 YOLOX 替代路径** |
|
| **采购 Ultralytics Enterprise License(§7.2.1)** | 采购 / 技术负责人 | **M3 前必须完成,否则走 YOLOX 替代路径** |
|
||||||
| 核对人脸识别模型的权重与代码许可 | 算法 | 人脸能力启用 |
|
| 核对人脸识别模型的权重与代码许可 | 算法 | 人脸能力启用 |
|
||||||
@@ -427,4 +435,4 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
> 本文档只负责**收集与澄清**,不做方案裁决。需求的分层、取舍与规格化见《02-需求分析》;技术实现路径见《03-通用场景应用方案》。
|
> 本文档负责记录需求来源、澄清结果和已批准边界。需求的分层与规格化见《02-需求分析》;技术实现路径见《03-通用场景应用方案》。
|
||||||
|
|||||||
+59
-9
@@ -3,12 +3,12 @@ id: T-002
|
|||||||
title: 关闭架构影响型需求开放问题
|
title: 关闭架构影响型需求开放问题
|
||||||
phase: 0
|
phase: 0
|
||||||
deps: []
|
deps: []
|
||||||
status: TODO
|
status: DONE
|
||||||
created: 2026-08-03
|
created: 2026-08-03
|
||||||
issue: 2
|
issue: 2
|
||||||
context_ref: null
|
context_ref: 96a64df98f39f44ae01090fe566979f8209b5570
|
||||||
claim_branch: null
|
claim_branch: claims/T-002
|
||||||
work_branch: null
|
work_branch: agent/codex/T-002
|
||||||
write_paths:
|
write_paths:
|
||||||
- docs/tasks/T-002.md
|
- docs/tasks/T-002.md
|
||||||
- docs/raw/01-需求收集.md
|
- docs/raw/01-需求收集.md
|
||||||
@@ -36,6 +36,33 @@ write_paths:
|
|||||||
3. 回填原始需求,并同步 harness 愿景、需求、技术栈、架构与当前状态。
|
3. 回填原始需求,并同步 harness 愿景、需求、技术栈、架构与当前状态。
|
||||||
4. 仍不能关闭的问题必须转为明确 blocker,说明阻塞哪个任务和可继续的安全范围。
|
4. 仍不能关闭的问题必须转为明确 blocker,说明阻塞哪个任务和可继续的安全范围。
|
||||||
|
|
||||||
|
## 决策结论(2026-08-03 已批准)
|
||||||
|
|
||||||
|
> 项目负责人在当前会话确认“全部按建议”,并已回填 Gitea Issue #2。该批准关闭产品与技术方向;Q8-a、Q8-b、Q11 的批准不构成法律意见,对应客户/法务上线门禁仍须按期完成。
|
||||||
|
|
||||||
|
| 问题 | 批准决策 | 主要理由与边界 | 批准角色 | 状态 |
|
||||||
|
| --- | --- | --- | --- | --- |
|
||||||
|
| Q1 首期场景 | **S2 民办寄宿学校**,首期只覆盖 16 路高风险点位,优先越线/危险区域/聚集等匿名安全规则;不做人脸 | 决策链 1–3 个月、能复用存量摄像头、单站点 16→128 路与当前架构吻合;先民办形成样板,再进入公办统采 | 产品/商业负责人 | 已批准 |
|
||||||
|
| Q2 交付形态 | **客户侧私有化部署优先,代码保持 SaaS-ready 多租户边界** | 首期降低跨客户运维、数据集中和合规复杂度;`tenant_id`、RBAC、schema 隔离仍从第一版保留,为教育局区级统采做准备 | 产品/技术负责人 | 已批准 |
|
||||||
|
| Q4 存量 NVR/国标 | MVP 只保证 ONVIF/RTSP 直连;**GB/T 28181-2022 不进 M1–M3**。售前先盘点存量设备,若只能走国标则单独建适配任务 | 国标是独立信令、目录、注册和流转工作量,不能混进 Sense 最小骨架;现行标准为 GB/T 28181-2022 | 客户/技术负责人 | 已批准 |
|
||||||
|
| Q5 信创 | M1–M3 **不承诺信创**,先用 NVIDIA x86/Jetson + Savant/DeepStream 验证;模型接口、ONNX 和框架适配层保留逃生通道 | Savant/DeepStream 当前明确绑定 NVIDIA 栈;海光/鲲鹏/昇腾/寒武纪应作为独立硬件 POC 和报价,不是假装“兼容” | 商业/技术负责人 | 已批准 |
|
||||||
|
| Q6 管理系统 | **自研 Bell 核心管理系统**;通过版本化 OpenAPI/Webhook 对接客户平台 | 事件、Alert、ack、升级链、租户与审计是产品核心,不能外包给客户现有平台;客户系统只做集成,不做真相源 | 产品/技术负责人 | 已批准 |
|
||||||
|
| Q7 App | M3 不做独立原生 App;先交付值班室 Web + 移动 H5/响应式处置页,并提供嵌入/API;M4 根据样板客户决定原生 App | 避免同时铺开 iOS/Android;移动端依靠短信/语音链接进入处置,值班室 Web/声光承担首期主闭环 | 产品/客户 | 已批准 |
|
||||||
|
| Q8-a 人脸首场景 | S2 **不启用人脸**。首个人脸试点推迟到 M5,建议在 S4 成人园区的访客/承包商白名单中进行,首库不超过 1 万人;必须提供非人脸替代方式 | 避开未成年人和“校园人脸库”;人脸只用于必须知道“是谁”的场景,不用于考勤、课堂分析或一般同一性 | 产品/法务/试点客户 | 方向已批准;M5 客户/法务门禁 |
|
||||||
|
| Q8-b 底库来源 | 客户作为个人信息处理者对合法来源、告知和单独同意负责;YoVision 作为受托处理方提供加密导入/现场录入、有效期、撤回和删除能力 | 禁止抓取公开照片、从第三方购买底库或由供应商私自留存;现场采集由客户授权人员操作,原图默认不长期保存 | 法务/客户 | 治理方向已批准;M5 客户/法务门禁 |
|
||||||
|
| Q9 毫米波雷达 | 首期 S2 不引入;S1 居家养老的卧室/卫生间必须使用非成像传感器,但放在 M6 异构传感器阶段 | 不让未选定的家庭硬件阻塞首个校园 MVP;Sense 保留设备型触发接口 | 产品/技术负责人 | 已批准 |
|
||||||
|
| Q10 短信/语音供应商 | 当前不绑定厂商;Bell 定义 provider 接口。试点至少使用“值班室本地声光/Web + 一条短信或语音”,生产前补齐两条独立路径和供应商故障切换 | 供应商应随客户采购、区域覆盖和成本选择,业务状态机不得依赖某家 SDK | 商业/客户/技术负责人 | 架构已批准;供应商为生产门禁 |
|
||||||
|
| Q11 视频存储与留存 | 首期事件片段存客户侧 MinIO/S3 兼容对象存储,常态录像继续由客户 NVR 保存;事件视频技术默认 30 天,到期按目的完成情况自动删除,元数据/审计另设策略 | 公共安全视频系统适用时依法不少于 30 天;是否适用、是否需更长由客户法务确认。人脸与训练样本必须独立、更短且可删除 | 法务/客户/技术负责人 | 技术方向已批准;M3 客户/法务门禁 |
|
||||||
|
| Q12 验收 | 不签统一“准确率 ≥ X%”。M3 先 dry-run 至少 2 周,冻结现场标注集,按规则报告召回率和每路每天误报数;数字阈值在基线后写入站点验收附件。系统 SLA 继续使用 §9.2 的可测指标 | 把算法效果与系统可靠性分开;没有现场分布和标注口径时,绝对准确率不可验证 | 产品/客户/法务 | 验收方法已批准;站点阈值基线后签署 |
|
||||||
|
|
||||||
|
### 外部约束依据
|
||||||
|
|
||||||
|
- 国家标准信息公共服务平台:现行 [`GB/T 28181-2022`](https://openstd.samr.gov.cn/bzgk/std/newGbInfo?hcno=8BBC2475624A6C31DC34A28052B3923D)。
|
||||||
|
- 国家网信办、公安部:《[人脸识别技术应用安全管理办法](https://www.cac.gov.cn/2025-03/21/c_1744174262342111.htm)》自 2025-06-01 起施行,要求必要性、单独同意、最短留存,并在存在等效非人脸方式时不得把人脸作为唯一验证方式。
|
||||||
|
- 中国人大网:《[中华人民共和国个人信息保护法](https://www.npc.gov.cn/WZWSREL25wYy9jMi9jMzA4MzQvMjAyMTA4L3QyMDIxMDgyMF8zMTMwODguaHRtbD9yZWY9aW1i)》将生物识别和不满十四周岁未成年人的信息列为敏感个人信息,并规定受托处理、单独同意和未成年人监护人同意等要求。
|
||||||
|
- 国务院令第 799 号:《[公共安全视频图像信息系统管理条例](https://www.mee.gov.cn/zcwj/gwywj/202502/t20250211_1102044.shtml)》自 2025-04-01 起施行;适用该条例的公共安全视频图像信息保存不少于 30 日,目的实现后应删除。
|
||||||
|
- NVIDIA [DeepStream 安装与平台兼容文档](https://docs.nvidia.com/metropolis/deepstream/dev-guide/text/DS_Installation.html) 与 Savant [官方仓库兼容矩阵](https://github.com/insight-platform/Savant)确认当前主路径依赖 NVIDIA dGPU/Jetson 与对应 DeepStream/JetPack 版本。
|
||||||
|
|
||||||
## 不可变约束
|
## 不可变约束
|
||||||
|
|
||||||
- 阈值 / 数值边界:默认 16、最大 128 的已定容量不在本任务中降级或改写。
|
- 阈值 / 数值边界:默认 16、最大 128 的已定容量不在本任务中降级或改写。
|
||||||
@@ -47,7 +74,7 @@ write_paths:
|
|||||||
|
|
||||||
- 任务相关验证:Q1、Q2、Q4–Q12 每项有闭环记录或明确 blocker;摘要与原始文档一致;运行三条 harness 治理命令。
|
- 任务相关验证:Q1、Q2、Q4–Q12 每项有闭环记录或明确 blocker;摘要与原始文档一致;运行三条 harness 治理命令。
|
||||||
- 完整门禁:若修改 schema/API/路由,触发对应契约与导航完整检查。
|
- 完整门禁:若修改 schema/API/路由,触发对应契约与导航完整检查。
|
||||||
- 人工 / 设备验收:必需;产品负责人确认范围,法务确认合规项,技术负责人确认架构影响。
|
- 人工 / 设备验收:项目负责人确认产品范围与技术方向;合规相关项可以“明确的下游上线 blocker”闭环,但必须写明责任方和最晚里程碑,不得冒充法务签字。
|
||||||
- 构建产物:不适用。
|
- 构建产物:不适用。
|
||||||
|
|
||||||
## 边界(不改什么)
|
## 边界(不改什么)
|
||||||
@@ -56,13 +83,36 @@ write_paths:
|
|||||||
|
|
||||||
## 协作约束
|
## 协作约束
|
||||||
|
|
||||||
- 责任 Agent:由 dispatcher 分配。
|
- 责任 Agent:codex。
|
||||||
- 唯一写入者:同责任 Agent;外部责任人只提供决策和证据。
|
- 唯一写入者:codex;外部责任人只提供决策和证据。
|
||||||
- 委派:默认不启用。
|
- 委派:默认不启用。
|
||||||
- Gitea:主 Issue 为 #2;领取时写入 `context_ref`、claim 和工作分支。
|
- Gitea:主 Issue 为 #2;`context_ref` 为 `96a64df98f39f44ae01090fe566979f8209b5570`,claim 为 `claims/T-002`,工作分支为 `agent/codex/T-002`。
|
||||||
|
|
||||||
任何新增写路径先由 dispatcher 与活跃任务做前缀冲突检查。
|
任何新增写路径先由 dispatcher 与活跃任务做前缀冲突检查。
|
||||||
|
|
||||||
## 执行记录
|
## 执行记录
|
||||||
|
|
||||||
尚未领取。
|
### 2026-08-03 领取与基线
|
||||||
|
|
||||||
|
- dispatcher `ila` 已将任务分配给 `codex`,Issue #2 已切换为 `status/doing`。
|
||||||
|
- claim 与工作分支均从精确 `context_ref` `96a64df98f39f44ae01090fe566979f8209b5570` 创建并读回一致。
|
||||||
|
- 在独立 worktree `D:\OPC\yovision-T-002` 运行 `./init.ps1`:上下文校验、16 个治理单测和完整治理检查全部通过。
|
||||||
|
|
||||||
|
### 2026-08-03 决策分析草案
|
||||||
|
|
||||||
|
- 核对原始 Q1、Q2、Q4–Q12、三个目标客户文档、现有技术/合规约束,并形成 12 项推荐决策。
|
||||||
|
- 对 GB/T 28181、NVIDIA/Savant 平台约束、人脸处理和公共安全视频留存使用当前官方资料复核。
|
||||||
|
- 草案提交项目负责人确认前,未将推荐值冒充为正式需求。
|
||||||
|
|
||||||
|
### 2026-08-03 决策批准与文档同步
|
||||||
|
|
||||||
|
- 项目负责人在当前会话确认“全部按建议”;同一批准记录已写入 Gitea Issue #2。
|
||||||
|
- Q1、Q2、Q4–Q7、Q9 已关闭;Q8-a、Q8-b、Q10、Q11、Q12 的架构/治理方法已关闭,并将客户、法务、供应商或现场基线要求记录为对应里程碑门禁。
|
||||||
|
- 已同步原始需求、愿景、实现需求、技术栈、架构和当前状态;M3 首期明确为 S2 民办寄宿学校 16 路匿名安全规则,客户侧私有部署且代码保留 128 路横向扩展和 SaaS-ready 边界。
|
||||||
|
|
||||||
|
### 2026-08-03 验收完成
|
||||||
|
|
||||||
|
- 写入范围复核:变更仅覆盖本任务声明的 7 个 `write_paths`;未修改事件 schema、API、路由或生产代码。
|
||||||
|
- `git diff --check` 与暂存区 `git diff --cached --check` 均通过,无空白错误。
|
||||||
|
- 在独立 worktree 运行 `./init.ps1` 通过:agent 上下文校验通过,16 个治理单测全部通过,完整 harness 治理校验通过。
|
||||||
|
- 产品与技术方向已由项目负责人批准;M3/M5 合规事项均有责任方、最晚里程碑和安全可继续范围,因此不将未取得的法务意见表述为已完成。
|
||||||
|
|||||||
Reference in New Issue
Block a user