# 数据字典与口径

## 业务工作单

你加入冷链履约运营项目组。运营负责人需要回答：哪些订单与站点需要先处理、导出接口哪里存在控制缺口，以及下一版工作台应交付什么。四个站点为海港、东城、西岭、南湾。standard 承诺 24 h，express 承诺 8 h；具体截止时间以 orders.csv 的 due_at 为准。

材料覆盖 2026 年 9 月的订单及事件，统一复盘截止点为 rules.json 的 cutoff。所有业务时间转 UTC；本地显示时可以换时区，但计算不能把无时区字符串当成本地时间。输入可包含截止点之后的事件，用于检查是否错误使用未来信息。

## orders.csv

- order_id：唯一订单号，字符串，不转成数字。
- hub：站点名；service：standard／express；route：线路编号。
- created_at：带时区的下单时刻；due_at：承诺交付时刻，UTC ISO 8601。
- 一行代表一个订单，事件不等于订单；不要按事件行数统计订单。

## 两个事件源

- A：event_id → event_id；order_ref → order_id；hub → hub；service → service；event → kind；event_time → happened_at。
- B：id → event_id；shipment.number → order_id；shipment.station → hub；shipment.product → service；action 的 OPEN／COLLECT／DROP／VOID 映射 created／picked_up／delivered／cancelled；at_ms 为整数 Unix 毫秒，输出为 UTC ISO 时间。
- 标准事件必须且只需包含 event_id、order_id、hub、service、kind、happened_at。来源文件与行号写入异常／重复清单。
- 同 event_id 标准内容完全相同：只留一条，其他计 exact_replay。同 event_id 内容不同：整组隔离，不能先到先得。坏字段、未知动作或无时区时间：隔离并保留来源及原因。
- 禁止原地修改原始材料。对账：原始事件数 = 标准事件数 + 隔离记录数 + 重复剔除数。

## 截止日履约口径

按订单聚合，先只保留 happened_at ≤ cutoff 的事件。取消单优先排除；due_at > cutoff 的非取消单记 not_mature。其他订单：截止前无交付记 overdue_open；首次交付时刻 > due_at 记 delivered_late；其余 on_time。恰好到期算成熟，恰好交付算准时。

成熟分母 = on_time + delivered_late + overdue_open。迟交分子 = delivered_late + overdue_open。取消与未到期均不得填为准时。已交付迟交分钟按交付时间减 due_at，未交付逾期分钟按 cutoff 减 due_at，两者单列。此材料不包含退款、食物损坏或实际成本，不能推出这些金额。

## 服务审查口径

rules.json 固定目标迟交率为 10%，最小成熟样本 15。差距用百分点，不用百分比变化。成熟样本 <15 优先归“待补样本”；差距 >15 个百分点归“优先处理”；>5 且 ≤15 归“需要复核”；≤5 归“达到阈值”。这些是本次运营审查规则，不是统计显著性或公平性的证明。

统一服务结构比较：standard 和 express 各 50% 权重。两个服务层均满足最小样本才计算站点标准化迟交率；否则保留空值并说明缺口。不得用无依据的总体平均填补小样本。业务假设须与观察事实分开。

## 访问日志与授权策略

access-log.csv 一行一个请求。request_id 唯一；at 为 UTC；user、session、role 为请求上下文；method、path 为路由；status 为响应码；rows、bytes 是网关响应计数。它们不证明唯一客户数，也不证明接收者已使用数据。

access-policy.json 是本次调查的授权基线。operator 只能读取被授权站点，不能 export。supervisor 与 service 允许导出。登录成功后 session 有效 30 分钟，恰好 30 分钟有效；之后应拒绝。401 请求代表被拒绝的尝试，不是成功泄露。svc-archive 是批准的归档账号，频繁大批导出不能只因次数高就定性。日志没有文件正文、终端取证或 VPN 会话记录，不能据此归属自然人、地理位置或入口路径。

