@gracker/smartperfetto 1.0.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2287) hide show
  1. package/.env.example +586 -0
  2. package/LICENSE +685 -0
  3. package/data/perfettoSqlDocs.json +33478 -0
  4. package/data/perfettoSqlIndex.json +9458 -0
  5. package/data/perfettoSqlIndex.light.json +13129 -0
  6. package/data/perfettoStdlibSymbols.json +677 -0
  7. package/dist/agent/agents/base/baseAgent.d.ts +378 -0
  8. package/dist/agent/agents/base/baseAgent.d.ts.map +1 -0
  9. package/dist/agent/agents/base/baseAgent.js +1484 -0
  10. package/dist/agent/agents/base/baseAgent.js.map +1 -0
  11. package/dist/agent/agents/base/baseSubAgent.d.ts +135 -0
  12. package/dist/agent/agents/base/baseSubAgent.d.ts.map +1 -0
  13. package/dist/agent/agents/base/baseSubAgent.js +483 -0
  14. package/dist/agent/agents/base/baseSubAgent.js.map +1 -0
  15. package/dist/agent/agents/baseExpertAgent.d.ts +37 -0
  16. package/dist/agent/agents/baseExpertAgent.d.ts.map +1 -0
  17. package/dist/agent/agents/baseExpertAgent.js +322 -0
  18. package/dist/agent/agents/baseExpertAgent.js.map +1 -0
  19. package/dist/agent/agents/domain/additionalAgents.d.ts +54 -0
  20. package/dist/agent/agents/domain/additionalAgents.d.ts.map +1 -0
  21. package/dist/agent/agents/domain/additionalAgents.js +292 -0
  22. package/dist/agent/agents/domain/additionalAgents.js.map +1 -0
  23. package/dist/agent/agents/domain/binderAgent.d.ts +27 -0
  24. package/dist/agent/agents/domain/binderAgent.d.ts.map +1 -0
  25. package/dist/agent/agents/domain/binderAgent.js +100 -0
  26. package/dist/agent/agents/domain/binderAgent.js.map +1 -0
  27. package/dist/agent/agents/domain/cpuAgent.d.ts +35 -0
  28. package/dist/agent/agents/domain/cpuAgent.d.ts.map +1 -0
  29. package/dist/agent/agents/domain/cpuAgent.js +163 -0
  30. package/dist/agent/agents/domain/cpuAgent.js.map +1 -0
  31. package/dist/agent/agents/domain/frameAgent.d.ts +59 -0
  32. package/dist/agent/agents/domain/frameAgent.d.ts.map +1 -0
  33. package/dist/agent/agents/domain/frameAgent.js +511 -0
  34. package/dist/agent/agents/domain/frameAgent.js.map +1 -0
  35. package/dist/agent/agents/domain/index.d.ts +92 -0
  36. package/dist/agent/agents/domain/index.d.ts.map +1 -0
  37. package/dist/agent/agents/domain/index.js +250 -0
  38. package/dist/agent/agents/domain/index.js.map +1 -0
  39. package/dist/agent/agents/domain/memoryAgent.d.ts +26 -0
  40. package/dist/agent/agents/domain/memoryAgent.d.ts.map +1 -0
  41. package/dist/agent/agents/domain/memoryAgent.js +94 -0
  42. package/dist/agent/agents/domain/memoryAgent.js.map +1 -0
  43. package/dist/agent/agents/domain/skillCatalog.d.ts +10 -0
  44. package/dist/agent/agents/domain/skillCatalog.d.ts.map +1 -0
  45. package/dist/agent/agents/domain/skillCatalog.js +66 -0
  46. package/dist/agent/agents/domain/skillCatalog.js.map +1 -0
  47. package/dist/agent/agents/evaluatorAgent.d.ts +76 -0
  48. package/dist/agent/agents/evaluatorAgent.d.ts.map +1 -0
  49. package/dist/agent/agents/evaluatorAgent.js +517 -0
  50. package/dist/agent/agents/evaluatorAgent.js.map +1 -0
  51. package/dist/agent/agents/index.d.ts +13 -0
  52. package/dist/agent/agents/index.d.ts.map +1 -0
  53. package/dist/agent/agents/index.js +25 -0
  54. package/dist/agent/agents/index.js.map +1 -0
  55. package/dist/agent/agents/iterationStrategyPlanner.d.ts +140 -0
  56. package/dist/agent/agents/iterationStrategyPlanner.d.ts.map +1 -0
  57. package/dist/agent/agents/iterationStrategyPlanner.js +359 -0
  58. package/dist/agent/agents/iterationStrategyPlanner.js.map +1 -0
  59. package/dist/agent/agents/plannerAgent.d.ts +56 -0
  60. package/dist/agent/agents/plannerAgent.d.ts.map +1 -0
  61. package/dist/agent/agents/plannerAgent.js +379 -0
  62. package/dist/agent/agents/plannerAgent.js.map +1 -0
  63. package/dist/agent/agents/scrollingExpertAgent.d.ts +11 -0
  64. package/dist/agent/agents/scrollingExpertAgent.d.ts.map +1 -0
  65. package/dist/agent/agents/scrollingExpertAgent.js +132 -0
  66. package/dist/agent/agents/scrollingExpertAgent.js.map +1 -0
  67. package/dist/agent/agents/tools/adbTools.d.ts +5 -0
  68. package/dist/agent/agents/tools/adbTools.d.ts.map +1 -0
  69. package/dist/agent/agents/tools/adbTools.js +326 -0
  70. package/dist/agent/agents/tools/adbTools.js.map +1 -0
  71. package/dist/agent/communication/agentMessageBus.d.ts +138 -0
  72. package/dist/agent/communication/agentMessageBus.d.ts.map +1 -0
  73. package/dist/agent/communication/agentMessageBus.js +542 -0
  74. package/dist/agent/communication/agentMessageBus.js.map +1 -0
  75. package/dist/agent/communication/index.d.ts +7 -0
  76. package/dist/agent/communication/index.d.ts.map +1 -0
  77. package/dist/agent/communication/index.js +15 -0
  78. package/dist/agent/communication/index.js.map +1 -0
  79. package/dist/agent/compaction/compactionTypes.d.ts +163 -0
  80. package/dist/agent/compaction/compactionTypes.d.ts.map +1 -0
  81. package/dist/agent/compaction/compactionTypes.js +32 -0
  82. package/dist/agent/compaction/compactionTypes.js.map +1 -0
  83. package/dist/agent/compaction/contextCompactor.d.ts +109 -0
  84. package/dist/agent/compaction/contextCompactor.d.ts.map +1 -0
  85. package/dist/agent/compaction/contextCompactor.js +225 -0
  86. package/dist/agent/compaction/contextCompactor.js.map +1 -0
  87. package/dist/agent/compaction/index.d.ts +10 -0
  88. package/dist/agent/compaction/index.d.ts.map +1 -0
  89. package/dist/agent/compaction/index.js +43 -0
  90. package/dist/agent/compaction/index.js.map +1 -0
  91. package/dist/agent/compaction/strategies/index.d.ts +5 -0
  92. package/dist/agent/compaction/strategies/index.d.ts.map +1 -0
  93. package/dist/agent/compaction/strategies/index.js +13 -0
  94. package/dist/agent/compaction/strategies/index.js.map +1 -0
  95. package/dist/agent/compaction/strategies/slidingWindowStrategy.d.ts +53 -0
  96. package/dist/agent/compaction/strategies/slidingWindowStrategy.d.ts.map +1 -0
  97. package/dist/agent/compaction/strategies/slidingWindowStrategy.js +237 -0
  98. package/dist/agent/compaction/strategies/slidingWindowStrategy.js.map +1 -0
  99. package/dist/agent/compaction/tokenEstimator.d.ts +78 -0
  100. package/dist/agent/compaction/tokenEstimator.d.ts.map +1 -0
  101. package/dist/agent/compaction/tokenEstimator.js +203 -0
  102. package/dist/agent/compaction/tokenEstimator.js.map +1 -0
  103. package/dist/agent/config/decisionThresholdManifest.d.ts +72 -0
  104. package/dist/agent/config/decisionThresholdManifest.d.ts.map +1 -0
  105. package/dist/agent/config/decisionThresholdManifest.js +77 -0
  106. package/dist/agent/config/decisionThresholdManifest.js.map +1 -0
  107. package/dist/agent/config/domainManifest.d.ts +77 -0
  108. package/dist/agent/config/domainManifest.d.ts.map +1 -0
  109. package/dist/agent/config/domainManifest.js +269 -0
  110. package/dist/agent/config/domainManifest.js.map +1 -0
  111. package/dist/agent/config/drillDownRegistry.d.ts +19 -0
  112. package/dist/agent/config/drillDownRegistry.d.ts.map +1 -0
  113. package/dist/agent/config/drillDownRegistry.js +118 -0
  114. package/dist/agent/config/drillDownRegistry.js.map +1 -0
  115. package/dist/agent/context/contextBuilder.d.ts +79 -0
  116. package/dist/agent/context/contextBuilder.d.ts.map +1 -0
  117. package/dist/agent/context/contextBuilder.js +273 -0
  118. package/dist/agent/context/contextBuilder.js.map +1 -0
  119. package/dist/agent/context/contextTypes.d.ts +121 -0
  120. package/dist/agent/context/contextTypes.d.ts.map +1 -0
  121. package/dist/agent/context/contextTypes.js +14 -0
  122. package/dist/agent/context/contextTypes.js.map +1 -0
  123. package/dist/agent/context/enhancedSessionContext.d.ts +283 -0
  124. package/dist/agent/context/enhancedSessionContext.d.ts.map +1 -0
  125. package/dist/agent/context/enhancedSessionContext.js +1636 -0
  126. package/dist/agent/context/enhancedSessionContext.js.map +1 -0
  127. package/dist/agent/context/entityStore.d.ts +374 -0
  128. package/dist/agent/context/entityStore.d.ts.map +1 -0
  129. package/dist/agent/context/entityStore.js +621 -0
  130. package/dist/agent/context/entityStore.js.map +1 -0
  131. package/dist/agent/context/focusStore.d.ts +229 -0
  132. package/dist/agent/context/focusStore.d.ts.map +1 -0
  133. package/dist/agent/context/focusStore.js +528 -0
  134. package/dist/agent/context/focusStore.js.map +1 -0
  135. package/dist/agent/context/index.d.ts +10 -0
  136. package/dist/agent/context/index.d.ts.map +1 -0
  137. package/dist/agent/context/index.js +42 -0
  138. package/dist/agent/context/index.js.map +1 -0
  139. package/dist/agent/context/policies/evaluatorPolicy.d.ts +22 -0
  140. package/dist/agent/context/policies/evaluatorPolicy.d.ts.map +1 -0
  141. package/dist/agent/context/policies/evaluatorPolicy.js +82 -0
  142. package/dist/agent/context/policies/evaluatorPolicy.js.map +1 -0
  143. package/dist/agent/context/policies/index.d.ts +7 -0
  144. package/dist/agent/context/policies/index.d.ts.map +1 -0
  145. package/dist/agent/context/policies/index.js +18 -0
  146. package/dist/agent/context/policies/index.js.map +1 -0
  147. package/dist/agent/context/policies/plannerPolicy.d.ts +27 -0
  148. package/dist/agent/context/policies/plannerPolicy.d.ts.map +1 -0
  149. package/dist/agent/context/policies/plannerPolicy.js +67 -0
  150. package/dist/agent/context/policies/plannerPolicy.js.map +1 -0
  151. package/dist/agent/context/policies/workerPolicy.d.ts +29 -0
  152. package/dist/agent/context/policies/workerPolicy.d.ts.map +1 -0
  153. package/dist/agent/context/policies/workerPolicy.js +99 -0
  154. package/dist/agent/context/policies/workerPolicy.js.map +1 -0
  155. package/dist/agent/core/circuitBreaker.d.ts +150 -0
  156. package/dist/agent/core/circuitBreaker.d.ts.map +1 -0
  157. package/dist/agent/core/circuitBreaker.js +500 -0
  158. package/dist/agent/core/circuitBreaker.js.map +1 -0
  159. package/dist/agent/core/conclusionContract.d.ts +61 -0
  160. package/dist/agent/core/conclusionContract.d.ts.map +1 -0
  161. package/dist/agent/core/conclusionContract.js +6 -0
  162. package/dist/agent/core/conclusionContract.js.map +1 -0
  163. package/dist/agent/core/conclusionGenerator.d.ts +42 -0
  164. package/dist/agent/core/conclusionGenerator.d.ts.map +1 -0
  165. package/dist/agent/core/conclusionGenerator.js +4109 -0
  166. package/dist/agent/core/conclusionGenerator.js.map +1 -0
  167. package/dist/agent/core/conclusionSceneTemplates.d.ts +8 -0
  168. package/dist/agent/core/conclusionSceneTemplates.d.ts.map +1 -0
  169. package/dist/agent/core/conclusionSceneTemplates.js +31 -0
  170. package/dist/agent/core/conclusionSceneTemplates.js.map +1 -0
  171. package/dist/agent/core/drillDownResolver.d.ts +67 -0
  172. package/dist/agent/core/drillDownResolver.d.ts.map +1 -0
  173. package/dist/agent/core/drillDownResolver.js +583 -0
  174. package/dist/agent/core/drillDownResolver.js.map +1 -0
  175. package/dist/agent/core/emittedEnvelopeRegistry.d.ts +75 -0
  176. package/dist/agent/core/emittedEnvelopeRegistry.d.ts.map +1 -0
  177. package/dist/agent/core/emittedEnvelopeRegistry.js +164 -0
  178. package/dist/agent/core/emittedEnvelopeRegistry.js.map +1 -0
  179. package/dist/agent/core/entityCapture.d.ts +53 -0
  180. package/dist/agent/core/entityCapture.d.ts.map +1 -0
  181. package/dist/agent/core/entityCapture.js +522 -0
  182. package/dist/agent/core/entityCapture.js.map +1 -0
  183. package/dist/agent/core/entityRegistry.d.ts +19 -0
  184. package/dist/agent/core/entityRegistry.d.ts.map +1 -0
  185. package/dist/agent/core/entityRegistry.js +102 -0
  186. package/dist/agent/core/entityRegistry.js.map +1 -0
  187. package/dist/agent/core/executors/analysisExecutor.d.ts +21 -0
  188. package/dist/agent/core/executors/analysisExecutor.d.ts.map +1 -0
  189. package/dist/agent/core/executors/analysisExecutor.js +6 -0
  190. package/dist/agent/core/executors/analysisExecutor.js.map +1 -0
  191. package/dist/agent/core/executors/clarifyExecutor.d.ts +42 -0
  192. package/dist/agent/core/executors/clarifyExecutor.d.ts.map +1 -0
  193. package/dist/agent/core/executors/clarifyExecutor.js +316 -0
  194. package/dist/agent/core/executors/clarifyExecutor.js.map +1 -0
  195. package/dist/agent/core/executors/comparisonExecutor.d.ts +39 -0
  196. package/dist/agent/core/executors/comparisonExecutor.d.ts.map +1 -0
  197. package/dist/agent/core/executors/comparisonExecutor.js +404 -0
  198. package/dist/agent/core/executors/comparisonExecutor.js.map +1 -0
  199. package/dist/agent/core/executors/directDrillDownExecutor.d.ts +56 -0
  200. package/dist/agent/core/executors/directDrillDownExecutor.d.ts.map +1 -0
  201. package/dist/agent/core/executors/directDrillDownExecutor.js +665 -0
  202. package/dist/agent/core/executors/directDrillDownExecutor.js.map +1 -0
  203. package/dist/agent/core/executors/directSkillExecutor.d.ts +106 -0
  204. package/dist/agent/core/executors/directSkillExecutor.d.ts.map +1 -0
  205. package/dist/agent/core/executors/directSkillExecutor.js +633 -0
  206. package/dist/agent/core/executors/directSkillExecutor.js.map +1 -0
  207. package/dist/agent/core/executors/extendExecutor.d.ts +50 -0
  208. package/dist/agent/core/executors/extendExecutor.d.ts.map +1 -0
  209. package/dist/agent/core/executors/extendExecutor.js +402 -0
  210. package/dist/agent/core/executors/extendExecutor.js.map +1 -0
  211. package/dist/agent/core/executors/hypothesisExecutor.d.ts +52 -0
  212. package/dist/agent/core/executors/hypothesisExecutor.d.ts.map +1 -0
  213. package/dist/agent/core/executors/hypothesisExecutor.js +564 -0
  214. package/dist/agent/core/executors/hypothesisExecutor.js.map +1 -0
  215. package/dist/agent/core/executors/index.d.ts +9 -0
  216. package/dist/agent/core/executors/index.d.ts.map +1 -0
  217. package/dist/agent/core/executors/index.js +15 -0
  218. package/dist/agent/core/executors/index.js.map +1 -0
  219. package/dist/agent/core/executors/strategy/strategyFrameEnvelopeCoordinator.d.ts +12 -0
  220. package/dist/agent/core/executors/strategy/strategyFrameEnvelopeCoordinator.d.ts.map +1 -0
  221. package/dist/agent/core/executors/strategy/strategyFrameEnvelopeCoordinator.js +186 -0
  222. package/dist/agent/core/executors/strategy/strategyFrameEnvelopeCoordinator.js.map +1 -0
  223. package/dist/agent/core/executors/strategy/strategyFrameMechanismCollector.d.ts +9 -0
  224. package/dist/agent/core/executors/strategy/strategyFrameMechanismCollector.d.ts.map +1 -0
  225. package/dist/agent/core/executors/strategy/strategyFrameMechanismCollector.js +123 -0
  226. package/dist/agent/core/executors/strategy/strategyFrameMechanismCollector.js.map +1 -0
  227. package/dist/agent/core/executors/strategy/strategyStagePlanner.d.ts +18 -0
  228. package/dist/agent/core/executors/strategy/strategyStagePlanner.d.ts.map +1 -0
  229. package/dist/agent/core/executors/strategy/strategyStagePlanner.js +69 -0
  230. package/dist/agent/core/executors/strategy/strategyStagePlanner.js.map +1 -0
  231. package/dist/agent/core/executors/strategy/strategyStageTaskBuilder.d.ts +14 -0
  232. package/dist/agent/core/executors/strategy/strategyStageTaskBuilder.d.ts.map +1 -0
  233. package/dist/agent/core/executors/strategy/strategyStageTaskBuilder.js +129 -0
  234. package/dist/agent/core/executors/strategy/strategyStageTaskBuilder.js.map +1 -0
  235. package/dist/agent/core/executors/strategyExecutor.d.ts +16 -0
  236. package/dist/agent/core/executors/strategyExecutor.d.ts.map +1 -0
  237. package/dist/agent/core/executors/strategyExecutor.js +377 -0
  238. package/dist/agent/core/executors/strategyExecutor.js.map +1 -0
  239. package/dist/agent/core/executors/traceConfigDetector.d.ts +28 -0
  240. package/dist/agent/core/executors/traceConfigDetector.d.ts.map +1 -0
  241. package/dist/agent/core/executors/traceConfigDetector.js +156 -0
  242. package/dist/agent/core/executors/traceConfigDetector.js.map +1 -0
  243. package/dist/agent/core/feedbackSynthesizer.d.ts +28 -0
  244. package/dist/agent/core/feedbackSynthesizer.d.ts.map +1 -0
  245. package/dist/agent/core/feedbackSynthesizer.js +841 -0
  246. package/dist/agent/core/feedbackSynthesizer.js.map +1 -0
  247. package/dist/agent/core/followUpHandler.d.ts +36 -0
  248. package/dist/agent/core/followUpHandler.d.ts.map +1 -0
  249. package/dist/agent/core/followUpHandler.js +413 -0
  250. package/dist/agent/core/followUpHandler.js.map +1 -0
  251. package/dist/agent/core/hypothesisGenerator.d.ts +45 -0
  252. package/dist/agent/core/hypothesisGenerator.d.ts.map +1 -0
  253. package/dist/agent/core/hypothesisGenerator.js +257 -0
  254. package/dist/agent/core/hypothesisGenerator.js.map +1 -0
  255. package/dist/agent/core/incrementalAnalyzer.d.ts +164 -0
  256. package/dist/agent/core/incrementalAnalyzer.d.ts.map +1 -0
  257. package/dist/agent/core/incrementalAnalyzer.js +382 -0
  258. package/dist/agent/core/incrementalAnalyzer.js.map +1 -0
  259. package/dist/agent/core/index.d.ts +25 -0
  260. package/dist/agent/core/index.d.ts.map +1 -0
  261. package/dist/agent/core/index.js +61 -0
  262. package/dist/agent/core/index.js.map +1 -0
  263. package/dist/agent/core/intentUnderstanding.d.ts +28 -0
  264. package/dist/agent/core/intentUnderstanding.d.ts.map +1 -0
  265. package/dist/agent/core/intentUnderstanding.js +451 -0
  266. package/dist/agent/core/intentUnderstanding.js.map +1 -0
  267. package/dist/agent/core/interventionController.d.ts +211 -0
  268. package/dist/agent/core/interventionController.d.ts.map +1 -0
  269. package/dist/agent/core/interventionController.js +477 -0
  270. package/dist/agent/core/interventionController.js.map +1 -0
  271. package/dist/agent/core/jankCauseSummarizer.d.ts +87 -0
  272. package/dist/agent/core/jankCauseSummarizer.d.ts.map +1 -0
  273. package/dist/agent/core/jankCauseSummarizer.js +432 -0
  274. package/dist/agent/core/jankCauseSummarizer.js.map +1 -0
  275. package/dist/agent/core/modelRouter.d.ts +164 -0
  276. package/dist/agent/core/modelRouter.d.ts.map +1 -0
  277. package/dist/agent/core/modelRouter.js +1169 -0
  278. package/dist/agent/core/modelRouter.js.map +1 -0
  279. package/dist/agent/core/modelRouterSingleton.d.ts +4 -0
  280. package/dist/agent/core/modelRouterSingleton.d.ts.map +1 -0
  281. package/dist/agent/core/modelRouterSingleton.js +20 -0
  282. package/dist/agent/core/modelRouterSingleton.js.map +1 -0
  283. package/dist/agent/core/orchestratorTypes.d.ts +506 -0
  284. package/dist/agent/core/orchestratorTypes.d.ts.map +1 -0
  285. package/dist/agent/core/orchestratorTypes.js +91 -0
  286. package/dist/agent/core/orchestratorTypes.js.map +1 -0
  287. package/dist/agent/core/pipelineExecutor.d.ts +154 -0
  288. package/dist/agent/core/pipelineExecutor.d.ts.map +1 -0
  289. package/dist/agent/core/pipelineExecutor.js +677 -0
  290. package/dist/agent/core/pipelineExecutor.js.map +1 -0
  291. package/dist/agent/core/scenePolicy.d.ts +3 -0
  292. package/dist/agent/core/scenePolicy.d.ts.map +1 -0
  293. package/dist/agent/core/scenePolicy.js +49 -0
  294. package/dist/agent/core/scenePolicy.js.map +1 -0
  295. package/dist/agent/core/sceneRouter.d.ts +8 -0
  296. package/dist/agent/core/sceneRouter.d.ts.map +1 -0
  297. package/dist/agent/core/sceneRouter.js +122 -0
  298. package/dist/agent/core/sceneRouter.js.map +1 -0
  299. package/dist/agent/core/sceneTaxonomy.d.ts +6 -0
  300. package/dist/agent/core/sceneTaxonomy.d.ts.map +1 -0
  301. package/dist/agent/core/sceneTaxonomy.js +83 -0
  302. package/dist/agent/core/sceneTaxonomy.js.map +1 -0
  303. package/dist/agent/core/sceneTemplateStore.d.ts +10 -0
  304. package/dist/agent/core/sceneTemplateStore.d.ts.map +1 -0
  305. package/dist/agent/core/sceneTemplateStore.js +244 -0
  306. package/dist/agent/core/sceneTemplateStore.js.map +1 -0
  307. package/dist/agent/core/sceneTemplateValidator.d.ts +22 -0
  308. package/dist/agent/core/sceneTemplateValidator.d.ts.map +1 -0
  309. package/dist/agent/core/sceneTemplateValidator.js +226 -0
  310. package/dist/agent/core/sceneTemplateValidator.js.map +1 -0
  311. package/dist/agent/core/sceneTypes.d.ts +53 -0
  312. package/dist/agent/core/sceneTypes.d.ts.map +1 -0
  313. package/dist/agent/core/sceneTypes.js +6 -0
  314. package/dist/agent/core/sceneTypes.js.map +1 -0
  315. package/dist/agent/core/stateMachine.d.ts +135 -0
  316. package/dist/agent/core/stateMachine.d.ts.map +1 -0
  317. package/dist/agent/core/stateMachine.js +516 -0
  318. package/dist/agent/core/stateMachine.js.map +1 -0
  319. package/dist/agent/core/strategySelector.d.ts +121 -0
  320. package/dist/agent/core/strategySelector.d.ts.map +1 -0
  321. package/dist/agent/core/strategySelector.js +344 -0
  322. package/dist/agent/core/strategySelector.js.map +1 -0
  323. package/dist/agent/core/taskGraphExecutor.d.ts +30 -0
  324. package/dist/agent/core/taskGraphExecutor.d.ts.map +1 -0
  325. package/dist/agent/core/taskGraphExecutor.js +142 -0
  326. package/dist/agent/core/taskGraphExecutor.js.map +1 -0
  327. package/dist/agent/core/taskGraphPlanner.d.ts +33 -0
  328. package/dist/agent/core/taskGraphPlanner.d.ts.map +1 -0
  329. package/dist/agent/core/taskGraphPlanner.js +312 -0
  330. package/dist/agent/core/taskGraphPlanner.js.map +1 -0
  331. package/dist/agent/decision/decisionTreeExecutor.d.ts +55 -0
  332. package/dist/agent/decision/decisionTreeExecutor.d.ts.map +1 -0
  333. package/dist/agent/decision/decisionTreeExecutor.js +250 -0
  334. package/dist/agent/decision/decisionTreeExecutor.js.map +1 -0
  335. package/dist/agent/decision/decisionTreeStageExecutor.d.ts +65 -0
  336. package/dist/agent/decision/decisionTreeStageExecutor.d.ts.map +1 -0
  337. package/dist/agent/decision/decisionTreeStageExecutor.js +286 -0
  338. package/dist/agent/decision/decisionTreeStageExecutor.js.map +1 -0
  339. package/dist/agent/decision/index.d.ts +27 -0
  340. package/dist/agent/decision/index.d.ts.map +1 -0
  341. package/dist/agent/decision/index.js +70 -0
  342. package/dist/agent/decision/index.js.map +1 -0
  343. package/dist/agent/decision/skillExecutorAdapter.d.ts +89 -0
  344. package/dist/agent/decision/skillExecutorAdapter.d.ts.map +1 -0
  345. package/dist/agent/decision/skillExecutorAdapter.js +447 -0
  346. package/dist/agent/decision/skillExecutorAdapter.js.map +1 -0
  347. package/dist/agent/decision/trees/index.d.ts +8 -0
  348. package/dist/agent/decision/trees/index.d.ts.map +1 -0
  349. package/dist/agent/decision/trees/index.js +16 -0
  350. package/dist/agent/decision/trees/index.js.map +1 -0
  351. package/dist/agent/decision/trees/launchDecisionTree.d.ts +7 -0
  352. package/dist/agent/decision/trees/launchDecisionTree.d.ts.map +1 -0
  353. package/dist/agent/decision/trees/launchDecisionTree.js +670 -0
  354. package/dist/agent/decision/trees/launchDecisionTree.js.map +1 -0
  355. package/dist/agent/decision/trees/scrollingDecisionTree.d.ts +7 -0
  356. package/dist/agent/decision/trees/scrollingDecisionTree.d.ts.map +1 -0
  357. package/dist/agent/decision/trees/scrollingDecisionTree.js +698 -0
  358. package/dist/agent/decision/trees/scrollingDecisionTree.js.map +1 -0
  359. package/dist/agent/decision/types.d.ts +191 -0
  360. package/dist/agent/decision/types.d.ts.map +1 -0
  361. package/dist/agent/decision/types.js +6 -0
  362. package/dist/agent/decision/types.js.map +1 -0
  363. package/dist/agent/detectors/architectureDetector.d.ts +31 -0
  364. package/dist/agent/detectors/architectureDetector.d.ts.map +1 -0
  365. package/dist/agent/detectors/architectureDetector.js +190 -0
  366. package/dist/agent/detectors/architectureDetector.js.map +1 -0
  367. package/dist/agent/detectors/index.d.ts +11 -0
  368. package/dist/agent/detectors/index.d.ts.map +1 -0
  369. package/dist/agent/detectors/index.js +36 -0
  370. package/dist/agent/detectors/index.js.map +1 -0
  371. package/dist/agent/detectors/types.d.ts +113 -0
  372. package/dist/agent/detectors/types.d.ts.map +1 -0
  373. package/dist/agent/detectors/types.js +6 -0
  374. package/dist/agent/detectors/types.js.map +1 -0
  375. package/dist/agent/evalSystem.d.ts +61 -0
  376. package/dist/agent/evalSystem.d.ts.map +1 -0
  377. package/dist/agent/evalSystem.js +210 -0
  378. package/dist/agent/evalSystem.js.map +1 -0
  379. package/dist/agent/experts/base/baseExpert.d.ts +108 -0
  380. package/dist/agent/experts/base/baseExpert.d.ts.map +1 -0
  381. package/dist/agent/experts/base/baseExpert.js +359 -0
  382. package/dist/agent/experts/base/baseExpert.js.map +1 -0
  383. package/dist/agent/experts/base/index.d.ts +9 -0
  384. package/dist/agent/experts/base/index.d.ts.map +1 -0
  385. package/dist/agent/experts/base/index.js +15 -0
  386. package/dist/agent/experts/base/index.js.map +1 -0
  387. package/dist/agent/experts/base/types.d.ts +202 -0
  388. package/dist/agent/experts/base/types.d.ts.map +1 -0
  389. package/dist/agent/experts/base/types.js +6 -0
  390. package/dist/agent/experts/base/types.js.map +1 -0
  391. package/dist/agent/experts/crossDomain/baseCrossDomainExpert.d.ts +113 -0
  392. package/dist/agent/experts/crossDomain/baseCrossDomainExpert.d.ts.map +1 -0
  393. package/dist/agent/experts/crossDomain/baseCrossDomainExpert.js +412 -0
  394. package/dist/agent/experts/crossDomain/baseCrossDomainExpert.js.map +1 -0
  395. package/dist/agent/experts/crossDomain/dialogueProtocol.d.ts +164 -0
  396. package/dist/agent/experts/crossDomain/dialogueProtocol.d.ts.map +1 -0
  397. package/dist/agent/experts/crossDomain/dialogueProtocol.js +390 -0
  398. package/dist/agent/experts/crossDomain/dialogueProtocol.js.map +1 -0
  399. package/dist/agent/experts/crossDomain/experts/performanceExpert.d.ts +119 -0
  400. package/dist/agent/experts/crossDomain/experts/performanceExpert.d.ts.map +1 -0
  401. package/dist/agent/experts/crossDomain/experts/performanceExpert.js +736 -0
  402. package/dist/agent/experts/crossDomain/experts/performanceExpert.js.map +1 -0
  403. package/dist/agent/experts/crossDomain/hypothesisManager.d.ts +105 -0
  404. package/dist/agent/experts/crossDomain/hypothesisManager.d.ts.map +1 -0
  405. package/dist/agent/experts/crossDomain/hypothesisManager.js +283 -0
  406. package/dist/agent/experts/crossDomain/hypothesisManager.js.map +1 -0
  407. package/dist/agent/experts/crossDomain/index.d.ts +18 -0
  408. package/dist/agent/experts/crossDomain/index.d.ts.map +1 -0
  409. package/dist/agent/experts/crossDomain/index.js +28 -0
  410. package/dist/agent/experts/crossDomain/index.js.map +1 -0
  411. package/dist/agent/experts/crossDomain/moduleCatalog.d.ts +97 -0
  412. package/dist/agent/experts/crossDomain/moduleCatalog.d.ts.map +1 -0
  413. package/dist/agent/experts/crossDomain/moduleCatalog.js +453 -0
  414. package/dist/agent/experts/crossDomain/moduleCatalog.js.map +1 -0
  415. package/dist/agent/experts/crossDomain/moduleExpertInvoker.d.ts +149 -0
  416. package/dist/agent/experts/crossDomain/moduleExpertInvoker.d.ts.map +1 -0
  417. package/dist/agent/experts/crossDomain/moduleExpertInvoker.js +582 -0
  418. package/dist/agent/experts/crossDomain/moduleExpertInvoker.js.map +1 -0
  419. package/dist/agent/experts/crossDomain/types.d.ts +369 -0
  420. package/dist/agent/experts/crossDomain/types.d.ts.map +1 -0
  421. package/dist/agent/experts/crossDomain/types.js +6 -0
  422. package/dist/agent/experts/crossDomain/types.js.map +1 -0
  423. package/dist/agent/experts/index.d.ts +81 -0
  424. package/dist/agent/experts/index.d.ts.map +1 -0
  425. package/dist/agent/experts/index.js +222 -0
  426. package/dist/agent/experts/index.js.map +1 -0
  427. package/dist/agent/experts/interactionExpert.d.ts +66 -0
  428. package/dist/agent/experts/interactionExpert.d.ts.map +1 -0
  429. package/dist/agent/experts/interactionExpert.js +280 -0
  430. package/dist/agent/experts/interactionExpert.js.map +1 -0
  431. package/dist/agent/experts/launchExpert.d.ts +73 -0
  432. package/dist/agent/experts/launchExpert.d.ts.map +1 -0
  433. package/dist/agent/experts/launchExpert.js +411 -0
  434. package/dist/agent/experts/launchExpert.js.map +1 -0
  435. package/dist/agent/experts/systemExpert.d.ts +81 -0
  436. package/dist/agent/experts/systemExpert.d.ts.map +1 -0
  437. package/dist/agent/experts/systemExpert.js +507 -0
  438. package/dist/agent/experts/systemExpert.js.map +1 -0
  439. package/dist/agent/fork/forkManager.d.ts +161 -0
  440. package/dist/agent/fork/forkManager.d.ts.map +1 -0
  441. package/dist/agent/fork/forkManager.js +721 -0
  442. package/dist/agent/fork/forkManager.js.map +1 -0
  443. package/dist/agent/fork/forkTypes.d.ts +274 -0
  444. package/dist/agent/fork/forkTypes.d.ts.map +1 -0
  445. package/dist/agent/fork/forkTypes.js +18 -0
  446. package/dist/agent/fork/forkTypes.js.map +1 -0
  447. package/dist/agent/fork/index.d.ts +10 -0
  448. package/dist/agent/fork/index.d.ts.map +1 -0
  449. package/dist/agent/fork/index.js +47 -0
  450. package/dist/agent/fork/index.js.map +1 -0
  451. package/dist/agent/fork/mergeStrategies.d.ts +115 -0
  452. package/dist/agent/fork/mergeStrategies.d.ts.map +1 -0
  453. package/dist/agent/fork/mergeStrategies.js +404 -0
  454. package/dist/agent/fork/mergeStrategies.js.map +1 -0
  455. package/dist/agent/fork/sessionTree.d.ts +141 -0
  456. package/dist/agent/fork/sessionTree.d.ts.map +1 -0
  457. package/dist/agent/fork/sessionTree.js +443 -0
  458. package/dist/agent/fork/sessionTree.js.map +1 -0
  459. package/dist/agent/hooks/hookContext.d.ts +19 -0
  460. package/dist/agent/hooks/hookContext.d.ts.map +1 -0
  461. package/dist/agent/hooks/hookContext.js +67 -0
  462. package/dist/agent/hooks/hookContext.js.map +1 -0
  463. package/dist/agent/hooks/hookRegistry.d.ts +73 -0
  464. package/dist/agent/hooks/hookRegistry.d.ts.map +1 -0
  465. package/dist/agent/hooks/hookRegistry.js +271 -0
  466. package/dist/agent/hooks/hookRegistry.js.map +1 -0
  467. package/dist/agent/hooks/hookTypes.d.ts +186 -0
  468. package/dist/agent/hooks/hookTypes.d.ts.map +1 -0
  469. package/dist/agent/hooks/hookTypes.js +24 -0
  470. package/dist/agent/hooks/hookTypes.js.map +1 -0
  471. package/dist/agent/hooks/index.d.ts +10 -0
  472. package/dist/agent/hooks/index.d.ts.map +1 -0
  473. package/dist/agent/hooks/index.js +41 -0
  474. package/dist/agent/hooks/index.js.map +1 -0
  475. package/dist/agent/hooks/middleware/index.d.ts +6 -0
  476. package/dist/agent/hooks/middleware/index.d.ts.map +1 -0
  477. package/dist/agent/hooks/middleware/index.js +17 -0
  478. package/dist/agent/hooks/middleware/index.js.map +1 -0
  479. package/dist/agent/hooks/middleware/loggingMiddleware.d.ts +27 -0
  480. package/dist/agent/hooks/middleware/loggingMiddleware.d.ts.map +1 -0
  481. package/dist/agent/hooks/middleware/loggingMiddleware.js +104 -0
  482. package/dist/agent/hooks/middleware/loggingMiddleware.js.map +1 -0
  483. package/dist/agent/hooks/middleware/timingMiddleware.d.ts +56 -0
  484. package/dist/agent/hooks/middleware/timingMiddleware.d.ts.map +1 -0
  485. package/dist/agent/hooks/middleware/timingMiddleware.js +171 -0
  486. package/dist/agent/hooks/middleware/timingMiddleware.js.map +1 -0
  487. package/dist/agent/index.d.ts +15 -0
  488. package/dist/agent/index.d.ts.map +1 -0
  489. package/dist/agent/index.js +88 -0
  490. package/dist/agent/index.js.map +1 -0
  491. package/dist/agent/llmAdapter.d.ts +33 -0
  492. package/dist/agent/llmAdapter.d.ts.map +1 -0
  493. package/dist/agent/llmAdapter.js +257 -0
  494. package/dist/agent/llmAdapter.js.map +1 -0
  495. package/dist/agent/scene/sceneAnalysisJobRunner.d.ts +106 -0
  496. package/dist/agent/scene/sceneAnalysisJobRunner.d.ts.map +1 -0
  497. package/dist/agent/scene/sceneAnalysisJobRunner.js +201 -0
  498. package/dist/agent/scene/sceneAnalysisJobRunner.js.map +1 -0
  499. package/dist/agent/scene/sceneCostEstimator.d.ts +33 -0
  500. package/dist/agent/scene/sceneCostEstimator.d.ts.map +1 -0
  501. package/dist/agent/scene/sceneCostEstimator.js +42 -0
  502. package/dist/agent/scene/sceneCostEstimator.js.map +1 -0
  503. package/dist/agent/scene/sceneIntervalBuilder.d.ts +37 -0
  504. package/dist/agent/scene/sceneIntervalBuilder.d.ts.map +1 -0
  505. package/dist/agent/scene/sceneIntervalBuilder.js +748 -0
  506. package/dist/agent/scene/sceneIntervalBuilder.js.map +1 -0
  507. package/dist/agent/scene/sceneStage1Runner.d.ts +47 -0
  508. package/dist/agent/scene/sceneStage1Runner.d.ts.map +1 -0
  509. package/dist/agent/scene/sceneStage1Runner.js +49 -0
  510. package/dist/agent/scene/sceneStage1Runner.js.map +1 -0
  511. package/dist/agent/scene/sceneStage3Summarizer.d.ts +11 -0
  512. package/dist/agent/scene/sceneStage3Summarizer.d.ts.map +1 -0
  513. package/dist/agent/scene/sceneStage3Summarizer.js +155 -0
  514. package/dist/agent/scene/sceneStage3Summarizer.js.map +1 -0
  515. package/dist/agent/scene/sceneStoryService.d.ts +168 -0
  516. package/dist/agent/scene/sceneStoryService.d.ts.map +1 -0
  517. package/dist/agent/scene/sceneStoryService.js +623 -0
  518. package/dist/agent/scene/sceneStoryService.js.map +1 -0
  519. package/dist/agent/scene/sceneTraceDurationProbe.d.ts +16 -0
  520. package/dist/agent/scene/sceneTraceDurationProbe.d.ts.map +1 -0
  521. package/dist/agent/scene/sceneTraceDurationProbe.js +22 -0
  522. package/dist/agent/scene/sceneTraceDurationProbe.js.map +1 -0
  523. package/dist/agent/scene/traceHash.d.ts +23 -0
  524. package/dist/agent/scene/traceHash.d.ts.map +1 -0
  525. package/dist/agent/scene/traceHash.js +65 -0
  526. package/dist/agent/scene/traceHash.js.map +1 -0
  527. package/dist/agent/scene/types.d.ts +199 -0
  528. package/dist/agent/scene/types.d.ts.map +1 -0
  529. package/dist/agent/scene/types.js +6 -0
  530. package/dist/agent/scene/types.js.map +1 -0
  531. package/dist/agent/state/checkpointManager.d.ts +85 -0
  532. package/dist/agent/state/checkpointManager.d.ts.map +1 -0
  533. package/dist/agent/state/checkpointManager.js +339 -0
  534. package/dist/agent/state/checkpointManager.js.map +1 -0
  535. package/dist/agent/state/index.d.ts +11 -0
  536. package/dist/agent/state/index.d.ts.map +1 -0
  537. package/dist/agent/state/index.js +21 -0
  538. package/dist/agent/state/index.js.map +1 -0
  539. package/dist/agent/state/sessionStore.d.ts +126 -0
  540. package/dist/agent/state/sessionStore.d.ts.map +1 -0
  541. package/dist/agent/state/sessionStore.js +440 -0
  542. package/dist/agent/state/sessionStore.js.map +1 -0
  543. package/dist/agent/state/traceAgentState.d.ts +125 -0
  544. package/dist/agent/state/traceAgentState.d.ts.map +1 -0
  545. package/dist/agent/state/traceAgentState.js +173 -0
  546. package/dist/agent/state/traceAgentState.js.map +1 -0
  547. package/dist/agent/strategies/helpers.d.ts +44 -0
  548. package/dist/agent/strategies/helpers.d.ts.map +1 -0
  549. package/dist/agent/strategies/helpers.js +138 -0
  550. package/dist/agent/strategies/helpers.js.map +1 -0
  551. package/dist/agent/strategies/index.d.ts +15 -0
  552. package/dist/agent/strategies/index.d.ts.map +1 -0
  553. package/dist/agent/strategies/index.js +23 -0
  554. package/dist/agent/strategies/index.js.map +1 -0
  555. package/dist/agent/strategies/interactionStrategy.d.ts +3 -0
  556. package/dist/agent/strategies/interactionStrategy.d.ts.map +1 -0
  557. package/dist/agent/strategies/interactionStrategy.js +242 -0
  558. package/dist/agent/strategies/interactionStrategy.js.map +1 -0
  559. package/dist/agent/strategies/registry.d.ts +110 -0
  560. package/dist/agent/strategies/registry.d.ts.map +1 -0
  561. package/dist/agent/strategies/registry.js +264 -0
  562. package/dist/agent/strategies/registry.js.map +1 -0
  563. package/dist/agent/strategies/sceneReconstructionStrategy.d.ts +4 -0
  564. package/dist/agent/strategies/sceneReconstructionStrategy.d.ts.map +1 -0
  565. package/dist/agent/strategies/sceneReconstructionStrategy.js +593 -0
  566. package/dist/agent/strategies/sceneReconstructionStrategy.js.map +1 -0
  567. package/dist/agent/strategies/scrollingStrategy.d.ts +3 -0
  568. package/dist/agent/strategies/scrollingStrategy.d.ts.map +1 -0
  569. package/dist/agent/strategies/scrollingStrategy.js +414 -0
  570. package/dist/agent/strategies/scrollingStrategy.js.map +1 -0
  571. package/dist/agent/strategies/startupStrategy.d.ts +3 -0
  572. package/dist/agent/strategies/startupStrategy.d.ts.map +1 -0
  573. package/dist/agent/strategies/startupStrategy.js +495 -0
  574. package/dist/agent/strategies/startupStrategy.js.map +1 -0
  575. package/dist/agent/strategies/types.d.ts +156 -0
  576. package/dist/agent/strategies/types.d.ts.map +1 -0
  577. package/dist/agent/strategies/types.js +6 -0
  578. package/dist/agent/strategies/types.js.map +1 -0
  579. package/dist/agent/toolRegistry.d.ts +4 -0
  580. package/dist/agent/toolRegistry.d.ts.map +1 -0
  581. package/dist/agent/toolRegistry.js +45 -0
  582. package/dist/agent/toolRegistry.js.map +1 -0
  583. package/dist/agent/tools/dataStats.d.ts +23 -0
  584. package/dist/agent/tools/dataStats.d.ts.map +1 -0
  585. package/dist/agent/tools/dataStats.js +123 -0
  586. package/dist/agent/tools/dataStats.js.map +1 -0
  587. package/dist/agent/tools/frameAnalyzer.d.ts +45 -0
  588. package/dist/agent/tools/frameAnalyzer.d.ts.map +1 -0
  589. package/dist/agent/tools/frameAnalyzer.js +338 -0
  590. package/dist/agent/tools/frameAnalyzer.js.map +1 -0
  591. package/dist/agent/tools/index.d.ts +6 -0
  592. package/dist/agent/tools/index.d.ts.map +1 -0
  593. package/dist/agent/tools/index.js +31 -0
  594. package/dist/agent/tools/index.js.map +1 -0
  595. package/dist/agent/tools/skillInvoker.d.ts +50 -0
  596. package/dist/agent/tools/skillInvoker.d.ts.map +1 -0
  597. package/dist/agent/tools/skillInvoker.js +279 -0
  598. package/dist/agent/tools/skillInvoker.js.map +1 -0
  599. package/dist/agent/tools/sqlExecutor.d.ts +12 -0
  600. package/dist/agent/tools/sqlExecutor.d.ts.map +1 -0
  601. package/dist/agent/tools/sqlExecutor.js +193 -0
  602. package/dist/agent/tools/sqlExecutor.js.map +1 -0
  603. package/dist/agent/tools/sqlGenerator.d.ts +154 -0
  604. package/dist/agent/tools/sqlGenerator.d.ts.map +1 -0
  605. package/dist/agent/tools/sqlGenerator.js +449 -0
  606. package/dist/agent/tools/sqlGenerator.js.map +1 -0
  607. package/dist/agent/tools/sqlValidator.d.ts +149 -0
  608. package/dist/agent/tools/sqlValidator.d.ts.map +1 -0
  609. package/dist/agent/tools/sqlValidator.js +376 -0
  610. package/dist/agent/tools/sqlValidator.js.map +1 -0
  611. package/dist/agent/traceRecorder.d.ts +42 -0
  612. package/dist/agent/traceRecorder.d.ts.map +1 -0
  613. package/dist/agent/traceRecorder.js +122 -0
  614. package/dist/agent/traceRecorder.js.map +1 -0
  615. package/dist/agent/types/agentProtocol.d.ts +377 -0
  616. package/dist/agent/types/agentProtocol.d.ts.map +1 -0
  617. package/dist/agent/types/agentProtocol.js +102 -0
  618. package/dist/agent/types/agentProtocol.js.map +1 -0
  619. package/dist/agent/types/jankCause.d.ts +47 -0
  620. package/dist/agent/types/jankCause.d.ts.map +1 -0
  621. package/dist/agent/types/jankCause.js +6 -0
  622. package/dist/agent/types/jankCause.js.map +1 -0
  623. package/dist/agent/types.d.ts +725 -0
  624. package/dist/agent/types.d.ts.map +1 -0
  625. package/dist/agent/types.js +63 -0
  626. package/dist/agent/types.js.map +1 -0
  627. package/dist/agentOpenAI/index.d.ts +4 -0
  628. package/dist/agentOpenAI/index.d.ts.map +1 -0
  629. package/dist/agentOpenAI/index.js +17 -0
  630. package/dist/agentOpenAI/index.js.map +1 -0
  631. package/dist/agentOpenAI/mimoReasoningCompat.d.ts +9 -0
  632. package/dist/agentOpenAI/mimoReasoningCompat.d.ts.map +1 -0
  633. package/dist/agentOpenAI/mimoReasoningCompat.js +367 -0
  634. package/dist/agentOpenAI/mimoReasoningCompat.js.map +1 -0
  635. package/dist/agentOpenAI/openAiComplexityClassifier.d.ts +18 -0
  636. package/dist/agentOpenAI/openAiComplexityClassifier.d.ts.map +1 -0
  637. package/dist/agentOpenAI/openAiComplexityClassifier.js +102 -0
  638. package/dist/agentOpenAI/openAiComplexityClassifier.js.map +1 -0
  639. package/dist/agentOpenAI/openAiConfig.d.ts +38 -0
  640. package/dist/agentOpenAI/openAiConfig.d.ts.map +1 -0
  641. package/dist/agentOpenAI/openAiConfig.js +104 -0
  642. package/dist/agentOpenAI/openAiConfig.js.map +1 -0
  643. package/dist/agentOpenAI/openAiRuntime.d.ts +99 -0
  644. package/dist/agentOpenAI/openAiRuntime.d.ts.map +1 -0
  645. package/dist/agentOpenAI/openAiRuntime.js +1440 -0
  646. package/dist/agentOpenAI/openAiRuntime.js.map +1 -0
  647. package/dist/agentOpenAI/openAiToolAdapter.d.ts +9 -0
  648. package/dist/agentOpenAI/openAiToolAdapter.d.ts.map +1 -0
  649. package/dist/agentOpenAI/openAiToolAdapter.js +111 -0
  650. package/dist/agentOpenAI/openAiToolAdapter.js.map +1 -0
  651. package/dist/agentRuntime/envCredentialSources.d.ts +6 -0
  652. package/dist/agentRuntime/envCredentialSources.d.ts.map +1 -0
  653. package/dist/agentRuntime/envCredentialSources.js +104 -0
  654. package/dist/agentRuntime/envCredentialSources.js.map +1 -0
  655. package/dist/agentRuntime/index.d.ts +2 -0
  656. package/dist/agentRuntime/index.d.ts.map +1 -0
  657. package/dist/agentRuntime/index.js +10 -0
  658. package/dist/agentRuntime/index.js.map +1 -0
  659. package/dist/agentRuntime/runtimeHealth.d.ts +65 -0
  660. package/dist/agentRuntime/runtimeHealth.d.ts.map +1 -0
  661. package/dist/agentRuntime/runtimeHealth.js +58 -0
  662. package/dist/agentRuntime/runtimeHealth.js.map +1 -0
  663. package/dist/agentRuntime/runtimeSelection.d.ts +25 -0
  664. package/dist/agentRuntime/runtimeSelection.d.ts.map +1 -0
  665. package/dist/agentRuntime/runtimeSelection.js +66 -0
  666. package/dist/agentRuntime/runtimeSelection.js.map +1 -0
  667. package/dist/agentv3/__mocks__/claude-agent-sdk.d.ts +25 -0
  668. package/dist/agentv3/__mocks__/claude-agent-sdk.d.ts.map +1 -0
  669. package/dist/agentv3/__mocks__/claude-agent-sdk.js +48 -0
  670. package/dist/agentv3/__mocks__/claude-agent-sdk.js.map +1 -0
  671. package/dist/agentv3/activePhaseReminder.d.ts +12 -0
  672. package/dist/agentv3/activePhaseReminder.d.ts.map +1 -0
  673. package/dist/agentv3/activePhaseReminder.js +73 -0
  674. package/dist/agentv3/activePhaseReminder.js.map +1 -0
  675. package/dist/agentv3/agentMetrics.d.ts +114 -0
  676. package/dist/agentv3/agentMetrics.d.ts.map +1 -0
  677. package/dist/agentv3/agentMetrics.js +262 -0
  678. package/dist/agentv3/agentMetrics.js.map +1 -0
  679. package/dist/agentv3/analysisPatternMemory.d.ts +146 -0
  680. package/dist/agentv3/analysisPatternMemory.d.ts.map +1 -0
  681. package/dist/agentv3/analysisPatternMemory.js +860 -0
  682. package/dist/agentv3/analysisPatternMemory.js.map +1 -0
  683. package/dist/agentv3/analysisTermination.d.ts +21 -0
  684. package/dist/agentv3/analysisTermination.d.ts.map +1 -0
  685. package/dist/agentv3/analysisTermination.js +97 -0
  686. package/dist/agentv3/analysisTermination.js.map +1 -0
  687. package/dist/agentv3/artifactStore.d.ts +131 -0
  688. package/dist/agentv3/artifactStore.d.ts.map +1 -0
  689. package/dist/agentv3/artifactStore.js +208 -0
  690. package/dist/agentv3/artifactStore.js.map +1 -0
  691. package/dist/agentv3/claudeAgentDefinitions.d.ts +44 -0
  692. package/dist/agentv3/claudeAgentDefinitions.d.ts.map +1 -0
  693. package/dist/agentv3/claudeAgentDefinitions.js +209 -0
  694. package/dist/agentv3/claudeAgentDefinitions.js.map +1 -0
  695. package/dist/agentv3/claudeConfig.d.ts +156 -0
  696. package/dist/agentv3/claudeConfig.d.ts.map +1 -0
  697. package/dist/agentv3/claudeConfig.js +553 -0
  698. package/dist/agentv3/claudeConfig.js.map +1 -0
  699. package/dist/agentv3/claudeFindingExtractor.d.ts +15 -0
  700. package/dist/agentv3/claudeFindingExtractor.d.ts.map +1 -0
  701. package/dist/agentv3/claudeFindingExtractor.js +150 -0
  702. package/dist/agentv3/claudeFindingExtractor.js.map +1 -0
  703. package/dist/agentv3/claudeMcpServer.d.ts +89 -0
  704. package/dist/agentv3/claudeMcpServer.d.ts.map +1 -0
  705. package/dist/agentv3/claudeMcpServer.js +3785 -0
  706. package/dist/agentv3/claudeMcpServer.js.map +1 -0
  707. package/dist/agentv3/claudeRuntime.d.ts +137 -0
  708. package/dist/agentv3/claudeRuntime.d.ts.map +1 -0
  709. package/dist/agentv3/claudeRuntime.js +2541 -0
  710. package/dist/agentv3/claudeRuntime.js.map +1 -0
  711. package/dist/agentv3/claudeSseBridge.d.ts +23 -0
  712. package/dist/agentv3/claudeSseBridge.d.ts.map +1 -0
  713. package/dist/agentv3/claudeSseBridge.js +385 -0
  714. package/dist/agentv3/claudeSseBridge.js.map +1 -0
  715. package/dist/agentv3/claudeSystemPrompt.d.ts +65 -0
  716. package/dist/agentv3/claudeSystemPrompt.d.ts.map +1 -0
  717. package/dist/agentv3/claudeSystemPrompt.js +486 -0
  718. package/dist/agentv3/claudeSystemPrompt.js.map +1 -0
  719. package/dist/agentv3/claudeVerifier.d.ts +82 -0
  720. package/dist/agentv3/claudeVerifier.d.ts.map +1 -0
  721. package/dist/agentv3/claudeVerifier.js +1047 -0
  722. package/dist/agentv3/claudeVerifier.js.map +1 -0
  723. package/dist/agentv3/contextTokenMeter.d.ts +78 -0
  724. package/dist/agentv3/contextTokenMeter.d.ts.map +1 -0
  725. package/dist/agentv3/contextTokenMeter.js +88 -0
  726. package/dist/agentv3/contextTokenMeter.js.map +1 -0
  727. package/dist/agentv3/focusAppDetector.d.ts +22 -0
  728. package/dist/agentv3/focusAppDetector.d.ts.map +1 -0
  729. package/dist/agentv3/focusAppDetector.js +208 -0
  730. package/dist/agentv3/focusAppDetector.js.map +1 -0
  731. package/dist/agentv3/index.d.ts +6 -0
  732. package/dist/agentv3/index.d.ts.map +1 -0
  733. package/dist/agentv3/index.js +16 -0
  734. package/dist/agentv3/index.js.map +1 -0
  735. package/dist/agentv3/mcpToolRegistry.d.ts +90 -0
  736. package/dist/agentv3/mcpToolRegistry.d.ts.map +1 -0
  737. package/dist/agentv3/mcpToolRegistry.js +152 -0
  738. package/dist/agentv3/mcpToolRegistry.js.map +1 -0
  739. package/dist/agentv3/outputLanguage.d.ts +6 -0
  740. package/dist/agentv3/outputLanguage.d.ts.map +1 -0
  741. package/dist/agentv3/outputLanguage.js +37 -0
  742. package/dist/agentv3/outputLanguage.js.map +1 -0
  743. package/dist/agentv3/phaseHintMatcher.d.ts +36 -0
  744. package/dist/agentv3/phaseHintMatcher.d.ts.map +1 -0
  745. package/dist/agentv3/phaseHintMatcher.js +48 -0
  746. package/dist/agentv3/phaseHintMatcher.js.map +1 -0
  747. package/dist/agentv3/projectMemory.d.ts +80 -0
  748. package/dist/agentv3/projectMemory.d.ts.map +1 -0
  749. package/dist/agentv3/projectMemory.js +334 -0
  750. package/dist/agentv3/projectMemory.js.map +1 -0
  751. package/dist/agentv3/queryComplexityClassifier.d.ts +21 -0
  752. package/dist/agentv3/queryComplexityClassifier.d.ts.map +1 -0
  753. package/dist/agentv3/queryComplexityClassifier.js +196 -0
  754. package/dist/agentv3/queryComplexityClassifier.js.map +1 -0
  755. package/dist/agentv3/rawSqlNormalizer.d.ts +11 -0
  756. package/dist/agentv3/rawSqlNormalizer.d.ts.map +1 -0
  757. package/dist/agentv3/rawSqlNormalizer.js +649 -0
  758. package/dist/agentv3/rawSqlNormalizer.js.map +1 -0
  759. package/dist/agentv3/recoveryNoteBuilder.d.ts +51 -0
  760. package/dist/agentv3/recoveryNoteBuilder.d.ts.map +1 -0
  761. package/dist/agentv3/recoveryNoteBuilder.js +84 -0
  762. package/dist/agentv3/recoveryNoteBuilder.js.map +1 -0
  763. package/dist/agentv3/sceneClassifier.d.ts +11 -0
  764. package/dist/agentv3/sceneClassifier.d.ts.map +1 -0
  765. package/dist/agentv3/sceneClassifier.js +46 -0
  766. package/dist/agentv3/sceneClassifier.js.map +1 -0
  767. package/dist/agentv3/scenePlanTemplates.d.ts +80 -0
  768. package/dist/agentv3/scenePlanTemplates.d.ts.map +1 -0
  769. package/dist/agentv3/scenePlanTemplates.js +164 -0
  770. package/dist/agentv3/scenePlanTemplates.js.map +1 -0
  771. package/dist/agentv3/selfImprove/contentScanner.d.ts +44 -0
  772. package/dist/agentv3/selfImprove/contentScanner.d.ts.map +1 -0
  773. package/dist/agentv3/selfImprove/contentScanner.js +112 -0
  774. package/dist/agentv3/selfImprove/contentScanner.js.map +1 -0
  775. package/dist/agentv3/selfImprove/failureTaxonomy.d.ts +38 -0
  776. package/dist/agentv3/selfImprove/failureTaxonomy.d.ts.map +1 -0
  777. package/dist/agentv3/selfImprove/failureTaxonomy.js +102 -0
  778. package/dist/agentv3/selfImprove/failureTaxonomy.js.map +1 -0
  779. package/dist/agentv3/selfImprove/feedbackEnricher.d.ts +69 -0
  780. package/dist/agentv3/selfImprove/feedbackEnricher.d.ts.map +1 -0
  781. package/dist/agentv3/selfImprove/feedbackEnricher.js +135 -0
  782. package/dist/agentv3/selfImprove/feedbackEnricher.js.map +1 -0
  783. package/dist/agentv3/selfImprove/feedbackPipeline.d.ts +63 -0
  784. package/dist/agentv3/selfImprove/feedbackPipeline.d.ts.map +1 -0
  785. package/dist/agentv3/selfImprove/feedbackPipeline.js +239 -0
  786. package/dist/agentv3/selfImprove/feedbackPipeline.js.map +1 -0
  787. package/dist/agentv3/selfImprove/hintFingerprint.d.ts +14 -0
  788. package/dist/agentv3/selfImprove/hintFingerprint.d.ts.map +1 -0
  789. package/dist/agentv3/selfImprove/hintFingerprint.js +47 -0
  790. package/dist/agentv3/selfImprove/hintFingerprint.js.map +1 -0
  791. package/dist/agentv3/selfImprove/metricsAggregator.d.ts +46 -0
  792. package/dist/agentv3/selfImprove/metricsAggregator.d.ts.map +1 -0
  793. package/dist/agentv3/selfImprove/metricsAggregator.js +195 -0
  794. package/dist/agentv3/selfImprove/metricsAggregator.js.map +1 -0
  795. package/dist/agentv3/selfImprove/migrateFailureModeHash.d.ts +31 -0
  796. package/dist/agentv3/selfImprove/migrateFailureModeHash.d.ts.map +1 -0
  797. package/dist/agentv3/selfImprove/migrateFailureModeHash.js +220 -0
  798. package/dist/agentv3/selfImprove/migrateFailureModeHash.js.map +1 -0
  799. package/dist/agentv3/selfImprove/phaseHintsRenderer.d.ts +56 -0
  800. package/dist/agentv3/selfImprove/phaseHintsRenderer.d.ts.map +1 -0
  801. package/dist/agentv3/selfImprove/phaseHintsRenderer.js +202 -0
  802. package/dist/agentv3/selfImprove/phaseHintsRenderer.js.map +1 -0
  803. package/dist/agentv3/selfImprove/promoteSkillNote.d.ts +17 -0
  804. package/dist/agentv3/selfImprove/promoteSkillNote.d.ts.map +1 -0
  805. package/dist/agentv3/selfImprove/promoteSkillNote.js +146 -0
  806. package/dist/agentv3/selfImprove/promoteSkillNote.js.map +1 -0
  807. package/dist/agentv3/selfImprove/proposeStrategyPatch.d.ts +40 -0
  808. package/dist/agentv3/selfImprove/proposeStrategyPatch.d.ts.map +1 -0
  809. package/dist/agentv3/selfImprove/proposeStrategyPatch.js +115 -0
  810. package/dist/agentv3/selfImprove/proposeStrategyPatch.js.map +1 -0
  811. package/dist/agentv3/selfImprove/reviewAgentSdk.d.ts +32 -0
  812. package/dist/agentv3/selfImprove/reviewAgentSdk.d.ts.map +1 -0
  813. package/dist/agentv3/selfImprove/reviewAgentSdk.js +173 -0
  814. package/dist/agentv3/selfImprove/reviewAgentSdk.js.map +1 -0
  815. package/dist/agentv3/selfImprove/reviewOutbox.d.ts +128 -0
  816. package/dist/agentv3/selfImprove/reviewOutbox.d.ts.map +1 -0
  817. package/dist/agentv3/selfImprove/reviewOutbox.js +313 -0
  818. package/dist/agentv3/selfImprove/reviewOutbox.js.map +1 -0
  819. package/dist/agentv3/selfImprove/reviewWorker.d.ts +95 -0
  820. package/dist/agentv3/selfImprove/reviewWorker.d.ts.map +1 -0
  821. package/dist/agentv3/selfImprove/reviewWorker.js +172 -0
  822. package/dist/agentv3/selfImprove/reviewWorker.js.map +1 -0
  823. package/dist/agentv3/selfImprove/skillNotesInjector.d.ts +71 -0
  824. package/dist/agentv3/selfImprove/skillNotesInjector.d.ts.map +1 -0
  825. package/dist/agentv3/selfImprove/skillNotesInjector.js +214 -0
  826. package/dist/agentv3/selfImprove/skillNotesInjector.js.map +1 -0
  827. package/dist/agentv3/selfImprove/skillNotesWriter.d.ts +89 -0
  828. package/dist/agentv3/selfImprove/skillNotesWriter.d.ts.map +1 -0
  829. package/dist/agentv3/selfImprove/skillNotesWriter.js +274 -0
  830. package/dist/agentv3/selfImprove/skillNotesWriter.js.map +1 -0
  831. package/dist/agentv3/selfImprove/strategyFingerprint.d.ts +85 -0
  832. package/dist/agentv3/selfImprove/strategyFingerprint.d.ts.map +1 -0
  833. package/dist/agentv3/selfImprove/strategyFingerprint.js +189 -0
  834. package/dist/agentv3/selfImprove/strategyFingerprint.js.map +1 -0
  835. package/dist/agentv3/selfImprove/strategyPatchApplier.d.ts +15 -0
  836. package/dist/agentv3/selfImprove/strategyPatchApplier.d.ts.map +1 -0
  837. package/dist/agentv3/selfImprove/strategyPatchApplier.js +138 -0
  838. package/dist/agentv3/selfImprove/strategyPatchApplier.js.map +1 -0
  839. package/dist/agentv3/selfImprove/supersedeStore.d.ts +136 -0
  840. package/dist/agentv3/selfImprove/supersedeStore.d.ts.map +1 -0
  841. package/dist/agentv3/selfImprove/supersedeStore.js +386 -0
  842. package/dist/agentv3/selfImprove/supersedeStore.js.map +1 -0
  843. package/dist/agentv3/selfImprove/worktreeRunner.d.ts +49 -0
  844. package/dist/agentv3/selfImprove/worktreeRunner.d.ts.map +1 -0
  845. package/dist/agentv3/selfImprove/worktreeRunner.js +153 -0
  846. package/dist/agentv3/selfImprove/worktreeRunner.js.map +1 -0
  847. package/dist/agentv3/sessionStateSnapshot.d.ts +166 -0
  848. package/dist/agentv3/sessionStateSnapshot.d.ts.map +1 -0
  849. package/dist/agentv3/sessionStateSnapshot.js +6 -0
  850. package/dist/agentv3/sessionStateSnapshot.js.map +1 -0
  851. package/dist/agentv3/sqlIncludeInjector.d.ts +24 -0
  852. package/dist/agentv3/sqlIncludeInjector.d.ts.map +1 -0
  853. package/dist/agentv3/sqlIncludeInjector.js +78 -0
  854. package/dist/agentv3/sqlIncludeInjector.js.map +1 -0
  855. package/dist/agentv3/sqlSummarizer.d.ts +38 -0
  856. package/dist/agentv3/sqlSummarizer.d.ts.map +1 -0
  857. package/dist/agentv3/sqlSummarizer.js +101 -0
  858. package/dist/agentv3/sqlSummarizer.js.map +1 -0
  859. package/dist/agentv3/standaloneMcpServer.d.ts +96 -0
  860. package/dist/agentv3/standaloneMcpServer.d.ts.map +1 -0
  861. package/dist/agentv3/standaloneMcpServer.js +244 -0
  862. package/dist/agentv3/standaloneMcpServer.js.map +1 -0
  863. package/dist/agentv3/strategyLoader.d.ts +96 -0
  864. package/dist/agentv3/strategyLoader.d.ts.map +1 -0
  865. package/dist/agentv3/strategyLoader.js +204 -0
  866. package/dist/agentv3/strategyLoader.js.map +1 -0
  867. package/dist/agentv3/toolCallSummary.d.ts +15 -0
  868. package/dist/agentv3/toolCallSummary.d.ts.map +1 -0
  869. package/dist/agentv3/toolCallSummary.js +66 -0
  870. package/dist/agentv3/toolCallSummary.js.map +1 -0
  871. package/dist/agentv3/toolNarration.d.ts +4 -0
  872. package/dist/agentv3/toolNarration.d.ts.map +1 -0
  873. package/dist/agentv3/toolNarration.js +371 -0
  874. package/dist/agentv3/toolNarration.js.map +1 -0
  875. package/dist/agentv3/traceCompletenessProber.d.ts +56 -0
  876. package/dist/agentv3/traceCompletenessProber.d.ts.map +1 -0
  877. package/dist/agentv3/traceCompletenessProber.js +337 -0
  878. package/dist/agentv3/traceCompletenessProber.js.map +1 -0
  879. package/dist/agentv3/types.d.ts +443 -0
  880. package/dist/agentv3/types.d.ts.map +1 -0
  881. package/dist/agentv3/types.js +37 -0
  882. package/dist/agentv3/types.js.map +1 -0
  883. package/dist/assistant/application/agentAnalyzeSessionService.d.ts +130 -0
  884. package/dist/assistant/application/agentAnalyzeSessionService.d.ts.map +1 -0
  885. package/dist/assistant/application/agentAnalyzeSessionService.js +433 -0
  886. package/dist/assistant/application/agentAnalyzeSessionService.js.map +1 -0
  887. package/dist/assistant/application/assistantApplicationService.d.ts +39 -0
  888. package/dist/assistant/application/assistantApplicationService.d.ts.map +1 -0
  889. package/dist/assistant/application/assistantApplicationService.js +88 -0
  890. package/dist/assistant/application/assistantApplicationService.js.map +1 -0
  891. package/dist/assistant/contracts/assistantResultContract.d.ts +41 -0
  892. package/dist/assistant/contracts/assistantResultContract.d.ts.map +1 -0
  893. package/dist/assistant/contracts/assistantResultContract.js +145 -0
  894. package/dist/assistant/contracts/assistantResultContract.js.map +1 -0
  895. package/dist/assistant/stream/sessionSseReplay.d.ts +10 -0
  896. package/dist/assistant/stream/sessionSseReplay.d.ts.map +1 -0
  897. package/dist/assistant/stream/sessionSseReplay.js +42 -0
  898. package/dist/assistant/stream/sessionSseReplay.js.map +1 -0
  899. package/dist/assistant/stream/streamProjector.d.ts +53 -0
  900. package/dist/assistant/stream/streamProjector.d.ts.map +1 -0
  901. package/dist/assistant/stream/streamProjector.js +150 -0
  902. package/dist/assistant/stream/streamProjector.js.map +1 -0
  903. package/dist/cli/commands/coverage.d.ts +12 -0
  904. package/dist/cli/commands/coverage.d.ts.map +1 -0
  905. package/dist/cli/commands/coverage.js +106 -0
  906. package/dist/cli/commands/coverage.js.map +1 -0
  907. package/dist/cli/commands/list.d.ts +11 -0
  908. package/dist/cli/commands/list.d.ts.map +1 -0
  909. package/dist/cli/commands/list.js +169 -0
  910. package/dist/cli/commands/list.js.map +1 -0
  911. package/dist/cli/commands/smoke.d.ts +11 -0
  912. package/dist/cli/commands/smoke.d.ts.map +1 -0
  913. package/dist/cli/commands/smoke.js +215 -0
  914. package/dist/cli/commands/smoke.js.map +1 -0
  915. package/dist/cli/commands/test.d.ts +11 -0
  916. package/dist/cli/commands/test.d.ts.map +1 -0
  917. package/dist/cli/commands/test.js +183 -0
  918. package/dist/cli/commands/test.js.map +1 -0
  919. package/dist/cli/commands/validate.d.ts +26 -0
  920. package/dist/cli/commands/validate.d.ts.map +1 -0
  921. package/dist/cli/commands/validate.js +918 -0
  922. package/dist/cli/commands/validate.js.map +1 -0
  923. package/dist/cli/index.d.ts +3 -0
  924. package/dist/cli/index.d.ts.map +1 -0
  925. package/dist/cli/index.js +29 -0
  926. package/dist/cli/index.js.map +1 -0
  927. package/dist/cli-user/bin.d.ts +3 -0
  928. package/dist/cli-user/bin.d.ts.map +1 -0
  929. package/dist/cli-user/bin.js +490 -0
  930. package/dist/cli-user/bin.js.map +1 -0
  931. package/dist/cli-user/bootstrap.d.ts +12 -0
  932. package/dist/cli-user/bootstrap.d.ts.map +1 -0
  933. package/dist/cli-user/bootstrap.js +165 -0
  934. package/dist/cli-user/bootstrap.js.map +1 -0
  935. package/dist/cli-user/commands/analyze.d.ts +12 -0
  936. package/dist/cli-user/commands/analyze.d.ts.map +1 -0
  937. package/dist/cli-user/commands/analyze.js +83 -0
  938. package/dist/cli-user/commands/analyze.js.map +1 -0
  939. package/dist/cli-user/commands/capture.d.ts +12 -0
  940. package/dist/cli-user/commands/capture.d.ts.map +1 -0
  941. package/dist/cli-user/commands/capture.js +155 -0
  942. package/dist/cli-user/commands/capture.js.map +1 -0
  943. package/dist/cli-user/commands/compare.d.ts +13 -0
  944. package/dist/cli-user/commands/compare.d.ts.map +1 -0
  945. package/dist/cli-user/commands/compare.js +74 -0
  946. package/dist/cli-user/commands/compare.js.map +1 -0
  947. package/dist/cli-user/commands/config.d.ts +9 -0
  948. package/dist/cli-user/commands/config.d.ts.map +1 -0
  949. package/dist/cli-user/commands/config.js +109 -0
  950. package/dist/cli-user/commands/config.js.map +1 -0
  951. package/dist/cli-user/commands/doctor.d.ts +8 -0
  952. package/dist/cli-user/commands/doctor.d.ts.map +1 -0
  953. package/dist/cli-user/commands/doctor.js +37 -0
  954. package/dist/cli-user/commands/doctor.js.map +1 -0
  955. package/dist/cli-user/commands/list.d.ts +10 -0
  956. package/dist/cli-user/commands/list.d.ts.map +1 -0
  957. package/dist/cli-user/commands/list.js +79 -0
  958. package/dist/cli-user/commands/list.js.map +1 -0
  959. package/dist/cli-user/commands/provider.d.ts +12 -0
  960. package/dist/cli-user/commands/provider.d.ts.map +1 -0
  961. package/dist/cli-user/commands/provider.js +121 -0
  962. package/dist/cli-user/commands/provider.js.map +1 -0
  963. package/dist/cli-user/commands/query.d.ts +10 -0
  964. package/dist/cli-user/commands/query.d.ts.map +1 -0
  965. package/dist/cli-user/commands/query.js +128 -0
  966. package/dist/cli-user/commands/query.js.map +1 -0
  967. package/dist/cli-user/commands/report.d.ts +18 -0
  968. package/dist/cli-user/commands/report.d.ts.map +1 -0
  969. package/dist/cli-user/commands/report.js +225 -0
  970. package/dist/cli-user/commands/report.js.map +1 -0
  971. package/dist/cli-user/commands/resume.d.ts +12 -0
  972. package/dist/cli-user/commands/resume.d.ts.map +1 -0
  973. package/dist/cli-user/commands/resume.js +48 -0
  974. package/dist/cli-user/commands/resume.js.map +1 -0
  975. package/dist/cli-user/commands/rm.d.ts +8 -0
  976. package/dist/cli-user/commands/rm.d.ts.map +1 -0
  977. package/dist/cli-user/commands/rm.js +91 -0
  978. package/dist/cli-user/commands/rm.js.map +1 -0
  979. package/dist/cli-user/commands/show.d.ts +8 -0
  980. package/dist/cli-user/commands/show.d.ts.map +1 -0
  981. package/dist/cli-user/commands/show.js +84 -0
  982. package/dist/cli-user/commands/show.js.map +1 -0
  983. package/dist/cli-user/commands/skill.d.ts +11 -0
  984. package/dist/cli-user/commands/skill.d.ts.map +1 -0
  985. package/dist/cli-user/commands/skill.js +118 -0
  986. package/dist/cli-user/commands/skill.js.map +1 -0
  987. package/dist/cli-user/constants.d.ts +10 -0
  988. package/dist/cli-user/constants.d.ts.map +1 -0
  989. package/dist/cli-user/constants.js +16 -0
  990. package/dist/cli-user/constants.js.map +1 -0
  991. package/dist/cli-user/io/indexJson.d.ts +11 -0
  992. package/dist/cli-user/io/indexJson.d.ts.map +1 -0
  993. package/dist/cli-user/io/indexJson.js +79 -0
  994. package/dist/cli-user/io/indexJson.js.map +1 -0
  995. package/dist/cli-user/io/openFile.d.ts +8 -0
  996. package/dist/cli-user/io/openFile.d.ts.map +1 -0
  997. package/dist/cli-user/io/openFile.js +34 -0
  998. package/dist/cli-user/io/openFile.js.map +1 -0
  999. package/dist/cli-user/io/paths.d.ts +33 -0
  1000. package/dist/cli-user/io/paths.d.ts.map +1 -0
  1001. package/dist/cli-user/io/paths.js +149 -0
  1002. package/dist/cli-user/io/paths.js.map +1 -0
  1003. package/dist/cli-user/io/sessionStore.d.ts +17 -0
  1004. package/dist/cli-user/io/sessionStore.d.ts.map +1 -0
  1005. package/dist/cli-user/io/sessionStore.js +101 -0
  1006. package/dist/cli-user/io/sessionStore.js.map +1 -0
  1007. package/dist/cli-user/io/stdio.d.ts +8 -0
  1008. package/dist/cli-user/io/stdio.d.ts.map +1 -0
  1009. package/dist/cli-user/io/stdio.js +25 -0
  1010. package/dist/cli-user/io/stdio.js.map +1 -0
  1011. package/dist/cli-user/io/transcriptWriter.d.ts +5 -0
  1012. package/dist/cli-user/io/transcriptWriter.d.ts.map +1 -0
  1013. package/dist/cli-user/io/transcriptWriter.js +60 -0
  1014. package/dist/cli-user/io/transcriptWriter.js.map +1 -0
  1015. package/dist/cli-user/repl/index.d.ts +14 -0
  1016. package/dist/cli-user/repl/index.d.ts.map +1 -0
  1017. package/dist/cli-user/repl/index.js +301 -0
  1018. package/dist/cli-user/repl/index.js.map +1 -0
  1019. package/dist/cli-user/repl/renderer.d.ts +43 -0
  1020. package/dist/cli-user/repl/renderer.d.ts.map +1 -0
  1021. package/dist/cli-user/repl/renderer.js +210 -0
  1022. package/dist/cli-user/repl/renderer.js.map +1 -0
  1023. package/dist/cli-user/repl/slashCommands.d.ts +49 -0
  1024. package/dist/cli-user/repl/slashCommands.d.ts.map +1 -0
  1025. package/dist/cli-user/repl/slashCommands.js +65 -0
  1026. package/dist/cli-user/repl/slashCommands.js.map +1 -0
  1027. package/dist/cli-user/services/cliAnalyzeService.d.ts +73 -0
  1028. package/dist/cli-user/services/cliAnalyzeService.d.ts.map +1 -0
  1029. package/dist/cli-user/services/cliAnalyzeService.js +393 -0
  1030. package/dist/cli-user/services/cliAnalyzeService.js.map +1 -0
  1031. package/dist/cli-user/services/runtimeGuard.d.ts +46 -0
  1032. package/dist/cli-user/services/runtimeGuard.d.ts.map +1 -0
  1033. package/dist/cli-user/services/runtimeGuard.js +188 -0
  1034. package/dist/cli-user/services/runtimeGuard.js.map +1 -0
  1035. package/dist/cli-user/services/traceProcessorInstaller.d.ts +2 -0
  1036. package/dist/cli-user/services/traceProcessorInstaller.d.ts.map +1 -0
  1037. package/dist/cli-user/services/traceProcessorInstaller.js +241 -0
  1038. package/dist/cli-user/services/traceProcessorInstaller.js.map +1 -0
  1039. package/dist/cli-user/services/turnPersistence.d.ts +41 -0
  1040. package/dist/cli-user/services/turnPersistence.d.ts.map +1 -0
  1041. package/dist/cli-user/services/turnPersistence.js +55 -0
  1042. package/dist/cli-user/services/turnPersistence.js.map +1 -0
  1043. package/dist/cli-user/services/turnRunner.d.ts +49 -0
  1044. package/dist/cli-user/services/turnRunner.d.ts.map +1 -0
  1045. package/dist/cli-user/services/turnRunner.js +436 -0
  1046. package/dist/cli-user/services/turnRunner.js.map +1 -0
  1047. package/dist/cli-user/types.d.ts +62 -0
  1048. package/dist/cli-user/types.d.ts.map +1 -0
  1049. package/dist/cli-user/types.js +6 -0
  1050. package/dist/cli-user/types.js.map +1 -0
  1051. package/dist/config/index.d.ts +393 -0
  1052. package/dist/config/index.d.ts.map +1 -0
  1053. package/dist/config/index.js +334 -0
  1054. package/dist/config/index.js.map +1 -0
  1055. package/dist/config/prompts.d.ts +20 -0
  1056. package/dist/config/prompts.d.ts.map +1 -0
  1057. package/dist/config/prompts.js +74 -0
  1058. package/dist/config/prompts.js.map +1 -0
  1059. package/dist/config/teaching.config.d.ts +253 -0
  1060. package/dist/config/teaching.config.d.ts.map +1 -0
  1061. package/dist/config/teaching.config.js +203 -0
  1062. package/dist/config/teaching.config.js.map +1 -0
  1063. package/dist/config/thresholds.d.ts +300 -0
  1064. package/dist/config/thresholds.d.ts.map +1 -0
  1065. package/dist/config/thresholds.js +338 -0
  1066. package/dist/config/thresholds.js.map +1 -0
  1067. package/dist/controllers/skillAdminController.d.ts +62 -0
  1068. package/dist/controllers/skillAdminController.d.ts.map +1 -0
  1069. package/dist/controllers/skillAdminController.js +482 -0
  1070. package/dist/controllers/skillAdminController.js.map +1 -0
  1071. package/dist/controllers/skillController.d.ts +49 -0
  1072. package/dist/controllers/skillController.d.ts.map +1 -0
  1073. package/dist/controllers/skillController.js +246 -0
  1074. package/dist/controllers/skillController.js.map +1 -0
  1075. package/dist/controllers/sqlController.d.ts +9 -0
  1076. package/dist/controllers/sqlController.d.ts.map +1 -0
  1077. package/dist/controllers/sqlController.js +125 -0
  1078. package/dist/controllers/sqlController.js.map +1 -0
  1079. package/dist/controllers/traceController.d.ts +13 -0
  1080. package/dist/controllers/traceController.d.ts.map +1 -0
  1081. package/dist/controllers/traceController.js +209 -0
  1082. package/dist/controllers/traceController.js.map +1 -0
  1083. package/dist/controllers/traceProcessorController.d.ts +14 -0
  1084. package/dist/controllers/traceProcessorController.d.ts.map +1 -0
  1085. package/dist/controllers/traceProcessorController.js +222 -0
  1086. package/dist/controllers/traceProcessorController.js.map +1 -0
  1087. package/dist/data/perfettoSchema.d.ts +9 -0
  1088. package/dist/data/perfettoSchema.d.ts.map +1 -0
  1089. package/dist/data/perfettoSchema.js +286 -0
  1090. package/dist/data/perfettoSchema.js.map +1 -0
  1091. package/dist/index.d.ts +2 -0
  1092. package/dist/index.d.ts.map +1 -0
  1093. package/dist/index.js +251 -0
  1094. package/dist/index.js.map +1 -0
  1095. package/dist/middleware/auth.d.ts +37 -0
  1096. package/dist/middleware/auth.d.ts.map +1 -0
  1097. package/dist/middleware/auth.js +307 -0
  1098. package/dist/middleware/auth.js.map +1 -0
  1099. package/dist/middleware/legacyAgentApi.d.ts +8 -0
  1100. package/dist/middleware/legacyAgentApi.d.ts.map +1 -0
  1101. package/dist/middleware/legacyAgentApi.js +64 -0
  1102. package/dist/middleware/legacyAgentApi.js.map +1 -0
  1103. package/dist/middleware/workspaceRouteContext.d.ts +4 -0
  1104. package/dist/middleware/workspaceRouteContext.d.ts.map +1 -0
  1105. package/dist/middleware/workspaceRouteContext.js +44 -0
  1106. package/dist/middleware/workspaceRouteContext.js.map +1 -0
  1107. package/dist/models/sessionSchema.d.ts +106 -0
  1108. package/dist/models/sessionSchema.d.ts.map +1 -0
  1109. package/dist/models/sessionSchema.js +6 -0
  1110. package/dist/models/sessionSchema.js.map +1 -0
  1111. package/dist/routes/agentLogsRoutes.d.ts +3 -0
  1112. package/dist/routes/agentLogsRoutes.d.ts.map +1 -0
  1113. package/dist/routes/agentLogsRoutes.js +283 -0
  1114. package/dist/routes/agentLogsRoutes.js.map +1 -0
  1115. package/dist/routes/agentQuickSceneRoutes.d.ts +9 -0
  1116. package/dist/routes/agentQuickSceneRoutes.d.ts.map +1 -0
  1117. package/dist/routes/agentQuickSceneRoutes.js +51 -0
  1118. package/dist/routes/agentQuickSceneRoutes.js.map +1 -0
  1119. package/dist/routes/agentReportRoutes.d.ts +11 -0
  1120. package/dist/routes/agentReportRoutes.d.ts.map +1 -0
  1121. package/dist/routes/agentReportRoutes.js +100 -0
  1122. package/dist/routes/agentReportRoutes.js.map +1 -0
  1123. package/dist/routes/agentResumeRoutes.d.ts +14 -0
  1124. package/dist/routes/agentResumeRoutes.d.ts.map +1 -0
  1125. package/dist/routes/agentResumeRoutes.js +263 -0
  1126. package/dist/routes/agentResumeRoutes.js.map +1 -0
  1127. package/dist/routes/agentRoutes.d.ts +3 -0
  1128. package/dist/routes/agentRoutes.d.ts.map +1 -0
  1129. package/dist/routes/agentRoutes.js +4349 -0
  1130. package/dist/routes/agentRoutes.js.map +1 -0
  1131. package/dist/routes/agentSceneReconstructRoutes.d.ts +68 -0
  1132. package/dist/routes/agentSceneReconstructRoutes.d.ts.map +1 -0
  1133. package/dist/routes/agentSceneReconstructRoutes.js +448 -0
  1134. package/dist/routes/agentSceneReconstructRoutes.js.map +1 -0
  1135. package/dist/routes/agentSessionCatalogRoutes.d.ts +20 -0
  1136. package/dist/routes/agentSessionCatalogRoutes.d.ts.map +1 -0
  1137. package/dist/routes/agentSessionCatalogRoutes.js +90 -0
  1138. package/dist/routes/agentSessionCatalogRoutes.js.map +1 -0
  1139. package/dist/routes/agentTeachingRoutes.d.ts +3 -0
  1140. package/dist/routes/agentTeachingRoutes.d.ts.map +1 -0
  1141. package/dist/routes/agentTeachingRoutes.js +62 -0
  1142. package/dist/routes/agentTeachingRoutes.js.map +1 -0
  1143. package/dist/routes/analysisResultRoutes.d.ts +3 -0
  1144. package/dist/routes/analysisResultRoutes.d.ts.map +1 -0
  1145. package/dist/routes/analysisResultRoutes.js +216 -0
  1146. package/dist/routes/analysisResultRoutes.js.map +1 -0
  1147. package/dist/routes/baselineRoutes.d.ts +29 -0
  1148. package/dist/routes/baselineRoutes.d.ts.map +1 -0
  1149. package/dist/routes/baselineRoutes.js +123 -0
  1150. package/dist/routes/baselineRoutes.js.map +1 -0
  1151. package/dist/routes/caseRoutes.d.ts +29 -0
  1152. package/dist/routes/caseRoutes.d.ts.map +1 -0
  1153. package/dist/routes/caseRoutes.js +194 -0
  1154. package/dist/routes/caseRoutes.js.map +1 -0
  1155. package/dist/routes/ciGateRoutes.d.ts +11 -0
  1156. package/dist/routes/ciGateRoutes.d.ts.map +1 -0
  1157. package/dist/routes/ciGateRoutes.js +363 -0
  1158. package/dist/routes/ciGateRoutes.js.map +1 -0
  1159. package/dist/routes/comparisonRoutes.d.ts +3 -0
  1160. package/dist/routes/comparisonRoutes.d.ts.map +1 -0
  1161. package/dist/routes/comparisonRoutes.js +536 -0
  1162. package/dist/routes/comparisonRoutes.js.map +1 -0
  1163. package/dist/routes/criticalPathRoutes.d.ts +3 -0
  1164. package/dist/routes/criticalPathRoutes.d.ts.map +1 -0
  1165. package/dist/routes/criticalPathRoutes.js +88 -0
  1166. package/dist/routes/criticalPathRoutes.js.map +1 -0
  1167. package/dist/routes/enterpriseApiKeyRoutes.d.ts +9 -0
  1168. package/dist/routes/enterpriseApiKeyRoutes.d.ts.map +1 -0
  1169. package/dist/routes/enterpriseApiKeyRoutes.js +126 -0
  1170. package/dist/routes/enterpriseApiKeyRoutes.js.map +1 -0
  1171. package/dist/routes/enterpriseAuthRoutes.d.ts +18 -0
  1172. package/dist/routes/enterpriseAuthRoutes.d.ts.map +1 -0
  1173. package/dist/routes/enterpriseAuthRoutes.js +160 -0
  1174. package/dist/routes/enterpriseAuthRoutes.js.map +1 -0
  1175. package/dist/routes/enterpriseRuntimeDashboardRoutes.d.ts +6 -0
  1176. package/dist/routes/enterpriseRuntimeDashboardRoutes.d.ts.map +1 -0
  1177. package/dist/routes/enterpriseRuntimeDashboardRoutes.js +32 -0
  1178. package/dist/routes/enterpriseRuntimeDashboardRoutes.js.map +1 -0
  1179. package/dist/routes/enterpriseTenantRoutes.d.ts +4 -0
  1180. package/dist/routes/enterpriseTenantRoutes.d.ts.map +1 -0
  1181. package/dist/routes/enterpriseTenantRoutes.js +313 -0
  1182. package/dist/routes/enterpriseTenantRoutes.js.map +1 -0
  1183. package/dist/routes/exportRoutes.d.ts +3 -0
  1184. package/dist/routes/exportRoutes.d.ts.map +1 -0
  1185. package/dist/routes/exportRoutes.js +196 -0
  1186. package/dist/routes/exportRoutes.js.map +1 -0
  1187. package/dist/routes/flamegraphRoutes.d.ts +3 -0
  1188. package/dist/routes/flamegraphRoutes.d.ts.map +1 -0
  1189. package/dist/routes/flamegraphRoutes.js +99 -0
  1190. package/dist/routes/flamegraphRoutes.js.map +1 -0
  1191. package/dist/routes/memoryRoutes.d.ts +31 -0
  1192. package/dist/routes/memoryRoutes.d.ts.map +1 -0
  1193. package/dist/routes/memoryRoutes.js +150 -0
  1194. package/dist/routes/memoryRoutes.js.map +1 -0
  1195. package/dist/routes/narrativeSanitizer.d.ts +2 -0
  1196. package/dist/routes/narrativeSanitizer.d.ts.map +1 -0
  1197. package/dist/routes/narrativeSanitizer.js +167 -0
  1198. package/dist/routes/narrativeSanitizer.js.map +1 -0
  1199. package/dist/routes/perfettoLocalRoutes.d.ts +3 -0
  1200. package/dist/routes/perfettoLocalRoutes.d.ts.map +1 -0
  1201. package/dist/routes/perfettoLocalRoutes.js +222 -0
  1202. package/dist/routes/perfettoLocalRoutes.js.map +1 -0
  1203. package/dist/routes/perfettoSqlRoutes.d.ts +7 -0
  1204. package/dist/routes/perfettoSqlRoutes.d.ts.map +1 -0
  1205. package/dist/routes/perfettoSqlRoutes.js +738 -0
  1206. package/dist/routes/perfettoSqlRoutes.js.map +1 -0
  1207. package/dist/routes/providerRoutes.d.ts +3 -0
  1208. package/dist/routes/providerRoutes.d.ts.map +1 -0
  1209. package/dist/routes/providerRoutes.js +219 -0
  1210. package/dist/routes/providerRoutes.js.map +1 -0
  1211. package/dist/routes/ragAdminRoutes.d.ts +30 -0
  1212. package/dist/routes/ragAdminRoutes.d.ts.map +1 -0
  1213. package/dist/routes/ragAdminRoutes.js +93 -0
  1214. package/dist/routes/ragAdminRoutes.js.map +1 -0
  1215. package/dist/routes/reportRoutes.d.ts +17 -0
  1216. package/dist/routes/reportRoutes.d.ts.map +1 -0
  1217. package/dist/routes/reportRoutes.js +579 -0
  1218. package/dist/routes/reportRoutes.js.map +1 -0
  1219. package/dist/routes/sessionRoutes.d.ts +3 -0
  1220. package/dist/routes/sessionRoutes.d.ts.map +1 -0
  1221. package/dist/routes/sessionRoutes.js +144 -0
  1222. package/dist/routes/sessionRoutes.js.map +1 -0
  1223. package/dist/routes/simpleTraceRoutes.d.ts +3 -0
  1224. package/dist/routes/simpleTraceRoutes.d.ts.map +1 -0
  1225. package/dist/routes/simpleTraceRoutes.js +1131 -0
  1226. package/dist/routes/simpleTraceRoutes.js.map +1 -0
  1227. package/dist/routes/skillAdminRoutes.d.ts +3 -0
  1228. package/dist/routes/skillAdminRoutes.d.ts.map +1 -0
  1229. package/dist/routes/skillAdminRoutes.js +100 -0
  1230. package/dist/routes/skillAdminRoutes.js.map +1 -0
  1231. package/dist/routes/skillRoutes.d.ts +3 -0
  1232. package/dist/routes/skillRoutes.d.ts.map +1 -0
  1233. package/dist/routes/skillRoutes.js +88 -0
  1234. package/dist/routes/skillRoutes.js.map +1 -0
  1235. package/dist/routes/sql.d.ts +3 -0
  1236. package/dist/routes/sql.d.ts.map +1 -0
  1237. package/dist/routes/sql.js +19 -0
  1238. package/dist/routes/sql.js.map +1 -0
  1239. package/dist/routes/strategyAdminRoutes.d.ts +3 -0
  1240. package/dist/routes/strategyAdminRoutes.d.ts.map +1 -0
  1241. package/dist/routes/strategyAdminRoutes.js +65 -0
  1242. package/dist/routes/strategyAdminRoutes.js.map +1 -0
  1243. package/dist/routes/templateAnalysisRoutes.d.ts +3 -0
  1244. package/dist/routes/templateAnalysisRoutes.d.ts.map +1 -0
  1245. package/dist/routes/templateAnalysisRoutes.js +173 -0
  1246. package/dist/routes/templateAnalysisRoutes.js.map +1 -0
  1247. package/dist/routes/trace.d.ts +3 -0
  1248. package/dist/routes/trace.d.ts.map +1 -0
  1249. package/dist/routes/trace.js +48 -0
  1250. package/dist/routes/trace.js.map +1 -0
  1251. package/dist/routes/traceProcessorProxyRoutes.d.ts +6 -0
  1252. package/dist/routes/traceProcessorProxyRoutes.d.ts.map +1 -0
  1253. package/dist/routes/traceProcessorProxyRoutes.js +607 -0
  1254. package/dist/routes/traceProcessorProxyRoutes.js.map +1 -0
  1255. package/dist/routes/traceProcessorRoutes.d.ts +3 -0
  1256. package/dist/routes/traceProcessorRoutes.d.ts.map +1 -0
  1257. package/dist/routes/traceProcessorRoutes.js +40 -0
  1258. package/dist/routes/traceProcessorRoutes.js.map +1 -0
  1259. package/dist/routes/workspaceWindowRoutes.d.ts +3 -0
  1260. package/dist/routes/workspaceWindowRoutes.d.ts.map +1 -0
  1261. package/dist/routes/workspaceWindowRoutes.js +146 -0
  1262. package/dist/routes/workspaceWindowRoutes.js.map +1 -0
  1263. package/dist/runtimePaths.d.ts +3 -0
  1264. package/dist/runtimePaths.d.ts.map +1 -0
  1265. package/dist/runtimePaths.js +20 -0
  1266. package/dist/runtimePaths.js.map +1 -0
  1267. package/dist/scripts/analyzeComprehensiveTrace.d.ts +2 -0
  1268. package/dist/scripts/analyzeComprehensiveTrace.d.ts.map +1 -0
  1269. package/dist/scripts/analyzeComprehensiveTrace.js +210 -0
  1270. package/dist/scripts/analyzeComprehensiveTrace.js.map +1 -0
  1271. package/dist/scripts/analyzeUserTrace.d.ts +2 -0
  1272. package/dist/scripts/analyzeUserTrace.d.ts.map +1 -0
  1273. package/dist/scripts/analyzeUserTrace.js +170 -0
  1274. package/dist/scripts/analyzeUserTrace.js.map +1 -0
  1275. package/dist/scripts/auditTraceProcessorRssMatrix.d.ts +49 -0
  1276. package/dist/scripts/auditTraceProcessorRssMatrix.d.ts.map +1 -0
  1277. package/dist/scripts/auditTraceProcessorRssMatrix.js +390 -0
  1278. package/dist/scripts/auditTraceProcessorRssMatrix.js.map +1 -0
  1279. package/dist/scripts/benchmarkTraceProcessorRss.d.ts +96 -0
  1280. package/dist/scripts/benchmarkTraceProcessorRss.d.ts.map +1 -0
  1281. package/dist/scripts/benchmarkTraceProcessorRss.js +569 -0
  1282. package/dist/scripts/benchmarkTraceProcessorRss.js.map +1 -0
  1283. package/dist/scripts/captureContextEngineeringBaseline.d.ts +2 -0
  1284. package/dist/scripts/captureContextEngineeringBaseline.d.ts.map +1 -0
  1285. package/dist/scripts/captureContextEngineeringBaseline.js +271 -0
  1286. package/dist/scripts/captureContextEngineeringBaseline.js.map +1 -0
  1287. package/dist/scripts/checkTables.d.ts +2 -0
  1288. package/dist/scripts/checkTables.d.ts.map +1 -0
  1289. package/dist/scripts/checkTables.js +22 -0
  1290. package/dist/scripts/checkTables.js.map +1 -0
  1291. package/dist/scripts/diagnoseJankDetection.d.ts +2 -0
  1292. package/dist/scripts/diagnoseJankDetection.d.ts.map +1 -0
  1293. package/dist/scripts/diagnoseJankDetection.js +314 -0
  1294. package/dist/scripts/diagnoseJankDetection.js.map +1 -0
  1295. package/dist/scripts/diagnoseTrace.d.ts +2 -0
  1296. package/dist/scripts/diagnoseTrace.d.ts.map +1 -0
  1297. package/dist/scripts/diagnoseTrace.js +74 -0
  1298. package/dist/scripts/diagnoseTrace.js.map +1 -0
  1299. package/dist/scripts/enterpriseAcceptanceLoadTest.d.ts +193 -0
  1300. package/dist/scripts/enterpriseAcceptanceLoadTest.d.ts.map +1 -0
  1301. package/dist/scripts/enterpriseAcceptanceLoadTest.js +912 -0
  1302. package/dist/scripts/enterpriseAcceptanceLoadTest.js.map +1 -0
  1303. package/dist/scripts/enterpriseMigrationSnapshot.d.ts +3 -0
  1304. package/dist/scripts/enterpriseMigrationSnapshot.d.ts.map +1 -0
  1305. package/dist/scripts/enterpriseMigrationSnapshot.js +57 -0
  1306. package/dist/scripts/enterpriseMigrationSnapshot.js.map +1 -0
  1307. package/dist/scripts/enterpriseReadinessAudit.d.ts +30 -0
  1308. package/dist/scripts/enterpriseReadinessAudit.d.ts.map +1 -0
  1309. package/dist/scripts/enterpriseReadinessAudit.js +743 -0
  1310. package/dist/scripts/enterpriseReadinessAudit.js.map +1 -0
  1311. package/dist/scripts/enterpriseRssBenchmarkMatrix.d.ts +6 -0
  1312. package/dist/scripts/enterpriseRssBenchmarkMatrix.d.ts.map +1 -0
  1313. package/dist/scripts/enterpriseRssBenchmarkMatrix.js +20 -0
  1314. package/dist/scripts/enterpriseRssBenchmarkMatrix.js.map +1 -0
  1315. package/dist/scripts/enterpriseRuntimeIsolationChecklist.d.ts +22 -0
  1316. package/dist/scripts/enterpriseRuntimeIsolationChecklist.d.ts.map +1 -0
  1317. package/dist/scripts/enterpriseRuntimeIsolationChecklist.js +374 -0
  1318. package/dist/scripts/enterpriseRuntimeIsolationChecklist.js.map +1 -0
  1319. package/dist/scripts/enterpriseSecurityAuditChecklist.d.ts +20 -0
  1320. package/dist/scripts/enterpriseSecurityAuditChecklist.d.ts.map +1 -0
  1321. package/dist/scripts/enterpriseSecurityAuditChecklist.js +113 -0
  1322. package/dist/scripts/enterpriseSecurityAuditChecklist.js.map +1 -0
  1323. package/dist/scripts/probeStdlibSchema.d.ts +2 -0
  1324. package/dist/scripts/probeStdlibSchema.d.ts.map +1 -0
  1325. package/dist/scripts/probeStdlibSchema.js +209 -0
  1326. package/dist/scripts/probeStdlibSchema.js.map +1 -0
  1327. package/dist/scripts/runAgentTest.d.ts +2 -0
  1328. package/dist/scripts/runAgentTest.d.ts.map +1 -0
  1329. package/dist/scripts/runAgentTest.js +149 -0
  1330. package/dist/scripts/runAgentTest.js.map +1 -0
  1331. package/dist/scripts/runScrollingTest.d.ts +2 -0
  1332. package/dist/scripts/runScrollingTest.d.ts.map +1 -0
  1333. package/dist/scripts/runScrollingTest.js +199 -0
  1334. package/dist/scripts/runScrollingTest.js.map +1 -0
  1335. package/dist/scripts/runScrollingTestRealData.d.ts +2 -0
  1336. package/dist/scripts/runScrollingTestRealData.d.ts.map +1 -0
  1337. package/dist/scripts/runScrollingTestRealData.js +121 -0
  1338. package/dist/scripts/runScrollingTestRealData.js.map +1 -0
  1339. package/dist/scripts/testAndroidTrace.d.ts +2 -0
  1340. package/dist/scripts/testAndroidTrace.d.ts.map +1 -0
  1341. package/dist/scripts/testAndroidTrace.js +21 -0
  1342. package/dist/scripts/testAndroidTrace.js.map +1 -0
  1343. package/dist/scripts/testCrossDomainExpert.d.ts +2 -0
  1344. package/dist/scripts/testCrossDomainExpert.d.ts.map +1 -0
  1345. package/dist/scripts/testCrossDomainExpert.js +288 -0
  1346. package/dist/scripts/testCrossDomainExpert.js.map +1 -0
  1347. package/dist/scripts/testCrossDomainIntegration.d.ts +2 -0
  1348. package/dist/scripts/testCrossDomainIntegration.d.ts.map +1 -0
  1349. package/dist/scripts/testCrossDomainIntegration.js +282 -0
  1350. package/dist/scripts/testCrossDomainIntegration.js.map +1 -0
  1351. package/dist/scripts/testDeepLayerFix.d.ts +2 -0
  1352. package/dist/scripts/testDeepLayerFix.d.ts.map +1 -0
  1353. package/dist/scripts/testDeepLayerFix.js +137 -0
  1354. package/dist/scripts/testDeepLayerFix.js.map +1 -0
  1355. package/dist/scripts/testHtmlReportGen.d.ts +2 -0
  1356. package/dist/scripts/testHtmlReportGen.d.ts.map +1 -0
  1357. package/dist/scripts/testHtmlReportGen.js +148 -0
  1358. package/dist/scripts/testHtmlReportGen.js.map +1 -0
  1359. package/dist/scripts/verifyAgentSseScrolling.d.ts +2 -0
  1360. package/dist/scripts/verifyAgentSseScrolling.d.ts.map +1 -0
  1361. package/dist/scripts/verifyAgentSseScrolling.js +558 -0
  1362. package/dist/scripts/verifyAgentSseScrolling.js.map +1 -0
  1363. package/dist/scripts/verifyCriticalPathE2E.d.ts +2 -0
  1364. package/dist/scripts/verifyCriticalPathE2E.d.ts.map +1 -0
  1365. package/dist/scripts/verifyCriticalPathE2E.js +171 -0
  1366. package/dist/scripts/verifyCriticalPathE2E.js.map +1 -0
  1367. package/dist/scripts/verifyEnterpriseMultiTenantWindows.d.ts +24 -0
  1368. package/dist/scripts/verifyEnterpriseMultiTenantWindows.d.ts.map +1 -0
  1369. package/dist/scripts/verifyEnterpriseMultiTenantWindows.js +1363 -0
  1370. package/dist/scripts/verifyEnterpriseMultiTenantWindows.js.map +1 -0
  1371. package/dist/services/adb/adbContextDetector.d.ts +3 -0
  1372. package/dist/services/adb/adbContextDetector.d.ts.map +1 -0
  1373. package/dist/services/adb/adbContextDetector.js +151 -0
  1374. package/dist/services/adb/adbContextDetector.js.map +1 -0
  1375. package/dist/services/adb/adbService.d.ts +28 -0
  1376. package/dist/services/adb/adbService.d.ts.map +1 -0
  1377. package/dist/services/adb/adbService.js +238 -0
  1378. package/dist/services/adb/adbService.js.map +1 -0
  1379. package/dist/services/adb/index.d.ts +5 -0
  1380. package/dist/services/adb/index.d.ts.map +1 -0
  1381. package/dist/services/adb/index.js +24 -0
  1382. package/dist/services/adb/index.js.map +1 -0
  1383. package/dist/services/adb/traceDeviceMatcher.d.ts +12 -0
  1384. package/dist/services/adb/traceDeviceMatcher.d.ts.map +1 -0
  1385. package/dist/services/adb/traceDeviceMatcher.js +149 -0
  1386. package/dist/services/adb/traceDeviceMatcher.js.map +1 -0
  1387. package/dist/services/adb/types.d.ts +69 -0
  1388. package/dist/services/adb/types.d.ts.map +1 -0
  1389. package/dist/services/adb/types.js +6 -0
  1390. package/dist/services/adb/types.js.map +1 -0
  1391. package/dist/services/agentEventStore.d.ts +17 -0
  1392. package/dist/services/agentEventStore.d.ts.map +1 -0
  1393. package/dist/services/agentEventStore.js +139 -0
  1394. package/dist/services/agentEventStore.js.map +1 -0
  1395. package/dist/services/agentReportData.d.ts +42 -0
  1396. package/dist/services/agentReportData.d.ts.map +1 -0
  1397. package/dist/services/agentReportData.js +81 -0
  1398. package/dist/services/agentReportData.js.map +1 -0
  1399. package/dist/services/agentResultNormalizer.d.ts +33 -0
  1400. package/dist/services/agentResultNormalizer.d.ts.map +1 -0
  1401. package/dist/services/agentResultNormalizer.js +92 -0
  1402. package/dist/services/agentResultNormalizer.js.map +1 -0
  1403. package/dist/services/analysisResultSnapshotPipeline.d.ts +24 -0
  1404. package/dist/services/analysisResultSnapshotPipeline.d.ts.map +1 -0
  1405. package/dist/services/analysisResultSnapshotPipeline.js +466 -0
  1406. package/dist/services/analysisResultSnapshotPipeline.js.map +1 -0
  1407. package/dist/services/analysisResultSnapshotStore.d.ts +29 -0
  1408. package/dist/services/analysisResultSnapshotStore.d.ts.map +1 -0
  1409. package/dist/services/analysisResultSnapshotStore.js +457 -0
  1410. package/dist/services/analysisResultSnapshotStore.js.map +1 -0
  1411. package/dist/services/analysisResultWindowStateStore.d.ts +37 -0
  1412. package/dist/services/analysisResultWindowStateStore.d.ts.map +1 -0
  1413. package/dist/services/analysisResultWindowStateStore.js +190 -0
  1414. package/dist/services/analysisResultWindowStateStore.js.map +1 -0
  1415. package/dist/services/analysisRunStore.d.ts +38 -0
  1416. package/dist/services/analysisRunStore.d.ts.map +1 -0
  1417. package/dist/services/analysisRunStore.js +195 -0
  1418. package/dist/services/analysisRunStore.js.map +1 -0
  1419. package/dist/services/analysisTemplates/cpuCoreAnalysis.d.ts +70 -0
  1420. package/dist/services/analysisTemplates/cpuCoreAnalysis.d.ts.map +1 -0
  1421. package/dist/services/analysisTemplates/cpuCoreAnalysis.js +277 -0
  1422. package/dist/services/analysisTemplates/cpuCoreAnalysis.js.map +1 -0
  1423. package/dist/services/analysisTemplates/fourQuadrantAnalysis.d.ts +64 -0
  1424. package/dist/services/analysisTemplates/fourQuadrantAnalysis.d.ts.map +1 -0
  1425. package/dist/services/analysisTemplates/fourQuadrantAnalysis.js +288 -0
  1426. package/dist/services/analysisTemplates/fourQuadrantAnalysis.js.map +1 -0
  1427. package/dist/services/analysisTemplates/frameStatsAnalysis.d.ts +77 -0
  1428. package/dist/services/analysisTemplates/frameStatsAnalysis.d.ts.map +1 -0
  1429. package/dist/services/analysisTemplates/frameStatsAnalysis.js +232 -0
  1430. package/dist/services/analysisTemplates/frameStatsAnalysis.js.map +1 -0
  1431. package/dist/services/analysisTemplates/templateManager.d.ts +70 -0
  1432. package/dist/services/analysisTemplates/templateManager.d.ts.map +1 -0
  1433. package/dist/services/analysisTemplates/templateManager.js +293 -0
  1434. package/dist/services/analysisTemplates/templateManager.js.map +1 -0
  1435. package/dist/services/anonymizer.d.ts +61 -0
  1436. package/dist/services/anonymizer.d.ts.map +1 -0
  1437. package/dist/services/anonymizer.js +232 -0
  1438. package/dist/services/anonymizer.js.map +1 -0
  1439. package/dist/services/aospKnowledgeIngester.d.ts +67 -0
  1440. package/dist/services/aospKnowledgeIngester.d.ts.map +1 -0
  1441. package/dist/services/aospKnowledgeIngester.js +171 -0
  1442. package/dist/services/aospKnowledgeIngester.js.map +1 -0
  1443. package/dist/services/artifactCompression.d.ts +52 -0
  1444. package/dist/services/artifactCompression.d.ts.map +1 -0
  1445. package/dist/services/artifactCompression.js +215 -0
  1446. package/dist/services/artifactCompression.js.map +1 -0
  1447. package/dist/services/baselineDiffer.d.ts +85 -0
  1448. package/dist/services/baselineDiffer.d.ts.map +1 -0
  1449. package/dist/services/baselineDiffer.js +287 -0
  1450. package/dist/services/baselineDiffer.js.map +1 -0
  1451. package/dist/services/baselineStore.d.ts +52 -0
  1452. package/dist/services/baselineStore.d.ts.map +1 -0
  1453. package/dist/services/baselineStore.js +224 -0
  1454. package/dist/services/baselineStore.js.map +1 -0
  1455. package/dist/services/binderRootCauseChain.d.ts +38 -0
  1456. package/dist/services/binderRootCauseChain.d.ts.map +1 -0
  1457. package/dist/services/binderRootCauseChain.js +74 -0
  1458. package/dist/services/binderRootCauseChain.js.map +1 -0
  1459. package/dist/services/blogKnowledgeIngester.d.ts +89 -0
  1460. package/dist/services/blogKnowledgeIngester.d.ts.map +1 -0
  1461. package/dist/services/blogKnowledgeIngester.js +192 -0
  1462. package/dist/services/blogKnowledgeIngester.js.map +1 -0
  1463. package/dist/services/caseGraph.d.ts +55 -0
  1464. package/dist/services/caseGraph.d.ts.map +1 -0
  1465. package/dist/services/caseGraph.js +260 -0
  1466. package/dist/services/caseGraph.js.map +1 -0
  1467. package/dist/services/caseLibrary.d.ts +61 -0
  1468. package/dist/services/caseLibrary.d.ts.map +1 -0
  1469. package/dist/services/caseLibrary.js +269 -0
  1470. package/dist/services/caseLibrary.js.map +1 -0
  1471. package/dist/services/ciGateRunStore.d.ts +39 -0
  1472. package/dist/services/ciGateRunStore.d.ts.map +1 -0
  1473. package/dist/services/ciGateRunStore.js +208 -0
  1474. package/dist/services/ciGateRunStore.js.map +1 -0
  1475. package/dist/services/comparisonAiConclusionService.d.ts +23 -0
  1476. package/dist/services/comparisonAiConclusionService.d.ts.map +1 -0
  1477. package/dist/services/comparisonAiConclusionService.js +207 -0
  1478. package/dist/services/comparisonAiConclusionService.js.map +1 -0
  1479. package/dist/services/comparisonAppendixService.d.ts +50 -0
  1480. package/dist/services/comparisonAppendixService.d.ts.map +1 -0
  1481. package/dist/services/comparisonAppendixService.js +276 -0
  1482. package/dist/services/comparisonAppendixService.js.map +1 -0
  1483. package/dist/services/comparisonHtmlReportService.d.ts +20 -0
  1484. package/dist/services/comparisonHtmlReportService.d.ts.map +1 -0
  1485. package/dist/services/comparisonHtmlReportService.js +214 -0
  1486. package/dist/services/comparisonHtmlReportService.js.map +1 -0
  1487. package/dist/services/comparisonMatrixService.d.ts +7 -0
  1488. package/dist/services/comparisonMatrixService.d.ts.map +1 -0
  1489. package/dist/services/comparisonMatrixService.js +211 -0
  1490. package/dist/services/comparisonMatrixService.js.map +1 -0
  1491. package/dist/services/comparisonResultService.d.ts +13 -0
  1492. package/dist/services/comparisonResultService.d.ts.map +1 -0
  1493. package/dist/services/comparisonResultService.js +99 -0
  1494. package/dist/services/comparisonResultService.js.map +1 -0
  1495. package/dist/services/comparisonSignificance.d.ts +3 -0
  1496. package/dist/services/comparisonSignificance.d.ts.map +1 -0
  1497. package/dist/services/comparisonSignificance.js +42 -0
  1498. package/dist/services/comparisonSignificance.js.map +1 -0
  1499. package/dist/services/cpuThermalPmu.d.ts +38 -0
  1500. package/dist/services/cpuThermalPmu.d.ts.map +1 -0
  1501. package/dist/services/cpuThermalPmu.js +141 -0
  1502. package/dist/services/cpuThermalPmu.js.map +1 -0
  1503. package/dist/services/criticalPathAiSummary.d.ts +29 -0
  1504. package/dist/services/criticalPathAiSummary.d.ts.map +1 -0
  1505. package/dist/services/criticalPathAiSummary.js +310 -0
  1506. package/dist/services/criticalPathAiSummary.js.map +1 -0
  1507. package/dist/services/criticalPathAnalyzer.d.ts +108 -0
  1508. package/dist/services/criticalPathAnalyzer.d.ts.map +1 -0
  1509. package/dist/services/criticalPathAnalyzer.js +880 -0
  1510. package/dist/services/criticalPathAnalyzer.js.map +1 -0
  1511. package/dist/services/criticalPathQuantify.d.ts +70 -0
  1512. package/dist/services/criticalPathQuantify.d.ts.map +1 -0
  1513. package/dist/services/criticalPathQuantify.js +214 -0
  1514. package/dist/services/criticalPathQuantify.js.map +1 -0
  1515. package/dist/services/criticalPathSemantics.d.ts +95 -0
  1516. package/dist/services/criticalPathSemantics.d.ts.map +1 -0
  1517. package/dist/services/criticalPathSemantics.js +453 -0
  1518. package/dist/services/criticalPathSemantics.js.map +1 -0
  1519. package/dist/services/criticalPathWakerChain.d.ts +38 -0
  1520. package/dist/services/criticalPathWakerChain.d.ts.map +1 -0
  1521. package/dist/services/criticalPathWakerChain.js +144 -0
  1522. package/dist/services/criticalPathWakerChain.js.map +1 -0
  1523. package/dist/services/domainSkillEvalHarness.d.ts +51 -0
  1524. package/dist/services/domainSkillEvalHarness.d.ts.map +1 -0
  1525. package/dist/services/domainSkillEvalHarness.js +141 -0
  1526. package/dist/services/domainSkillEvalHarness.js.map +1 -0
  1527. package/dist/services/enhancedAIService.d.ts +81 -0
  1528. package/dist/services/enhancedAIService.d.ts.map +1 -0
  1529. package/dist/services/enhancedAIService.js +277 -0
  1530. package/dist/services/enhancedAIService.js.map +1 -0
  1531. package/dist/services/enterpriseAdminControlPlaneService.d.ts +124 -0
  1532. package/dist/services/enterpriseAdminControlPlaneService.d.ts.map +1 -0
  1533. package/dist/services/enterpriseAdminControlPlaneService.js +323 -0
  1534. package/dist/services/enterpriseAdminControlPlaneService.js.map +1 -0
  1535. package/dist/services/enterpriseApiKeyService.d.ts +56 -0
  1536. package/dist/services/enterpriseApiKeyService.d.ts.map +1 -0
  1537. package/dist/services/enterpriseApiKeyService.js +260 -0
  1538. package/dist/services/enterpriseApiKeyService.js.map +1 -0
  1539. package/dist/services/enterpriseAuditService.d.ts +30 -0
  1540. package/dist/services/enterpriseAuditService.d.ts.map +1 -0
  1541. package/dist/services/enterpriseAuditService.js +73 -0
  1542. package/dist/services/enterpriseAuditService.js.map +1 -0
  1543. package/dist/services/enterpriseDb.d.ts +5 -0
  1544. package/dist/services/enterpriseDb.d.ts.map +1 -0
  1545. package/dist/services/enterpriseDb.js +33 -0
  1546. package/dist/services/enterpriseDb.js.map +1 -0
  1547. package/dist/services/enterpriseMigration.d.ts +89 -0
  1548. package/dist/services/enterpriseMigration.d.ts.map +1 -0
  1549. package/dist/services/enterpriseMigration.js +506 -0
  1550. package/dist/services/enterpriseMigration.js.map +1 -0
  1551. package/dist/services/enterpriseOidcClient.d.ts +36 -0
  1552. package/dist/services/enterpriseOidcClient.d.ts.map +1 -0
  1553. package/dist/services/enterpriseOidcClient.js +124 -0
  1554. package/dist/services/enterpriseOidcClient.js.map +1 -0
  1555. package/dist/services/enterpriseQuotaPolicyService.d.ts +37 -0
  1556. package/dist/services/enterpriseQuotaPolicyService.d.ts.map +1 -0
  1557. package/dist/services/enterpriseQuotaPolicyService.js +198 -0
  1558. package/dist/services/enterpriseQuotaPolicyService.js.map +1 -0
  1559. package/dist/services/enterpriseRepository.d.ts +36 -0
  1560. package/dist/services/enterpriseRepository.d.ts.map +1 -0
  1561. package/dist/services/enterpriseRepository.js +208 -0
  1562. package/dist/services/enterpriseRepository.js.map +1 -0
  1563. package/dist/services/enterpriseRuntimeDashboardService.d.ts +114 -0
  1564. package/dist/services/enterpriseRuntimeDashboardService.d.ts.map +1 -0
  1565. package/dist/services/enterpriseRuntimeDashboardService.js +205 -0
  1566. package/dist/services/enterpriseRuntimeDashboardService.js.map +1 -0
  1567. package/dist/services/enterpriseSchema.d.ts +7 -0
  1568. package/dist/services/enterpriseSchema.d.ts.map +1 -0
  1569. package/dist/services/enterpriseSchema.js +688 -0
  1570. package/dist/services/enterpriseSchema.js.map +1 -0
  1571. package/dist/services/enterpriseSsoService.d.ts +99 -0
  1572. package/dist/services/enterpriseSsoService.d.ts.map +1 -0
  1573. package/dist/services/enterpriseSsoService.js +538 -0
  1574. package/dist/services/enterpriseSsoService.js.map +1 -0
  1575. package/dist/services/enterpriseTenantExportService.d.ts +58 -0
  1576. package/dist/services/enterpriseTenantExportService.d.ts.map +1 -0
  1577. package/dist/services/enterpriseTenantExportService.js +339 -0
  1578. package/dist/services/enterpriseTenantExportService.js.map +1 -0
  1579. package/dist/services/enterpriseTenantLifecycleService.d.ts +52 -0
  1580. package/dist/services/enterpriseTenantLifecycleService.d.ts.map +1 -0
  1581. package/dist/services/enterpriseTenantLifecycleService.js +323 -0
  1582. package/dist/services/enterpriseTenantLifecycleService.js.map +1 -0
  1583. package/dist/services/flamegraphAiSummary.d.ts +4 -0
  1584. package/dist/services/flamegraphAiSummary.d.ts.map +1 -0
  1585. package/dist/services/flamegraphAiSummary.js +172 -0
  1586. package/dist/services/flamegraphAiSummary.js.map +1 -0
  1587. package/dist/services/flamegraphAnalyzer.d.ts +14 -0
  1588. package/dist/services/flamegraphAnalyzer.d.ts.map +1 -0
  1589. package/dist/services/flamegraphAnalyzer.js +607 -0
  1590. package/dist/services/flamegraphAnalyzer.js.map +1 -0
  1591. package/dist/services/flamegraphTypes.d.ts +106 -0
  1592. package/dist/services/flamegraphTypes.d.ts.map +1 -0
  1593. package/dist/services/flamegraphTypes.js +6 -0
  1594. package/dist/services/flamegraphTypes.js.map +1 -0
  1595. package/dist/services/gpuSurfaceFlinger.d.ts +27 -0
  1596. package/dist/services/gpuSurfaceFlinger.d.ts.map +1 -0
  1597. package/dist/services/gpuSurfaceFlinger.js +68 -0
  1598. package/dist/services/gpuSurfaceFlinger.js.map +1 -0
  1599. package/dist/services/htmlReportGenerator.d.ts +425 -0
  1600. package/dist/services/htmlReportGenerator.d.ts.map +1 -0
  1601. package/dist/services/htmlReportGenerator.js +5110 -0
  1602. package/dist/services/htmlReportGenerator.js.map +1 -0
  1603. package/dist/services/ioNetworkWakeup.d.ts +27 -0
  1604. package/dist/services/ioNetworkWakeup.d.ts.map +1 -0
  1605. package/dist/services/ioNetworkWakeup.js +68 -0
  1606. package/dist/services/ioNetworkWakeup.js.map +1 -0
  1607. package/dist/services/jankDecisionTree.d.ts +39 -0
  1608. package/dist/services/jankDecisionTree.d.ts.map +1 -0
  1609. package/dist/services/jankDecisionTree.js +230 -0
  1610. package/dist/services/jankDecisionTree.js.map +1 -0
  1611. package/dist/services/legacyApiTelemetry.d.ts +28 -0
  1612. package/dist/services/legacyApiTelemetry.d.ts.map +1 -0
  1613. package/dist/services/legacyApiTelemetry.js +157 -0
  1614. package/dist/services/legacyApiTelemetry.js.map +1 -0
  1615. package/dist/services/memoryRootCause.d.ts +24 -0
  1616. package/dist/services/memoryRootCause.d.ts.map +1 -0
  1617. package/dist/services/memoryRootCause.js +70 -0
  1618. package/dist/services/memoryRootCause.js.map +1 -0
  1619. package/dist/services/multiTraceComparisonStore.d.ts +28 -0
  1620. package/dist/services/multiTraceComparisonStore.d.ts.map +1 -0
  1621. package/dist/services/multiTraceComparisonStore.js +220 -0
  1622. package/dist/services/multiTraceComparisonStore.js.map +1 -0
  1623. package/dist/services/oemSdkKnowledgeIngester.d.ts +62 -0
  1624. package/dist/services/oemSdkKnowledgeIngester.d.ts.map +1 -0
  1625. package/dist/services/oemSdkKnowledgeIngester.js +154 -0
  1626. package/dist/services/oemSdkKnowledgeIngester.js.map +1 -0
  1627. package/dist/services/perfettoLocalService.d.ts +25 -0
  1628. package/dist/services/perfettoLocalService.d.ts.map +1 -0
  1629. package/dist/services/perfettoLocalService.js +213 -0
  1630. package/dist/services/perfettoLocalService.js.map +1 -0
  1631. package/dist/services/perfettoService.d.ts +39 -0
  1632. package/dist/services/perfettoService.d.ts.map +1 -0
  1633. package/dist/services/perfettoService.js +330 -0
  1634. package/dist/services/perfettoService.js.map +1 -0
  1635. package/dist/services/perfettoSqlDocs.d.ts +94 -0
  1636. package/dist/services/perfettoSqlDocs.d.ts.map +1 -0
  1637. package/dist/services/perfettoSqlDocs.js +222 -0
  1638. package/dist/services/perfettoSqlDocs.js.map +1 -0
  1639. package/dist/services/perfettoSqlSkill.d.ts +263 -0
  1640. package/dist/services/perfettoSqlSkill.d.ts.map +1 -0
  1641. package/dist/services/perfettoSqlSkill.js +3731 -0
  1642. package/dist/services/perfettoSqlSkill.js.map +1 -0
  1643. package/dist/services/perfettoStdlibScanner.d.ts +66 -0
  1644. package/dist/services/perfettoStdlibScanner.d.ts.map +1 -0
  1645. package/dist/services/perfettoStdlibScanner.js +345 -0
  1646. package/dist/services/perfettoStdlibScanner.js.map +1 -0
  1647. package/dist/services/persistAgentSession.d.ts +43 -0
  1648. package/dist/services/persistAgentSession.d.ts.map +1 -0
  1649. package/dist/services/persistAgentSession.js +146 -0
  1650. package/dist/services/persistAgentSession.js.map +1 -0
  1651. package/dist/services/pipelineDocService.d.ts +83 -0
  1652. package/dist/services/pipelineDocService.d.ts.map +1 -0
  1653. package/dist/services/pipelineDocService.js +417 -0
  1654. package/dist/services/pipelineDocService.js.map +1 -0
  1655. package/dist/services/pipelineSkillLoader.d.ts +173 -0
  1656. package/dist/services/pipelineSkillLoader.d.ts.map +1 -0
  1657. package/dist/services/pipelineSkillLoader.js +301 -0
  1658. package/dist/services/pipelineSkillLoader.js.map +1 -0
  1659. package/dist/services/portPool.d.ts +85 -0
  1660. package/dist/services/portPool.d.ts.map +1 -0
  1661. package/dist/services/portPool.js +221 -0
  1662. package/dist/services/portPool.js.map +1 -0
  1663. package/dist/services/processIdentity/identityGate.d.ts +27 -0
  1664. package/dist/services/processIdentity/identityGate.d.ts.map +1 -0
  1665. package/dist/services/processIdentity/identityGate.js +284 -0
  1666. package/dist/services/processIdentity/identityGate.js.map +1 -0
  1667. package/dist/services/processIdentity/types.d.ts +49 -0
  1668. package/dist/services/processIdentity/types.d.ts.map +1 -0
  1669. package/dist/services/processIdentity/types.js +16 -0
  1670. package/dist/services/processIdentity/types.js.map +1 -0
  1671. package/dist/services/processRss.d.ts +10 -0
  1672. package/dist/services/processRss.d.ts.map +1 -0
  1673. package/dist/services/processRss.js +78 -0
  1674. package/dist/services/processRss.js.map +1 -0
  1675. package/dist/services/promptTemplateService.d.ts +68 -0
  1676. package/dist/services/promptTemplateService.d.ts.map +1 -0
  1677. package/dist/services/promptTemplateService.js +196 -0
  1678. package/dist/services/promptTemplateService.js.map +1 -0
  1679. package/dist/services/providerManager/connectionTester.d.ts +3 -0
  1680. package/dist/services/providerManager/connectionTester.d.ts.map +1 -0
  1681. package/dist/services/providerManager/connectionTester.js +479 -0
  1682. package/dist/services/providerManager/connectionTester.js.map +1 -0
  1683. package/dist/services/providerManager/envIsolation.d.ts +3 -0
  1684. package/dist/services/providerManager/envIsolation.d.ts.map +1 -0
  1685. package/dist/services/providerManager/envIsolation.js +31 -0
  1686. package/dist/services/providerManager/envIsolation.js.map +1 -0
  1687. package/dist/services/providerManager/index.d.ts +9 -0
  1688. package/dist/services/providerManager/index.d.ts.map +1 -0
  1689. package/dist/services/providerManager/index.js +40 -0
  1690. package/dist/services/providerManager/index.js.map +1 -0
  1691. package/dist/services/providerManager/localSecretStore.d.ts +32 -0
  1692. package/dist/services/providerManager/localSecretStore.d.ts.map +1 -0
  1693. package/dist/services/providerManager/localSecretStore.js +338 -0
  1694. package/dist/services/providerManager/localSecretStore.js.map +1 -0
  1695. package/dist/services/providerManager/providerService.d.ts +31 -0
  1696. package/dist/services/providerManager/providerService.d.ts.map +1 -0
  1697. package/dist/services/providerManager/providerService.js +460 -0
  1698. package/dist/services/providerManager/providerService.js.map +1 -0
  1699. package/dist/services/providerManager/providerSnapshot.d.ts +30 -0
  1700. package/dist/services/providerManager/providerSnapshot.d.ts.map +1 -0
  1701. package/dist/services/providerManager/providerSnapshot.js +224 -0
  1702. package/dist/services/providerManager/providerSnapshot.js.map +1 -0
  1703. package/dist/services/providerManager/providerStore.d.ts +31 -0
  1704. package/dist/services/providerManager/providerStore.d.ts.map +1 -0
  1705. package/dist/services/providerManager/providerStore.js +553 -0
  1706. package/dist/services/providerManager/providerStore.js.map +1 -0
  1707. package/dist/services/providerManager/templates.d.ts +3 -0
  1708. package/dist/services/providerManager/templates.d.ts.map +1 -0
  1709. package/dist/services/providerManager/templates.js +328 -0
  1710. package/dist/services/providerManager/templates.js.map +1 -0
  1711. package/dist/services/providerManager/types.d.ts +119 -0
  1712. package/dist/services/providerManager/types.d.ts.map +1 -0
  1713. package/dist/services/providerManager/types.js +5 -0
  1714. package/dist/services/providerManager/types.js.map +1 -0
  1715. package/dist/services/ragStore.d.ts +60 -0
  1716. package/dist/services/ragStore.d.ts.map +1 -0
  1717. package/dist/services/ragStore.js +297 -0
  1718. package/dist/services/ragStore.js.map +1 -0
  1719. package/dist/services/rbac.d.ts +19 -0
  1720. package/dist/services/rbac.d.ts.map +1 -0
  1721. package/dist/services/rbac.js +153 -0
  1722. package/dist/services/rbac.js.map +1 -0
  1723. package/dist/services/renderingPipelineDetectionSkillGenerator.d.ts +3 -0
  1724. package/dist/services/renderingPipelineDetectionSkillGenerator.d.ts.map +1 -0
  1725. package/dist/services/renderingPipelineDetectionSkillGenerator.js +1120 -0
  1726. package/dist/services/renderingPipelineDetectionSkillGenerator.js.map +1 -0
  1727. package/dist/services/renderingPipelineTeachingService.d.ts +33 -0
  1728. package/dist/services/renderingPipelineTeachingService.d.ts.map +1 -0
  1729. package/dist/services/renderingPipelineTeachingService.js +1312 -0
  1730. package/dist/services/renderingPipelineTeachingService.js.map +1 -0
  1731. package/dist/services/reportCausalMapAssets.d.ts +3 -0
  1732. package/dist/services/reportCausalMapAssets.d.ts.map +1 -0
  1733. package/dist/services/reportCausalMapAssets.js +898 -0
  1734. package/dist/services/reportCausalMapAssets.js.map +1 -0
  1735. package/dist/services/reportGenerator.d.ts +54 -0
  1736. package/dist/services/reportGenerator.d.ts.map +1 -0
  1737. package/dist/services/reportGenerator.js +241 -0
  1738. package/dist/services/reportGenerator.js.map +1 -0
  1739. package/dist/services/resourceOwnership.d.ts +21 -0
  1740. package/dist/services/resourceOwnership.d.ts.map +1 -0
  1741. package/dist/services/resourceOwnership.js +50 -0
  1742. package/dist/services/resourceOwnership.js.map +1 -0
  1743. package/dist/services/resultExportService.d.ts +66 -0
  1744. package/dist/services/resultExportService.d.ts.map +1 -0
  1745. package/dist/services/resultExportService.js +170 -0
  1746. package/dist/services/resultExportService.js.map +1 -0
  1747. package/dist/services/runtimeSnapshotStore.d.ts +19 -0
  1748. package/dist/services/runtimeSnapshotStore.d.ts.map +1 -0
  1749. package/dist/services/runtimeSnapshotStore.js +222 -0
  1750. package/dist/services/runtimeSnapshotStore.js.map +1 -0
  1751. package/dist/services/sceneReport/sceneReportMemoryCache.d.ts +38 -0
  1752. package/dist/services/sceneReport/sceneReportMemoryCache.d.ts.map +1 -0
  1753. package/dist/services/sceneReport/sceneReportMemoryCache.js +55 -0
  1754. package/dist/services/sceneReport/sceneReportMemoryCache.js.map +1 -0
  1755. package/dist/services/sceneReport/sceneReportStore.d.ts +41 -0
  1756. package/dist/services/sceneReport/sceneReportStore.d.ts.map +1 -0
  1757. package/dist/services/sceneReport/sceneReportStore.js +248 -0
  1758. package/dist/services/sceneReport/sceneReportStore.js.map +1 -0
  1759. package/dist/services/scopedKnowledgeStore.d.ts +45 -0
  1760. package/dist/services/scopedKnowledgeStore.d.ts.map +1 -0
  1761. package/dist/services/scopedKnowledgeStore.js +225 -0
  1762. package/dist/services/scopedKnowledgeStore.js.map +1 -0
  1763. package/dist/services/sessionLogger.d.ts +142 -0
  1764. package/dist/services/sessionLogger.d.ts.map +1 -0
  1765. package/dist/services/sessionLogger.js +566 -0
  1766. package/dist/services/sessionLogger.js.map +1 -0
  1767. package/dist/services/sessionPersistenceService.d.ts +190 -0
  1768. package/dist/services/sessionPersistenceService.d.ts.map +1 -0
  1769. package/dist/services/sessionPersistenceService.js +737 -0
  1770. package/dist/services/sessionPersistenceService.js.map +1 -0
  1771. package/dist/services/skillEngine/answerGenerator.d.ts +102 -0
  1772. package/dist/services/skillEngine/answerGenerator.d.ts.map +1 -0
  1773. package/dist/services/skillEngine/answerGenerator.js +508 -0
  1774. package/dist/services/skillEngine/answerGenerator.js.map +1 -0
  1775. package/dist/services/skillEngine/displayContractValidator.d.ts +26 -0
  1776. package/dist/services/skillEngine/displayContractValidator.d.ts.map +1 -0
  1777. package/dist/services/skillEngine/displayContractValidator.js +232 -0
  1778. package/dist/services/skillEngine/displayContractValidator.js.map +1 -0
  1779. package/dist/services/skillEngine/eventCollector.d.ts +96 -0
  1780. package/dist/services/skillEngine/eventCollector.d.ts.map +1 -0
  1781. package/dist/services/skillEngine/eventCollector.js +226 -0
  1782. package/dist/services/skillEngine/eventCollector.js.map +1 -0
  1783. package/dist/services/skillEngine/expressionUtils.d.ts +25 -0
  1784. package/dist/services/skillEngine/expressionUtils.d.ts.map +1 -0
  1785. package/dist/services/skillEngine/expressionUtils.js +66 -0
  1786. package/dist/services/skillEngine/expressionUtils.js.map +1 -0
  1787. package/dist/services/skillEngine/index.d.ts +25 -0
  1788. package/dist/services/skillEngine/index.d.ts.map +1 -0
  1789. package/dist/services/skillEngine/index.js +98 -0
  1790. package/dist/services/skillEngine/index.js.map +1 -0
  1791. package/dist/services/skillEngine/skillAnalysisAdapter.d.ts +149 -0
  1792. package/dist/services/skillEngine/skillAnalysisAdapter.d.ts.map +1 -0
  1793. package/dist/services/skillEngine/skillAnalysisAdapter.js +752 -0
  1794. package/dist/services/skillEngine/skillAnalysisAdapter.js.map +1 -0
  1795. package/dist/services/skillEngine/skillExecutor.d.ts +371 -0
  1796. package/dist/services/skillEngine/skillExecutor.d.ts.map +1 -0
  1797. package/dist/services/skillEngine/skillExecutor.js +4129 -0
  1798. package/dist/services/skillEngine/skillExecutor.js.map +1 -0
  1799. package/dist/services/skillEngine/skillLoader.d.ts +163 -0
  1800. package/dist/services/skillEngine/skillLoader.d.ts.map +1 -0
  1801. package/dist/services/skillEngine/skillLoader.js +840 -0
  1802. package/dist/services/skillEngine/skillLoader.js.map +1 -0
  1803. package/dist/services/skillEngine/skillValidator.d.ts +53 -0
  1804. package/dist/services/skillEngine/skillValidator.d.ts.map +1 -0
  1805. package/dist/services/skillEngine/skillValidator.js +274 -0
  1806. package/dist/services/skillEngine/skillValidator.js.map +1 -0
  1807. package/dist/services/skillEngine/smartSummaryGenerator.d.ts +70 -0
  1808. package/dist/services/skillEngine/smartSummaryGenerator.d.ts.map +1 -0
  1809. package/dist/services/skillEngine/smartSummaryGenerator.js +324 -0
  1810. package/dist/services/skillEngine/smartSummaryGenerator.js.map +1 -0
  1811. package/dist/services/skillEngine/types.d.ts +584 -0
  1812. package/dist/services/skillEngine/types.d.ts.map +1 -0
  1813. package/dist/services/skillEngine/types.js +6 -0
  1814. package/dist/services/skillEngine/types.js.map +1 -0
  1815. package/dist/services/smartperfettoSqlPackage.d.ts +11 -0
  1816. package/dist/services/smartperfettoSqlPackage.d.ts.map +1 -0
  1817. package/dist/services/smartperfettoSqlPackage.js +168 -0
  1818. package/dist/services/smartperfettoSqlPackage.js.map +1 -0
  1819. package/dist/services/sqlGuardrailAnalyzer.d.ts +24 -0
  1820. package/dist/services/sqlGuardrailAnalyzer.d.ts.map +1 -0
  1821. package/dist/services/sqlGuardrailAnalyzer.js +362 -0
  1822. package/dist/services/sqlGuardrailAnalyzer.js.map +1 -0
  1823. package/dist/services/sqlKnowledgeBase.d.ts +236 -0
  1824. package/dist/services/sqlKnowledgeBase.d.ts.map +1 -0
  1825. package/dist/services/sqlKnowledgeBase.js +1109 -0
  1826. package/dist/services/sqlKnowledgeBase.js.map +1 -0
  1827. package/dist/services/sqlStdlibDependencyAnalyzer.d.ts +26 -0
  1828. package/dist/services/sqlStdlibDependencyAnalyzer.d.ts.map +1 -0
  1829. package/dist/services/sqlStdlibDependencyAnalyzer.js +486 -0
  1830. package/dist/services/sqlStdlibDependencyAnalyzer.js.map +1 -0
  1831. package/dist/services/sqlTemplateEngine.d.ts +134 -0
  1832. package/dist/services/sqlTemplateEngine.d.ts.map +1 -0
  1833. package/dist/services/sqlTemplateEngine.js +430 -0
  1834. package/dist/services/sqlTemplateEngine.js.map +1 -0
  1835. package/dist/services/sqlValidator.d.ts +21 -0
  1836. package/dist/services/sqlValidator.d.ts.map +1 -0
  1837. package/dist/services/sqlValidator.js +175 -0
  1838. package/dist/services/sqlValidator.js.map +1 -0
  1839. package/dist/services/standardMetricBackfillService.d.ts +23 -0
  1840. package/dist/services/standardMetricBackfillService.d.ts.map +1 -0
  1841. package/dist/services/standardMetricBackfillService.js +196 -0
  1842. package/dist/services/standardMetricBackfillService.js.map +1 -0
  1843. package/dist/services/startupAnrMethodGraph.d.ts +20 -0
  1844. package/dist/services/startupAnrMethodGraph.d.ts.map +1 -0
  1845. package/dist/services/startupAnrMethodGraph.js +70 -0
  1846. package/dist/services/startupAnrMethodGraph.js.map +1 -0
  1847. package/dist/services/stdlibSkillCoverage.d.ts +23 -0
  1848. package/dist/services/stdlibSkillCoverage.d.ts.map +1 -0
  1849. package/dist/services/stdlibSkillCoverage.js +289 -0
  1850. package/dist/services/stdlibSkillCoverage.js.map +1 -0
  1851. package/dist/services/threadSchedContext.d.ts +49 -0
  1852. package/dist/services/threadSchedContext.d.ts.map +1 -0
  1853. package/dist/services/threadSchedContext.js +84 -0
  1854. package/dist/services/threadSchedContext.js.map +1 -0
  1855. package/dist/services/timelineBinning.d.ts +44 -0
  1856. package/dist/services/timelineBinning.d.ts.map +1 -0
  1857. package/dist/services/timelineBinning.js +150 -0
  1858. package/dist/services/timelineBinning.js.map +1 -0
  1859. package/dist/services/traceConfigGenerator.d.ts +36 -0
  1860. package/dist/services/traceConfigGenerator.d.ts.map +1 -0
  1861. package/dist/services/traceConfigGenerator.js +110 -0
  1862. package/dist/services/traceConfigGenerator.js.map +1 -0
  1863. package/dist/services/traceFormatDetector.d.ts +39 -0
  1864. package/dist/services/traceFormatDetector.d.ts.map +1 -0
  1865. package/dist/services/traceFormatDetector.js +287 -0
  1866. package/dist/services/traceFormatDetector.js.map +1 -0
  1867. package/dist/services/traceMetadataStore.d.ts +32 -0
  1868. package/dist/services/traceMetadataStore.d.ts.map +1 -0
  1869. package/dist/services/traceMetadataStore.js +375 -0
  1870. package/dist/services/traceMetadataStore.js.map +1 -0
  1871. package/dist/services/traceProcessorConnectionModel.d.ts +32 -0
  1872. package/dist/services/traceProcessorConnectionModel.d.ts.map +1 -0
  1873. package/dist/services/traceProcessorConnectionModel.js +38 -0
  1874. package/dist/services/traceProcessorConnectionModel.js.map +1 -0
  1875. package/dist/services/traceProcessorHttpRpcClient.d.ts +22 -0
  1876. package/dist/services/traceProcessorHttpRpcClient.d.ts.map +1 -0
  1877. package/dist/services/traceProcessorHttpRpcClient.js +89 -0
  1878. package/dist/services/traceProcessorHttpRpcClient.js.map +1 -0
  1879. package/dist/services/traceProcessorLeaseModeDecision.d.ts +52 -0
  1880. package/dist/services/traceProcessorLeaseModeDecision.d.ts.map +1 -0
  1881. package/dist/services/traceProcessorLeaseModeDecision.js +150 -0
  1882. package/dist/services/traceProcessorLeaseModeDecision.js.map +1 -0
  1883. package/dist/services/traceProcessorLeaseStore.d.ts +88 -0
  1884. package/dist/services/traceProcessorLeaseStore.d.ts.map +1 -0
  1885. package/dist/services/traceProcessorLeaseStore.js +463 -0
  1886. package/dist/services/traceProcessorLeaseStore.js.map +1 -0
  1887. package/dist/services/traceProcessorProtobuf.d.ts +56 -0
  1888. package/dist/services/traceProcessorProtobuf.d.ts.map +1 -0
  1889. package/dist/services/traceProcessorProtobuf.js +442 -0
  1890. package/dist/services/traceProcessorProtobuf.js.map +1 -0
  1891. package/dist/services/traceProcessorRamBudget.d.ts +55 -0
  1892. package/dist/services/traceProcessorRamBudget.d.ts.map +1 -0
  1893. package/dist/services/traceProcessorRamBudget.js +140 -0
  1894. package/dist/services/traceProcessorRamBudget.js.map +1 -0
  1895. package/dist/services/traceProcessorService.d.ts +223 -0
  1896. package/dist/services/traceProcessorService.d.ts.map +1 -0
  1897. package/dist/services/traceProcessorService.js +838 -0
  1898. package/dist/services/traceProcessorService.js.map +1 -0
  1899. package/dist/services/traceProcessorSqlWorker.d.ts +49 -0
  1900. package/dist/services/traceProcessorSqlWorker.d.ts.map +1 -0
  1901. package/dist/services/traceProcessorSqlWorker.js +218 -0
  1902. package/dist/services/traceProcessorSqlWorker.js.map +1 -0
  1903. package/dist/services/traceProcessorSqlWorkerThread.d.ts +2 -0
  1904. package/dist/services/traceProcessorSqlWorkerThread.d.ts.map +1 -0
  1905. package/dist/services/traceProcessorSqlWorkerThread.js +35 -0
  1906. package/dist/services/traceProcessorSqlWorkerThread.js.map +1 -0
  1907. package/dist/services/traceSummaryV2.d.ts +47 -0
  1908. package/dist/services/traceSummaryV2.d.ts.map +1 -0
  1909. package/dist/services/traceSummaryV2.js +241 -0
  1910. package/dist/services/traceSummaryV2.js.map +1 -0
  1911. package/dist/services/traceUploadLimit.d.ts +3 -0
  1912. package/dist/services/traceUploadLimit.d.ts.map +1 -0
  1913. package/dist/services/traceUploadLimit.js +24 -0
  1914. package/dist/services/traceUploadLimit.js.map +1 -0
  1915. package/dist/services/workingTraceProcessor.d.ts +226 -0
  1916. package/dist/services/workingTraceProcessor.d.ts.map +1 -0
  1917. package/dist/services/workingTraceProcessor.js +1093 -0
  1918. package/dist/services/workingTraceProcessor.js.map +1 -0
  1919. package/dist/trace-processor-pin.env +39 -0
  1920. package/dist/types/analysis.d.ts +511 -0
  1921. package/dist/types/analysis.d.ts.map +1 -0
  1922. package/dist/types/analysis.js +112 -0
  1923. package/dist/types/analysis.js.map +1 -0
  1924. package/dist/types/ciGateContracts.d.ts +63 -0
  1925. package/dist/types/ciGateContracts.d.ts.map +1 -0
  1926. package/dist/types/ciGateContracts.js +6 -0
  1927. package/dist/types/ciGateContracts.js.map +1 -0
  1928. package/dist/types/dataContract.d.ts +624 -0
  1929. package/dist/types/dataContract.d.ts.map +1 -0
  1930. package/dist/types/dataContract.js +775 -0
  1931. package/dist/types/dataContract.js.map +1 -0
  1932. package/dist/types/index.d.ts +40 -0
  1933. package/dist/types/index.d.ts.map +1 -0
  1934. package/dist/types/index.js +21 -0
  1935. package/dist/types/index.js.map +1 -0
  1936. package/dist/types/multiTraceComparison.d.ts +215 -0
  1937. package/dist/types/multiTraceComparison.d.ts.map +1 -0
  1938. package/dist/types/multiTraceComparison.js +33 -0
  1939. package/dist/types/multiTraceComparison.js.map +1 -0
  1940. package/dist/types/perfettoSql.d.ts +596 -0
  1941. package/dist/types/perfettoSql.d.ts.map +1 -0
  1942. package/dist/types/perfettoSql.js +28 -0
  1943. package/dist/types/perfettoSql.js.map +1 -0
  1944. package/dist/types/sparkContracts.d.ts +1642 -0
  1945. package/dist/types/sparkContracts.d.ts.map +1 -0
  1946. package/dist/types/sparkContracts.js +25 -0
  1947. package/dist/types/sparkContracts.js.map +1 -0
  1948. package/dist/types/teaching.types.d.ts +395 -0
  1949. package/dist/types/teaching.types.d.ts.map +1 -0
  1950. package/dist/types/teaching.types.js +300 -0
  1951. package/dist/types/teaching.types.js.map +1 -0
  1952. package/dist/utils/analysisNarrative.d.ts +24 -0
  1953. package/dist/utils/analysisNarrative.d.ts.map +1 -0
  1954. package/dist/utils/analysisNarrative.js +101 -0
  1955. package/dist/utils/analysisNarrative.js.map +1 -0
  1956. package/dist/utils/atomicFileWriter.d.ts +5 -0
  1957. package/dist/utils/atomicFileWriter.d.ts.map +1 -0
  1958. package/dist/utils/atomicFileWriter.js +90 -0
  1959. package/dist/utils/atomicFileWriter.js.map +1 -0
  1960. package/dist/utils/epipeGuard.d.ts +10 -0
  1961. package/dist/utils/epipeGuard.d.ts.map +1 -0
  1962. package/dist/utils/epipeGuard.js +40 -0
  1963. package/dist/utils/epipeGuard.js.map +1 -0
  1964. package/dist/utils/httpValue.d.ts +2 -0
  1965. package/dist/utils/httpValue.d.ts.map +1 -0
  1966. package/dist/utils/httpValue.js +24 -0
  1967. package/dist/utils/httpValue.js.map +1 -0
  1968. package/dist/utils/llmJson.d.ts +33 -0
  1969. package/dist/utils/llmJson.d.ts.map +1 -0
  1970. package/dist/utils/llmJson.js +148 -0
  1971. package/dist/utils/llmJson.js.map +1 -0
  1972. package/dist/utils/llmPrivacy.d.ts +15 -0
  1973. package/dist/utils/llmPrivacy.d.ts.map +1 -0
  1974. package/dist/utils/llmPrivacy.js +126 -0
  1975. package/dist/utils/llmPrivacy.js.map +1 -0
  1976. package/dist/utils/logger.d.ts +24 -0
  1977. package/dist/utils/logger.d.ts.map +1 -0
  1978. package/dist/utils/logger.js +68 -0
  1979. package/dist/utils/logger.js.map +1 -0
  1980. package/dist/utils/traceProcessorRowUtils.d.ts +11 -0
  1981. package/dist/utils/traceProcessorRowUtils.d.ts.map +1 -0
  1982. package/dist/utils/traceProcessorRowUtils.js +64 -0
  1983. package/dist/utils/traceProcessorRowUtils.js.map +1 -0
  1984. package/dist/utils/uuid.d.ts +3 -0
  1985. package/dist/utils/uuid.d.ts.map +1 -0
  1986. package/dist/utils/uuid.js +7 -0
  1987. package/dist/utils/uuid.js.map +1 -0
  1988. package/dist/version.d.ts +2 -0
  1989. package/dist/version.d.ts.map +1 -0
  1990. package/dist/version.js +53 -0
  1991. package/dist/version.js.map +1 -0
  1992. package/package.json +128 -0
  1993. package/prebuilts/trace_processor/README.md +20 -0
  1994. package/prebuilts/trace_processor/darwin-arm64/trace_processor_shell +0 -0
  1995. package/prebuilts/trace_processor/linux-x64/trace_processor_shell +0 -0
  1996. package/prebuilts/trace_processor/win32-x64/trace_processor_shell.exe +0 -0
  1997. package/skills/README.md +686 -0
  1998. package/skills/_template/README.md +43 -0
  1999. package/skills/_template/atomic_A_template.skill.yaml +79 -0
  2000. package/skills/_template/atomic_B_template.skill.yaml +61 -0
  2001. package/skills/_template/atomic_S_template.skill.yaml +92 -0
  2002. package/skills/_template/composite_S_template.skill.yaml +198 -0
  2003. package/skills/_template/vendor_override_template.yaml +72 -0
  2004. package/skills/atomic/android_bitmap_memory_per_process.skill.yaml +203 -0
  2005. package/skills/atomic/android_dvfs_counter_stats.skill.yaml +60 -0
  2006. package/skills/atomic/android_gpu_work_period_track.skill.yaml +55 -0
  2007. package/skills/atomic/android_heap_graph_summary.skill.yaml +232 -0
  2008. package/skills/atomic/android_job_scheduler_events.skill.yaml +58 -0
  2009. package/skills/atomic/android_kernel_wakelock_summary.skill.yaml +57 -0
  2010. package/skills/atomic/anr_context_in_range.skill.yaml +99 -0
  2011. package/skills/atomic/anr_main_thread_blocking.skill.yaml +513 -0
  2012. package/skills/atomic/app_frame_production.skill.yaml +147 -0
  2013. package/skills/atomic/app_lifecycle_in_range.skill.yaml +142 -0
  2014. package/skills/atomic/app_process_starts_summary.skill.yaml +75 -0
  2015. package/skills/atomic/battery_charge_timeline.skill.yaml +72 -0
  2016. package/skills/atomic/battery_doze_state_timeline.skill.yaml +83 -0
  2017. package/skills/atomic/binder_blocking_in_range.skill.yaml +99 -0
  2018. package/skills/atomic/binder_in_range.skill.yaml +86 -0
  2019. package/skills/atomic/binder_root_cause.skill.yaml +191 -0
  2020. package/skills/atomic/binder_storm_detection.skill.yaml +394 -0
  2021. package/skills/atomic/blocking_chain_analysis.skill.yaml +316 -0
  2022. package/skills/atomic/buffer_transaction_lifecycle.skill.yaml +256 -0
  2023. package/skills/atomic/cache_miss_impact.skill.yaml +115 -0
  2024. package/skills/atomic/chrome_scroll_jank_frame_timeline.skill.yaml +337 -0
  2025. package/skills/atomic/compose_recomposition_hotspot.skill.yaml +403 -0
  2026. package/skills/atomic/consumer_jank_detection.skill.yaml +556 -0
  2027. package/skills/atomic/cpu_cluster_load_in_range.skill.yaml +138 -0
  2028. package/skills/atomic/cpu_cluster_mapping_view.skill.yaml +47 -0
  2029. package/skills/atomic/cpu_freq_timeline.skill.yaml +143 -0
  2030. package/skills/atomic/cpu_idle_analysis.skill.yaml +101 -0
  2031. package/skills/atomic/cpu_idle_state_residency.skill.yaml +54 -0
  2032. package/skills/atomic/cpu_load_in_range.skill.yaml +145 -0
  2033. package/skills/atomic/cpu_process_utilization_period.skill.yaml +51 -0
  2034. package/skills/atomic/cpu_slice_analysis.skill.yaml +118 -0
  2035. package/skills/atomic/cpu_thread_utilization_period.skill.yaml +68 -0
  2036. package/skills/atomic/cpu_throttling_in_range.skill.yaml +131 -0
  2037. package/skills/atomic/cpu_time_per_frame.skill.yaml +59 -0
  2038. package/skills/atomic/cpu_topology_detection.skill.yaml +233 -0
  2039. package/skills/atomic/cpu_topology_view.skill.yaml +272 -0
  2040. package/skills/atomic/cpu_utilization_per_period.skill.yaml +55 -0
  2041. package/skills/atomic/device_state_snapshot.skill.yaml +171 -0
  2042. package/skills/atomic/device_state_timeline.skill.yaml +308 -0
  2043. package/skills/atomic/fence_wait_decomposition.skill.yaml +314 -0
  2044. package/skills/atomic/fpsgo_analysis.skill.yaml +80 -0
  2045. package/skills/atomic/frame_blocking_calls.skill.yaml +215 -0
  2046. package/skills/atomic/frame_overrun_summary.skill.yaml +68 -0
  2047. package/skills/atomic/frame_pipeline_variance.skill.yaml +124 -0
  2048. package/skills/atomic/frame_production_gap.skill.yaml +337 -0
  2049. package/skills/atomic/frame_ui_time_breakdown.skill.yaml +58 -0
  2050. package/skills/atomic/futex_wait_distribution.skill.yaml +117 -0
  2051. package/skills/atomic/game_fps_analysis.skill.yaml +385 -0
  2052. package/skills/atomic/game_main_loop_jank.skill.yaml +309 -0
  2053. package/skills/atomic/gc_events_in_range.skill.yaml +118 -0
  2054. package/skills/atomic/gl_standalone_swap_jank.skill.yaml +259 -0
  2055. package/skills/atomic/gpu_freq_in_range.skill.yaml +99 -0
  2056. package/skills/atomic/gpu_frequency_analysis.skill.yaml +94 -0
  2057. package/skills/atomic/gpu_metrics.skill.yaml +411 -0
  2058. package/skills/atomic/gpu_power_state_analysis.skill.yaml +117 -0
  2059. package/skills/atomic/gpu_render_in_range.skill.yaml +104 -0
  2060. package/skills/atomic/input_events_in_range.skill.yaml +130 -0
  2061. package/skills/atomic/input_to_frame_latency.skill.yaml +436 -0
  2062. package/skills/atomic/linux_irq_summary.skill.yaml +66 -0
  2063. package/skills/atomic/linux_perf_counter_hotspots.skill.yaml +108 -0
  2064. package/skills/atomic/linux_process_rss_swap_timeline.skill.yaml +96 -0
  2065. package/skills/atomic/linux_runqueue_depth_timeline.skill.yaml +132 -0
  2066. package/skills/atomic/linux_sched_latency_distribution.skill.yaml +130 -0
  2067. package/skills/atomic/lmk_kill_attribution.skill.yaml +72 -0
  2068. package/skills/atomic/lock_contention_in_range.skill.yaml +402 -0
  2069. package/skills/atomic/logcat_analysis.skill.yaml +85 -0
  2070. package/skills/atomic/main_thread_file_io_in_range.skill.yaml +116 -0
  2071. package/skills/atomic/main_thread_sched_latency_in_range.skill.yaml +91 -0
  2072. package/skills/atomic/main_thread_slices_in_range.skill.yaml +129 -0
  2073. package/skills/atomic/main_thread_states_in_range.skill.yaml +105 -0
  2074. package/skills/atomic/mali_gpu_power_state.skill.yaml +54 -0
  2075. package/skills/atomic/media_codec_activity.skill.yaml +236 -0
  2076. package/skills/atomic/memory_growth_detector.skill.yaml +146 -0
  2077. package/skills/atomic/memory_pressure_in_range.skill.yaml +382 -0
  2078. package/skills/atomic/memory_rss_high_watermark.skill.yaml +62 -0
  2079. package/skills/atomic/native_heap_breakdown.skill.yaml +80 -0
  2080. package/skills/atomic/oom_adjuster_score_timeline.skill.yaml +77 -0
  2081. package/skills/atomic/page_fault_in_range.skill.yaml +113 -0
  2082. package/skills/atomic/pipeline_4feature_scoring.skill.yaml +299 -0
  2083. package/skills/atomic/pipeline_key_slices_overlay.skill.yaml +108 -0
  2084. package/skills/atomic/present_fence_timing.skill.yaml +156 -0
  2085. package/skills/atomic/process_identity_resolver.skill.yaml +503 -0
  2086. package/skills/atomic/render_pipeline_latency.skill.yaml +120 -0
  2087. package/skills/atomic/render_thread_slices.skill.yaml +107 -0
  2088. package/skills/atomic/rendering_pipeline_detection.skill.yaml +770 -0
  2089. package/skills/atomic/rn_bridge_to_frame_jank.skill.yaml +209 -0
  2090. package/skills/atomic/rn_fabric_render_jank.skill.yaml +213 -0
  2091. package/skills/atomic/sched_latency_in_range.skill.yaml +94 -0
  2092. package/skills/atomic/scheduling_analysis.skill.yaml +103 -0
  2093. package/skills/atomic/scroll_response_latency.skill.yaml +131 -0
  2094. package/skills/atomic/sf_composition_in_range.skill.yaml +99 -0
  2095. package/skills/atomic/sf_frame_consumption.skill.yaml +133 -0
  2096. package/skills/atomic/sf_layer_count_in_range.skill.yaml +155 -0
  2097. package/skills/atomic/startup_binder_in_range.skill.yaml +106 -0
  2098. package/skills/atomic/startup_binder_pool_analysis.skill.yaml +115 -0
  2099. package/skills/atomic/startup_breakdown_in_range.skill.yaml +115 -0
  2100. package/skills/atomic/startup_class_loading_in_range.skill.yaml +93 -0
  2101. package/skills/atomic/startup_cpu_placement_timeline.skill.yaml +135 -0
  2102. package/skills/atomic/startup_critical_tasks.skill.yaml +247 -0
  2103. package/skills/atomic/startup_events_in_range.skill.yaml +251 -0
  2104. package/skills/atomic/startup_freq_rampup.skill.yaml +110 -0
  2105. package/skills/atomic/startup_gc_in_range.skill.yaml +97 -0
  2106. package/skills/atomic/startup_hot_slice_states.skill.yaml +116 -0
  2107. package/skills/atomic/startup_jit_analysis.skill.yaml +158 -0
  2108. package/skills/atomic/startup_main_thread_binder_blocking_in_range.skill.yaml +114 -0
  2109. package/skills/atomic/startup_main_thread_file_io_in_range.skill.yaml +117 -0
  2110. package/skills/atomic/startup_main_thread_slices_in_range.skill.yaml +138 -0
  2111. package/skills/atomic/startup_main_thread_states_in_range.skill.yaml +100 -0
  2112. package/skills/atomic/startup_main_thread_sync_binder_in_range.skill.yaml +103 -0
  2113. package/skills/atomic/startup_sched_latency_in_range.skill.yaml +93 -0
  2114. package/skills/atomic/startup_slow_reasons.skill.yaml +625 -0
  2115. package/skills/atomic/startup_thread_blocking_graph.skill.yaml +181 -0
  2116. package/skills/atomic/system_load_in_range.skill.yaml +95 -0
  2117. package/skills/atomic/task_migration_in_range.skill.yaml +115 -0
  2118. package/skills/atomic/textureview_producer_frame_timing.skill.yaml +302 -0
  2119. package/skills/atomic/thermal_predictor.skill.yaml +182 -0
  2120. package/skills/atomic/thread_affinity_violation.skill.yaml +139 -0
  2121. package/skills/atomic/touch_to_display_latency.skill.yaml +130 -0
  2122. package/skills/atomic/util_tracking_analysis.skill.yaml +89 -0
  2123. package/skills/atomic/vrr_detection.skill.yaml +301 -0
  2124. package/skills/atomic/vsync_alignment_in_range.skill.yaml +116 -0
  2125. package/skills/atomic/vsync_config.skill.yaml +147 -0
  2126. package/skills/atomic/vsync_period_detection.skill.yaml +178 -0
  2127. package/skills/atomic/vsync_phase_alignment.skill.yaml +255 -0
  2128. package/skills/atomic/wakelock_tracking.skill.yaml +276 -0
  2129. package/skills/atomic/wattson_app_startup_power.skill.yaml +66 -0
  2130. package/skills/atomic/wattson_rails_power_breakdown.skill.yaml +70 -0
  2131. package/skills/atomic/wattson_thread_power_attribution.skill.yaml +74 -0
  2132. package/skills/atomic/webview_v8_analysis.skill.yaml +297 -0
  2133. package/skills/comparison/multi_trace_result_comparison.skill.yaml +60 -0
  2134. package/skills/composite/anr_analysis.skill.yaml +889 -0
  2135. package/skills/composite/anr_detail.skill.yaml +796 -0
  2136. package/skills/composite/battery_drain_attribution.skill.yaml +134 -0
  2137. package/skills/composite/binder_analysis.skill.yaml +742 -0
  2138. package/skills/composite/binder_detail.skill.yaml +388 -0
  2139. package/skills/composite/block_io_analysis.skill.yaml +559 -0
  2140. package/skills/composite/click_response_analysis.skill.yaml +915 -0
  2141. package/skills/composite/click_response_detail.skill.yaml +800 -0
  2142. package/skills/composite/cpu_analysis.skill.yaml +960 -0
  2143. package/skills/composite/dmabuf_analysis.skill.yaml +622 -0
  2144. package/skills/composite/flutter_scrolling_analysis.skill.yaml +443 -0
  2145. package/skills/composite/gc_analysis.skill.yaml +744 -0
  2146. package/skills/composite/global_trace_sanity_check.skill.yaml +716 -0
  2147. package/skills/composite/gpu_analysis.skill.yaml +700 -0
  2148. package/skills/composite/io_pressure.skill.yaml +654 -0
  2149. package/skills/composite/irq_analysis.skill.yaml +696 -0
  2150. package/skills/composite/jank_frame_detail.skill.yaml +2065 -0
  2151. package/skills/composite/lmk_analysis.skill.yaml +626 -0
  2152. package/skills/composite/lock_binder_wait.skill.yaml +95 -0
  2153. package/skills/composite/lock_contention_analysis.skill.yaml +878 -0
  2154. package/skills/composite/memory_analysis.skill.yaml +718 -0
  2155. package/skills/composite/navigation_analysis.skill.yaml +901 -0
  2156. package/skills/composite/network_analysis.skill.yaml +760 -0
  2157. package/skills/composite/power_consumption_overview.skill.yaml +143 -0
  2158. package/skills/composite/scene_reconstruction.skill.yaml +2788 -0
  2159. package/skills/composite/scroll_session_analysis.skill.yaml +496 -0
  2160. package/skills/composite/scrolling_analysis.skill.yaml +3295 -0
  2161. package/skills/composite/startup_analysis.skill.yaml +1172 -0
  2162. package/skills/composite/startup_detail.skill.yaml +1339 -0
  2163. package/skills/composite/state_timeline.skill.yaml +1021 -0
  2164. package/skills/composite/surfaceflinger_analysis.skill.yaml +808 -0
  2165. package/skills/composite/suspend_wakeup_analysis.skill.yaml +698 -0
  2166. package/skills/composite/thermal_throttling.skill.yaml +964 -0
  2167. package/skills/composite/thermal_throttling_chain.skill.yaml +147 -0
  2168. package/skills/composite/webview_drawfunctor_jank_chain.skill.yaml +343 -0
  2169. package/skills/config/conclusion_scene_templates.base.yaml +181 -0
  2170. package/skills/config/conclusion_scene_templates.yaml +17 -0
  2171. package/skills/deep/callstack_analysis.skill.yaml +436 -0
  2172. package/skills/deep/cpu_profiling.skill.yaml +617 -0
  2173. package/skills/docs/scrolling.sop.md +312 -0
  2174. package/skills/docs/startup.sop.md +382 -0
  2175. package/skills/docs/upstream-perfetto-ai-skill-translation.sop.md +50 -0
  2176. package/skills/fragments/target_threads.sql +34 -0
  2177. package/skills/fragments/thread_states_quadrant.sql +26 -0
  2178. package/skills/fragments/vsync_config.sql +32 -0
  2179. package/skills/modules/app/launcher_module.skill.yaml +473 -0
  2180. package/skills/modules/app/systemui_module.skill.yaml +565 -0
  2181. package/skills/modules/app/third_party_module.skill.yaml +275 -0
  2182. package/skills/modules/framework/ams_module.skill.yaml +239 -0
  2183. package/skills/modules/framework/art_module.skill.yaml +266 -0
  2184. package/skills/modules/framework/choreographer_module.skill.yaml +419 -0
  2185. package/skills/modules/framework/input_module.skill.yaml +219 -0
  2186. package/skills/modules/framework/surfaceflinger_module.skill.yaml +343 -0
  2187. package/skills/modules/framework/wms_module.skill.yaml +356 -0
  2188. package/skills/modules/hardware/cpu_module.skill.yaml +300 -0
  2189. package/skills/modules/hardware/gpu_module.skill.yaml +229 -0
  2190. package/skills/modules/hardware/memory_module.skill.yaml +443 -0
  2191. package/skills/modules/hardware/power_module.skill.yaml +377 -0
  2192. package/skills/modules/hardware/thermal_module.skill.yaml +410 -0
  2193. package/skills/modules/kernel/binder_module.skill.yaml +223 -0
  2194. package/skills/modules/kernel/filesystem_module.skill.yaml +423 -0
  2195. package/skills/modules/kernel/lock_contention_module.skill.yaml +424 -0
  2196. package/skills/modules/kernel/scheduler_module.skill.yaml +247 -0
  2197. package/skills/pipelines/_base.skill.yaml +103 -0
  2198. package/skills/pipelines/android_pip_freeform.skill.yaml +224 -0
  2199. package/skills/pipelines/android_view_mixed.skill.yaml +305 -0
  2200. package/skills/pipelines/android_view_multi_window.skill.yaml +271 -0
  2201. package/skills/pipelines/android_view_software.skill.yaml +172 -0
  2202. package/skills/pipelines/android_view_standard_blast.skill.yaml +357 -0
  2203. package/skills/pipelines/android_view_standard_legacy.skill.yaml +233 -0
  2204. package/skills/pipelines/angle_gles_vulkan.skill.yaml +178 -0
  2205. package/skills/pipelines/camera_pipeline.skill.yaml +215 -0
  2206. package/skills/pipelines/chrome_browser_viz.skill.yaml +288 -0
  2207. package/skills/pipelines/compose_standard.skill.yaml +250 -0
  2208. package/skills/pipelines/flutter_surfaceview_impeller.skill.yaml +233 -0
  2209. package/skills/pipelines/flutter_surfaceview_skia.skill.yaml +194 -0
  2210. package/skills/pipelines/flutter_textureview.skill.yaml +219 -0
  2211. package/skills/pipelines/game_engine.skill.yaml +311 -0
  2212. package/skills/pipelines/hardware_buffer_renderer.skill.yaml +205 -0
  2213. package/skills/pipelines/imagereader_pipeline.skill.yaml +237 -0
  2214. package/skills/pipelines/index.yaml +122 -0
  2215. package/skills/pipelines/opengl_es.skill.yaml +185 -0
  2216. package/skills/pipelines/rn_new_arch.skill.yaml +126 -0
  2217. package/skills/pipelines/rn_old_arch.skill.yaml +137 -0
  2218. package/skills/pipelines/rn_skia.skill.yaml +115 -0
  2219. package/skills/pipelines/software_compositing.skill.yaml +203 -0
  2220. package/skills/pipelines/surface_control_api.skill.yaml +208 -0
  2221. package/skills/pipelines/surfaceview_blast.skill.yaml +210 -0
  2222. package/skills/pipelines/textureview_standard.skill.yaml +301 -0
  2223. package/skills/pipelines/variable_refresh_rate.skill.yaml +264 -0
  2224. package/skills/pipelines/video_overlay_hwc.skill.yaml +193 -0
  2225. package/skills/pipelines/vulkan_native.skill.yaml +215 -0
  2226. package/skills/pipelines/webview_gl_functor.skill.yaml +232 -0
  2227. package/skills/pipelines/webview_surface_control.skill.yaml +187 -0
  2228. package/skills/pipelines/webview_surfaceview_wrapper.skill.yaml +196 -0
  2229. package/skills/pipelines/webview_textureview_custom.skill.yaml +201 -0
  2230. package/skills/vendors/honor/startup.override.yaml +117 -0
  2231. package/skills/vendors/mtk/startup.override.yaml +133 -0
  2232. package/skills/vendors/oppo/startup.override.yaml +188 -0
  2233. package/skills/vendors/pixel/startup.override.yaml +163 -0
  2234. package/skills/vendors/qualcomm/startup.override.yaml +175 -0
  2235. package/skills/vendors/samsung/startup.override.yaml +161 -0
  2236. package/skills/vendors/vivo/startup.override.yaml +144 -0
  2237. package/skills/vendors/xiaomi/startup.override.yaml +120 -0
  2238. package/sql/smartperfetto/PACKAGE.json +24 -0
  2239. package/sql/smartperfetto/binder/victim_to_server.sql +36 -0
  2240. package/sql/smartperfetto/scrolling/jank_frames.sql +55 -0
  2241. package/strategies/anr.strategy.md +200 -0
  2242. package/strategies/arch-compose.template.md +10 -0
  2243. package/strategies/arch-flutter.template.md +17 -0
  2244. package/strategies/arch-standard.template.md +31 -0
  2245. package/strategies/arch-webview.template.md +9 -0
  2246. package/strategies/comparison-conclusion.template.md +36 -0
  2247. package/strategies/comparison-methodology.template.md +41 -0
  2248. package/strategies/comparison-result-methodology.template.md +35 -0
  2249. package/strategies/game.strategy.md +121 -0
  2250. package/strategies/general.strategy.md +48 -0
  2251. package/strategies/interaction.strategy.md +149 -0
  2252. package/strategies/knowledge-binder-ipc.template.md +59 -0
  2253. package/strategies/knowledge-cpu-scheduler.template.md +67 -0
  2254. package/strategies/knowledge-data-sources.template.md +738 -0
  2255. package/strategies/knowledge-gc-dynamics.template.md +65 -0
  2256. package/strategies/knowledge-harmonyos-rendering.template.md +54 -0
  2257. package/strategies/knowledge-harmonyos-tools.template.md +73 -0
  2258. package/strategies/knowledge-lock-contention.template.md +61 -0
  2259. package/strategies/knowledge-pipeline-anchors.template.md +136 -0
  2260. package/strategies/knowledge-pipeline-fences.template.md +158 -0
  2261. package/strategies/knowledge-rendering-pipeline.template.md +170 -0
  2262. package/strategies/knowledge-startup-root-causes.template.md +951 -0
  2263. package/strategies/knowledge-thermal-throttling.template.md +53 -0
  2264. package/strategies/linux.strategy.md +86 -0
  2265. package/strategies/media.strategy.md +75 -0
  2266. package/strategies/memory.strategy.md +94 -0
  2267. package/strategies/multi-trace-result-comparison.strategy.md +96 -0
  2268. package/strategies/network.strategy.md +80 -0
  2269. package/strategies/overview.strategy.md +139 -0
  2270. package/strategies/phase_hint_templates/misdiagnosis_vsync_vrr.template.yaml +37 -0
  2271. package/strategies/pipeline.strategy.md +208 -0
  2272. package/strategies/power.strategy.md +165 -0
  2273. package/strategies/prompt-complexity-classifier.template.md +26 -0
  2274. package/strategies/prompt-language-en.template.md +9 -0
  2275. package/strategies/prompt-language-zh.template.md +8 -0
  2276. package/strategies/prompt-methodology.template.md +183 -0
  2277. package/strategies/prompt-output-format.template.md +115 -0
  2278. package/strategies/prompt-quick.template.md +44 -0
  2279. package/strategies/prompt-role.template.md +13 -0
  2280. package/strategies/runtime-correctness.strategy.md +73 -0
  2281. package/strategies/scroll-response.strategy.md +236 -0
  2282. package/strategies/scrolling.strategy.md +467 -0
  2283. package/strategies/selection-area.template.md +46 -0
  2284. package/strategies/selection-slice.template.md +126 -0
  2285. package/strategies/startup.strategy.md +694 -0
  2286. package/strategies/teaching.strategy.md +176 -0
  2287. package/strategies/touch-tracking.strategy.md +213 -0
@@ -0,0 +1,2065 @@
1
+ # SPDX-License-Identifier: AGPL-3.0-or-later
2
+ # Copyright (C) 2024-2026 Gracker (Chris)
3
+ # This file is part of SmartPerfetto. See LICENSE for details.
4
+
5
+ # v2.0: Replaced inline CPU topology CTEs with shared _cpu_topology VIEW
6
+ name: jank_frame_detail
7
+ version: "2.0"
8
+ type: composite
9
+ category: rendering
10
+ tier: S
11
+
12
+ meta:
13
+ display_name: "掉帧详情分析"
14
+ description: "分析特定掉帧的详细原因"
15
+ icon: "broken_image"
16
+ tags: [jank, detail, composite]
17
+
18
+ triggers:
19
+ keywords:
20
+ zh: [卡顿帧, 帧详情, 单帧根因, 掉帧原因, jank 详情]
21
+ en: [jank frame detail, frame root cause, dropped frame detail]
22
+ patterns:
23
+ - ".*(卡顿帧|掉帧).*(详情|根因|原因).*"
24
+ - ".*jank.*frame.*(detail|root cause).*"
25
+
26
+ prerequisites:
27
+ modules:
28
+ - android.binder
29
+ - android.slices
30
+ - android.monitor_contention
31
+ - android.garbage_collection
32
+ - android.gpu.frequency
33
+
34
+ inputs:
35
+ # Primary timing inputs (at least one pair required)
36
+ - name: start_ts
37
+ type: timestamp
38
+ required: false
39
+ description: "帧开始时间戳(ns),优先使用"
40
+ - name: end_ts
41
+ type: timestamp
42
+ required: false
43
+ description: "帧结束时间戳(ns)"
44
+ # Legacy compatibility (from janky_frame_analysis)
45
+ - name: frame_ts
46
+ type: timestamp
47
+ required: false
48
+ description: "帧开始时间戳(ns),兼容旧接口,等同于 start_ts"
49
+ - name: frame_dur
50
+ type: duration
51
+ required: false
52
+ description: "帧持续时间(ns),兼容旧接口,用于计算 end_ts"
53
+ # Thread-specific timing
54
+ - name: main_start_ts
55
+ type: timestamp
56
+ required: false
57
+ - name: main_end_ts
58
+ type: timestamp
59
+ required: false
60
+ - name: main_dur_ms
61
+ type: number
62
+ required: false
63
+ - name: render_start_ts
64
+ type: timestamp
65
+ required: false
66
+ - name: render_end_ts
67
+ type: timestamp
68
+ required: false
69
+ - name: render_dur_ms
70
+ type: number
71
+ required: false
72
+ # Process/frame identity
73
+ - name: package
74
+ type: string
75
+ required: false
76
+ - name: pid
77
+ type: integer
78
+ required: false
79
+ - name: frame_id
80
+ type: integer
81
+ required: false
82
+ description: "帧 ID,可选"
83
+ - name: frame_index
84
+ type: integer
85
+ required: false
86
+ - name: jank_type
87
+ type: string
88
+ required: false
89
+ description: "掉帧类型,可选,默认 'Unknown'"
90
+ - name: dur_ms
91
+ type: number
92
+ required: false
93
+ description: "帧耗时(ms),可选,可从 start_ts/end_ts 计算"
94
+ - name: session_id
95
+ type: integer
96
+ required: false
97
+ - name: layer_name
98
+ type: string
99
+ required: false
100
+ - name: token_gap
101
+ type: integer
102
+ required: false
103
+ description: "display_frame_token 跳跃值 (>1 表示消费端掉帧)"
104
+ - name: vsync_missed
105
+ type: integer
106
+ required: false
107
+ description: "跳过的 VSync 数量 (token_gap - 1)"
108
+ - name: jank_responsibility
109
+ type: string
110
+ required: false
111
+ description: "掉帧责任归属: APP / SF / BUFFER_STUFFING / HIDDEN / UNKNOWN"
112
+ - name: jank_cause
113
+ type: string
114
+ required: false
115
+ description: "掉帧原因说明,由 scrolling_analysis 生成的中文诊断"
116
+
117
+ identity:
118
+ policy: required
119
+ scope: process
120
+ aliases: [package, process_name]
121
+ rewriteTo: recommended_process_name_param
122
+
123
+ steps:
124
+ - id: init_cpu_topology
125
+ type: skill
126
+ name: "初始化 CPU 拓扑"
127
+ skill: cpu_topology_view
128
+ display:
129
+ level: hidden
130
+ optional: true
131
+
132
+ # ===== 数据源检测:Monitor contention 表是否可用(可选)=====
133
+ - id: monitor_contention_check
134
+ type: atomic
135
+ name: "Monitor Contention 数据源检测"
136
+ display: false
137
+ sql: |
138
+ SELECT
139
+ CASE
140
+ WHEN EXISTS (
141
+ SELECT 1 FROM sqlite_master
142
+ WHERE type = 'table' AND name = 'android_monitor_contention'
143
+ ) THEN 1
144
+ ELSE 0
145
+ END as has_monitor_contention
146
+ save_as: monitor_contention
147
+
148
+ # ===== 数据源检测:GC 表是否可用 =====
149
+ - id: gc_table_check
150
+ type: atomic
151
+ name: "GC 数据源检测"
152
+ display: false
153
+ sql: |
154
+ SELECT
155
+ CASE
156
+ WHEN EXISTS (
157
+ SELECT 1 FROM sqlite_master
158
+ WHERE type IN ('table', 'view') AND name = 'android_garbage_collection_events'
159
+ ) THEN 1
160
+ ELSE 0
161
+ END as has_gc_table
162
+ save_as: gc_availability
163
+ optional: true
164
+
165
+ # ===== 数据源检测:GPU 数据是否可用 =====
166
+ - id: gpu_table_check
167
+ type: atomic
168
+ name: "GPU 数据源检测"
169
+ display: false
170
+ sql: |
171
+ SELECT
172
+ CASE
173
+ WHEN EXISTS (
174
+ SELECT 1 FROM slice s
175
+ JOIN thread_track tt ON s.track_id = tt.id
176
+ JOIN thread t ON tt.utid = t.utid
177
+ WHERE (t.name = 'RenderThread' OR t.name GLOB '[0-9]*.raster')
178
+ AND (s.name GLOB '*Draw*' OR s.name GLOB '*eglSwap*' OR s.name GLOB '*Fence*')
179
+ LIMIT 1
180
+ ) THEN 1
181
+ ELSE 0
182
+ END as has_gpu_slices,
183
+ CASE
184
+ WHEN EXISTS (
185
+ SELECT 1 FROM sqlite_master
186
+ WHERE type IN ('table', 'view') AND name = 'android_gpu_frequency'
187
+ ) THEN 1
188
+ ELSE 0
189
+ END as has_gpu_freq
190
+ save_as: gpu_availability
191
+ optional: true
192
+
193
+ # ===== 数据源检测:Binder 详细数据 =====
194
+ - id: binder_table_check
195
+ type: atomic
196
+ name: "Binder 数据源检测"
197
+ display: false
198
+ sql: |
199
+ SELECT
200
+ CASE
201
+ WHEN EXISTS (
202
+ SELECT 1 FROM sqlite_master
203
+ WHERE type IN ('table', 'view') AND name = 'android_binder_txns'
204
+ ) THEN 1
205
+ ELSE 0
206
+ END as has_binder_table
207
+ save_as: binder_availability
208
+ optional: true
209
+
210
+ # 四象限分析:输出格式直接匹配前端展示需求
211
+ # 前端期望: [{ quadrant, name, dur_ms, percentage }]
212
+ - id: quadrant_analysis
213
+ type: atomic
214
+ name: "四象限分析"
215
+ optional: true
216
+ sql_fragments:
217
+ - fragments/target_threads.sql
218
+ display:
219
+ level: key
220
+ layer: deep
221
+ title: "四大象限"
222
+ columns:
223
+ - name: quadrant
224
+ label: "象限"
225
+ type: string
226
+ - name: name
227
+ label: "名称"
228
+ type: string
229
+ - name: dur_ms
230
+ label: "耗时"
231
+ type: duration
232
+ format: duration_ms
233
+ - name: percentage
234
+ label: "占比"
235
+ type: percentage
236
+ format: percentage
237
+ sql: |
238
+ WITH
239
+ thread_states AS (
240
+ SELECT
241
+ tt.thread_type,
242
+ ts.state,
243
+ ts.cpu,
244
+ ts.dur,
245
+ CASE
246
+ WHEN ts.state = 'Running' AND COALESCE(ct.core_type, 'unknown') IN ('prime', 'big') THEN 'Q1_大核运行'
247
+ WHEN ts.state = 'Running' AND COALESCE(ct.core_type, 'unknown') IN ('medium', 'little') THEN 'Q2_小核运行'
248
+ WHEN ts.state = 'R' THEN 'Q3_等待调度'
249
+ WHEN ts.state IN ('D', 'DK') THEN 'Q4a_IO阻塞'
250
+ WHEN ts.state IN ('S', 'I') THEN 'Q4b_休眠等待'
251
+ ELSE 'Other'
252
+ END as quadrant_name
253
+ FROM thread_state ts
254
+ JOIN target_threads tt ON ts.utid = tt.utid
255
+ LEFT JOIN _cpu_topology ct ON ts.cpu = ct.cpu_id
256
+ WHERE ts.ts >= tt.thread_start_ts
257
+ AND ts.ts < tt.thread_end_ts
258
+ ),
259
+ quadrant_sums AS (
260
+ SELECT
261
+ thread_type,
262
+ quadrant_name,
263
+ SUM(dur) as dur_ns
264
+ FROM thread_states
265
+ WHERE quadrant_name != 'Other'
266
+ GROUP BY thread_type, quadrant_name
267
+ ),
268
+ thread_totals AS (
269
+ SELECT
270
+ thread_type,
271
+ SUM(dur_ns) as total_ns
272
+ FROM quadrant_sums
273
+ GROUP BY thread_type
274
+ )
275
+ SELECT
276
+ qs.thread_type || ' ' || qs.quadrant_name as quadrant,
277
+ qs.thread_type || ' ' || qs.quadrant_name as name,
278
+ ROUND(qs.dur_ns / 1e6, 2) as dur_ms,
279
+ ROUND(100.0 * qs.dur_ns / NULLIF(tt.total_ns, 0), 1) as percentage
280
+ FROM quadrant_sums qs
281
+ JOIN thread_totals tt ON qs.thread_type = tt.thread_type
282
+ WHERE qs.dur_ns > 0
283
+ ORDER BY qs.thread_type, qs.quadrant_name
284
+ save_as: quadrant_data
285
+ output_schema:
286
+ type: array
287
+ items:
288
+ quadrant: { type: string, description: "象限标识 (如 MainThread Q1_大核运行)" }
289
+ name: { type: string, description: "象限名称" }
290
+ dur_ms: { type: number, description: "持续时间(ms)" }
291
+ percentage: { type: number, description: "百分比" }
292
+
293
+ # Binder 调用:输出格式直接匹配前端展示需求
294
+ # 前端期望: [{ interface, dur_ms, count }]
295
+ - id: binder_calls
296
+ type: atomic
297
+ name: "Binder 调用"
298
+ display:
299
+ level: detail
300
+ layer: deep
301
+ title: "Binder 调用"
302
+ columns:
303
+ - name: interface
304
+ label: "服务进程"
305
+ type: string
306
+ - name: count
307
+ label: "调用次数"
308
+ type: number
309
+ format: compact
310
+ - name: dur_ms
311
+ label: "总耗时"
312
+ type: duration
313
+ format: duration_ms
314
+ - name: max_ms
315
+ label: "最大耗时"
316
+ type: duration
317
+ format: duration_ms
318
+ - name: sync_count
319
+ label: "同步调用"
320
+ type: number
321
+ sql: |
322
+ SELECT
323
+ server_process as interface,
324
+ COUNT(*) as count,
325
+ ROUND(SUM(client_dur) / 1e6, 2) as dur_ms,
326
+ ROUND(MAX(client_dur) / 1e6, 2) as max_ms,
327
+ SUM(CASE WHEN is_sync = 1 THEN 1 ELSE 0 END) as sync_count
328
+ FROM android_binder_txns
329
+ WHERE client_ts >= ${start_ts}
330
+ AND client_ts < ${end_ts}
331
+ AND (client_process GLOB '${package}*' OR '${package}' = '')
332
+ GROUP BY server_process
333
+ HAVING dur_ms > 0.5
334
+ ORDER BY dur_ms DESC
335
+ LIMIT 5
336
+ save_as: binder_data
337
+ optional: true
338
+ output_schema:
339
+ type: array
340
+ items:
341
+ interface: { type: string, description: "服务端进程名" }
342
+ count: { type: number, description: "调用次数" }
343
+ dur_ms: { type: number, description: "总耗时(ms)" }
344
+ max_ms: { type: number, description: "最大单次耗时(ms)" }
345
+ sync_count: { type: number, description: "同步调用次数" }
346
+
347
+ - id: cpu_freq_analysis
348
+ type: atomic
349
+ name: "CPU频率"
350
+ display:
351
+ level: detail
352
+ layer: deep
353
+ title: "CPU 频率"
354
+ columns:
355
+ - name: core_type
356
+ label: "核心类型"
357
+ type: string
358
+ - name: avg_freq_mhz
359
+ label: "平均频率"
360
+ type: number
361
+ - name: max_freq_mhz
362
+ label: "最大频率"
363
+ type: number
364
+ - name: min_freq_mhz
365
+ label: "最小频率"
366
+ type: number
367
+ sql: |
368
+ WITH
369
+ freq_data AS (
370
+ SELECT
371
+ t.cpu,
372
+ COALESCE(ct.core_type, 'unknown') as core_type,
373
+ c.value as freq_khz
374
+ FROM counter c
375
+ JOIN cpu_counter_track t ON c.track_id = t.id
376
+ LEFT JOIN _cpu_topology ct ON t.cpu = ct.cpu_id
377
+ WHERE t.name = 'cpufreq'
378
+ AND c.ts >= ${start_ts}
379
+ AND c.ts < ${end_ts}
380
+ )
381
+ SELECT
382
+ core_type,
383
+ ROUND(AVG(freq_khz) / 1000, 0) as avg_freq_mhz,
384
+ ROUND(MAX(freq_khz) / 1000, 0) as max_freq_mhz,
385
+ ROUND(MIN(freq_khz) / 1000, 0) as min_freq_mhz
386
+ FROM freq_data
387
+ GROUP BY core_type
388
+ ORDER BY core_type DESC
389
+ save_as: freq_data
390
+ optional: true
391
+ output_schema:
392
+ type: array
393
+ items:
394
+ core_type: { type: string, description: "核心类型 (big/little)" }
395
+ avg_freq_mhz: { type: number, description: "平均频率(MHz)" }
396
+ max_freq_mhz: { type: number, description: "最大频率(MHz)" }
397
+ min_freq_mhz: { type: number, description: "最小频率(MHz)" }
398
+
399
+ # 主线程耗时操作:输出格式直接匹配前端展示需求
400
+ # 前端期望: [{ name, dur_ms, ts }]
401
+ - id: main_thread_slices
402
+ type: atomic
403
+ name: "主线程耗时操作"
404
+ display:
405
+ level: key
406
+ layer: deep
407
+ title: "主线程耗时操作"
408
+ columns:
409
+ - name: name
410
+ label: "操作名"
411
+ type: string
412
+ - name: dur_ms
413
+ label: "总耗时"
414
+ type: duration
415
+ format: duration_ms
416
+ - name: count
417
+ label: "次数"
418
+ type: number
419
+ format: compact
420
+ - name: max_ms
421
+ label: "最大耗时"
422
+ type: duration
423
+ format: duration_ms
424
+ - name: ts
425
+ label: "时间戳"
426
+ type: timestamp
427
+ clickAction: navigate_timeline
428
+ sql: |
429
+ WITH main_thread AS (
430
+ SELECT t.utid
431
+ FROM thread t
432
+ JOIN process p ON t.upid = p.upid
433
+ WHERE (p.name GLOB '${package}*' OR '${package}' = '')
434
+ AND (t.tid = p.pid OR t.name GLOB '[0-9]*.ui')
435
+ )
436
+ SELECT
437
+ s.name,
438
+ ROUND(SUM(s.dur) / 1e6, 2) as dur_ms,
439
+ COUNT(*) as count,
440
+ ROUND(MAX(s.dur) / 1e6, 2) as max_ms,
441
+ printf('%d', MIN(s.ts)) as ts
442
+ FROM slice s
443
+ JOIN thread_track tt ON s.track_id = tt.id
444
+ WHERE tt.utid IN (SELECT utid FROM main_thread)
445
+ AND s.ts >= COALESCE(${main_start_ts}, ${start_ts})
446
+ AND s.ts < COALESCE(${main_end_ts}, ${end_ts})
447
+ AND s.dur >= 1000000
448
+ GROUP BY s.name
449
+ HAVING dur_ms > 1
450
+ ORDER BY dur_ms DESC
451
+ LIMIT 10
452
+ save_as: main_slices
453
+ optional: true
454
+ output_schema:
455
+ type: array
456
+ items:
457
+ name: { type: string, description: "操作名称" }
458
+ dur_ms: { type: number, description: "总耗时(ms)" }
459
+ count: { type: number, description: "执行次数" }
460
+ max_ms: { type: number, description: "最大单次耗时(ms)" }
461
+ ts: { type: string, description: "首次时间戳(ns字符串)" }
462
+
463
+ # RenderThread 耗时操作:输出格式直接匹配前端展示需求
464
+ # 前端期望: [{ name, dur_ms, ts }]
465
+ - id: render_thread_slices
466
+ type: atomic
467
+ name: "RenderThread 耗时操作"
468
+ display:
469
+ level: key
470
+ layer: deep
471
+ title: "RenderThread 耗时操作"
472
+ columns:
473
+ - name: name
474
+ label: "操作名"
475
+ type: string
476
+ - name: dur_ms
477
+ label: "总耗时"
478
+ type: duration
479
+ format: duration_ms
480
+ - name: count
481
+ label: "次数"
482
+ type: number
483
+ format: compact
484
+ - name: max_ms
485
+ label: "最大耗时"
486
+ type: duration
487
+ format: duration_ms
488
+ - name: avg_ms
489
+ label: "平均耗时"
490
+ type: duration
491
+ format: duration_ms
492
+ - name: ts
493
+ label: "时间戳"
494
+ type: timestamp
495
+ clickAction: navigate_timeline
496
+ sql: |
497
+ WITH render_thread AS (
498
+ SELECT t.utid
499
+ FROM thread t
500
+ JOIN process p ON t.upid = p.upid
501
+ WHERE (p.name GLOB '${package}*' OR '${package}' = '')
502
+ AND (t.name = 'RenderThread' OR t.name GLOB '[0-9]*.raster')
503
+ )
504
+ SELECT
505
+ s.name,
506
+ ROUND(SUM(s.dur) / 1e6, 2) as dur_ms,
507
+ COUNT(*) as count,
508
+ ROUND(MAX(s.dur) / 1e6, 2) as max_ms,
509
+ ROUND(AVG(s.dur) / 1e6, 2) as avg_ms,
510
+ printf('%d', MIN(s.ts)) as ts
511
+ FROM slice s
512
+ JOIN thread_track tt ON s.track_id = tt.id
513
+ WHERE tt.utid IN (SELECT utid FROM render_thread)
514
+ AND s.ts >= COALESCE(${render_start_ts}, ${start_ts})
515
+ AND s.ts < COALESCE(${render_end_ts}, ${end_ts})
516
+ AND s.dur >= 500000
517
+ GROUP BY s.name
518
+ HAVING dur_ms > 0.5
519
+ ORDER BY dur_ms DESC
520
+ LIMIT 10
521
+ save_as: render_slices
522
+ optional: true
523
+ output_schema:
524
+ type: array
525
+ items:
526
+ name: { type: string, description: "操作名称" }
527
+ dur_ms: { type: number, description: "总耗时(ms)" }
528
+ count: { type: number, description: "执行次数" }
529
+ max_ms: { type: number, description: "最大单次耗时(ms)" }
530
+ avg_ms: { type: number, description: "平均耗时(ms)" }
531
+ ts: { type: string, description: "首次时间戳(ns字符串)" }
532
+
533
+ - id: cpu_freq_timeline
534
+ type: atomic
535
+ name: "CPU 频率变化时间线"
536
+ display:
537
+ level: detail
538
+ layer: deep
539
+ title: "CPU 频率变化"
540
+ columns:
541
+ - name: ts
542
+ label: "时间戳"
543
+ type: timestamp
544
+ clickAction: navigate_timeline
545
+ - name: relative_ms
546
+ label: "相对时间"
547
+ type: duration
548
+ format: duration_ms
549
+ - name: cpu
550
+ label: "CPU"
551
+ type: number
552
+ - name: core_type
553
+ label: "核心类型"
554
+ type: string
555
+ - name: freq_mhz
556
+ label: "频率"
557
+ type: number
558
+ - name: change_direction
559
+ label: "变化"
560
+ type: enum
561
+ sql: |
562
+ WITH
563
+ freq_events AS (
564
+ SELECT
565
+ c.ts,
566
+ t.cpu,
567
+ c.value as freq_khz,
568
+ COALESCE(ct.core_type, 'unknown') as core_type,
569
+ LAG(c.value) OVER (PARTITION BY t.cpu ORDER BY c.ts) as prev_freq_khz
570
+ FROM counter c
571
+ JOIN cpu_counter_track t ON c.track_id = t.id
572
+ LEFT JOIN _cpu_topology ct ON t.cpu = ct.cpu_id
573
+ WHERE t.name = 'cpufreq'
574
+ AND c.ts >= ${start_ts}
575
+ AND c.ts < ${end_ts}
576
+ )
577
+ SELECT
578
+ printf('%d', ts) as ts,
579
+ ROUND((ts - ${start_ts}) / 1e6, 2) as relative_ms,
580
+ cpu,
581
+ core_type,
582
+ ROUND(freq_khz / 1000, 0) as freq_mhz,
583
+ ROUND(COALESCE(prev_freq_khz, freq_khz) / 1000, 0) as prev_freq_mhz,
584
+ CASE
585
+ WHEN freq_khz > COALESCE(prev_freq_khz, freq_khz) THEN 'up'
586
+ WHEN freq_khz < COALESCE(prev_freq_khz, freq_khz) THEN 'down'
587
+ ELSE 'stable'
588
+ END as change_direction
589
+ FROM freq_events
590
+ WHERE freq_khz != COALESCE(prev_freq_khz, 0)
591
+ ORDER BY ts, cpu
592
+ LIMIT 50
593
+ save_as: freq_timeline
594
+ optional: true
595
+
596
+ - id: lock_contention
597
+ type: atomic
598
+ name: "锁竞争分析"
599
+ display:
600
+ level: detail
601
+ layer: deep
602
+ title: "锁竞争"
603
+ columns:
604
+ - name: blocking_method
605
+ label: "持锁方法"
606
+ type: string
607
+ format: code
608
+ - name: blocking_thread_name
609
+ label: "持锁线程"
610
+ type: string
611
+ - name: blocked_method
612
+ label: "等锁方法"
613
+ type: string
614
+ format: code
615
+ - name: blocked_thread_name
616
+ label: "等锁线程"
617
+ type: string
618
+ - name: main_blocked
619
+ label: "主线程被阻"
620
+ type: boolean
621
+ - name: wait_ms
622
+ label: "等待时间"
623
+ type: duration
624
+ format: duration_ms
625
+ - name: waiter_count
626
+ label: "等待数"
627
+ type: number
628
+ sql: |
629
+ SELECT
630
+ short_blocking_method as blocking_method,
631
+ blocking_thread_name,
632
+ short_blocked_method as blocked_method,
633
+ blocked_thread_name,
634
+ CASE WHEN is_blocked_thread_main THEN 1 ELSE 0 END as main_blocked,
635
+ ROUND(dur / 1e6, 2) as wait_ms,
636
+ waiter_count
637
+ FROM android_monitor_contention
638
+ WHERE ts >= ${start_ts}
639
+ AND ts < ${end_ts}
640
+ AND (process_name GLOB '${package}*' OR '${package}' = '')
641
+ AND dur >= 500000
642
+ ORDER BY dur DESC
643
+ LIMIT 5
644
+ save_as: lock_data
645
+ optional: true
646
+ condition: "monitor_contention.data[0]?.has_monitor_contention === 1"
647
+
648
+ # ===== GC 与帧重叠分析 =====
649
+ - id: gc_in_frame
650
+ type: atomic
651
+ name: "GC 影响分析"
652
+ display:
653
+ level: detail
654
+ layer: deep
655
+ title: "GC 与帧重叠"
656
+ columns:
657
+ - name: gc_type
658
+ label: "GC 类型"
659
+ type: string
660
+ - name: gc_count
661
+ label: "GC 次数"
662
+ type: number
663
+ - name: total_dur_ms
664
+ label: "总耗时"
665
+ type: duration
666
+ format: duration_ms
667
+ - name: overlap_ms
668
+ label: "与帧重叠"
669
+ type: duration
670
+ format: duration_ms
671
+ - name: max_dur_ms
672
+ label: "最大单次"
673
+ type: duration
674
+ format: duration_ms
675
+ sql: |
676
+ WITH gc_events AS (
677
+ SELECT
678
+ gc.tid,
679
+ gc.gc_type,
680
+ gc.gc_ts as gc_ts,
681
+ gc.gc_dur as gc_dur,
682
+ -- Calculate overlap with frame window
683
+ MAX(gc.gc_ts, ${start_ts}) as overlap_start,
684
+ MIN(gc.gc_ts + gc.gc_dur, ${end_ts}) as overlap_end
685
+ FROM android_garbage_collection_events gc
686
+ JOIN thread t ON gc.tid = t.tid
687
+ JOIN process p ON t.upid = p.upid
688
+ WHERE (p.name GLOB '${package}*' OR '${package}' = '')
689
+ AND gc.gc_ts < ${end_ts}
690
+ AND gc.gc_ts + gc.gc_dur > ${start_ts}
691
+ )
692
+ SELECT
693
+ gc_type,
694
+ COUNT(*) as gc_count,
695
+ ROUND(SUM(gc_dur) / 1e6, 2) as total_dur_ms,
696
+ ROUND(SUM(CASE WHEN overlap_end > overlap_start THEN overlap_end - overlap_start ELSE 0 END) / 1e6, 2) as overlap_ms,
697
+ ROUND(MAX(gc_dur) / 1e6, 2) as max_dur_ms
698
+ FROM gc_events
699
+ GROUP BY gc_type
700
+ HAVING overlap_ms > 0
701
+ ORDER BY overlap_ms DESC
702
+ save_as: gc_data
703
+ optional: true
704
+ condition: "gc_availability?.data?.[0]?.has_gc_table === 1"
705
+
706
+ # ===== IO 阻塞分析(D/DK 状态)=====
707
+ - id: io_blocking
708
+ type: atomic
709
+ name: "IO 阻塞分析"
710
+ display:
711
+ level: detail
712
+ layer: deep
713
+ title: "IO 阻塞"
714
+ columns:
715
+ - name: thread_name
716
+ label: "线程"
717
+ type: string
718
+ - name: blocked_count
719
+ label: "阻塞次数"
720
+ type: number
721
+ - name: total_ms
722
+ label: "总阻塞时间"
723
+ type: duration
724
+ format: duration_ms
725
+ - name: max_ms
726
+ label: "最大单次"
727
+ type: duration
728
+ format: duration_ms
729
+ - name: io_cause
730
+ label: "等待原因"
731
+ type: string
732
+ sql: |
733
+ WITH target_threads AS (
734
+ SELECT t.utid, t.tid, t.name as thread_name, p.pid
735
+ FROM thread t
736
+ JOIN process p ON t.upid = p.upid
737
+ WHERE (p.name GLOB '${package}*' OR '${package}' = '')
738
+ AND (t.tid = p.pid OR t.name = 'RenderThread' OR t.name GLOB '[0-9]*.raster' OR t.name GLOB '[0-9]*.ui')
739
+ ),
740
+ io_states AS (
741
+ SELECT
742
+ tt.thread_name,
743
+ ts.dur,
744
+ ts.state,
745
+ ts.io_wait,
746
+ ts.blocked_function
747
+ FROM thread_state ts
748
+ JOIN target_threads tt ON ts.utid = tt.utid
749
+ WHERE ts.ts >= ${start_ts}
750
+ AND ts.ts < ${end_ts}
751
+ AND ts.state IN ('D', 'DK')
752
+ AND ts.dur > 100000
753
+ )
754
+ SELECT
755
+ thread_name,
756
+ COUNT(*) as blocked_count,
757
+ ROUND(SUM(dur) / 1e6, 2) as total_ms,
758
+ ROUND(MAX(dur) / 1e6, 2) as max_ms,
759
+ COALESCE(
760
+ MAX(blocked_function),
761
+ CASE WHEN MAX(io_wait) = 1 THEN 'IO wait' ELSE 'kernel wait' END
762
+ ) as io_cause
763
+ FROM io_states
764
+ GROUP BY thread_name
765
+ HAVING total_ms > 0.1
766
+ ORDER BY total_ms DESC
767
+ save_as: io_data
768
+ optional: true
769
+
770
+ # ===== P0: 调度延迟分析 (引用 atomic skill) =====
771
+ - id: sched_latency
772
+ skill: sched_latency_in_range
773
+ params:
774
+ start_ts: "${start_ts}"
775
+ end_ts: "${end_ts}"
776
+ package: "${package}"
777
+ save_as: sched_data
778
+ optional: true
779
+
780
+ # ===== P0: 大小核迁移分析 (引用 atomic skill) =====
781
+ - id: task_migration
782
+ skill: task_migration_in_range
783
+ params:
784
+ start_ts: "${start_ts}"
785
+ end_ts: "${end_ts}"
786
+ package: "${package}"
787
+ save_as: migration_data
788
+ optional: true
789
+
790
+ # ===== P0: GPU 渲染操作分析 (引用 atomic skill) =====
791
+ - id: gpu_render
792
+ skill: gpu_render_in_range
793
+ params:
794
+ start_ts: "${start_ts}"
795
+ end_ts: "${end_ts}"
796
+ package: "${package}"
797
+ save_as: gpu_data
798
+ optional: true
799
+ condition: "gpu_availability?.data?.[0]?.has_gpu_slices === 1"
800
+
801
+ # ===== P0: Binder 阻塞分析 (引用 atomic skill) =====
802
+ - id: binder_blocking
803
+ skill: binder_blocking_in_range
804
+ params:
805
+ start_ts: "${start_ts}"
806
+ end_ts: "${end_ts}"
807
+ package: "${package}"
808
+ save_as: binder_blocking_data
809
+ optional: true
810
+ condition: "binder_availability?.data?.[0]?.has_binder_table === 1"
811
+
812
+ # ===== P0: CPU 限频检测 (引用 atomic skill) =====
813
+ - id: cpu_throttling
814
+ skill: cpu_throttling_in_range
815
+ params:
816
+ start_ts: "${start_ts}"
817
+ end_ts: "${end_ts}"
818
+ save_as: throttling_data
819
+ optional: true
820
+
821
+ # ===== P0: CPU 簇负载分析 (引用 atomic skill) =====
822
+ - id: cpu_cluster_load
823
+ skill: cpu_cluster_load_in_range
824
+ params:
825
+ start_ts: "${start_ts}"
826
+ end_ts: "${end_ts}"
827
+ save_as: cluster_load_data
828
+ optional: true
829
+
830
+ # ===== P0: 内存页面错误分析 (引用 atomic skill) =====
831
+ - id: page_fault
832
+ skill: page_fault_in_range
833
+ params:
834
+ start_ts: "${start_ts}"
835
+ end_ts: "${end_ts}"
836
+ package: "${package}"
837
+ save_as: page_fault_data
838
+ optional: true
839
+
840
+ # ===== P1: SurfaceFlinger 合成分析 (引用 atomic skill) =====
841
+ - id: sf_composition
842
+ skill: sf_composition_in_range
843
+ params:
844
+ start_ts: "${start_ts}"
845
+ end_ts: "${end_ts}"
846
+ save_as: sf_data
847
+ optional: true
848
+
849
+ # ===== P1: GPU 频率分析 (引用 atomic skill) =====
850
+ - id: gpu_freq
851
+ skill: gpu_freq_in_range
852
+ params:
853
+ start_ts: "${start_ts}"
854
+ end_ts: "${end_ts}"
855
+ save_as: gpu_freq_data
856
+ optional: true
857
+ condition: "gpu_availability?.data?.[0]?.has_gpu_freq === 1"
858
+
859
+ # ===== P1: VSync 对齐分析 (引用 atomic skill) =====
860
+ - id: vsync_alignment
861
+ skill: vsync_alignment_in_range
862
+ params:
863
+ start_ts: "${start_ts}"
864
+ end_ts: "${end_ts}"
865
+ save_as: vsync_data
866
+ optional: true
867
+
868
+ # ===== P1: 渲染流水线分解 (引用 atomic skill) =====
869
+ - id: render_pipeline
870
+ skill: render_pipeline_latency
871
+ params:
872
+ start_ts: "${start_ts}"
873
+ end_ts: "${end_ts}"
874
+ main_start_ts: "${main_start_ts}"
875
+ main_end_ts: "${main_end_ts}"
876
+ render_start_ts: "${render_start_ts}"
877
+ render_end_ts: "${render_end_ts}"
878
+ save_as: pipeline_data
879
+ optional: true
880
+
881
+ # ===== 根因分析总结:综合所有数据给出明确结论 =====
882
+ - id: root_cause_summary
883
+ type: atomic
884
+ name: "根因分析"
885
+ sql_fragments:
886
+ - fragments/vsync_config.sql
887
+ - fragments/target_threads.sql
888
+ - fragments/thread_states_quadrant.sql
889
+ display:
890
+ level: key
891
+ layer: deep
892
+ title: "🎯 根因分析"
893
+ columns:
894
+ - name: primary_cause
895
+ label: "主要原因"
896
+ type: string
897
+ - name: deep_reason
898
+ label: "为什么慢"
899
+ type: string
900
+ - name: optimization_hint
901
+ label: "优化方向"
902
+ type: string
903
+ - name: reason_code
904
+ label: "原因类型"
905
+ type: enum
906
+ - name: secondary_info
907
+ label: "附加信息"
908
+ type: string
909
+ - name: confidence
910
+ label: "置信度"
911
+ type: string
912
+ - name: cause_type
913
+ label: "原因类型"
914
+ type: enum
915
+ - name: mechanism_group
916
+ label: "机制分组"
917
+ type: enum
918
+ - name: supply_constraint
919
+ label: "资源问题"
920
+ type: enum
921
+ - name: trigger_layer
922
+ label: "触发层"
923
+ type: enum
924
+ - name: amplification_path
925
+ label: "放大因素"
926
+ type: enum
927
+ - name: frame_dur_ms
928
+ label: "帧耗时"
929
+ type: duration
930
+ format: duration_ms
931
+ - name: jank_type
932
+ label: "掉帧类型"
933
+ type: string
934
+ sql: |
935
+ -- 根因分析: 综合四象限、CPU频率、耗时操作等数据,输出明确的根因结论
936
+ -- CTEs vsync_ticks, vsync_config, target_threads, thread_states injected via sql_fragments
937
+ WITH
938
+ -- 3. 计算各线程四象限百分比
939
+ quadrant_pct AS (
940
+ SELECT
941
+ thread_type,
942
+ quadrant,
943
+ dur_ns,
944
+ ROUND(100.0 * dur_ns / NULLIF(SUM(dur_ns) OVER (PARTITION BY thread_type), 0), 1) as pct
945
+ FROM thread_states
946
+ WHERE quadrant != 'Other'
947
+ ),
948
+ main_summary AS (
949
+ SELECT
950
+ COALESCE(SUM(CASE WHEN quadrant = 'Q1' THEN pct ELSE 0 END), 0) as q1,
951
+ COALESCE(SUM(CASE WHEN quadrant = 'Q2' THEN pct ELSE 0 END), 0) as q2,
952
+ COALESCE(SUM(CASE WHEN quadrant = 'Q3' THEN pct ELSE 0 END), 0) as q3,
953
+ COALESCE(SUM(CASE WHEN quadrant = 'Q4a' THEN pct ELSE 0 END), 0) as q4a,
954
+ COALESCE(SUM(CASE WHEN quadrant = 'Q4b' THEN pct ELSE 0 END), 0) as q4b
955
+ FROM quadrant_pct WHERE thread_type = 'MainThread'
956
+ ),
957
+ render_summary AS (
958
+ SELECT
959
+ COALESCE(SUM(CASE WHEN quadrant = 'Q1' THEN pct ELSE 0 END), 0) as q1,
960
+ COALESCE(SUM(CASE WHEN quadrant = 'Q2' THEN pct ELSE 0 END), 0) as q2,
961
+ COALESCE(SUM(CASE WHEN quadrant = 'Q3' THEN pct ELSE 0 END), 0) as q3,
962
+ COALESCE(SUM(CASE WHEN quadrant = 'Q4a' THEN pct ELSE 0 END), 0) as q4a,
963
+ COALESCE(SUM(CASE WHEN quadrant = 'Q4b' THEN pct ELSE 0 END), 0) as q4b
964
+ FROM quadrant_pct WHERE thread_type = 'RenderThread'
965
+ ),
966
+ -- 4. 获取最耗时的主线程操作
967
+ main_thread_utid AS (
968
+ SELECT t.utid
969
+ FROM thread t JOIN process p ON t.upid = p.upid
970
+ WHERE (p.name GLOB '${package}*' OR '${package}' = '') AND (t.tid = p.pid OR t.name GLOB '[0-9]*.ui')
971
+ ),
972
+ main_thread_tid AS (
973
+ SELECT t.tid
974
+ FROM thread t JOIN process p ON t.upid = p.upid
975
+ WHERE (p.name GLOB '${package}*' OR '${package}' = '') AND (t.tid = p.pid OR t.name GLOB '[0-9]*.ui')
976
+ ),
977
+ top_slice AS (
978
+ SELECT
979
+ s.name,
980
+ s.ts as slice_ts,
981
+ s.dur as slice_dur_ns,
982
+ ROUND(s.dur / 1e6, 2) as dur_ms
983
+ FROM slice s
984
+ JOIN thread_track tt ON s.track_id = tt.id
985
+ WHERE tt.utid IN (SELECT utid FROM main_thread_utid)
986
+ AND s.ts >= COALESCE(${main_start_ts}, ${start_ts})
987
+ AND s.ts < COALESCE(${main_end_ts}, ${end_ts})
988
+ AND s.dur >= 1000000
989
+ ORDER BY s.dur DESC
990
+ LIMIT 1
991
+ ),
992
+ top_slice_bounds AS (
993
+ SELECT
994
+ slice_ts as slice_start_ns,
995
+ slice_ts + slice_dur_ns as slice_end_ns,
996
+ slice_dur_ns
997
+ FROM top_slice
998
+ ),
999
+ top_slice_state_overlap AS (
1000
+ SELECT
1001
+ ts.state,
1002
+ ts.cpu,
1003
+ COALESCE(ct.core_type, 'unknown') as core_type,
1004
+ (
1005
+ CASE
1006
+ WHEN ts.ts + ts.dur < b.slice_end_ns THEN ts.ts + ts.dur
1007
+ ELSE b.slice_end_ns
1008
+ END
1009
+ -
1010
+ CASE
1011
+ WHEN ts.ts > b.slice_start_ns THEN ts.ts
1012
+ ELSE b.slice_start_ns
1013
+ END
1014
+ ) as overlap_ns
1015
+ FROM thread_state ts
1016
+ JOIN main_thread_utid mtu ON ts.utid = mtu.utid
1017
+ JOIN top_slice_bounds b
1018
+ LEFT JOIN _cpu_topology ct ON ts.cpu = ct.cpu_id
1019
+ WHERE ts.ts < b.slice_end_ns
1020
+ AND ts.ts + ts.dur > b.slice_start_ns
1021
+ ),
1022
+ top_slice_cpu_mix AS (
1023
+ SELECT
1024
+ ROUND(
1025
+ 100.0 * SUM(CASE WHEN state = 'Running' AND core_type IN ('medium', 'little') AND overlap_ns > 0 THEN overlap_ns ELSE 0 END)
1026
+ / NULLIF((SELECT slice_dur_ns FROM top_slice_bounds), 0),
1027
+ 1
1028
+ ) as little_run_pct,
1029
+ ROUND(
1030
+ 100.0 * SUM(CASE WHEN state = 'Running' AND core_type IN ('prime', 'big') AND overlap_ns > 0 THEN overlap_ns ELSE 0 END)
1031
+ / NULLIF((SELECT slice_dur_ns FROM top_slice_bounds), 0),
1032
+ 1
1033
+ ) as big_run_pct,
1034
+ ROUND(
1035
+ 100.0 * SUM(CASE WHEN state = 'R' AND overlap_ns > 0 THEN overlap_ns ELSE 0 END)
1036
+ / NULLIF((SELECT slice_dur_ns FROM top_slice_bounds), 0),
1037
+ 1
1038
+ ) as runnable_pct,
1039
+ ROUND(
1040
+ 100.0 * SUM(CASE WHEN state IN ('S', 'D', 'I', 'DK') AND overlap_ns > 0 THEN overlap_ns ELSE 0 END)
1041
+ / NULLIF((SELECT slice_dur_ns FROM top_slice_bounds), 0),
1042
+ 1
1043
+ ) as blocked_pct
1044
+ FROM top_slice_state_overlap
1045
+ ),
1046
+ -- 5. 获取 CPU 频率
1047
+ freq_info AS (
1048
+ SELECT
1049
+ ROUND(AVG(CASE WHEN ct.core_type IN ('prime', 'big') THEN c.value END) / 1000, 0) as big_avg_freq,
1050
+ ROUND(MAX(CASE WHEN ct.core_type IN ('prime', 'big') THEN c.value END) / 1000, 0) as big_max_freq,
1051
+ ROUND(MIN(CASE WHEN ct.core_type IN ('prime', 'big') THEN c.value END) / 1000, 0) as big_min_freq,
1052
+ ROUND(AVG(CASE WHEN ct.core_type IN ('medium', 'little') THEN c.value END) / 1000, 0) as little_avg_freq,
1053
+ ROUND(MAX(CASE WHEN ct.core_type IN ('medium', 'little') THEN c.value END) / 1000, 0) as little_max_freq,
1054
+ ROUND(MIN(CASE WHEN ct.core_type IN ('medium', 'little') THEN c.value END) / 1000, 0) as little_min_freq
1055
+ FROM counter c
1056
+ JOIN cpu_counter_track t ON c.track_id = t.id
1057
+ LEFT JOIN _cpu_topology ct ON t.cpu = ct.cpu_id
1058
+ WHERE t.name = 'cpufreq'
1059
+ AND c.ts >= ${start_ts} AND c.ts < ${end_ts}
1060
+ ),
1061
+ top_slice_freq AS (
1062
+ SELECT
1063
+ ROUND(AVG(CASE WHEN ct.core_type IN ('prime', 'big') THEN c.value END) / 1000, 0) as top_big_avg_freq_mhz,
1064
+ ROUND(MAX(CASE WHEN ct.core_type IN ('prime', 'big') THEN c.value END) / 1000, 0) as top_big_max_freq_mhz,
1065
+ ROUND(MIN(CASE WHEN ct.core_type IN ('prime', 'big') THEN c.value END) / 1000, 0) as top_big_min_freq_mhz,
1066
+ ROUND(AVG(CASE WHEN ct.core_type IN ('medium', 'little') THEN c.value END) / 1000, 0) as top_little_avg_freq_mhz
1067
+ FROM counter c
1068
+ JOIN cpu_counter_track t ON c.track_id = t.id
1069
+ LEFT JOIN _cpu_topology ct ON t.cpu = ct.cpu_id
1070
+ WHERE t.name = 'cpufreq'
1071
+ AND EXISTS (SELECT 1 FROM top_slice_bounds)
1072
+ AND c.ts >= (SELECT slice_start_ns FROM top_slice_bounds)
1073
+ AND c.ts < (SELECT slice_end_ns FROM top_slice_bounds)
1074
+ ),
1075
+ big_freq_window AS (
1076
+ SELECT c.ts, c.value as freq_khz
1077
+ FROM counter c
1078
+ JOIN cpu_counter_track t ON c.track_id = t.id
1079
+ WHERE t.name = 'cpufreq'
1080
+ AND t.cpu IN (SELECT cpu_id FROM _cpu_topology WHERE core_type IN ('prime', 'big'))
1081
+ AND c.ts >= ${start_ts}
1082
+ AND c.ts < ${end_ts}
1083
+ ),
1084
+ big_freq_stats AS (
1085
+ SELECT
1086
+ MAX(freq_khz) as peak_khz,
1087
+ MIN(freq_khz) as min_khz,
1088
+ AVG(freq_khz) as avg_khz
1089
+ FROM big_freq_window
1090
+ ),
1091
+ big_freq_ramp AS (
1092
+ SELECT
1093
+ ROUND(
1094
+ (
1095
+ COALESCE(
1096
+ MIN(
1097
+ CASE
1098
+ WHEN b.freq_khz >=
1099
+ CASE
1100
+ WHEN s.peak_khz IS NULL THEN NULL
1101
+ WHEN s.peak_khz * 0.70 > 1800000 THEN s.peak_khz * 0.70
1102
+ ELSE 1800000
1103
+ END
1104
+ THEN b.ts
1105
+ END
1106
+ ),
1107
+ ${end_ts}
1108
+ ) - ${start_ts}
1109
+ ) / 1e6,
1110
+ 2
1111
+ ) as ramp_to_high_ms,
1112
+ ROUND(
1113
+ (COALESCE(MIN(CASE WHEN b.freq_khz >= 2000000 THEN b.ts END), ${end_ts}) - ${start_ts}) / 1e6,
1114
+ 2
1115
+ ) as ramp_to_2g_ms
1116
+ FROM big_freq_window b
1117
+ CROSS JOIN big_freq_stats s
1118
+ ),
1119
+ -- 6. IO 阻塞检测(主线程 D/DK 状态)
1120
+ io_block AS (
1121
+ SELECT COALESCE(ROUND(SUM(ts2.dur) / 1e6, 2), 0) as io_block_ms
1122
+ FROM thread_state ts2
1123
+ JOIN target_threads tt2 ON ts2.utid = tt2.utid
1124
+ WHERE tt2.thread_type = 'MainThread'
1125
+ AND ts2.ts >= ${start_ts} AND ts2.ts < ${end_ts}
1126
+ AND ts2.state IN ('D', 'DK')
1127
+ ),
1128
+ -- 7. 调度延迟检测(Runnable 等待)
1129
+ sched_latency AS (
1130
+ SELECT
1131
+ COALESCE(ROUND(MAX(ts3.dur) / 1e6, 2), 0) as max_sched_ms,
1132
+ COALESCE(ROUND(SUM(ts3.dur) / 1e6, 2), 0) as total_sched_ms
1133
+ FROM thread_state ts3
1134
+ JOIN target_threads tt3 ON ts3.utid = tt3.utid
1135
+ WHERE tt3.thread_type = 'MainThread'
1136
+ AND ts3.ts >= ${start_ts} AND ts3.ts < ${end_ts}
1137
+ AND ts3.state = 'R'
1138
+ ),
1139
+ -- 8. GPU Fence / GPU 同步检测
1140
+ -- 包含 GPU fence 等待、eglSwapBuffers(GPU backpressure)、dequeueBuffer(BufferQueue 阻塞)
1141
+ gpu_fence AS (
1142
+ SELECT COALESCE(ROUND(SUM(s.dur) / 1e6, 2), 0) as fence_ms
1143
+ FROM slice s
1144
+ JOIN thread_track tt ON s.track_id = tt.id
1145
+ JOIN thread t ON tt.utid = t.utid
1146
+ JOIN process p ON t.upid = p.upid
1147
+ WHERE (p.name GLOB '${package}*' OR '${package}' = '')
1148
+ AND (t.name = 'RenderThread' OR t.name GLOB '[0-9]*.raster')
1149
+ AND s.ts >= ${start_ts} AND s.ts < ${end_ts}
1150
+ AND (s.name GLOB '*Fence*' OR s.name GLOB '*fence*'
1151
+ OR s.name GLOB '*eglSwapBuffers*'
1152
+ OR s.name GLOB '*dequeueBuffer*')
1153
+ ),
1154
+ -- 8b. Shader 编译检测(RenderThread 上的着色器编译/管线创建 slice)
1155
+ shader_compile AS (
1156
+ SELECT
1157
+ COALESCE(ROUND(SUM(s.dur) / 1e6, 2), 0) as shader_ms,
1158
+ COUNT(*) as shader_count
1159
+ FROM slice s
1160
+ JOIN thread_track tt ON s.track_id = tt.id
1161
+ JOIN thread t ON tt.utid = t.utid
1162
+ JOIN process p ON t.upid = p.upid
1163
+ WHERE (p.name GLOB '${package}*' OR '${package}' = '')
1164
+ AND (t.name = 'RenderThread' OR t.name GLOB '[0-9]*.raster')
1165
+ AND s.ts >= ${start_ts} AND s.ts < ${end_ts}
1166
+ AND (s.name GLOB '*shader*' OR s.name GLOB '*Shader*'
1167
+ OR s.name GLOB '*Compile*' OR s.name GLOB '*compile*'
1168
+ OR s.name GLOB 'GrGLGpu*'
1169
+ OR s.name GLOB '*Pipeline*Create*'
1170
+ OR s.name GLOB '*programCache*')
1171
+ ),
1172
+ -- 9. CPU 簇负载检测(动态核心计数,适配所有 SoC 拓扑)
1173
+ cluster_core_counts AS (
1174
+ SELECT
1175
+ COUNT(DISTINCT CASE WHEN COALESCE(ct.core_type, 'unknown') IN ('prime', 'big') THEN ts.cpu END) as big_cores,
1176
+ COUNT(DISTINCT CASE WHEN COALESCE(ct.core_type, 'unknown') IN ('medium', 'little') THEN ts.cpu END) as little_cores
1177
+ FROM thread_state ts
1178
+ LEFT JOIN _cpu_topology ct ON ts.cpu = ct.cpu_id
1179
+ WHERE ts.ts < ${end_ts}
1180
+ AND ts.ts + ts.dur > ${start_ts}
1181
+ AND ts.state = 'Running'
1182
+ AND ts.cpu IS NOT NULL
1183
+ ),
1184
+ cluster_load AS (
1185
+ SELECT
1186
+ ROUND(100.0 * SUM(CASE WHEN COALESCE(ct.core_type, 'unknown') IN ('prime', 'big') THEN
1187
+ MIN(ts.ts + ts.dur, ${end_ts}) - MAX(ts.ts, ${start_ts})
1188
+ ELSE 0 END) / NULLIF((${end_ts} - ${start_ts}) * MAX((SELECT big_cores FROM cluster_core_counts), 1), 0), 1) as big_load_pct,
1189
+ ROUND(100.0 * SUM(CASE WHEN COALESCE(ct.core_type, 'unknown') IN ('medium', 'little') THEN
1190
+ MIN(ts.ts + ts.dur, ${end_ts}) - MAX(ts.ts, ${start_ts})
1191
+ ELSE 0 END) / NULLIF((${end_ts} - ${start_ts}) * MAX((SELECT little_cores FROM cluster_core_counts), 1), 0), 1) as little_load_pct
1192
+ FROM thread_state ts
1193
+ LEFT JOIN _cpu_topology ct ON ts.cpu = ct.cpu_id
1194
+ WHERE ts.ts < ${end_ts}
1195
+ AND ts.ts + ts.dur > ${start_ts}
1196
+ AND ts.state = 'Running'
1197
+ AND ts.cpu IS NOT NULL
1198
+ ),
1199
+ -- 10. GC 事件与帧窗口重叠检测
1200
+ -- android_garbage_collection_events view 由 prerequisites 中的
1201
+ -- INCLUDE PERFETTO MODULE android.garbage_collection 保证存在(可能为空)
1202
+ gc_frame_overlap AS (
1203
+ SELECT
1204
+ COALESCE(ROUND(SUM(
1205
+ CASE WHEN MIN(gc.gc_ts + gc.gc_dur, ${end_ts}) > MAX(gc.gc_ts, ${start_ts})
1206
+ THEN MIN(gc.gc_ts + gc.gc_dur, ${end_ts}) - MAX(gc.gc_ts, ${start_ts})
1207
+ ELSE 0 END
1208
+ ) / 1e6, 2), 0) as gc_overlap_ms,
1209
+ COUNT(*) as gc_count
1210
+ FROM android_garbage_collection_events gc
1211
+ JOIN thread t ON gc.tid = t.tid
1212
+ JOIN process p ON t.upid = p.upid
1213
+ WHERE (p.name GLOB '${package}*' OR '${package}' = '')
1214
+ AND gc.gc_ts < ${end_ts}
1215
+ AND gc.gc_ts + gc.gc_dur > ${start_ts}
1216
+ ),
1217
+ -- 11. 主线程同步 Binder 与关键 slice 重叠分析
1218
+ binder_sync_main AS (
1219
+ SELECT
1220
+ bt.client_ts,
1221
+ bt.client_dur,
1222
+ bt.server_process
1223
+ FROM android_binder_txns bt
1224
+ WHERE bt.client_tid IN (SELECT tid FROM main_thread_tid)
1225
+ AND bt.is_sync = 1
1226
+ AND bt.client_ts < ${end_ts}
1227
+ AND bt.client_ts + bt.client_dur > ${start_ts}
1228
+ ),
1229
+ binder_frame AS (
1230
+ SELECT
1231
+ ROUND(COALESCE(SUM(client_dur), 0) / 1e6, 2) as sync_total_ms,
1232
+ ROUND(COALESCE(MAX(client_dur), 0) / 1e6, 2) as sync_max_ms,
1233
+ COUNT(*) as sync_count
1234
+ FROM binder_sync_main
1235
+ ),
1236
+ binder_overlap AS (
1237
+ SELECT
1238
+ ROUND(
1239
+ COALESCE(
1240
+ SUM(
1241
+ CASE
1242
+ WHEN b.client_ts < tsb.slice_end_ns
1243
+ AND b.client_ts + b.client_dur > tsb.slice_start_ns
1244
+ THEN
1245
+ (
1246
+ CASE
1247
+ WHEN b.client_ts + b.client_dur < tsb.slice_end_ns THEN b.client_ts + b.client_dur
1248
+ ELSE tsb.slice_end_ns
1249
+ END
1250
+ -
1251
+ CASE
1252
+ WHEN b.client_ts > tsb.slice_start_ns THEN b.client_ts
1253
+ ELSE tsb.slice_start_ns
1254
+ END
1255
+ )
1256
+ ELSE 0
1257
+ END
1258
+ ),
1259
+ 0
1260
+ ) / 1e6,
1261
+ 2
1262
+ ) as overlap_ms,
1263
+ ROUND(
1264
+ COALESCE(
1265
+ MAX(
1266
+ CASE
1267
+ WHEN b.client_ts < tsb.slice_end_ns
1268
+ AND b.client_ts + b.client_dur > tsb.slice_start_ns
1269
+ THEN
1270
+ (
1271
+ CASE
1272
+ WHEN b.client_ts + b.client_dur < tsb.slice_end_ns THEN b.client_ts + b.client_dur
1273
+ ELSE tsb.slice_end_ns
1274
+ END
1275
+ -
1276
+ CASE
1277
+ WHEN b.client_ts > tsb.slice_start_ns THEN b.client_ts
1278
+ ELSE tsb.slice_start_ns
1279
+ END
1280
+ )
1281
+ ELSE 0
1282
+ END
1283
+ ),
1284
+ 0
1285
+ ) / 1e6,
1286
+ 2
1287
+ ) as max_overlap_ms,
1288
+ COALESCE(
1289
+ MAX(
1290
+ CASE
1291
+ WHEN b.client_ts < tsb.slice_end_ns
1292
+ AND b.client_ts + b.client_dur > tsb.slice_start_ns
1293
+ THEN b.server_process
1294
+ ELSE NULL
1295
+ END
1296
+ ),
1297
+ ''
1298
+ ) as overlap_server
1299
+ FROM binder_sync_main b
1300
+ JOIN top_slice_bounds tsb
1301
+ ),
1302
+ -- 12. 综合根因判断
1303
+ analysis AS (
1304
+ SELECT
1305
+ (SELECT dur_ms FROM top_slice) as slice_dur,
1306
+ (SELECT name FROM top_slice) as slice_name,
1307
+ ROUND(((SELECT slice_ts FROM top_slice) - ${start_ts}) / 1e6, 2) as top_slice_offset_ms,
1308
+ (SELECT q1 FROM main_summary) as main_q1,
1309
+ (SELECT q2 FROM main_summary) as main_q2,
1310
+ (SELECT q3 FROM main_summary) as main_q3,
1311
+ (SELECT q4a FROM main_summary) as main_q4a,
1312
+ (SELECT q4b FROM main_summary) as main_q4b,
1313
+ (SELECT q1 FROM render_summary) as render_q1,
1314
+ (SELECT q2 FROM render_summary) as render_q2,
1315
+ (SELECT q3 FROM render_summary) as render_q3,
1316
+ (SELECT q4a FROM render_summary) as render_q4a,
1317
+ (SELECT q4b FROM render_summary) as render_q4b,
1318
+ (SELECT big_avg_freq FROM freq_info) as big_freq,
1319
+ (SELECT big_max_freq FROM freq_info) as big_freq_peak,
1320
+ (SELECT big_min_freq FROM freq_info) as big_freq_min,
1321
+ (SELECT little_avg_freq FROM freq_info) as little_freq,
1322
+ (SELECT little_max_freq FROM freq_info) as little_freq_peak,
1323
+ (SELECT little_min_freq FROM freq_info) as little_freq_min,
1324
+ (SELECT little_run_pct FROM top_slice_cpu_mix) as top_slice_little_pct,
1325
+ (SELECT big_run_pct FROM top_slice_cpu_mix) as top_slice_big_pct,
1326
+ (SELECT runnable_pct FROM top_slice_cpu_mix) as top_slice_runnable_pct,
1327
+ (SELECT blocked_pct FROM top_slice_cpu_mix) as top_slice_blocked_pct,
1328
+ (SELECT top_big_avg_freq_mhz FROM top_slice_freq) as top_big_avg_freq_mhz,
1329
+ (SELECT top_big_max_freq_mhz FROM top_slice_freq) as top_big_max_freq_mhz,
1330
+ (SELECT top_big_min_freq_mhz FROM top_slice_freq) as top_big_min_freq_mhz,
1331
+ (SELECT top_little_avg_freq_mhz FROM top_slice_freq) as top_little_avg_freq_mhz,
1332
+ (SELECT ramp_to_high_ms FROM big_freq_ramp) as ramp_to_high_ms,
1333
+ (SELECT ramp_to_2g_ms FROM big_freq_ramp) as ramp_to_2g_ms,
1334
+ (SELECT overlap_ms FROM binder_overlap) as binder_overlap_ms,
1335
+ (SELECT max_overlap_ms FROM binder_overlap) as binder_max_overlap_ms,
1336
+ (SELECT overlap_server FROM binder_overlap) as binder_overlap_server,
1337
+ (SELECT sync_total_ms FROM binder_frame) as binder_sync_total_ms,
1338
+ (SELECT sync_max_ms FROM binder_frame) as binder_sync_max_ms,
1339
+ (SELECT sync_count FROM binder_frame) as binder_sync_count,
1340
+ (SELECT io_block_ms FROM io_block) as io_block_ms,
1341
+ (SELECT max_sched_ms FROM sched_latency) as max_sched_ms,
1342
+ (SELECT total_sched_ms FROM sched_latency) as total_sched_ms,
1343
+ (SELECT fence_ms FROM gpu_fence) as fence_ms,
1344
+ (SELECT shader_ms FROM shader_compile) as shader_ms,
1345
+ (SELECT shader_count FROM shader_compile) as shader_count,
1346
+ (SELECT gc_overlap_ms FROM gc_frame_overlap) as gc_overlap_ms,
1347
+ (SELECT gc_count FROM gc_frame_overlap) as gc_count,
1348
+ (SELECT big_load_pct FROM cluster_load) as big_load_pct,
1349
+ (SELECT little_load_pct FROM cluster_load) as little_load_pct,
1350
+ ROUND((SELECT vsync_period_ns FROM vsync_config) / 1e6, 2) as frame_budget_ms,
1351
+ ROUND(((SELECT vsync_period_ns FROM vsync_config) / 1e6) * 0.50, 2) as slice_critical_ms,
1352
+ ROUND(MAX(((SELECT vsync_period_ns FROM vsync_config) / 1e6) * 0.20, 2.0), 2) as slice_warning_ms,
1353
+ ROUND(MAX(((SELECT vsync_period_ns FROM vsync_config) / 1e6) * 0.18, 1.5), 2) as gpu_fence_critical_ms,
1354
+ ROUND(MAX(((SELECT vsync_period_ns FROM vsync_config) / 1e6) * 0.06, 0.8), 2) as gpu_fence_warning_ms,
1355
+ ROUND(MAX(((SELECT vsync_period_ns FROM vsync_config) / 1e6) * 0.30, 3.5), 2) as sched_max_critical_ms,
1356
+ ROUND(MAX(((SELECT vsync_period_ns FROM vsync_config) / 1e6) * 0.18, 2.0), 2) as total_sched_critical_ms,
1357
+ ROUND(MAX(((SELECT vsync_period_ns FROM vsync_config) / 1e6) * 0.12, 1.5), 2) as io_block_critical_ms,
1358
+ ROUND(MAX(((SELECT vsync_period_ns FROM vsync_config) / 1e6) * 0.18, 1.5), 2) as binder_overlap_critical_ms,
1359
+ ROUND(MAX(((SELECT vsync_period_ns FROM vsync_config) / 1e6) * 0.35, 2.0), 2) as freq_ramp_critical_ms
1360
+ )
1361
+ , classified AS (
1362
+ SELECT
1363
+ *,
1364
+ CASE
1365
+ -- P0: Buffer Stuffing 管线背压 — 短路跳过线程分析
1366
+ WHEN '${jank_responsibility}' = 'BUFFER_STUFFING'
1367
+ THEN 'buffer_stuffing'
1368
+ -- P1: Binder 同步阻塞(特定可操作,阻塞可能占据 slice 大部分时间)
1369
+ WHEN slice_dur > slice_critical_ms
1370
+ AND binder_overlap_ms >= binder_overlap_critical_ms
1371
+ THEN 'binder_sync_blocking'
1372
+ -- P2: 小核调度(可能导致 3-4x 性能损失,可操作)
1373
+ WHEN slice_dur > slice_critical_ms
1374
+ AND COALESCE(top_slice_little_pct, 0) >= 45
1375
+ THEN 'small_core_placement'
1376
+ -- P3: 关键操作中的调度延迟
1377
+ WHEN slice_dur > slice_critical_ms
1378
+ AND COALESCE(top_slice_runnable_pct, 0) >= 15
1379
+ THEN 'sched_delay_in_slice'
1380
+ -- P4: 重度业务负载(>2x 帧预算)— 即使在满频下也会超时
1381
+ -- 频率/调度等供给侧因素只是放大因素,不是根因
1382
+ WHEN slice_dur > frame_budget_ms * 2.0
1383
+ THEN 'workload_heavy'
1384
+ -- P5: 大核低频(仅适用于边际情况:slice 在 1x-2x 帧预算区间)
1385
+ WHEN slice_dur > slice_critical_ms
1386
+ AND COALESCE(top_slice_big_pct, 0) >= 40
1387
+ AND COALESCE(top_big_avg_freq_mhz, 0) > 0
1388
+ AND COALESCE(top_big_max_freq_mhz, 0) > 0
1389
+ AND top_big_avg_freq_mhz < top_big_max_freq_mhz * 0.55
1390
+ THEN 'big_core_low_freq'
1391
+ -- P6: 频率爬升慢(仅适用于边际情况:slice 在 1x-2x 帧预算区间)
1392
+ WHEN slice_dur > slice_critical_ms
1393
+ AND COALESCE(ramp_to_high_ms, 0) > freq_ramp_critical_ms
1394
+ AND COALESCE(top_slice_offset_ms, 0) <= ramp_to_high_ms
1395
+ THEN 'freq_ramp_slow'
1396
+ -- P7: 工作负载超时兜底(1x-2x 帧预算,无特定供给侧因素)
1397
+ WHEN slice_dur > slice_critical_ms
1398
+ THEN 'workload_heavy'
1399
+ -- P8: GC 导致帧卡顿(GC pause 与帧窗口重叠 > 1ms)
1400
+ WHEN gc_overlap_ms > 1.0
1401
+ THEN 'gc_jank'
1402
+ WHEN max_sched_ms > sched_max_critical_ms
1403
+ OR total_sched_ms > total_sched_critical_ms
1404
+ OR main_q3 > 20
1405
+ THEN 'scheduling_delay'
1406
+ WHEN main_q2 > 50
1407
+ THEN 'small_core_placement'
1408
+ -- Shader 编译(首次渲染特定图形效果时的编译开销)
1409
+ WHEN COALESCE(shader_ms, 0) > gpu_fence_warning_ms
1410
+ THEN 'shader_compile'
1411
+ -- GPU Fence 等待(渲染管线瓶颈,比 CPU 负载更具可操作性)
1412
+ WHEN fence_ms > gpu_fence_warning_ms
1413
+ THEN 'gpu_wait'
1414
+ WHEN big_freq > 0 AND big_freq_peak > 0 AND big_freq < big_freq_peak * 0.45
1415
+ THEN 'big_core_low_freq'
1416
+ WHEN big_load_pct > 90 OR (big_load_pct > 70 AND little_load_pct > 70)
1417
+ THEN 'cpu_load_high'
1418
+ WHEN io_block_ms > io_block_critical_ms OR main_q4a > 20
1419
+ THEN 'blocking_io'
1420
+ WHEN main_q4b > 30
1421
+ THEN 'lock_binder_wait'
1422
+ ELSE 'unknown'
1423
+ END as reason_code
1424
+ FROM analysis
1425
+ )
1426
+ , base_result AS (
1427
+ SELECT
1428
+ CASE
1429
+ -- 优先级1: 主线程有明确耗时操作(相对帧预算)
1430
+ WHEN slice_dur > slice_critical_ms THEN
1431
+ '主线程耗时操作 "' || slice_name || '" 占用 ' || slice_dur || 'ms (帧预算 ' || frame_budget_ms || 'ms)'
1432
+ -- 优先级2: GPU Fence 等待(相对帧预算)
1433
+ WHEN fence_ms > gpu_fence_critical_ms THEN
1434
+ 'GPU Fence 等待 ' || ROUND(fence_ms, 1) || 'ms,GPU 繁忙无法及时完成渲染'
1435
+ -- 优先级3: 严重调度延迟(相对帧预算)
1436
+ WHEN max_sched_ms > sched_max_critical_ms THEN
1437
+ '主线程调度延迟严重: 最大等待 ' || ROUND(max_sched_ms, 1) || 'ms'
1438
+ -- 优先级4: 主线程大量等待调度 (Q3 > 20%)
1439
+ WHEN main_q3 > 20 THEN
1440
+ '主线程 CPU 争抢严重 (' || main_q3 || '% 时间在等待调度)'
1441
+ -- 优先级5: 主线程 IO 阻塞(相对帧预算)
1442
+ WHEN io_block_ms > io_block_critical_ms THEN
1443
+ '主线程 IO 阻塞 ' || ROUND(io_block_ms, 1) || 'ms (D 状态)'
1444
+ -- 优先级6: 总调度延迟(相对帧预算)
1445
+ WHEN total_sched_ms > total_sched_critical_ms THEN
1446
+ '主线程 Runnable 累计等待 ' || ROUND(total_sched_ms, 1) || 'ms'
1447
+ -- 优先级7a: 主线程 IO 阻塞 (Q4a > 20%)
1448
+ WHEN main_q4a > 20 THEN
1449
+ '主线程 IO 阻塞 (D/DK 状态),占比 ' || main_q4a || '%'
1450
+ -- 优先级7b: 主线程锁/Binder等待 (Q4b > 30%)
1451
+ WHEN main_q4b > 30 THEN
1452
+ '主线程锁/Binder 等待 (S/I 状态),占比 ' || main_q4b || '%'
1453
+ -- 优先级8: RenderThread 休眠 (Q4 > 50%)
1454
+ WHEN (render_q4a + render_q4b) > 50 THEN
1455
+ 'RenderThread 长时间休眠 (' || (render_q4a + render_q4b) || '%),等待主线程或 GPU'
1456
+ -- 优先级9: 主线程在小核运行 (Q2 > 50%)
1457
+ WHEN main_q2 > 50 THEN
1458
+ '主线程被调度到小核 (' || main_q2 || '%),CPU 能力不足'
1459
+ -- 优先级10: CPU 频率问题
1460
+ WHEN big_freq < 1200 AND big_freq > 0 THEN
1461
+ '大核频率过低 (' || big_freq || 'MHz),可能触发温控限频'
1462
+ -- 优先级11: 大核簇负载过高 (>90%)
1463
+ WHEN big_load_pct > 90 THEN
1464
+ '大核簇负载 ' || ROUND(big_load_pct, 0) || '%,CPU 资源严重不足'
1465
+ -- 优先级12: GPU Fence 中等延迟(相对帧预算)
1466
+ WHEN fence_ms > gpu_fence_warning_ms THEN
1467
+ 'GPU Fence 等待 ' || ROUND(fence_ms, 1) || 'ms'
1468
+ -- 优先级13: CPU 整体负载高
1469
+ WHEN big_load_pct > 70 AND little_load_pct > 70 THEN
1470
+ 'CPU 整体负载高 (大核 ' || ROUND(big_load_pct, 0) || '%, 小核 ' || ROUND(little_load_pct, 0) || '%)'
1471
+ -- 优先级14: 有中等耗时操作(相对帧预算)
1472
+ WHEN slice_dur > slice_warning_ms THEN
1473
+ '主线程操作 "' || slice_name || '" 耗时 ' || slice_dur || 'ms'
1474
+ -- 默认
1475
+ ELSE '帧耗时 ${dur_ms}ms 超过 VSync 周期(' || frame_budget_ms || 'ms)'
1476
+ END as primary_cause,
1477
+ CASE
1478
+ WHEN reason_code = 'buffer_stuffing' THEN
1479
+ 'Buffer Stuffing: 管线背压,帧耗时 ' || ${dur_ms} || 'ms,BufferQueue 积压导致跳帧(非 App 问题)'
1480
+ WHEN reason_code = 'binder_sync_blocking' THEN
1481
+ 'Binder 同步阻塞:关键操作与同步Binder重叠 ' || binder_overlap_ms || 'ms(累计 ' ||
1482
+ binder_sync_total_ms || 'ms' ||
1483
+ CASE
1484
+ WHEN COALESCE(binder_overlap_server, '') != '' THEN ',对端 ' || binder_overlap_server || ''
1485
+ ELSE ''
1486
+ END || ')'
1487
+ WHEN reason_code = 'small_core_placement' THEN
1488
+ '线程更多跑在小核:关键操作小核运行占比 ' || COALESCE(top_slice_little_pct, 0) ||
1489
+ '%(大核占比 ' || COALESCE(top_slice_big_pct, 0) || '%)'
1490
+ WHEN reason_code = 'sched_delay_in_slice' THEN
1491
+ '调度延迟:关键操作中 Runnable 等待占比 ' || COALESCE(top_slice_runnable_pct, 0) ||
1492
+ '%,主线程最大调度等待 ' || COALESCE(max_sched_ms, 0) || 'ms'
1493
+ WHEN reason_code = 'big_core_low_freq' THEN
1494
+ '大核低频:关键操作大核运行占比 ' || COALESCE(top_slice_big_pct, 0) ||
1495
+ '%,但平均频率仅 ' || COALESCE(top_big_avg_freq_mhz, big_freq) || 'MHz(片内峰值 ' ||
1496
+ COALESCE(top_big_max_freq_mhz, big_freq_peak) || 'MHz)'
1497
+ WHEN reason_code = 'freq_ramp_slow' THEN
1498
+ '频率爬升慢:帧开始后 ' || COALESCE(ramp_to_high_ms, 0) ||
1499
+ 'ms 才升到高频,关键操作起点 +' || COALESCE(top_slice_offset_ms, 0) || 'ms'
1500
+ WHEN reason_code = 'workload_heavy' THEN
1501
+ CASE
1502
+ WHEN slice_name GLOB '*RV*Prefetch*' OR slice_name GLOB '*OnBind*' OR slice_name GLOB '*Adapter*bind*' OR slice_name GLOB '*bind*'
1503
+ THEN '业务负载重:列表预取/绑定逻辑在主线程串行执行 ' || slice_dur || 'ms(超帧预算 ' || ROUND(slice_dur / NULLIF(frame_budget_ms, 0), 1) || '倍)'
1504
+ WHEN COALESCE(ramp_to_high_ms, 0) > freq_ramp_critical_ms
1505
+ THEN '业务负载重:操作耗时 ' || slice_dur || 'ms(超帧预算 ' || ROUND(slice_dur / NULLIF(frame_budget_ms, 0), 1) || '倍),频率爬升 ' || ramp_to_high_ms || 'ms 为次要加剧因素'
1506
+ ELSE '业务负载重:主线程操作耗时 ' || slice_dur || 'ms(超帧预算 ' || ROUND(slice_dur / NULLIF(frame_budget_ms, 0), 1) || '倍)'
1507
+ END
1508
+ WHEN reason_code = 'scheduling_delay' THEN
1509
+ '调度延迟:主线程 Runnable 累计 ' || COALESCE(total_sched_ms, 0) ||
1510
+ 'ms(最大 ' || COALESCE(max_sched_ms, 0) || 'ms)'
1511
+ WHEN reason_code = 'cpu_load_high' THEN
1512
+ 'CPU 负载高:大核负载 ' || COALESCE(big_load_pct, 0) ||
1513
+ '%,小核负载 ' || COALESCE(little_load_pct, 0) || '%'
1514
+ WHEN reason_code = 'blocking_io' THEN
1515
+ 'IO 阻塞:主线程不可中断睡眠(D/DK) ' || COALESCE(io_block_ms, 0) || 'ms,Q4a 占比 ' || COALESCE(main_q4a, 0) || '%'
1516
+ WHEN reason_code = 'lock_binder_wait' THEN
1517
+ '锁/Binder 等待:主线程可中断睡眠(S/I),Q4b 占比 ' || COALESCE(main_q4b, 0) || '%'
1518
+ WHEN reason_code = 'shader_compile' THEN
1519
+ 'Shader 编译:RenderThread 上着色器编译耗时 ' || COALESCE(shader_ms, 0) || 'ms(' || COALESCE(shader_count, 0) || ' 次),首次渲染或新视觉效果触发'
1520
+ WHEN reason_code = 'gpu_wait' THEN
1521
+ 'GPU 等待:RenderThread/GPU Fence 累计等待 ' || COALESCE(fence_ms, 0) || 'ms'
1522
+ WHEN reason_code = 'gc_jank' THEN
1523
+ 'GC 暂停:帧窗口内 GC 重叠 ' || COALESCE(gc_overlap_ms, 0) || 'ms(' || COALESCE(gc_count, 0) || ' 次 GC)'
1524
+ ELSE NULL
1525
+ END as deep_reason,
1526
+ CASE
1527
+ WHEN reason_code = 'buffer_stuffing' THEN '非 App 问题:BufferQueue 管线背压导致跳帧。检查帧率设置是否匹配显示刷新率,或优化渲染管线吞吐'
1528
+ WHEN reason_code = 'binder_sync_blocking' THEN '优化方向:减少主线程同步 Binder(异步化/批量化/结果缓存)并压缩关键路径 IPC'
1529
+ WHEN reason_code = 'small_core_placement' THEN '优化方向:保证关键滚动路径优先使用大核,减少后台线程对主线程的抢占'
1530
+ WHEN reason_code = 'sched_delay_in_slice' OR reason_code = 'scheduling_delay' THEN '优化方向:降低同窗并发与高优线程竞争,缩短主线程 Runnable 等待'
1531
+ WHEN reason_code = 'big_core_low_freq' THEN '优化方向:在输入/滚动前预拉频,避免大核低频执行关键 UI 热路径'
1532
+ WHEN reason_code = 'freq_ramp_slow' THEN '优化方向:使用 touch/scroll boost 提前拉频,减少频率爬升滞后'
1533
+ WHEN reason_code = 'workload_heavy' THEN
1534
+ CASE
1535
+ WHEN slice_name GLOB '*RV*Prefetch*' OR slice_name GLOB '*OnBind*' OR slice_name GLOB '*Adapter*bind*' OR slice_name GLOB '*bind*'
1536
+ THEN '优化方向:拆分 RV Prefetch/OnBind 重逻辑,预计算和缓存绑定数据,避免主线程串行重活'
1537
+ ELSE '优化方向:把关键帧内重逻辑拆分到后台并做结果复用,缩短主线程单次执行时长'
1538
+ END
1539
+ WHEN reason_code = 'cpu_load_high' THEN '优化方向:降低 CPU 总负载并限制后台并发,优先保障 UI 与 RenderThread 预算'
1540
+ WHEN reason_code = 'blocking_io' THEN '优化方向:排查主线程 IO 操作(文件读写/页缺失/磁盘同步),移至后台线程或使用异步 IO'
1541
+ WHEN reason_code = 'lock_binder_wait' THEN '优化方向:减少主线程同步等待(Binder/锁/futex),缩短临界区和同步链路'
1542
+ WHEN reason_code = 'shader_compile' THEN '优化方向:使用 PrecompiledShaders / Shader Warm-up 在启动时预编译着色器,避免滑动时动态编译'
1543
+ WHEN reason_code = 'gpu_wait' THEN '优化方向:降低 draw 复杂度/overdraw,减少 GPU Fence 等待'
1544
+ WHEN reason_code = 'gc_jank' THEN '优化方向:减少帧渲染路径上的对象分配,使用对象池化/预分配,避免 GC 暂停重叠关键帧'
1545
+ ELSE '优化方向:扩大同窗样本做聚类,确认该慢原因是否稳定复现'
1546
+ END as optimization_hint,
1547
+ reason_code,
1548
+ CASE
1549
+ WHEN reason_code = 'buffer_stuffing' THEN 'Buffer Stuffing 管线背压(jank_type=${jank_type})'
1550
+ WHEN reason_code = 'binder_sync_blocking' THEN '同步 Binder 重叠 ' || COALESCE(binder_overlap_ms, 0) || 'ms'
1551
+ WHEN reason_code = 'small_core_placement' THEN '关键操作小核占比 ' || COALESCE(top_slice_little_pct, 0) || '%'
1552
+ WHEN reason_code = 'sched_delay_in_slice' THEN '关键操作 Runnable 占比 ' || COALESCE(top_slice_runnable_pct, 0) || '%'
1553
+ WHEN reason_code = 'big_core_low_freq' THEN '关键操作大核频率 ' || COALESCE(top_big_avg_freq_mhz, big_freq) || 'MHz'
1554
+ WHEN reason_code = 'freq_ramp_slow' THEN '高频拉升耗时 ' || COALESCE(ramp_to_high_ms, 0) || 'ms'
1555
+ WHEN reason_code = 'workload_heavy' THEN '操作 "' || COALESCE(slice_name, 'unknown') || '" 耗时 ' || COALESCE(slice_dur, 0) || 'ms(超帧预算 ' || ROUND(COALESCE(slice_dur, 0) / NULLIF(frame_budget_ms, 0), 1) || 'x)' ||
1556
+ CASE WHEN COALESCE(ramp_to_high_ms, 0) > freq_ramp_critical_ms THEN ',频率爬升 ' || ramp_to_high_ms || 'ms 加剧' ELSE '' END
1557
+ WHEN reason_code = 'gc_jank' THEN 'GC 重叠 ' || COALESCE(gc_overlap_ms, 0) || 'ms(' || COALESCE(gc_count, 0) || ' 次)'
1558
+ WHEN reason_code = 'shader_compile' THEN 'Shader 编译 ' || COALESCE(shader_ms, 0) || 'ms(' || COALESCE(shader_count, 0) || ' 次)'
1559
+ WHEN fence_ms > gpu_fence_warning_ms THEN 'GPU Fence 等待 ' || ROUND(fence_ms, 1) || 'ms'
1560
+ WHEN total_sched_ms > (total_sched_critical_ms * 0.5) THEN '调度等待累计 ' || ROUND(total_sched_ms, 1) || 'ms'
1561
+ WHEN big_load_pct > 70 THEN '大核负载 ' || ROUND(big_load_pct, 0) || '%'
1562
+ WHEN big_freq > 0 AND big_freq < 1500 THEN '大核平均频率 ' || big_freq || 'MHz'
1563
+ WHEN main_q2 > 30 THEN '小核运行占比 ' || main_q2 || '%'
1564
+ ELSE NULL
1565
+ END as secondary_info,
1566
+ CASE
1567
+ WHEN slice_dur > slice_critical_ms THEN '高'
1568
+ WHEN gc_overlap_ms > 1.0 THEN '高'
1569
+ WHEN fence_ms > gpu_fence_critical_ms THEN '高'
1570
+ WHEN max_sched_ms > sched_max_critical_ms THEN '高'
1571
+ WHEN main_q3 > 20 THEN '高'
1572
+ WHEN io_block_ms > io_block_critical_ms THEN '高'
1573
+ WHEN total_sched_ms > total_sched_critical_ms THEN '高'
1574
+ WHEN big_load_pct > 90 THEN '高'
1575
+ WHEN COALESCE(shader_ms, 0) > gpu_fence_warning_ms THEN '高'
1576
+ WHEN main_q4a > 20 OR main_q4b > 30 THEN '中'
1577
+ WHEN fence_ms > gpu_fence_warning_ms THEN '中'
1578
+ WHEN big_load_pct > 70 AND little_load_pct > 70 THEN '中'
1579
+ WHEN slice_dur > slice_warning_ms THEN '中'
1580
+ ELSE '低'
1581
+ END as confidence,
1582
+ CASE
1583
+ -- SF 合成超时短路:jank_responsibility 指向 SF,App 侧指标不相关
1584
+ WHEN '${jank_responsibility}' = 'SF' THEN 'sf_composition'
1585
+ WHEN slice_dur > slice_critical_ms THEN 'slice'
1586
+ WHEN fence_ms > gpu_fence_critical_ms THEN 'gpu_fence'
1587
+ WHEN max_sched_ms > sched_max_critical_ms THEN 'sched_latency'
1588
+ WHEN main_q3 > 20 THEN 'cpu_contention'
1589
+ WHEN io_block_ms > io_block_critical_ms THEN 'io_blocking'
1590
+ WHEN total_sched_ms > total_sched_critical_ms THEN 'sched_latency'
1591
+ WHEN main_q4a > 20 THEN 'io_blocking'
1592
+ WHEN main_q4b > 30 THEN 'blocking'
1593
+ -- RenderThread 负载过重:RT 主动运行,非等待 GPU/SF
1594
+ WHEN render_q4a < 10 AND render_q4b < 20 AND COALESCE(shader_ms, 0) <= gpu_fence_warning_ms
1595
+ AND fence_ms <= gpu_fence_warning_ms
1596
+ THEN 'render_heavy'
1597
+ WHEN (render_q4a + render_q4b) > 50 THEN 'render_wait'
1598
+ WHEN COALESCE(shader_ms, 0) > gpu_fence_warning_ms THEN 'shader_compile'
1599
+ WHEN gc_overlap_ms > 1.0 THEN 'gc_pause'
1600
+ WHEN main_q2 > 50 THEN 'small_core'
1601
+ WHEN big_freq < 1200 AND big_freq > 0 THEN 'freq_limit'
1602
+ WHEN big_load_pct > 90 THEN 'cpu_overload'
1603
+ WHEN fence_ms > gpu_fence_warning_ms THEN 'gpu_fence'
1604
+ WHEN big_load_pct > 70 AND little_load_pct > 70 THEN 'cpu_overload'
1605
+ ELSE 'unknown'
1606
+ END as cause_type,
1607
+ slice_name,
1608
+ slice_dur,
1609
+ frame_budget_ms,
1610
+ ${dur_ms} as frame_dur_ms,
1611
+ '${jank_type}' as jank_type,
1612
+ '${jank_responsibility}' as jank_responsibility,
1613
+ max_sched_ms,
1614
+ total_sched_ms,
1615
+ main_q2,
1616
+ main_q3,
1617
+ main_q4a,
1618
+ main_q4b,
1619
+ big_freq,
1620
+ big_freq_peak,
1621
+ top_slice_little_pct,
1622
+ top_slice_big_pct,
1623
+ top_slice_runnable_pct,
1624
+ top_big_avg_freq_mhz,
1625
+ top_big_max_freq_mhz,
1626
+ ramp_to_high_ms,
1627
+ binder_overlap_ms,
1628
+ binder_sync_total_ms,
1629
+ big_load_pct,
1630
+ little_load_pct,
1631
+ io_block_ms,
1632
+ render_q4a,
1633
+ render_q4b,
1634
+ fence_ms,
1635
+ shader_ms,
1636
+ shader_count,
1637
+ sched_max_critical_ms,
1638
+ total_sched_critical_ms,
1639
+ io_block_critical_ms
1640
+ FROM classified
1641
+ )
1642
+ SELECT
1643
+ primary_cause,
1644
+ deep_reason,
1645
+ optimization_hint,
1646
+ reason_code,
1647
+ secondary_info,
1648
+ confidence,
1649
+ cause_type,
1650
+ slice_name,
1651
+ slice_dur,
1652
+ frame_budget_ms,
1653
+ main_q3 as main_q3_pct,
1654
+ main_q4a as main_q4a_pct,
1655
+ main_q4b as main_q4b_pct,
1656
+ render_q4a as render_q4a_pct,
1657
+ render_q4b as render_q4b_pct,
1658
+ max_sched_ms as main_max_sched_ms,
1659
+ io_block_ms as main_io_block_ms,
1660
+ fence_ms as gpu_fence_ms,
1661
+ frame_dur_ms,
1662
+ jank_type,
1663
+ CASE
1664
+ WHEN cause_type IN ('slice', 'blocking', 'io_blocking') THEN 'trigger'
1665
+ WHEN cause_type IN ('sched_latency', 'cpu_contention', 'small_core', 'freq_limit', 'cpu_overload') THEN 'supply'
1666
+ WHEN cause_type IN ('gpu_fence', 'render_wait', 'shader_compile') THEN 'amplification'
1667
+ WHEN cause_type = 'gc_pause' THEN 'trigger'
1668
+ WHEN cause_type = 'sf_composition' THEN 'amplification'
1669
+ WHEN cause_type = 'render_heavy' THEN 'trigger'
1670
+ ELSE 'unknown'
1671
+ END as mechanism_group,
1672
+ CASE
1673
+ WHEN reason_code = 'buffer_stuffing' THEN 'none'
1674
+ WHEN reason_code = 'sf_composition_slow' THEN 'none'
1675
+ WHEN reason_code = 'thermal_throttling' THEN 'thermal_throttle'
1676
+ WHEN reason_code IN ('binder_sync_blocking', 'blocking_io', 'lock_binder_wait', 'binder_timeout') THEN 'blocking_wait'
1677
+ WHEN reason_code = 'gc_jank' THEN 'gc_pause'
1678
+ WHEN reason_code = 'gc_pressure_cascade' THEN 'gc_pause'
1679
+ WHEN reason_code = 'small_core_placement' THEN 'core_placement'
1680
+ WHEN reason_code IN ('big_core_low_freq', 'freq_ramp_slow', 'cpu_max_limited') THEN 'frequency_insufficient'
1681
+ WHEN reason_code IN ('sched_delay_in_slice', 'scheduling_delay') THEN 'scheduling_delay'
1682
+ WHEN reason_code IN ('cpu_load_high', 'cpu_saturation') THEN 'load_high'
1683
+ WHEN reason_code = 'main_thread_file_io' THEN 'blocking_wait'
1684
+ WHEN reason_code = 'render_thread_heavy' THEN 'none'
1685
+ WHEN reason_code = 'shader_compile' THEN 'none'
1686
+ WHEN reason_code = 'workload_heavy' THEN 'none'
1687
+ WHEN io_block_ms > io_block_critical_ms OR main_q4a > 20 OR main_q4b > 30 THEN 'blocking_wait'
1688
+ WHEN big_freq < 1200 AND big_freq > 0 THEN 'frequency_insufficient'
1689
+ WHEN main_q2 > 50 THEN 'core_placement'
1690
+ WHEN max_sched_ms > sched_max_critical_ms OR total_sched_ms > total_sched_critical_ms OR main_q3 > 20 THEN 'scheduling_delay'
1691
+ WHEN big_load_pct > 90 OR (big_load_pct > 70 AND little_load_pct > 70) THEN 'load_high'
1692
+ WHEN cause_type = 'freq_limit' THEN 'frequency_insufficient'
1693
+ WHEN cause_type = 'small_core' THEN 'core_placement'
1694
+ WHEN cause_type IN ('sched_latency', 'cpu_contention') THEN 'scheduling_delay'
1695
+ WHEN cause_type = 'cpu_overload' THEN 'load_high'
1696
+ WHEN cause_type IN ('blocking', 'io_blocking') THEN 'blocking_wait'
1697
+ ELSE 'none'
1698
+ END as supply_constraint,
1699
+ CASE
1700
+ WHEN reason_code = 'buffer_stuffing' THEN 'buffer_pipeline'
1701
+ WHEN reason_code = 'sf_composition_slow' THEN 'sf_consumer'
1702
+ WHEN cause_type IN ('slice', 'blocking', 'io_blocking', 'sched_latency', 'cpu_contention', 'small_core', 'freq_limit', 'cpu_overload', 'gc_pause', 'render_heavy') THEN 'app_producer'
1703
+ WHEN cause_type IN ('gpu_fence', 'render_wait', 'shader_compile', 'sf_composition') THEN 'sf_consumer'
1704
+ ELSE 'unknown'
1705
+ END as trigger_layer,
1706
+ CASE
1707
+ WHEN reason_code = 'buffer_stuffing' THEN 'buffer_queue_backpressure'
1708
+ WHEN reason_code = 'sf_composition_slow' THEN 'sf_consumer_backpressure'
1709
+ WHEN cause_type = 'gpu_fence' THEN 'gpu_fence_wait'
1710
+ WHEN cause_type = 'shader_compile' THEN 'shader_compile_stall'
1711
+ WHEN cause_type IN ('render_wait', 'sf_composition') THEN 'render_pipeline_wait'
1712
+ WHEN cause_type = 'render_heavy' THEN 'app_deadline_miss'
1713
+ WHEN jank_responsibility = 'SF' THEN 'sf_consumer_backpressure'
1714
+ WHEN jank_responsibility = 'APP' THEN 'app_deadline_miss'
1715
+ ELSE 'unknown'
1716
+ END as amplification_path
1717
+ FROM base_result
1718
+ save_as: root_cause
1719
+ optional: true
1720
+
1721
+ - id: frame_diagnosis
1722
+ type: diagnostic
1723
+ name: "帧诊断"
1724
+ display:
1725
+ level: detail
1726
+ layer: deep
1727
+ title: "详细诊断"
1728
+ inputs: [quadrant_data, binder_data, freq_data, main_slices, render_slices, freq_timeline, lock_data, gc_data, io_data, root_cause, sched_data, migration_data, gpu_data, binder_blocking_data, throttling_data, cluster_load_data, page_fault_data, sf_data, gpu_freq_data, vsync_data, pipeline_data]
1729
+ rules:
1730
+ # ===== 最高优先级:根因分析总结 =====
1731
+ - condition: "root_cause?.data?.[0]?.primary_cause"
1732
+ severity: critical
1733
+ diagnosis: "${root_cause.data[0].primary_cause}"
1734
+ confidence: "${root_cause.data[0].confidence === '高' ? 'high' : root_cause.data[0].confidence === '中' ? 'medium' : 'low'}"
1735
+ suggestions:
1736
+ - "${root_cause.data[0].secondary_info || '查看下方详细数据分析具体原因'}"
1737
+
1738
+ # ===== 高优先级:锁竞争 =====
1739
+ - condition: "lock_data?.data?.length > 0 && lock_data.data[0]?.wait_ms > 1"
1740
+ severity: critical
1741
+ diagnosis: "锁竞争等待 ${lock_data.data[0].wait_ms}ms (${lock_data.data[0].blocking_method})"
1742
+ confidence: high
1743
+ suggestions:
1744
+ - "检查持锁线程是否在做耗时操作"
1745
+ - "考虑减少锁粒度或使用无锁数据结构"
1746
+
1747
+ - condition: "lock_data?.data?.length > 0 && lock_data.data[0]?.main_blocked === 1"
1748
+ severity: critical
1749
+ diagnosis: "主线程被锁阻塞 (等待 ${lock_data.data[0].blocking_thread_name})"
1750
+ confidence: high
1751
+ suggestions:
1752
+ - "避免在持锁时做 Binder/IO 操作"
1753
+ - "考虑使用异步锁或拆分锁"
1754
+
1755
+ # ===== 高优先级:IO 阻塞 =====
1756
+ - condition: "io_data?.data?.length > 0 && io_data.data[0]?.total_ms > 3"
1757
+ severity: critical
1758
+ diagnosis: "IO 阻塞 ${io_data.data[0].total_ms}ms (${io_data.data[0].thread_name}, ${io_data.data[0].io_cause})"
1759
+ confidence: high
1760
+ suggestions:
1761
+ - "将文件/数据库 IO 移到后台线程"
1762
+ - "检查是否有不必要的同步 IO 操作"
1763
+
1764
+ - condition: "io_data?.data?.length > 0 && io_data.data[0]?.total_ms > 1"
1765
+ severity: warning
1766
+ diagnosis: "${io_data.data[0].thread_name} IO 等待 ${io_data.data[0].total_ms}ms"
1767
+ confidence: high
1768
+ suggestions:
1769
+ - "检查帧期间是否有磁盘读写操作"
1770
+ - "考虑使用内存映射或预加载"
1771
+
1772
+ # ===== 高优先级:GC 影响 =====
1773
+ - condition: "gc_data?.data?.length > 0 && gc_data.data.reduce((s, g) => s + (g.overlap_ms || 0), 0) > 3"
1774
+ severity: critical
1775
+ diagnosis: "GC 严重影响帧渲染:总重叠 ${gc_data.data.reduce((s, g) => s + (g.overlap_ms || 0), 0).toFixed(1)}ms"
1776
+ confidence: high
1777
+ suggestions:
1778
+ - "减少帧期间的对象分配"
1779
+ - "检查是否有大对象频繁创建"
1780
+ - "考虑对象池化或预分配"
1781
+
1782
+ - condition: "gc_data?.data?.length > 0 && gc_data.data[0]?.overlap_ms > 1"
1783
+ severity: warning
1784
+ diagnosis: "GC (${gc_data.data[0].gc_type}) 与帧重叠 ${gc_data.data[0].overlap_ms}ms"
1785
+ confidence: high
1786
+ suggestions:
1787
+ - "减少短生命周期对象的分配"
1788
+ - "避免在 onDraw/onLayout 中创建对象"
1789
+
1790
+ # ===== 高优先级:调度延迟 =====
1791
+ - condition: "sched_data?.data?.length > 0 && sched_data.data[0]?.max_latency_ms > 5"
1792
+ severity: critical
1793
+ diagnosis: "${sched_data.data[0].thread_name} 调度延迟严重: 最大 ${sched_data.data[0].max_latency_ms}ms"
1794
+ confidence: high
1795
+ suggestions:
1796
+ - "检查系统是否有高优先级进程抢占 CPU"
1797
+ - "考虑提高 UI 线程优先级"
1798
+ - "检查后台任务是否过于密集"
1799
+
1800
+ - condition: "sched_data?.data?.length > 0 && sched_data.data[0]?.total_runnable_ms > 3"
1801
+ severity: warning
1802
+ diagnosis: "${sched_data.data[0].thread_name} Runnable 等待 ${sched_data.data[0].total_runnable_ms}ms (${sched_data.data[0].runnable_count}次)"
1803
+ confidence: high
1804
+ suggestions:
1805
+ - "系统 CPU 资源紧张"
1806
+ - "检查是否有密集计算任务"
1807
+
1808
+ # ===== 高优先级:大小核迁移 =====
1809
+ - condition: "migration_data?.data?.length > 0 && migration_data.data[0]?.big_to_little > 2"
1810
+ severity: warning
1811
+ diagnosis: "${migration_data.data[0].thread_name} 从大核迁移到小核 ${migration_data.data[0].big_to_little}次"
1812
+ confidence: high
1813
+ suggestions:
1814
+ - "检查系统温控策略是否过于激进"
1815
+ - "考虑绑定 UI 线程到大核"
1816
+
1817
+ - condition: "migration_data?.data?.length > 0 && migration_data.data[0]?.big_core_pct < 30"
1818
+ severity: warning
1819
+ diagnosis: "${migration_data.data[0].thread_name} 大核运行占比仅 ${migration_data.data[0].big_core_pct}%"
1820
+ confidence: high
1821
+ suggestions:
1822
+ - "UI 线程未能获得足够大核资源"
1823
+ - "检查调度器配置"
1824
+
1825
+ # ===== 高优先级:GPU 操作 =====
1826
+ - condition: "gpu_data?.data?.find(g => g.operation === 'GPU Fence Wait')?.total_ms > 3"
1827
+ severity: critical
1828
+ diagnosis: "GPU Fence 等待 ${gpu_data.data.find(g => g.operation === 'GPU Fence Wait')?.total_ms}ms"
1829
+ confidence: high
1830
+ suggestions:
1831
+ - "GPU 繁忙,无法及时完成上一帧"
1832
+ - "检查是否有复杂的 GPU 着色器"
1833
+ - "减少过度绘制"
1834
+
1835
+ - condition: "gpu_data?.data?.find(g => g.operation === 'EGL SwapBuffers')?.max_ms > 5"
1836
+ severity: warning
1837
+ diagnosis: "EGL SwapBuffers 耗时 ${gpu_data.data.find(g => g.operation === 'EGL SwapBuffers')?.max_ms}ms"
1838
+ confidence: high
1839
+ suggestions:
1840
+ - "帧缓冲交换延迟,可能是 GPU/SF 瓶颈"
1841
+ - "检查三缓冲是否正常"
1842
+
1843
+ # ===== 高优先级:Binder 阻塞 =====
1844
+ - condition: "binder_blocking_data?.data?.length > 0 && binder_blocking_data.data[0]?.max_block_ms > 5"
1845
+ severity: critical
1846
+ diagnosis: "Binder 同步调用阻塞 ${binder_blocking_data.data[0].max_block_ms}ms (${binder_blocking_data.data[0].server_process})"
1847
+ confidence: high
1848
+ suggestions:
1849
+ - "将 Binder 调用移到后台线程"
1850
+ - "使用 oneway Binder 调用"
1851
+ - "检查服务端是否有性能问题"
1852
+
1853
+ - condition: "binder_blocking_data?.data?.length > 0 && binder_blocking_data.data[0]?.total_block_ms > 2"
1854
+ severity: warning
1855
+ diagnosis: "Binder 调用总阻塞 ${binder_blocking_data.data[0].total_block_ms}ms (${binder_blocking_data.data[0].call_count}次)"
1856
+ confidence: high
1857
+ suggestions:
1858
+ - "减少帧期间的 Binder 调用次数"
1859
+ - "考虑批量处理或缓存"
1860
+
1861
+ # ===== 高优先级:CPU 限频 =====
1862
+ - condition: "Boolean(throttling_data?.data?.find(t => t.core_type === 'big' && t.throttle_detected === 1 && (t.freq_drop_pct || 0) > 20 && (t.max_freq_mhz || 0) > (t.min_freq_mhz || 0)))"
1863
+ severity: critical
1864
+ diagnosis: "检测到 CPU 限频: 大核最低 ${throttling_data.data.find(t => t.core_type === 'big' && t.throttle_detected === 1)?.min_freq_mhz}MHz(峰值 ${throttling_data.data.find(t => t.core_type === 'big' && t.throttle_detected === 1)?.max_freq_mhz}MHz,降幅 ${throttling_data.data.find(t => t.core_type === 'big' && t.throttle_detected === 1)?.freq_drop_pct}%)"
1865
+ confidence: high
1866
+ suggestions:
1867
+ - "设备温度过高触发限频"
1868
+ - "减少持续高负载任务"
1869
+ - "检查散热状况"
1870
+
1871
+ - condition: "Boolean(throttling_data?.data?.find(t => t.core_type === 'big' && (t.freq_drop_pct || 0) > 20))"
1872
+ severity: warning
1873
+ diagnosis: "帧期间大核降频 ${throttling_data.data.find(t => t.core_type === 'big')?.freq_drop_pct}%"
1874
+ confidence: high
1875
+ suggestions:
1876
+ - "CPU 频率不稳定影响性能"
1877
+ - "检查功耗管理策略"
1878
+
1879
+ # ===== 高优先级:CPU 簇负载 =====
1880
+ - condition: "cluster_load_data?.data?.find(c => c.cluster === '大核簇')?.load_pct > 90"
1881
+ severity: critical
1882
+ diagnosis: "大核簇负载 ${cluster_load_data.data.find(c => c.cluster === '大核簇')?.load_pct}%,接近跑满"
1883
+ confidence: high
1884
+ suggestions:
1885
+ - "大核资源严重不足"
1886
+ - "检查是否有后台密集计算任务"
1887
+ - "考虑优化或推迟非关键任务"
1888
+
1889
+ - condition: "cluster_load_data?.data?.find(c => c.cluster === '小核簇')?.load_pct > 95"
1890
+ severity: warning
1891
+ diagnosis: "小核簇负载 ${cluster_load_data.data.find(c => c.cluster === '小核簇')?.load_pct}%,几乎跑满"
1892
+ confidence: high
1893
+ suggestions:
1894
+ - "系统整体负载很高"
1895
+ - "后台任务可能挤占资源"
1896
+
1897
+ - condition: "cluster_load_data?.data?.find(c => c.cluster === '大核簇')?.load_pct > 70 && cluster_load_data?.data?.find(c => c.cluster === '小核簇')?.load_pct > 70"
1898
+ severity: warning
1899
+ diagnosis: "CPU 整体负载高: 大核 ${cluster_load_data.data.find(c => c.cluster === '大核簇')?.load_pct}%, 小核 ${cluster_load_data.data.find(c => c.cluster === '小核簇')?.load_pct}%"
1900
+ confidence: high
1901
+ suggestions:
1902
+ - "系统 CPU 资源紧张"
1903
+ - "多任务竞争导致调度延迟"
1904
+
1905
+ - condition: "cluster_load_data?.data?.find(c => c.cluster === '大核簇')?.max_single_core_pct > 95"
1906
+ severity: info
1907
+ diagnosis: "大核簇中有核心接近 100% (${cluster_load_data.data.find(c => c.cluster === '大核簇')?.max_single_core_pct}%)"
1908
+ confidence: medium
1909
+ suggestions:
1910
+ - "可能有单线程密集任务"
1911
+ - "检查是否有热点线程"
1912
+
1913
+ # ===== 高优先级:页面错误 =====
1914
+ - condition: "page_fault_data?.data?.length > 0 && page_fault_data.data[0]?.total_ms > 2"
1915
+ severity: critical
1916
+ diagnosis: "${page_fault_data.data[0].thread_name} 内存操作阻塞 ${page_fault_data.data[0].total_ms}ms (${page_fault_data.data[0].fault_type})"
1917
+ confidence: high
1918
+ suggestions:
1919
+ - "触发页面错误或内存回收"
1920
+ - "预加载可能需要的数据"
1921
+ - "检查内存压力"
1922
+
1923
+ - condition: "page_fault_data?.data?.find(p => p.fault_type === 'memory_reclaim')?.total_ms > 1"
1924
+ severity: warning
1925
+ diagnosis: "系统内存回收导致阻塞 ${page_fault_data.data.find(p => p.fault_type === 'memory_reclaim')?.total_ms}ms"
1926
+ confidence: high
1927
+ suggestions:
1928
+ - "系统内存紧张"
1929
+ - "检查应用内存使用"
1930
+
1931
+ # ===== 中优先级:SurfaceFlinger =====
1932
+ - condition: "sf_data?.data?.find(s => s.composition_type === 'Composite')?.total_ms > 3"
1933
+ severity: warning
1934
+ diagnosis: "SurfaceFlinger 合成耗时 ${sf_data.data.find(s => s.composition_type === 'Composite')?.total_ms}ms"
1935
+ confidence: medium
1936
+ suggestions:
1937
+ - "系统合成层可能是瓶颈"
1938
+ - "检查图层数量和复杂度"
1939
+
1940
+ # ===== 中优先级:GPU 频率 =====
1941
+ - condition: "gpu_freq_data?.data?.length > 0 && gpu_freq_data.data[0]?.low_freq_pct > 50"
1942
+ severity: warning
1943
+ diagnosis: "GPU 低频运行占比 ${gpu_freq_data.data[0].low_freq_pct}%"
1944
+ confidence: medium
1945
+ suggestions:
1946
+ - "GPU 未能提升频率"
1947
+ - "检查 GPU 功耗策略"
1948
+
1949
+ # ===== 中优先级:VSync 对齐 =====
1950
+ - condition: "vsync_data?.data?.find(v => v.metric === '截止时间')?.value?.includes('超时')"
1951
+ severity: warning
1952
+ diagnosis: "帧未能在 VSync 前完成: ${vsync_data.data.find(v => v.metric === '截止时间')?.value}"
1953
+ confidence: high
1954
+ suggestions:
1955
+ - "帧渲染超过 VSync 周期"
1956
+ - "需要优化帧渲染时间"
1957
+
1958
+ # ===== 信息级:渲染流水线分解 =====
1959
+ - condition: "pipeline_data?.data?.find(p => p.stage?.includes('主线程'))?.pct > 70"
1960
+ severity: info
1961
+ diagnosis: "主线程占用帧时间 ${pipeline_data.data.find(p => p.stage?.includes('主线程'))?.pct}%"
1962
+ confidence: high
1963
+ suggestions:
1964
+ - "主线程是主要瓶颈"
1965
+ - "检查主线程耗时操作"
1966
+
1967
+ - condition: "pipeline_data?.data?.find(p => p.stage?.includes('RenderThread'))?.pct > 60"
1968
+ severity: info
1969
+ diagnosis: "RenderThread 占用帧时间 ${pipeline_data.data.find(p => p.stage?.includes('RenderThread'))?.pct}%"
1970
+ confidence: high
1971
+ suggestions:
1972
+ - "渲染是主要瓶颈"
1973
+ - "检查 GPU 操作和绘制复杂度"
1974
+
1975
+ # ===== 高优先级:Binder 调用 =====
1976
+ - condition: "binder_data?.data?.length > 0 && binder_data.data[0]?.dur_ms > 2"
1977
+ severity: warning
1978
+ diagnosis: "Binder 调用耗时 ${binder_data.data[0].dur_ms}ms (${binder_data.data[0].interface})"
1979
+ confidence: high
1980
+ suggestions:
1981
+ - "检查是否可以异步调用"
1982
+ - "考虑使用缓存减少调用次数"
1983
+
1984
+ # ===== 四象限分析(使用 .find() 查找特定象限)=====
1985
+ # Q3 等待调度 - 说明 CPU 繁忙
1986
+ - condition: "quadrant_data?.data?.find(q => q.quadrant?.includes('Q3'))?.percentage > 15"
1987
+ severity: warning
1988
+ diagnosis: "主线程 Runnable 等待 ${quadrant_data.data.find(q => q.quadrant?.includes('Q3'))?.percentage}%"
1989
+ confidence: high
1990
+ suggestions:
1991
+ - "CPU 资源争抢,检查后台任务"
1992
+ - "考虑提高线程优先级"
1993
+
1994
+ # Q4 休眠阻塞 - 说明在等待 IO 或锁
1995
+ - condition: "quadrant_data?.data?.find(q => q.quadrant?.includes('MainThread') && q.quadrant?.includes('Q4'))?.percentage > 40"
1996
+ severity: warning
1997
+ diagnosis: "主线程休眠/阻塞时间占比 ${quadrant_data.data.find(q => q.quadrant?.includes('MainThread') && q.quadrant?.includes('Q4'))?.percentage}%"
1998
+ confidence: high
1999
+ suggestions:
2000
+ - "检查是否有 IO 操作或锁等待"
2001
+ - "考虑使用异步 IO"
2002
+
2003
+ # Q2 小核运行占比高 - 说明调度可能有问题
2004
+ - condition: "quadrant_data?.data?.find(q => q.quadrant?.includes('MainThread') && q.quadrant?.includes('Q2'))?.percentage > 60"
2005
+ severity: info
2006
+ diagnosis: "主线程主要运行在小核 (${quadrant_data.data.find(q => q.quadrant?.includes('MainThread') && q.quadrant?.includes('Q2'))?.percentage}%)"
2007
+ confidence: medium
2008
+ suggestions:
2009
+ - "检查系统温控是否限制大核"
2010
+ - "考虑提高线程优先级"
2011
+
2012
+ # ===== 主线程耗时操作 =====
2013
+ - condition: "main_slices?.data?.length > 0 && main_slices.data[0]?.dur_ms > 5"
2014
+ severity: warning
2015
+ diagnosis: "主线程操作 '${main_slices.data[0].name}' 耗时 ${main_slices.data[0].dur_ms}ms"
2016
+ confidence: high
2017
+ suggestions:
2018
+ - "考虑将耗时操作移到后台线程"
2019
+ - "优化该操作的执行效率"
2020
+
2021
+ # ===== RenderThread 耗时操作 =====
2022
+ - condition: "render_slices?.data?.length > 0 && render_slices.data[0]?.dur_ms > 3"
2023
+ severity: warning
2024
+ diagnosis: "RenderThread 操作 '${render_slices.data[0].name}' 耗时 ${render_slices.data[0].dur_ms}ms"
2025
+ confidence: high
2026
+ suggestions:
2027
+ - "检查是否有复杂的自定义绘制"
2028
+ - "考虑减少绘制复杂度或使用硬件加速"
2029
+
2030
+ # ===== CPU 频率分析 =====
2031
+ - condition: "freq_data?.data?.find(f => f.core_type === 'big')?.avg_freq_mhz < 1500"
2032
+ severity: info
2033
+ diagnosis: "大核频率偏低 (${freq_data.data?.find(f => f.core_type === 'big')?.avg_freq_mhz || 0}MHz)"
2034
+ confidence: medium
2035
+ suggestions:
2036
+ - "系统可能处于省电模式"
2037
+ - "检查温控策略"
2038
+
2039
+ # ===== CPU 频率变化 =====
2040
+ - condition: "freq_timeline?.data?.filter(f => f.change_direction === 'down' && f.core_type === 'big').length > 2"
2041
+ severity: info
2042
+ diagnosis: "大核频率降频 ${freq_timeline.data?.filter(f => f.change_direction === 'down' && f.core_type === 'big').length || 0}次"
2043
+ confidence: medium
2044
+ suggestions:
2045
+ - "可能触发了温控降频"
2046
+ - "检查系统负载和温度"
2047
+
2048
+ # ===== 严重掉帧检测:基于消费端 vsync_missed =====
2049
+ - condition: "${vsync_missed} >= 3"
2050
+ severity: critical
2051
+ diagnosis: "严重卡顿: SF 跳过 ${vsync_missed} 帧 VSync (约 ${vsync_missed} 个 VSync 周期)"
2052
+ confidence: high
2053
+ suggestions:
2054
+ - "检查此时系统是否有大量后台活动"
2055
+ - "查看主线程和 RenderThread 的阻塞原因"
2056
+
2057
+ - condition: "${vsync_missed} >= 1"
2058
+ severity: warning
2059
+ diagnosis: "掉帧: SF 跳过 ${vsync_missed} 帧 VSync"
2060
+ confidence: high
2061
+ suggestions:
2062
+ - "查看上方四象限和耗时操作数据"
2063
+
2064
+ output:
2065
+ format: structured