请先分析我提供的源码、同一份输入以及cProfile文本报告，再优化订单汇总函数。

不要改变以下业务语义：
1. 客户ID列表由输入显式提供，输出按这个列表的顺序；无订单或只有pending/cancelled的客户也输出零项。
2. 仅status为paid的订单计入paid_count和paid_cents。pending/cancelled不计入；未知状态和未知客户由输入校验拒绝，不可静默吞掉。
3. amount_cents是非负整数分，不能改为浮点货币；bool不是金额。示例不处理退款、多币种或折扣。
4. 保留完整输出结构、整数类型、边界和错误行为，不修改固定样例来让结果看起来一致。

执行顺序：
- 先说明报告中哪个函数或调用链值得检查。cumtime包含子调用，tottime不含子调用，不要把各层累计时间相加。
- 阅读对应源码再提出一个具体修改。cProfile不显示逐行耗时，不能只凭函数名断言根因。
- 修改前后在同一份输入上比较完整结果，补充空输入、零金额、无有效订单客户及错误输入检查；未通过就停止。
- 说明原实现与新实现的扫描方式，不仅报告“运行结束”。
- 这份profile不是benchmark。没有另行无profiler、同数据、重复计时的证据，不给加速倍数；不要用固定时间阈值作通过条件。

如果缺少源码、输入规则或等价标准，指出关键缺项，不猜生产语义。固定合成样例不能写成真实业务或模型实测。

待提供材料：orders.py、run_profile.py、orders.jsonl、customers.json、cumulative.txt、time.txt，以及对应等价检查结果。
