feat(v1): add temporal fall state machine

This commit is contained in:
ila
2026-07-21 09:59:53 +08:00
parent 3c0e11f811
commit 1f6bbd8f98
8 changed files with 231 additions and 26 deletions
+4 -12
View File
@@ -65,23 +65,15 @@ PoseEvidence = {
}
FallEvent = {
event_id: string,
source_id: string,
track_id: string,
started_at_utc: string,
confirmed_at_utc: string,
suspected_at_monotonic: float,
confirmed_at_monotonic: float,
latency_seconds: float,
state: "CONFIRMED",
evidence: {
horizontal_pose: bool,
rapid_vertical_change: bool,
persistence_seconds: float
},
screenshot_path: string,
config_version: string
state: "CONFIRMED"
}
```
`FallEvent` 只在状态首次进入 `CONFIRMED` 时创建一次。连续帧更新 UI 状态,但不重复创建事件。
`FallEvent` 是 T-105 状态机的纯内存确认事件,只在状态首次进入 `CONFIRMED` 时创建一次。连续帧更新 UI 状态,但不重复创建事件。T-202 的 `alerts` 会在不改变事件幂等语义的前提下,为截图/JSONL 记录补充来源、UTC 时间、证据和配置版本。
`PersonPose` 是 T-103 的纯模型输出,不带人员 ID;T-104 的跟踪模块产生 `TrackedPersonPose` 后,才允许事件证据按人员连续积累。