这是一份为您定制的、面向 AI(Antigravity)的高级重构与压测架构指令集。该指令集以量化数据、内存边界防御与极端压力测试为核心目标,您可以直接将其投喂给 Antigravity,启动 omni-core 的第一阶段重构。
🤖 Antigravity 核心重构与极限压测任务指令集
1. 任务背景与最高战略目标
当前版本的 omni-core 在多端 FFI 通信、内存生命周期管理及线程异步调度上存在进一步夯实的空间。本次重构的最高战略目标是“消除内存墙、建立闪退防御屏障、实现零前端阻塞”。 核心原则:严禁采用“写个 Demo 函数跑通”的消极策略。所有重构成果必须通过百万级( 级)海量数据、高并发场景的极限压力测试,并以明确的量化耗时比(Benchmark)和内存损耗曲线作为交付验收依据。
2. 核心重构实施指令 (Refactoring Blueprints)
指令一:构筑 Panic 绝对防御屏障(0 闪退体系)
-
任务:全面清查
omni-core所有通过#[no_mangle]导出的外部 C-ABI 函数。 -
实施要求:
-
使用
std::panic::catch_unwind宏将所有 FFI 函数体进行 包裹。 -
严禁让任何 Rust 内部的
panic!跨越 FFI 边界抛给宿主端(iOS/Android/Tauri Webview)。 -
一旦捕获到 Panic,将其转换为强类型的错误结构体
OmniCoreError(包含错误码与栈信息),以Result映射形式安全返回。
-
指令二:数据交换层二进制化升级(Protobuf 改造)
-
任务:废除高频或大数据量调用下的 JSON 序列化方案(
serde_json),引入 Protocol Buffers (Prost)。 -
实施要求:
-
针对大数据量传输(如批量数据查询、大型文件分片分发、高频状态同步),编写
.proto文件定义通信数据结构。 -
利用 Rust 侧的生成产物与多端原生(Kotlin/Swift)通过二进制字节数组(
*const u8,u32长度占位)执行 FFI 通信,消除字符串解析的 CPU 损耗。
-
指令三:不透明指针(Opaque Pointers)与闭环析构
-
任务:重新规范核心状态(如数据库连接池、长期持有的 Session)的内存生命周期。
-
实施要求:
-
在 Rust 侧使用
Box::into_raw(Box::new(Arc::new(Mutex::new(State))))生成不透明指针传递给原生端。 -
显式导出
omni_core_free_handle(*mut c_void)释放函数,内部使用Box::from_raw接管并销毁内存。 -
强制要求在原生端(Kotlin/Swift)的析构/析构钩子中绑定该释放函数,杜绝内存泄漏(Memory Leak)。
-
3. 极限压力测试与性能量化指令 (Extreme Stress Testing)
为了获取性能提升的明确量化对比,你必须构建两套测试基准:对照组(重构前/常规 JSON 方案) 与 实验组(重构后/Protobuf + 异步线程池方案)。
压测场景设计矩阵
🧪 压测场景 A:海量结构化数据吞吐测试(突破内存墙)
-
测试数据集:生成包含 条(百万级) 复杂嵌套结构体(包含 String、UUID、Timestamp、Nested Matrix)的测试数据集。
-
执行动作:让 Rust 核心库生成该数据集,并通过 FFI 完整投递给宿主端(Tauri 前端或原生层),并在宿主端完整解析。
-
必须采集的硬性指标:
-
冷启动吞吐耗时 (Latency):从 Rust 发出到宿主端完全解析并建立对象树的总耗时(单位:)。
-
内存峰值与抖动 (Memory Peak):监测 Webview/原生虚拟机的内存 VSS/RSS 曲线,重点观测是否触发重度 GC(垃圾回收)卡顿。
-
🧪 压测场景 B:高并发非阻塞线程池压力测试(极限中断池测试)
-
测试数据集:模拟 个并发任务 同时向
omni-core提交高频请求(如模拟高频加密、密集 I/O 写入)。 -
执行动作:
-
在宿主端主线程启动一个 的高阻尼 UI 动效(或高频计数器渲染)。
-
与此同时,后台并发投递上述任务,强行测试
omni-core的 Tokio 中断池调度能力。
-
-
必须采集的硬性指标:
-
UI 帧率保持率 (FPS Log):UI 线程是否发生掉帧?是否维持在 / 满帧?
-
任务平均响应时间 (AVG Response Time):多线程并发下,单个任务的平均排队加执行时间。
-
4. 交付产物与报告标准 (Deliverables)
Antigravity 在重构并测试完成后,必须输出包含以下内容的结构化报告:
-
代码变更差异表:列出重构的 FFI 导出函数安全覆盖率(必须达到 )。
-
非对称性能对比图表(Markdown 表格形式):
| 测试场景 | 数据规模 / 并发量 | 旧架构方案(JSON / 同步)耗时 | 新架构方案(Protobuf / 异步工作线程)耗时 | 性能提升倍数 (Speedup) | 结论与可靠性判定 |
|---|---|---|---|---|---|
| 场景 A:海量数据传输 | 条复杂结构体 | (请自动填充测量数据) | (请自动填充测量数据) | X.XX 倍 | 内存是否平稳 / 有无泄漏 |
| 场景 B:高并发调度 | 次高频并发 | (请自动填充掉帧率) | (请自动填充掉帧率) | X.XX 倍 | UI 动效是否绝对流畅 |
- 内存与闪退判定结论:在模拟 Rust 内部故意引发
panic!的情况下,宿主 App 是否成功存活并捕获了错误?(必须为:是)。
5. 启动指令(投喂口令)
“Antigravity,请严格执行上述《
omni-core核心重构与极限压测任务指令集》。立即进入重构阶段,重点攻坚数据交换的二进制化与 Panic 安全边界。重构完成后,直接运行百万级数据压测,并带上详尽的量化对比数据向我汇报!”