claude-mpm 4.20.3__py3-none-any.whl → 4.25.10__py3-none-any.whl

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.

Potentially problematic release.


This version of claude-mpm might be problematic. Click here for more details.

Files changed (454) hide show
  1. claude_mpm/VERSION +1 -1
  2. claude_mpm/agents/BASE_PM.md +23 -6
  3. claude_mpm/agents/OUTPUT_STYLE.md +3 -48
  4. claude_mpm/agents/PM_INSTRUCTIONS.md +1783 -34
  5. claude_mpm/agents/WORKFLOW.md +75 -2
  6. claude_mpm/agents/base_agent.json +6 -3
  7. claude_mpm/agents/frontmatter_validator.py +1 -1
  8. claude_mpm/agents/templates/api_qa.json +5 -2
  9. claude_mpm/agents/templates/circuit_breakers.md +108 -2
  10. claude_mpm/agents/templates/documentation.json +33 -6
  11. claude_mpm/agents/templates/javascript_engineer_agent.json +380 -0
  12. claude_mpm/agents/templates/php-engineer.json +10 -4
  13. claude_mpm/agents/templates/pm_red_flags.md +89 -19
  14. claude_mpm/agents/templates/project_organizer.json +7 -3
  15. claude_mpm/agents/templates/qa.json +2 -1
  16. claude_mpm/agents/templates/react_engineer.json +1 -0
  17. claude_mpm/agents/templates/research.json +82 -12
  18. claude_mpm/agents/templates/security.json +4 -4
  19. claude_mpm/agents/templates/tauri_engineer.json +274 -0
  20. claude_mpm/agents/templates/ticketing.json +10 -6
  21. claude_mpm/agents/templates/version_control.json +4 -2
  22. claude_mpm/agents/templates/web_qa.json +2 -1
  23. claude_mpm/cli/README.md +253 -0
  24. claude_mpm/cli/__init__.py +11 -1
  25. claude_mpm/cli/commands/aggregate.py +1 -1
  26. claude_mpm/cli/commands/analyze.py +3 -3
  27. claude_mpm/cli/commands/cleanup.py +1 -1
  28. claude_mpm/cli/commands/configure_agent_display.py +4 -4
  29. claude_mpm/cli/commands/debug.py +12 -12
  30. claude_mpm/cli/commands/hook_errors.py +277 -0
  31. claude_mpm/cli/commands/mcp_install_commands.py +1 -1
  32. claude_mpm/cli/commands/mcp_install_commands.py.backup +284 -0
  33. claude_mpm/cli/commands/mpm_init/README.md +365 -0
  34. claude_mpm/cli/commands/mpm_init/__init__.py +73 -0
  35. claude_mpm/cli/commands/mpm_init/core.py +573 -0
  36. claude_mpm/cli/commands/mpm_init/display.py +341 -0
  37. claude_mpm/cli/commands/mpm_init/git_activity.py +427 -0
  38. claude_mpm/cli/commands/mpm_init/modes.py +397 -0
  39. claude_mpm/cli/commands/mpm_init/prompts.py +442 -0
  40. claude_mpm/cli/commands/mpm_init_cli.py +396 -0
  41. claude_mpm/cli/commands/mpm_init_handler.py +67 -1
  42. claude_mpm/cli/commands/run.py +124 -128
  43. claude_mpm/cli/commands/skills.py +522 -34
  44. claude_mpm/cli/executor.py +56 -0
  45. claude_mpm/cli/interactive/agent_wizard.py +5 -5
  46. claude_mpm/cli/parsers/base_parser.py +28 -0
  47. claude_mpm/cli/parsers/mpm_init_parser.py +42 -0
  48. claude_mpm/cli/parsers/skills_parser.py +138 -0
  49. claude_mpm/cli/startup.py +111 -8
  50. claude_mpm/cli/startup_display.py +480 -0
  51. claude_mpm/cli/utils.py +1 -1
  52. claude_mpm/cli_module/commands.py +1 -1
  53. claude_mpm/cli_module/refactoring_guide.md +253 -0
  54. claude_mpm/commands/mpm-help.md +3 -0
  55. claude_mpm/commands/mpm-init.md +19 -3
  56. claude_mpm/commands/mpm-resume.md +372 -0
  57. claude_mpm/commands/mpm-tickets.md +56 -7
  58. claude_mpm/commands/mpm.md +1 -0
  59. claude_mpm/config/agent_capabilities.yaml +658 -0
  60. claude_mpm/config/async_logging_config.yaml +145 -0
  61. claude_mpm/constants.py +12 -0
  62. claude_mpm/core/.claude-mpm/logs/hooks_20250730.log +34 -0
  63. claude_mpm/core/api_validator.py +1 -1
  64. claude_mpm/core/claude_runner.py +14 -1
  65. claude_mpm/core/config.py +8 -0
  66. claude_mpm/core/constants.py +1 -1
  67. claude_mpm/core/framework/processors/metadata_processor.py +1 -1
  68. claude_mpm/core/hook_error_memory.py +381 -0
  69. claude_mpm/core/hook_manager.py +41 -2
  70. claude_mpm/core/interactive_session.py +48 -3
  71. claude_mpm/core/interfaces.py +56 -1
  72. claude_mpm/core/logger.py +3 -1
  73. claude_mpm/core/oneshot_session.py +39 -0
  74. claude_mpm/d2/.gitignore +22 -0
  75. claude_mpm/d2/ARCHITECTURE_COMPARISON.md +273 -0
  76. claude_mpm/d2/FLASK_INTEGRATION.md +156 -0
  77. claude_mpm/d2/IMPLEMENTATION_SUMMARY.md +452 -0
  78. claude_mpm/d2/QUICKSTART.md +186 -0
  79. claude_mpm/d2/README.md +232 -0
  80. claude_mpm/d2/STORE_FIX_SUMMARY.md +167 -0
  81. claude_mpm/d2/SVELTE5_STORES_GUIDE.md +180 -0
  82. claude_mpm/d2/TESTING.md +288 -0
  83. claude_mpm/d2/index.html +118 -0
  84. claude_mpm/d2/package.json +19 -0
  85. claude_mpm/d2/src/App.svelte +110 -0
  86. claude_mpm/d2/src/components/Header.svelte +153 -0
  87. claude_mpm/d2/src/components/MainContent.svelte +74 -0
  88. claude_mpm/d2/src/components/Sidebar.svelte +85 -0
  89. claude_mpm/d2/src/components/tabs/EventsTab.svelte +326 -0
  90. claude_mpm/d2/src/lib/socketio.js +144 -0
  91. claude_mpm/d2/src/main.js +7 -0
  92. claude_mpm/d2/src/stores/events.js +114 -0
  93. claude_mpm/d2/src/stores/socket.js +108 -0
  94. claude_mpm/d2/src/stores/theme.js +65 -0
  95. claude_mpm/d2/svelte.config.js +12 -0
  96. claude_mpm/d2/vite.config.js +15 -0
  97. claude_mpm/dashboard/.claude-mpm/memories/README.md +36 -0
  98. claude_mpm/dashboard/BUILD_NUMBER +1 -0
  99. claude_mpm/dashboard/README.md +121 -0
  100. claude_mpm/dashboard/VERSION +1 -0
  101. claude_mpm/dashboard/react/components/DataInspector/DataInspector.tsx +273 -0
  102. claude_mpm/dashboard/react/components/ErrorBoundary.tsx +75 -0
  103. claude_mpm/dashboard/react/components/EventViewer/EventViewer.tsx +141 -0
  104. claude_mpm/dashboard/react/components/shared/ConnectionStatus.tsx +36 -0
  105. claude_mpm/dashboard/react/components/shared/FilterBar.tsx +89 -0
  106. claude_mpm/dashboard/react/contexts/DashboardContext.tsx +215 -0
  107. claude_mpm/dashboard/react/entries/events.tsx +165 -0
  108. claude_mpm/dashboard/react/hooks/useEvents.ts +191 -0
  109. claude_mpm/dashboard/react/hooks/useSocket.ts +225 -0
  110. claude_mpm/dashboard/static/built/REFACTORING_SUMMARY.md +170 -0
  111. claude_mpm/dashboard/static/built/components/activity-tree.js.map +1 -0
  112. claude_mpm/dashboard/static/built/components/agent-hierarchy.js +101 -101
  113. claude_mpm/dashboard/static/built/components/agent-inference.js.map +1 -0
  114. claude_mpm/dashboard/static/built/components/build-tracker.js +59 -59
  115. claude_mpm/dashboard/static/built/components/code-simple.js +107 -107
  116. claude_mpm/dashboard/static/built/components/code-tree/tree-breadcrumb.js +29 -29
  117. claude_mpm/dashboard/static/built/components/code-tree/tree-constants.js +24 -24
  118. claude_mpm/dashboard/static/built/components/code-tree/tree-search.js +27 -27
  119. claude_mpm/dashboard/static/built/components/code-tree/tree-utils.js +25 -25
  120. claude_mpm/dashboard/static/built/components/code-tree.js.map +1 -0
  121. claude_mpm/dashboard/static/built/components/code-viewer.js.map +1 -0
  122. claude_mpm/dashboard/static/built/components/connection-debug.js +101 -101
  123. claude_mpm/dashboard/static/built/components/diff-viewer.js +113 -113
  124. claude_mpm/dashboard/static/built/components/event-processor.js.map +1 -0
  125. claude_mpm/dashboard/static/built/components/event-viewer.js.map +1 -0
  126. claude_mpm/dashboard/static/built/components/export-manager.js.map +1 -0
  127. claude_mpm/dashboard/static/built/components/file-change-tracker.js +57 -57
  128. claude_mpm/dashboard/static/built/components/file-change-viewer.js +74 -74
  129. claude_mpm/dashboard/static/built/components/file-tool-tracker.js.map +1 -0
  130. claude_mpm/dashboard/static/built/components/file-viewer.js.map +1 -0
  131. claude_mpm/dashboard/static/built/components/hud-library-loader.js.map +1 -0
  132. claude_mpm/dashboard/static/built/components/hud-manager.js.map +1 -0
  133. claude_mpm/dashboard/static/built/components/hud-visualizer.js.map +1 -0
  134. claude_mpm/dashboard/static/built/components/module-viewer.js.map +1 -0
  135. claude_mpm/dashboard/static/built/components/session-manager.js.map +1 -0
  136. claude_mpm/dashboard/static/built/components/socket-manager.js.map +1 -0
  137. claude_mpm/dashboard/static/built/components/ui-state-manager.js.map +1 -0
  138. claude_mpm/dashboard/static/built/components/unified-data-viewer.js.map +1 -0
  139. claude_mpm/dashboard/static/built/components/working-directory.js.map +1 -0
  140. claude_mpm/dashboard/static/built/connection-manager.js +76 -76
  141. claude_mpm/dashboard/static/built/dashboard.js.map +1 -0
  142. claude_mpm/dashboard/static/built/extension-error-handler.js +22 -22
  143. claude_mpm/dashboard/static/built/react/events.js.map +1 -0
  144. claude_mpm/dashboard/static/built/shared/dom-helpers.js +9 -9
  145. claude_mpm/dashboard/static/built/shared/event-bus.js +5 -5
  146. claude_mpm/dashboard/static/built/shared/logger.js +16 -16
  147. claude_mpm/dashboard/static/built/shared/tooltip-service.js +6 -6
  148. claude_mpm/dashboard/static/built/socket-client.js.map +1 -0
  149. claude_mpm/dashboard/static/css/activity.css +69 -69
  150. claude_mpm/dashboard/static/css/connection-status.css +10 -10
  151. claude_mpm/dashboard/static/css/dashboard.css +15 -15
  152. claude_mpm/dashboard/static/index.html +22 -22
  153. claude_mpm/dashboard/static/js/REFACTORING_SUMMARY.md +170 -0
  154. claude_mpm/dashboard/static/js/components/activity-tree.js +178 -178
  155. claude_mpm/dashboard/static/js/components/agent-hierarchy.js +101 -101
  156. claude_mpm/dashboard/static/js/components/agent-inference.js +31 -31
  157. claude_mpm/dashboard/static/js/components/build-tracker.js +59 -59
  158. claude_mpm/dashboard/static/js/components/code-simple.js +107 -107
  159. claude_mpm/dashboard/static/js/components/connection-debug.js +101 -101
  160. claude_mpm/dashboard/static/js/components/diff-viewer.js +113 -113
  161. claude_mpm/dashboard/static/js/components/event-viewer.js +12 -12
  162. claude_mpm/dashboard/static/js/components/file-change-tracker.js +57 -57
  163. claude_mpm/dashboard/static/js/components/file-change-viewer.js +74 -74
  164. claude_mpm/dashboard/static/js/components/file-tool-tracker.js +6 -6
  165. claude_mpm/dashboard/static/js/components/file-viewer.js +42 -42
  166. claude_mpm/dashboard/static/js/components/module-viewer.js +27 -27
  167. claude_mpm/dashboard/static/js/components/session-manager.js +14 -14
  168. claude_mpm/dashboard/static/js/components/socket-manager.js +1 -1
  169. claude_mpm/dashboard/static/js/components/ui-state-manager.js +14 -14
  170. claude_mpm/dashboard/static/js/components/unified-data-viewer.js +110 -110
  171. claude_mpm/dashboard/static/js/components/working-directory.js +8 -8
  172. claude_mpm/dashboard/static/js/connection-manager.js +76 -76
  173. claude_mpm/dashboard/static/js/dashboard.js +76 -58
  174. claude_mpm/dashboard/static/js/extension-error-handler.js +22 -22
  175. claude_mpm/dashboard/static/js/shared/dom-helpers.js +9 -9
  176. claude_mpm/dashboard/static/js/shared/event-bus.js +5 -5
  177. claude_mpm/dashboard/static/js/shared/logger.js +16 -16
  178. claude_mpm/dashboard/static/js/shared/tooltip-service.js +6 -6
  179. claude_mpm/dashboard/static/js/socket-client.js +138 -121
  180. claude_mpm/dashboard/static/navigation-test-results.md +118 -0
  181. claude_mpm/dashboard/static/production/main.html +21 -21
  182. claude_mpm/dashboard/static/test-archive/dashboard.html +22 -22
  183. claude_mpm/dashboard/templates/.claude-mpm/memories/README.md +36 -0
  184. claude_mpm/dashboard/templates/.claude-mpm/memories/engineer_agent.md +39 -0
  185. claude_mpm/dashboard/templates/.claude-mpm/memories/version_control_agent.md +38 -0
  186. claude_mpm/dashboard/templates/code_simple.html +23 -23
  187. claude_mpm/dashboard/templates/index.html +18 -18
  188. claude_mpm/hooks/README.md +143 -0
  189. claude_mpm/hooks/claude_hooks/event_handlers.py +3 -1
  190. claude_mpm/hooks/claude_hooks/hook_handler.py +24 -7
  191. claude_mpm/hooks/claude_hooks/installer.py +45 -0
  192. claude_mpm/hooks/templates/README.md +180 -0
  193. claude_mpm/hooks/templates/pre_tool_use_simple.py +78 -0
  194. claude_mpm/hooks/templates/pre_tool_use_template.py +323 -0
  195. claude_mpm/hooks/templates/settings.json.example +147 -0
  196. claude_mpm/schemas/agent_schema.json +596 -0
  197. claude_mpm/schemas/frontmatter_schema.json +165 -0
  198. claude_mpm/scripts/claude-hook-handler.sh +3 -3
  199. claude_mpm/scripts/start_activity_logging.py +3 -1
  200. claude_mpm/services/agents/deployment/agent_format_converter.py +1 -1
  201. claude_mpm/services/agents/deployment/agent_metrics_collector.py +3 -3
  202. claude_mpm/services/agents/deployment/facade/deployment_facade.py +3 -3
  203. claude_mpm/services/agents/deployment/pipeline/pipeline_executor.py +2 -2
  204. claude_mpm/services/agents/loading/framework_agent_loader.py +8 -8
  205. claude_mpm/services/agents/local_template_manager.py +3 -1
  206. claude_mpm/services/cli/session_pause_manager.py +504 -0
  207. claude_mpm/services/cli/session_resume_helper.py +36 -16
  208. claude_mpm/services/cli/unified_dashboard_manager.py +1 -1
  209. claude_mpm/services/core/base.py +26 -11
  210. claude_mpm/services/core/interfaces.py +56 -1
  211. claude_mpm/services/core/models/agent_config.py +3 -0
  212. claude_mpm/services/core/models/process.py +4 -0
  213. claude_mpm/services/diagnostics/checks/agent_check.py +0 -2
  214. claude_mpm/services/diagnostics/checks/instructions_check.py +1 -2
  215. claude_mpm/services/diagnostics/checks/mcp_check.py +0 -1
  216. claude_mpm/services/diagnostics/checks/monitor_check.py +0 -1
  217. claude_mpm/services/diagnostics/doctor_reporter.py +6 -4
  218. claude_mpm/services/diagnostics/models.py +21 -0
  219. claude_mpm/services/event_bus/README.md +244 -0
  220. claude_mpm/services/event_bus/direct_relay.py +3 -3
  221. claude_mpm/services/event_bus/event_bus.py +36 -3
  222. claude_mpm/services/event_bus/relay.py +23 -7
  223. claude_mpm/services/events/README.md +303 -0
  224. claude_mpm/services/events/consumers/logging.py +1 -2
  225. claude_mpm/services/framework_claude_md_generator/README.md +119 -0
  226. claude_mpm/services/infrastructure/monitoring/resources.py +1 -1
  227. claude_mpm/services/local_ops/__init__.py +2 -0
  228. claude_mpm/services/local_ops/process_manager.py +1 -1
  229. claude_mpm/services/local_ops/resource_monitor.py +2 -2
  230. claude_mpm/services/mcp_gateway/README.md +185 -0
  231. claude_mpm/services/mcp_gateway/auto_configure.py +31 -25
  232. claude_mpm/services/mcp_gateway/config/configuration.py +1 -1
  233. claude_mpm/services/mcp_gateway/core/process_pool.py +19 -10
  234. claude_mpm/services/mcp_gateway/server/stdio_server.py +0 -2
  235. claude_mpm/services/mcp_gateway/tools/document_summarizer.py +1 -1
  236. claude_mpm/services/mcp_gateway/tools/external_mcp_services.py +26 -21
  237. claude_mpm/services/mcp_gateway/tools/kuzu_memory_service.py +6 -2
  238. claude_mpm/services/memory/failure_tracker.py +19 -4
  239. claude_mpm/services/memory/optimizer.py +1 -1
  240. claude_mpm/services/model/model_router.py +8 -9
  241. claude_mpm/services/monitor/daemon.py +1 -1
  242. claude_mpm/services/monitor/server.py +2 -2
  243. claude_mpm/services/native_agent_converter.py +356 -0
  244. claude_mpm/services/port_manager.py +1 -1
  245. claude_mpm/services/project/documentation_manager.py +2 -1
  246. claude_mpm/services/project/toolchain_analyzer.py +3 -1
  247. claude_mpm/services/runner_configuration_service.py +1 -0
  248. claude_mpm/services/self_upgrade_service.py +165 -7
  249. claude_mpm/services/skills_config.py +547 -0
  250. claude_mpm/services/skills_deployer.py +955 -0
  251. claude_mpm/services/socketio/handlers/connection.py +1 -1
  252. claude_mpm/services/socketio/handlers/connection.py.backup +217 -0
  253. claude_mpm/services/socketio/handlers/git.py +2 -2
  254. claude_mpm/services/socketio/handlers/hook.py.backup +154 -0
  255. claude_mpm/services/static/.gitkeep +2 -0
  256. claude_mpm/services/system_instructions_service.py +1 -3
  257. claude_mpm/services/unified/analyzer_strategies/performance_analyzer.py +0 -3
  258. claude_mpm/services/unified/analyzer_strategies/security_analyzer.py +0 -1
  259. claude_mpm/services/unified/deployment_strategies/cloud_strategies.py +1 -1
  260. claude_mpm/services/version_control/VERSION +1 -0
  261. claude_mpm/services/version_control/conflict_resolution.py +6 -4
  262. claude_mpm/services/visualization/mermaid_generator.py +2 -3
  263. claude_mpm/skills/__init__.py +3 -3
  264. claude_mpm/skills/agent_skills_injector.py +42 -49
  265. claude_mpm/skills/bundled/.gitkeep +2 -0
  266. claude_mpm/skills/bundled/collaboration/brainstorming/SKILL.md +4 -0
  267. claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/SKILL.md +108 -114
  268. claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/agent-prompts.md +577 -0
  269. claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/coordination-patterns.md +467 -0
  270. claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/examples.md +537 -0
  271. claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/troubleshooting.md +730 -0
  272. claude_mpm/skills/bundled/collaboration/git-worktrees.md +317 -0
  273. claude_mpm/skills/bundled/collaboration/requesting-code-review/SKILL.md +46 -41
  274. claude_mpm/skills/bundled/collaboration/requesting-code-review/references/review-examples.md +412 -0
  275. claude_mpm/skills/bundled/collaboration/stacked-prs.md +251 -0
  276. claude_mpm/skills/bundled/collaboration/writing-plans/SKILL.md +36 -73
  277. claude_mpm/skills/bundled/collaboration/writing-plans/references/best-practices.md +362 -0
  278. claude_mpm/skills/bundled/collaboration/writing-plans/references/plan-structure-templates.md +312 -0
  279. claude_mpm/skills/bundled/debugging/root-cause-tracing/SKILL.md +100 -125
  280. claude_mpm/skills/bundled/debugging/root-cause-tracing/find-polluter.sh +63 -0
  281. claude_mpm/skills/bundled/debugging/root-cause-tracing/references/advanced-techniques.md +668 -0
  282. claude_mpm/skills/bundled/debugging/root-cause-tracing/references/examples.md +587 -0
  283. claude_mpm/skills/bundled/debugging/root-cause-tracing/references/integration.md +438 -0
  284. claude_mpm/skills/bundled/debugging/root-cause-tracing/references/tracing-techniques.md +391 -0
  285. claude_mpm/skills/bundled/debugging/verification-before-completion/SKILL.md +28 -72
  286. claude_mpm/skills/bundled/debugging/verification-before-completion/references/gate-function.md +11 -0
  287. claude_mpm/skills/bundled/debugging/verification-before-completion/references/integration-and-workflows.md +490 -0
  288. claude_mpm/skills/bundled/debugging/verification-before-completion/references/red-flags-and-failures.md +425 -0
  289. claude_mpm/skills/bundled/debugging/verification-before-completion/references/verification-patterns.md +272 -0
  290. claude_mpm/skills/bundled/infrastructure/env-manager/INTEGRATION.md +611 -0
  291. claude_mpm/skills/bundled/infrastructure/env-manager/README.md +596 -0
  292. claude_mpm/skills/bundled/infrastructure/env-manager/SKILL.md +260 -0
  293. claude_mpm/skills/bundled/infrastructure/env-manager/examples/nextjs-env-structure.md +315 -0
  294. claude_mpm/skills/bundled/infrastructure/env-manager/references/frameworks.md +436 -0
  295. claude_mpm/skills/bundled/infrastructure/env-manager/references/security.md +433 -0
  296. claude_mpm/skills/bundled/infrastructure/env-manager/references/synchronization.md +452 -0
  297. claude_mpm/skills/bundled/infrastructure/env-manager/references/troubleshooting.md +404 -0
  298. claude_mpm/skills/bundled/infrastructure/env-manager/references/validation.md +420 -0
  299. claude_mpm/skills/bundled/infrastructure/env-manager/scripts/validate_env.py +576 -0
  300. claude_mpm/skills/bundled/main/artifacts-builder/LICENSE.txt +202 -0
  301. claude_mpm/skills/bundled/main/artifacts-builder/SKILL.md +13 -1
  302. claude_mpm/skills/bundled/main/artifacts-builder/scripts/bundle-artifact.sh +54 -0
  303. claude_mpm/skills/bundled/main/artifacts-builder/scripts/init-artifact.sh +322 -0
  304. claude_mpm/skills/bundled/main/artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  305. claude_mpm/skills/bundled/main/internal-comms/LICENSE.txt +202 -0
  306. claude_mpm/skills/bundled/main/internal-comms/SKILL.md +11 -0
  307. claude_mpm/skills/bundled/main/mcp-builder/LICENSE.txt +202 -0
  308. claude_mpm/skills/bundled/main/mcp-builder/SKILL.md +109 -277
  309. claude_mpm/skills/bundled/main/mcp-builder/reference/design_principles.md +412 -0
  310. claude_mpm/skills/bundled/main/mcp-builder/reference/workflow.md +1237 -0
  311. claude_mpm/skills/bundled/main/mcp-builder/scripts/connections.py +17 -10
  312. claude_mpm/skills/bundled/main/mcp-builder/scripts/evaluation.py +92 -39
  313. claude_mpm/skills/bundled/main/mcp-builder/scripts/example_evaluation.xml +22 -0
  314. claude_mpm/skills/bundled/main/mcp-builder/scripts/requirements.txt +2 -0
  315. claude_mpm/skills/bundled/main/skill-creator/LICENSE.txt +202 -0
  316. claude_mpm/skills/bundled/main/skill-creator/SKILL.md +135 -155
  317. claude_mpm/skills/bundled/main/skill-creator/references/best-practices.md +500 -0
  318. claude_mpm/skills/bundled/main/skill-creator/references/creation-workflow.md +464 -0
  319. claude_mpm/skills/bundled/main/skill-creator/references/examples.md +619 -0
  320. claude_mpm/skills/bundled/main/skill-creator/references/progressive-disclosure.md +437 -0
  321. claude_mpm/skills/bundled/main/skill-creator/references/skill-structure.md +231 -0
  322. claude_mpm/skills/bundled/main/skill-creator/scripts/init_skill.py +13 -12
  323. claude_mpm/skills/bundled/main/skill-creator/scripts/package_skill.py +5 -3
  324. claude_mpm/skills/bundled/main/skill-creator/scripts/quick_validate.py +19 -12
  325. claude_mpm/skills/bundled/performance-profiling.md +6 -0
  326. claude_mpm/skills/bundled/php/espocrm-development/SKILL.md +170 -0
  327. claude_mpm/skills/bundled/php/espocrm-development/references/architecture.md +602 -0
  328. claude_mpm/skills/bundled/php/espocrm-development/references/common-tasks.md +821 -0
  329. claude_mpm/skills/bundled/php/espocrm-development/references/development-workflow.md +742 -0
  330. claude_mpm/skills/bundled/php/espocrm-development/references/frontend-customization.md +726 -0
  331. claude_mpm/skills/bundled/php/espocrm-development/references/hooks-and-services.md +764 -0
  332. claude_mpm/skills/bundled/php/espocrm-development/references/testing-debugging.md +831 -0
  333. claude_mpm/skills/bundled/react/flexlayout-react.md +742 -0
  334. claude_mpm/skills/bundled/rust/desktop-applications/SKILL.md +226 -0
  335. claude_mpm/skills/bundled/rust/desktop-applications/references/architecture-patterns.md +901 -0
  336. claude_mpm/skills/bundled/rust/desktop-applications/references/native-gui-frameworks.md +901 -0
  337. claude_mpm/skills/bundled/rust/desktop-applications/references/platform-integration.md +775 -0
  338. claude_mpm/skills/bundled/rust/desktop-applications/references/state-management.md +937 -0
  339. claude_mpm/skills/bundled/rust/desktop-applications/references/tauri-framework.md +770 -0
  340. claude_mpm/skills/bundled/rust/desktop-applications/references/testing-deployment.md +961 -0
  341. claude_mpm/skills/bundled/tauri/tauri-async-patterns.md +495 -0
  342. claude_mpm/skills/bundled/tauri/tauri-build-deploy.md +599 -0
  343. claude_mpm/skills/bundled/tauri/tauri-command-patterns.md +535 -0
  344. claude_mpm/skills/bundled/tauri/tauri-error-handling.md +613 -0
  345. claude_mpm/skills/bundled/tauri/tauri-event-system.md +648 -0
  346. claude_mpm/skills/bundled/tauri/tauri-file-system.md +673 -0
  347. claude_mpm/skills/bundled/tauri/tauri-frontend-integration.md +767 -0
  348. claude_mpm/skills/bundled/tauri/tauri-performance.md +669 -0
  349. claude_mpm/skills/bundled/tauri/tauri-state-management.md +573 -0
  350. claude_mpm/skills/bundled/tauri/tauri-testing.md +384 -0
  351. claude_mpm/skills/bundled/tauri/tauri-window-management.md +628 -0
  352. claude_mpm/skills/bundled/testing/condition-based-waiting/SKILL.md +21 -25
  353. claude_mpm/skills/bundled/testing/condition-based-waiting/example.ts +158 -0
  354. claude_mpm/skills/bundled/testing/condition-based-waiting/references/patterns-and-implementation.md +253 -0
  355. claude_mpm/skills/bundled/testing/test-quality-inspector/SKILL.md +458 -0
  356. claude_mpm/skills/bundled/testing/test-quality-inspector/examples/example-inspection-report.md +411 -0
  357. claude_mpm/skills/bundled/testing/test-quality-inspector/references/assertion-quality.md +317 -0
  358. claude_mpm/skills/bundled/testing/test-quality-inspector/references/inspection-checklist.md +270 -0
  359. claude_mpm/skills/bundled/testing/test-quality-inspector/references/red-flags.md +436 -0
  360. claude_mpm/skills/bundled/testing/testing-anti-patterns/SKILL.md +86 -250
  361. claude_mpm/skills/bundled/testing/testing-anti-patterns/references/completeness-anti-patterns.md +572 -0
  362. claude_mpm/skills/bundled/testing/testing-anti-patterns/references/core-anti-patterns.md +411 -0
  363. claude_mpm/skills/bundled/testing/testing-anti-patterns/references/detection-guide.md +569 -0
  364. claude_mpm/skills/bundled/testing/testing-anti-patterns/references/tdd-connection.md +695 -0
  365. claude_mpm/skills/bundled/testing/webapp-testing/LICENSE.txt +202 -0
  366. claude_mpm/skills/bundled/testing/webapp-testing/SKILL.md +145 -57
  367. claude_mpm/skills/bundled/testing/webapp-testing/decision-tree.md +459 -0
  368. claude_mpm/skills/bundled/testing/webapp-testing/examples/console_logging.py +6 -6
  369. claude_mpm/skills/bundled/testing/webapp-testing/examples/element_discovery.py +13 -9
  370. claude_mpm/skills/bundled/testing/webapp-testing/examples/static_html_automation.py +8 -8
  371. claude_mpm/skills/bundled/testing/webapp-testing/playwright-patterns.md +479 -0
  372. claude_mpm/skills/bundled/testing/webapp-testing/reconnaissance-pattern.md +687 -0
  373. claude_mpm/skills/bundled/testing/webapp-testing/scripts/with_server.py +37 -15
  374. claude_mpm/skills/bundled/testing/webapp-testing/server-management.md +758 -0
  375. claude_mpm/skills/bundled/testing/webapp-testing/troubleshooting.md +868 -0
  376. claude_mpm/skills/skills_registry.py +44 -48
  377. claude_mpm/skills/skills_service.py +117 -108
  378. claude_mpm/templates/questions/EXAMPLES.md +501 -0
  379. claude_mpm/templates/questions/__init__.py +43 -0
  380. claude_mpm/templates/questions/base.py +193 -0
  381. claude_mpm/templates/questions/pr_strategy.py +314 -0
  382. claude_mpm/templates/questions/project_init.py +388 -0
  383. claude_mpm/templates/questions/ticket_mgmt.py +397 -0
  384. claude_mpm/tools/README_SOCKETIO_DEBUG.md +224 -0
  385. claude_mpm/tools/__main__.py +8 -8
  386. claude_mpm/tools/code_tree_analyzer/README.md +64 -0
  387. claude_mpm/tools/code_tree_analyzer/__init__.py +45 -0
  388. claude_mpm/tools/code_tree_analyzer/analysis.py +299 -0
  389. claude_mpm/tools/code_tree_analyzer/cache.py +131 -0
  390. claude_mpm/tools/code_tree_analyzer/core.py +380 -0
  391. claude_mpm/tools/code_tree_analyzer/discovery.py +403 -0
  392. claude_mpm/tools/code_tree_analyzer/events.py +168 -0
  393. claude_mpm/tools/code_tree_analyzer/gitignore.py +308 -0
  394. claude_mpm/tools/code_tree_analyzer/models.py +39 -0
  395. claude_mpm/tools/code_tree_analyzer/multilang_analyzer.py +224 -0
  396. claude_mpm/tools/code_tree_analyzer/python_analyzer.py +284 -0
  397. claude_mpm/utils/agent_dependency_loader.py +3 -3
  398. claude_mpm/utils/dependency_cache.py +3 -1
  399. claude_mpm/utils/gitignore.py +241 -0
  400. claude_mpm/utils/log_cleanup.py +3 -3
  401. claude_mpm/utils/robust_installer.py +3 -5
  402. claude_mpm/utils/structured_questions.py +619 -0
  403. {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/METADATA +218 -31
  404. {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/RECORD +409 -246
  405. claude_mpm/agents/templates/.claude-mpm/memories/README.md +0 -17
  406. claude_mpm/agents/templates/.claude-mpm/memories/engineer_memories.md +0 -3
  407. claude_mpm/agents/templates/logs/prompts/agent_engineer_20250826_014258_728.md +0 -39
  408. claude_mpm/agents/templates/logs/prompts/agent_engineer_20250901_010124_142.md +0 -400
  409. claude_mpm/cli/commands/mpm_init.py +0 -2093
  410. claude_mpm/dashboard/.claude-mpm/socketio-instances.json +0 -1
  411. claude_mpm/dashboard/static/archive/activity_dashboard_test.html +0 -61
  412. claude_mpm/dashboard/static/archive/test_activity_connection.html +0 -179
  413. claude_mpm/dashboard/static/archive/test_claude_tree_tab.html +0 -68
  414. claude_mpm/dashboard/static/archive/test_dashboard.html +0 -409
  415. claude_mpm/dashboard/static/archive/test_dashboard_fixed.html +0 -519
  416. claude_mpm/dashboard/static/archive/test_dashboard_verification.html +0 -181
  417. claude_mpm/dashboard/static/archive/test_file_data.html +0 -315
  418. claude_mpm/dashboard/static/archive/test_file_tree_empty_state.html +0 -243
  419. claude_mpm/dashboard/static/archive/test_file_tree_fix.html +0 -234
  420. claude_mpm/dashboard/static/archive/test_file_tree_rename.html +0 -117
  421. claude_mpm/dashboard/static/archive/test_file_tree_tab.html +0 -115
  422. claude_mpm/dashboard/static/archive/test_file_viewer.html +0 -224
  423. claude_mpm/dashboard/static/archive/test_final_activity.html +0 -220
  424. claude_mpm/dashboard/static/archive/test_tab_fix.html +0 -139
  425. claude_mpm/dashboard/static/dist/assets/events.DjpNxWNo.css +0 -1
  426. claude_mpm/dashboard/static/dist/components/activity-tree.js +0 -2
  427. claude_mpm/dashboard/static/dist/components/agent-inference.js +0 -2
  428. claude_mpm/dashboard/static/dist/components/code-tree.js +0 -2
  429. claude_mpm/dashboard/static/dist/components/code-viewer.js +0 -2
  430. claude_mpm/dashboard/static/dist/components/event-processor.js +0 -2
  431. claude_mpm/dashboard/static/dist/components/event-viewer.js +0 -2
  432. claude_mpm/dashboard/static/dist/components/export-manager.js +0 -2
  433. claude_mpm/dashboard/static/dist/components/file-tool-tracker.js +0 -2
  434. claude_mpm/dashboard/static/dist/components/file-viewer.js +0 -2
  435. claude_mpm/dashboard/static/dist/components/hud-library-loader.js +0 -2
  436. claude_mpm/dashboard/static/dist/components/hud-manager.js +0 -2
  437. claude_mpm/dashboard/static/dist/components/hud-visualizer.js +0 -2
  438. claude_mpm/dashboard/static/dist/components/module-viewer.js +0 -2
  439. claude_mpm/dashboard/static/dist/components/session-manager.js +0 -2
  440. claude_mpm/dashboard/static/dist/components/socket-manager.js +0 -2
  441. claude_mpm/dashboard/static/dist/components/ui-state-manager.js +0 -2
  442. claude_mpm/dashboard/static/dist/components/unified-data-viewer.js +0 -2
  443. claude_mpm/dashboard/static/dist/components/working-directory.js +0 -2
  444. claude_mpm/dashboard/static/dist/dashboard.js +0 -2
  445. claude_mpm/dashboard/static/dist/react/events.js +0 -30
  446. claude_mpm/dashboard/static/dist/socket-client.js +0 -2
  447. claude_mpm/dashboard/static/test-archive/test_debug.html +0 -25
  448. claude_mpm/skills/bundled/debugging/verification-before-completion/references/common-failures.md +0 -213
  449. claude_mpm/tools/code_tree_analyzer.py +0 -1825
  450. /claude_mpm/skills/bundled/collaboration/requesting-code-review/{code-reviewer.md → references/code-reviewer-template.md} +0 -0
  451. {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/WHEEL +0 -0
  452. {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/entry_points.txt +0 -0
  453. {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/licenses/LICENSE +0 -0
  454. {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,391 @@
1
+ # Tracing Techniques
2
+
3
+ Complete methodology for tracing bugs backward through call chains to find original triggers.
4
+
5
+ ## The Tracing Methodology
6
+
7
+ ### Overview
8
+
9
+ Root cause tracing follows a systematic approach to walk backward through code execution until you find where bad data or invalid state originated.
10
+
11
+ **Key insight:** The place where an error manifests is rarely where the bug actually lives.
12
+
13
+ ## Manual Tracing Process
14
+
15
+ ### Step 1: Observe the Symptom
16
+
17
+ **What to capture:**
18
+ - Exact error message
19
+ - Stack trace (if available)
20
+ - Failed operation
21
+ - Wrong value/state
22
+ - Location where error occurred
23
+
24
+ **Example:**
25
+ ```
26
+ Error: git init failed in /Users/jesse/project/packages/core
27
+ at WorktreeManager.createSessionWorktree (worktree-manager.ts:45)
28
+ ```
29
+
30
+ **Questions to ask:**
31
+ - What operation failed?
32
+ - What was the expected behavior?
33
+ - What value/state is wrong?
34
+ - Where did the error manifest?
35
+
36
+ ### Step 2: Find Immediate Cause
37
+
38
+ Look at the code where the error occurs.
39
+
40
+ **Example:**
41
+ ```typescript
42
+ async function createSessionWorktree(projectDir: string, sessionId: string) {
43
+ // This is where it fails
44
+ await execFileAsync('git', ['init'], { cwd: projectDir });
45
+ }
46
+ ```
47
+
48
+ **Questions to ask:**
49
+ - What code directly causes this error?
50
+ - What parameters does it receive?
51
+ - What assumptions does it make?
52
+ - Are the parameters valid?
53
+
54
+ ### Step 3: Identify the Caller
55
+
56
+ Trace one level up the call stack.
57
+
58
+ **From stack trace:**
59
+ ```
60
+ at WorktreeManager.createSessionWorktree (worktree-manager.ts:45)
61
+ at Session.initializeWorkspace (session.ts:78)
62
+ at Session.create (session.ts:34)
63
+ at Test.<anonymous> (project.test.ts:12)
64
+ ```
65
+
66
+ **Manual code inspection:**
67
+ ```typescript
68
+ // In session.ts
69
+ static async create(name: string, projectDir: string) {
70
+ const session = new Session(name);
71
+ await session.initializeWorkspace(projectDir); // ← Caller
72
+ return session;
73
+ }
74
+ ```
75
+
76
+ **Questions to ask:**
77
+ - What function called this?
78
+ - What value did it pass?
79
+ - Where did that value come from?
80
+
81
+ ### Step 4: Continue Tracing Up
82
+
83
+ Repeat step 3 for each caller until you find the source.
84
+
85
+ **Trace chain example:**
86
+ ```
87
+ Test code (project.test.ts:12)
88
+ → Project.create(name, context.tempDir)
89
+ → Session.create(name, projectDir)
90
+ → Session.initializeWorkspace(projectDir)
91
+ → WorktreeManager.createSessionWorktree(projectDir, sessionId)
92
+ → execFileAsync('git', ['init'], { cwd: projectDir })
93
+ → ERROR: projectDir is empty string
94
+ ```
95
+
96
+ **Working backward:**
97
+ - Where did `projectDir = ''` come from? → Session.create()
98
+ - Where did Session.create() get it? → Project.create()
99
+ - Where did Project.create() get it? → Test code
100
+ - Where did test code get it? → `context.tempDir`
101
+ - Where did `context.tempDir = ''` come from? → **ROOT CAUSE FOUND**
102
+
103
+ ### Step 5: Identify Root Cause
104
+
105
+ The root cause is where bad data/state originates.
106
+
107
+ **Common root causes:**
108
+ - Uninitialized variables accessed too early
109
+ - Configuration not loaded
110
+ - Null/undefined not handled
111
+ - Wrong default value
112
+ - Timing issue (race condition)
113
+ - Environment-specific behavior
114
+
115
+ **In our example:**
116
+ ```typescript
117
+ // Root cause: Getter returns empty string before initialization
118
+ function setupCoreTest() {
119
+ let _tempDir = ''; // ← BAD: Empty string default
120
+
121
+ beforeEach(() => {
122
+ _tempDir = createTempDir(); // ← Set later
123
+ });
124
+
125
+ return { tempDir: _tempDir }; // ← Returns '' initially!
126
+ }
127
+
128
+ // Test code runs at module load time
129
+ const context = setupCoreTest();
130
+ const PROJECT_DIR = context.tempDir; // ← '' before beforeEach runs!
131
+ ```
132
+
133
+ ## Tracing Patterns
134
+
135
+ ### Pattern 1: Data Flow Tracing
136
+
137
+ **When to use:** Invalid data appears somewhere in execution
138
+
139
+ **Process:**
140
+ 1. Identify the invalid data at error point
141
+ 2. Trace backward to find where it was set
142
+ 3. Continue to where it originated
143
+ 4. Fix at origin
144
+
145
+ **Example:**
146
+ ```
147
+ userId = 0 (invalid) at database query
148
+ ← from request.userId
149
+ ← from parseRequest(req)
150
+ ← from req.headers['user-id']
151
+ ← ROOT: Header not validated/defaulted
152
+ ```
153
+
154
+ ### Pattern 2: Call Chain Tracing
155
+
156
+ **When to use:** Error happens deep in call stack
157
+
158
+ **Process:**
159
+ 1. Start at error location
160
+ 2. Examine immediate caller
161
+ 3. Move up one level
162
+ 4. Repeat until finding where invalid call originates
163
+
164
+ **Example:**
165
+ ```
166
+ Error in database.execute(query)
167
+ ← from UserService.findUser(id)
168
+ ← from AuthMiddleware.authenticate()
169
+ ← from Router.handleRequest()
170
+ ← ROOT: No authentication check before calling
171
+ ```
172
+
173
+ ### Pattern 3: State Mutation Tracing
174
+
175
+ **When to use:** Object/variable has wrong value at some point
176
+
177
+ **Process:**
178
+ 1. Identify when state is wrong
179
+ 2. Find all places that mutate state
180
+ 3. Trace backward to find which mutation caused it
181
+ 4. Find why that mutation happened
182
+
183
+ **Example:**
184
+ ```
185
+ config.database = undefined at startup
186
+ ← config.database set to undefined in validateConfig()
187
+ ← because env.DATABASE_URL is undefined
188
+ ← ROOT: Environment variable not set
189
+ ```
190
+
191
+ ### Pattern 4: Timing/Ordering Tracing
192
+
193
+ **When to use:** Issue involves race conditions or execution order
194
+
195
+ **Process:**
196
+ 1. Identify operations that ran in wrong order
197
+ 2. Trace why the order is wrong
198
+ 3. Find what controls the ordering
199
+ 4. Fix ordering logic
200
+
201
+ **Example:**
202
+ ```
203
+ Database query before connection established
204
+ ← query() called in constructor
205
+ ← constructor runs immediately
206
+ ← connection.connect() called async in initialize()
207
+ ← ROOT: Constructor doesn't wait for async initialization
208
+ ```
209
+
210
+ ## Decision Trees
211
+
212
+ ### When Manual Tracing is Sufficient
213
+
214
+ ```
215
+ Can you see the code path?
216
+ → Yes: Use manual tracing
217
+ → Stack trace available?
218
+ → Yes: Follow stack trace
219
+ → No: Inspect caller manually
220
+ → No: Add instrumentation (see advanced-techniques.md)
221
+
222
+ Is error reproducible?
223
+ → Yes: Can trace reliably
224
+ → No: Must make reproducible first
225
+ → Add logging to capture when it happens
226
+ → Use instrumentation to understand timing
227
+ ```
228
+
229
+ ### How Deep to Trace
230
+
231
+ ```
232
+ Found where bad value originates?
233
+ → Yes: Root cause found
234
+ → No: Continue tracing
235
+ → At system boundary (entry point)?
236
+ → Yes: Root cause is at boundary
237
+ → No: Keep tracing backward
238
+
239
+ Multiple callers with same issue?
240
+ → Yes: Root cause is in shared caller
241
+ → No: Root cause is in specific caller path
242
+ ```
243
+
244
+ ### Fixing vs Adding Defense
245
+
246
+ ```
247
+ Found root cause?
248
+ → Yes:
249
+ → Fix at source: YES
250
+ → Add validation at intermediate layers: YES
251
+ → Fix only at error point: NO
252
+ → No:
253
+ → Add defense at error point: TEMPORARY
254
+ → Continue tracing: YES
255
+ ```
256
+
257
+ ## Common Tracing Challenges
258
+
259
+ ### Challenge 1: Long Call Chains
260
+
261
+ **Problem:** 10+ levels in call stack
262
+ **Solution:**
263
+ - Use binary search: check middle of chain first
264
+ - Skip obviously correct intermediate calls
265
+ - Focus on where data changes
266
+
267
+ ### Challenge 2: Async/Callback Hell
268
+
269
+ **Problem:** Callbacks and promises obscure call chain
270
+ **Solution:**
271
+ - Use async stack traces (Node.js: `--async-stack-traces`)
272
+ - Add trace IDs to log all operations
273
+ - Use debugger to step through promises
274
+
275
+ ### Challenge 3: Multiple Code Paths
276
+
277
+ **Problem:** Error could come from multiple callers
278
+ **Solution:**
279
+ - Add conditional logging at error point
280
+ - Use instrumentation to capture caller info
281
+ - Reproduce with minimal test case
282
+
283
+ ### Challenge 4: External Dependencies
284
+
285
+ **Problem:** Issue might be in third-party library
286
+ **Solution:**
287
+ - Verify inputs to library are correct
288
+ - Check library version/compatibility
289
+ - Read library source if needed
290
+ - Consider if misusing library API
291
+
292
+ ### Challenge 5: No Stack Trace
293
+
294
+ **Problem:** Error doesn't produce stack trace
295
+ **Solution:**
296
+ - Add stack capture: `new Error().stack`
297
+ - Use debugger to pause at error point
298
+ - Add logging at suspected callers
299
+ - Use process of elimination
300
+
301
+ ## Tips for Effective Tracing
302
+
303
+ ### Use Your Tools
304
+
305
+ **IDE navigation:**
306
+ - "Find References" to see all callers
307
+ - "Go to Definition" to jump to implementation
308
+ - Call hierarchy view
309
+ - Type hierarchy for inheritance
310
+
311
+ **Debugger:**
312
+ - Set breakpoint at error point
313
+ - Step out to see caller
314
+ - Examine call stack panel
315
+ - Watch variables as they change
316
+
317
+ **Version control:**
318
+ - `git blame` to see when code changed
319
+ - `git log` to see recent changes
320
+ - `git bisect` to find when bug was introduced
321
+
322
+ ### Document Your Trace
323
+
324
+ As you trace, write down the call chain:
325
+
326
+ ```
327
+ ERROR: git init in wrong directory
328
+ ← execFileAsync('git', ['init'], { cwd: '' })
329
+ ← WorktreeManager.createSessionWorktree(projectDir='')
330
+ ← Session.initializeWorkspace(projectDir='')
331
+ ← Session.create(name, projectDir='')
332
+ ← Project.create(name, context.tempDir='')
333
+ ← Test: const PROJECT_DIR = context.tempDir
334
+ ← ROOT: setupCoreTest() returns { tempDir: '' } before beforeEach
335
+ ```
336
+
337
+ This helps you:
338
+ - Remember where you are in the trace
339
+ - Communicate findings to others
340
+ - Verify your understanding
341
+ - Identify patterns
342
+
343
+ ### Know When to Stop Tracing
344
+
345
+ **Stop when you find:**
346
+ - The origin of bad data
347
+ - The first place where invariant is violated
348
+ - The entry point where validation should happen
349
+ - The configuration/initialization that sets wrong value
350
+
351
+ **Don't stop at:**
352
+ - Where error manifests
353
+ - Where symptom is visible
354
+ - Intermediate validation that fails
355
+ - Defensive checks that catch the issue
356
+
357
+ ## Verification After Tracing
358
+
359
+ Once you think you've found the root cause:
360
+
361
+ 1. **Verify understanding:**
362
+ - Can you explain how the bug happens?
363
+ - Does your explanation match all symptoms?
364
+ - Can you predict what will happen if you fix it?
365
+
366
+ 2. **Test your hypothesis:**
367
+ - Add temporary fix at suspected root cause
368
+ - Does it resolve the issue?
369
+ - Does it resolve ALL instances of the issue?
370
+
371
+ 3. **Implement proper fix:**
372
+ - Fix at root cause
373
+ - Add tests for root cause
374
+ - Add defense-in-depth at intermediate layers
375
+ - Verify no regressions
376
+
377
+ ## Summary
378
+
379
+ **Manual tracing process:**
380
+ 1. Observe symptom → 2. Find immediate cause → 3. Identify caller → 4. Trace up → 5. Find root cause
381
+
382
+ **Key principles:**
383
+ - Trace backward from symptom to source
384
+ - Don't stop at first "cause" - find original trigger
385
+ - Fix at source, add defense at layers
386
+ - Document your trace for clarity
387
+
388
+ **When to use advanced techniques:**
389
+ - Can't manually trace (see advanced-techniques.md)
390
+ - Need to identify which test pollutes (see advanced-techniques.md)
391
+ - Multiple async operations involved (see advanced-techniques.md)
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: Verification Before Completion
2
+ name: verification-before-completion
3
3
  description: Run verification commands and confirm output before claiming success
4
4
  version: 2.0.0
5
5
  category: debugging
@@ -14,7 +14,8 @@ progressive_disclosure:
14
14
  references:
15
15
  - gate-function.md
16
16
  - verification-patterns.md
17
- - common-failures.md
17
+ - red-flags-and-failures.md
18
+ - integration-and-workflows.md
18
19
  context_limit: 800
19
20
  tags:
20
21
  - verification
@@ -38,23 +39,16 @@ This skill enforces mandatory verification before ANY completion claim, preventi
38
39
 
39
40
  ## When to Use This Skill
40
41
 
41
- Activate ALWAYS before:
42
- - ANY variation of success/completion claims
43
- - ANY expression of satisfaction ("Great!", "Done!", "Perfect!")
44
- - ANY positive statement about work state
42
+ Activate ALWAYS before claiming:
43
+ - Success, completion, or satisfaction ("Done!", "Fixed!", "Great!")
44
+ - Tests pass, linter clean, build succeeds
45
45
  - Committing, pushing, creating PRs
46
- - Moving to next task
47
- - Marking tasks complete
48
- - Delegating to agents
49
- - Reporting status to users
46
+ - Marking tasks complete or delegating to agents
50
47
 
51
48
  **Use this ESPECIALLY when:**
52
- - Under time pressure (makes skipping tempting)
53
- - Tired and wanting work over
54
- - "Quick fix" seems obvious
55
- - Confident in the solution
56
- - Agent reports success
57
- - Tests "should" pass
49
+ - Under time pressure or tired
50
+ - "Quick fix" seems obvious or you're confident
51
+ - Agent reports success or tests "should" pass
58
52
 
59
53
  ## The Iron Law
60
54
 
@@ -85,29 +79,6 @@ The five-step gate function:
85
79
 
86
80
  Skip any step = lying, not verifying.
87
81
 
88
- ## Common Failure Modes
89
-
90
- | Claim | Requires | Not Sufficient |
91
- |-------|----------|----------------|
92
- | Tests pass | Test command output: 0 failures | Previous run, "should pass" |
93
- | Linter clean | Linter output: 0 errors | Partial check, extrapolation |
94
- | Build succeeds | Build command: exit 0 | Linter passing, logs look good |
95
- | Bug fixed | Test original symptom: passes | Code changed, assumed fixed |
96
- | Requirements met | Line-by-line checklist | Tests passing |
97
-
98
- ## Red Flags - STOP Immediately
99
-
100
- If you catch yourself:
101
- - Using "should", "probably", "seems to"
102
- - Expressing satisfaction before verification
103
- - About to commit/push/PR without verification
104
- - Trusting agent success reports
105
- - Relying on partial verification
106
- - Thinking "just this once"
107
- - Tired and wanting work over
108
-
109
- **ALL of these mean: STOP. Run verification first.**
110
-
111
82
  ## Key Patterns
112
83
 
113
84
  **Correct Pattern:**
@@ -123,48 +94,33 @@ If you catch yourself:
123
94
  ❌ "I'm confident it works"
124
95
  ```
125
96
 
126
- ## Navigation
97
+ ## Red Flags - STOP Immediately
127
98
 
128
- For detailed information:
129
- - **[Gate Function](references/gate-function.md)**: Complete five-step verification process with decision trees
130
- - **[Verification Patterns](references/verification-patterns.md)**: Correct verification patterns for tests, builds, deployments, and more
131
- - **[Common Failures](references/common-failures.md)**: Red flags, rationalizations, and real-world failure examples
99
+ If you catch yourself:
100
+ - Using "should", "probably", "seems to"
101
+ - Expressing satisfaction before verification
102
+ - About to commit/push/PR without verification
103
+ - Trusting agent success reports
104
+ - Relying on partial verification
132
105
 
133
- ## Why This Matters
106
+ **ALL of these mean: STOP. Run verification first.**
134
107
 
135
- From real-world failures:
136
- - "I don't believe you" - trust broken with user
137
- - Undefined functions shipped - would crash in production
138
- - Missing requirements - incomplete features delivered
139
- - Time wasted on false completion → redirect → rework
140
- - Violates core value: "If you lie, you'll be replaced"
108
+ ## Why This Matters
141
109
 
142
- **Statistics from 24 failure memories:**
143
- - Systematic verification: 15-30 minutes to confirm
144
- - Skipped verification: 2-3 hours debugging afterwards
110
+ **Statistics from real-world failures:**
145
111
  - Verification cost: 2 minutes
146
112
  - Recovery cost: 120+ minutes (60x more expensive)
113
+ - 40% of unverified "complete" claims required rework
147
114
 
148
- ## Integration with Other Skills
149
-
150
- - **systematic-debugging**: Verify fix works before claiming bug fixed
151
- - **test-driven-development**: Verify red-green cycle before claiming test complete
152
- - **condition-based-waiting**: Verify conditions met before claiming ready
153
- - **root-cause-tracing**: Verify root cause identified before proposing fixes
154
-
155
- ## Real-World Impact
115
+ **Core violation:** "If you lie, you'll be replaced"
156
116
 
157
- **Before this skill:**
158
- - 40% of "complete" claims required rework
159
- - Average 2-3 hours debugging false completions
160
- - Trust issues with stakeholders
161
- - Broken CI/CD pipelines
117
+ ## Navigation
162
118
 
163
- **After this skill:**
164
- - 95% of completions verified accurate
165
- - Average 2 minutes verification time
166
- - High confidence in status reports
167
- - Clean CI/CD pipelines
119
+ For detailed information:
120
+ - **[Gate Function](references/gate-function.md)**: Complete five-step verification process with decision trees
121
+ - **[Verification Patterns](references/verification-patterns.md)**: Correct verification patterns for tests, builds, deployments, and more
122
+ - **[Red Flags and Failures](references/red-flags-and-failures.md)**: Common failure modes, red flags, and real-world examples with time/cost data
123
+ - **[Integration and Workflows](references/integration-and-workflows.md)**: Integration with other skills, CI/CD patterns, and agent delegation workflows
168
124
 
169
125
  ## The Bottom Line
170
126
 
@@ -273,6 +273,17 @@ GATE CHECK:
273
273
  5. CLAIM: "Agent completed X, verified by diff" OR "Agent attempted but Y issue found"
274
274
  ```
275
275
 
276
+ ### Before Deployment
277
+
278
+ ```
279
+ GATE CHECK:
280
+ 1. IDENTIFY: Build, tests, smoke tests, health checks
281
+ 2. RUN: Full build + test suite
282
+ 3. READ: All outputs
283
+ 4. VERIFY: All pass, ready to deploy
284
+ 5. CLAIM: "Ready for deployment" OR report blockers
285
+ ```
286
+
276
287
  ## The Iron Law Explained
277
288
 
278
289
  ```