pub struct RecordedEvent {
pub raw_code: i32,
pub timestamp_ms: f64,
pub extra: Map<String, Value>,
}Expand description
One recorder event captured by /record/start → /record/poll flow.
v5.1 c3 S2 校正:swift EventRecorder 端实际 emit 的是 rawCode field
(kAXNotification raw int — 1018 = focus change / 1028 = HID / 4002 = userTesting / …),
不是 code。c2 capstone 初版 jq 用 .code 查 events.json 全返 null,
误判 “0 个 1018”,修正后真实有 3 × 1018。SDK 端 deserialize 之前同样
silent → code 字段永远 0。本 struct 字段名按 swift 真实 schema 对齐
(raw_code + serde camelCase → rawCode),并加 extra flatten 兜底
把 swift 在 RecordedEvent 顶层平铺的 enrich 字段(kind / frame /
payloadDescription / elementType / 等)宽松接收。
Fields§
§raw_code: i32Numeric event-type discriminator(swift RecordedEvent.rawCode)。
典型值:1018 (kAXFirstResponderChangedNotification) / 1028
(kAXHIDEventReceivedNotification) / 4002 (kAXUserTestingNotification)
/ 1006 (kAXAlertNotification) / 1021 (kAXPidStatusChangedNotification)。
timestamp_ms: f64Capture-time timestamp in milliseconds.
extra: Map<String, Value>Free-form per-event 顶层 enrich 字段(swift 端平铺 kind / frame /
payloadDescription / elementType / appBundleId / payloadClassName
等)。reconcile 只读 raw_code + timestamp_ms,不依赖此字段;
上层 SDK 想看明细时按需取(类型 = serde_json::Map)。
Trait Implementations§
Source§impl Clone for RecordedEvent
impl Clone for RecordedEvent
Source§fn clone(&self) -> RecordedEvent
fn clone(&self) -> RecordedEvent
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more