协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
lov-runtime-audit【开发与工程】用于桌面、移动端与 Web/PWA 客户端的长运行性能审计;当用户要求定位 Electron、Tauri、原生 iOS/Android、React Native、Flutter 或浏览器 App 的卡顿、轮询、桥接和资源扇出时使用。
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
把“客户端越用越卡”拆成可复查的运行身份、时间序列、规模因子、资源所有权图和可证伪假设。根据目标 App 组合 adapter;保持诊断只读,并把现场测量、源码事实、因果推断和验收结论分开记录。
lov-runtime-verification。invocation: kit_only。本模块不承诺脱离 App Optimizer Kit 独立运行。把包含 kit.yaml 的目录解析为 KIT_DIR;证据合同、adapter 手册、Profile 与报告脚本等共享依赖一律从 $KIT_DIR 加载,不从模块目录复制或猜测。
要求至少提供或现场解析:
platform_family、runtime、实际运行 build/deploy/device/browser 身份,以及当前生命周期状态;缺少实际运行身份或最小只读访问时输出 blocked,不得把另一个 checkout、设备、部署或静态源码当作现场结论。
交付一个审计包,至少包含:
platform_family、runtime、启用的 adapters、build/deploy 身份和采样窗口;diagnosed 或 blocked 终态,以及下一项最有判别力的测量。输出可以是 Markdown;需要机器可读审计时,同时生成 app-runtime-evidence/v1 JSON。审计模块不得输出 diagnosed、blocked 之外的终态,也不得把删除、kill、缓存重置或重装命令当作诊断结论。
先选 platform_family,再选一个或多个 runtime adapters;组合应用必须同时覆盖跨层边界。
| Platform family | Runtime examples | Minimum identity and signals |
|---|---|---|
desktop | electron, tauri, native desktop, embedded webview | executable/bundle、version/commit、process tree、window/webview、event loop/thread、IPC/command、filesystem/storage |
mobile | native-ios, native-android, react-native, flutter, hybrid | physical device、OS、build ID、app PID/lifecycle、frame stalls、native threads、bridge/channel/isolate、network/storage/background work |
web | browser, pwa, embedded web client | origin/deploy ref、browser/profile、tab/frame、main thread、worker/service worker、cache/storage、fetch/WebSocket、visibility lifecycle |
按目标功能追加 process、UI/frame、bridge/IPC、network、storage/database、scheduler/background、terminal/session 或 repository/worktree adapter。某信号没有可靠 adapter 时记录 unknown;不得用另一个平台的 proxy 冒充直接测量。
measurement、code_fact、inference、acceptance 分开;审计通常不产生 acceptance。blocked。每次调用先读取 skill.yaml 声明的 user-profile/v1 上下文。按“当前请求 → 当前项目与运行时 → skills.lov-runtime-audit.records → shared preferences → shared user/brand → 保守默认值”解析冲突。
只在用户直接声明并要求跨会话沿用时,通过 $KIT_DIR/scripts/profile_store.py 持久化默认平台/运行时、采样窗口、报告粒度或验收预算。不要持久化凭据、现场 PID、设备标识、私有绝对路径、采样数据、Yoda 数值或推断结论。完整契约见 $KIT_DIR/references/user-profile.md。
必须按顺序执行;任何缺失证据都降低结论等级,不得用猜测补齐。
KIT_DIR,读取 $KIT_DIR/kit.yaml、$KIT_DIR/references/evidence-contract.md、$KIT_DIR/references/runtime-playbook.md 与 $KIT_DIR/references/platform-adapters.md。$KIT_DIR/scripts/evidence_report.py 和 $KIT_DIR/scripts/profile_store.py 可读;共享资源缺失时点名相对路径并输出 blocked。platform_family、runtime 与 adapter 组合;解释每个 adapter 的 authoritative source、proxy 边界和不可见信号。observed_at、sample count、cadence、window、workload ID、unit、mean/peak 和可用 percentile。event frequency × matching owners × resident entities × surfaces/subscribers × per-entity work。provenance:build_ref、source_ref、observed_at、workload_id、sample_window 与 sampler;不适用或未知时写明原因。code_fact;把乘法结果写成 inference,并在 derivation 中记录 inputs、formula、assumptions、rounding 与 falsifier。measurement。只有同负载复测达到该产品预先声明的 threshold 时,后续 verification 模块才能写 acceptance。comparison.quality: directional;输入只使用 paired | implementation_bound | directional,异质证据不得输出精确下降率。需要双格式报告时运行:
python3 "$KIT_DIR/scripts/evidence_report.py" \
--input evidence.json \
--json-output runtime-audit.json \
--markdown-output runtime-audit.md
检查 schema、warning、缺失 support ID、provenance gap、不可比较单位和 proxy 边界。脚本只评估证据与计划,不执行终止、删除或重置。
retrospectively_supported。diagnosed 或 blocked;把运行时 A/B 与 SLO 判定交给 lov-runtime-verification。app-runtime-evidence/v1 JSON、资源图和假设列表作为实现或回收模块的独立输入。Yoda 只用于校准证据等级:platform_family=desktop、runtime=electron。详细记录见 $KIT_DIR/cases/evidence/yoda-runtime-evidence.json;以下数字不是其他 App 的默认规模、预算或 threshold。
measurement:2026-08-09 的一次现场 inventory 在最大已挂载项目内清点到 916 条 task records(33 active、883 archived);同日一次 canonical tmux server snapshot 清点到 61 个 sessions。两项都是有边界的单次清点;保留了审计日期但没有墙钟时刻,只能说明该现场规模,不能证明泄漏或因果。code_fact:历史实现的完成事件沿 resident-task 路径逐项处理,并进入 task 级 remote read。inference:916 task records × 每 task 1 次 IPC ≈ 916 IPC;约 916 RPC × 每 RPC 2 次 Git remote 读取 ≈ 1,832 Git subprocess work items。公式依赖源码路径和一次事件的假设,属于近似预测,不是 trace 计数。measurement:补丁后的下一次 8-remotes 同步用高频进程采样获得 600 个 samples,在约 4 秒窗口观察到 15 个 unique Git subprocess,peak concurrency 为 5。它只佐证放大方向已收敛;由于 before 是 inference、after 是后续 measurement,输入使用 comparison.quality=directional,报告不得生成精确 delta。boundary:15 不是 acceptance,也没有可迁移 threshold;本审计案例终态为 diagnosed。任何其他 App 都必须重新定义工作负载、sampler、SLO 与验收门槛。$KIT_DIR 解析。$KIT_DIR/references/evidence-contract.md — app-runtime-evidence/v1、provenance、comparison 与资源 verdict 契约。$KIT_DIR/references/runtime-playbook.md — 身份核验、采样、规模放大与因果复测方法。$KIT_DIR/references/platform-adapters.md — 桌面、移动、Web 及可选资源 adapter 的只读采样入口。$KIT_DIR/references/reclamation-policy.md — 仅在审计触及回收候选时读取的保护边界。$KIT_DIR/references/user-profile.md — 跨会话 Profile 的读取与持久化规则。