@bugzy-ai/bugzy 1.19.0 → 1.19.2

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 (58) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +273 -273
  3. package/dist/cli/index.cjs +157 -13
  4. package/dist/cli/index.cjs.map +1 -1
  5. package/dist/cli/index.js +156 -12
  6. package/dist/cli/index.js.map +1 -1
  7. package/dist/index.cjs +153 -10
  8. package/dist/index.cjs.map +1 -1
  9. package/dist/index.js +153 -10
  10. package/dist/index.js.map +1 -1
  11. package/dist/subagents/index.cjs +150 -10
  12. package/dist/subagents/index.cjs.map +1 -1
  13. package/dist/subagents/index.js +150 -10
  14. package/dist/subagents/index.js.map +1 -1
  15. package/dist/subagents/metadata.cjs +8 -0
  16. package/dist/subagents/metadata.cjs.map +1 -1
  17. package/dist/subagents/metadata.js +8 -0
  18. package/dist/subagents/metadata.js.map +1 -1
  19. package/dist/tasks/index.cjs.map +1 -1
  20. package/dist/tasks/index.js.map +1 -1
  21. package/package.json +95 -95
  22. package/templates/init/.bugzy/runtime/hooks/pre-compact.sh +53 -53
  23. package/templates/init/.bugzy/runtime/hooks/session-start.sh +68 -68
  24. package/templates/init/.bugzy/runtime/knowledge-base.md +61 -61
  25. package/templates/init/.bugzy/runtime/knowledge-maintenance-guide.md +140 -140
  26. package/templates/init/.bugzy/runtime/project-context.md +35 -35
  27. package/templates/init/.bugzy/runtime/subagent-memory-guide.md +122 -122
  28. package/templates/init/.bugzy/runtime/templates/event-examples.md +194 -194
  29. package/templates/init/.bugzy/runtime/templates/test-plan-template.md +50 -50
  30. package/templates/init/.bugzy/runtime/templates/test-result-schema.md +498 -498
  31. package/templates/init/.claude/settings.json +49 -49
  32. package/templates/init/.env.testdata +18 -18
  33. package/templates/init/.gitignore-template +24 -24
  34. package/templates/init/AGENTS.md +155 -155
  35. package/templates/init/CLAUDE.md +157 -157
  36. package/templates/init/test-runs/README.md +45 -45
  37. package/templates/init/tests/CLAUDE.md +199 -199
  38. package/templates/init/tests/docs/test-execution-strategy.md +535 -535
  39. package/templates/init/tests/docs/testing-best-practices.md +724 -724
  40. package/templates/playwright/BasePage.template.ts +190 -190
  41. package/templates/playwright/auth.setup.template.ts +89 -89
  42. package/templates/playwright/dataGenerators.helper.template.ts +148 -148
  43. package/templates/playwright/dateUtils.helper.template.ts +96 -96
  44. package/templates/playwright/pages.fixture.template.ts +50 -50
  45. package/templates/playwright/playwright.config.template.ts +97 -97
  46. package/templates/playwright/reporters/__tests__/bugzy-reporter-failure-classification.test.ts +299 -299
  47. package/templates/playwright/reporters/__tests__/bugzy-reporter-manifest-merge.test.ts +329 -329
  48. package/templates/playwright/reporters/__tests__/playwright.config.ts +5 -5
  49. package/templates/playwright/reporters/bugzy-reporter.ts +784 -784
  50. package/dist/templates/init/.bugzy/runtime/knowledge-base.md +0 -61
  51. package/dist/templates/init/.bugzy/runtime/knowledge-maintenance-guide.md +0 -97
  52. package/dist/templates/init/.bugzy/runtime/project-context.md +0 -35
  53. package/dist/templates/init/.bugzy/runtime/subagent-memory-guide.md +0 -87
  54. package/dist/templates/init/.bugzy/runtime/templates/test-plan-template.md +0 -50
  55. package/dist/templates/init/.bugzy/runtime/templates/test-result-schema.md +0 -498
  56. package/dist/templates/init/.bugzy/runtime/test-execution-strategy.md +0 -535
  57. package/dist/templates/init/.bugzy/runtime/testing-best-practices.md +0 -632
  58. package/dist/templates/init/.gitignore-template +0 -25
@@ -2120,8 +2120,136 @@ Your memory file becomes more valuable over time:
2120
2120
 
2121
2121
  You are meticulous about maintaining your memory file as a critical resource for efficient Azure DevOps operations. Your goal is to make issue tracking faster and more accurate while building knowledge about the system's patterns and managing workflows effectively.`;
2122
2122
 
2123
- // src/subagents/templates/issue-tracker/notion.ts
2123
+ // src/subagents/templates/issue-tracker/asana.ts
2124
2124
  var FRONTMATTER13 = {
2125
+ name: "issue-tracker",
2126
+ description: `Use this agent to track and manage tasks and bugs in Asana. This agent creates detailed task reports, manages task lifecycle, and maintains comprehensive tracking of project work items. Examples: <example>Context: Automated tests found failures that need tracking.
2127
+ user: "3 tests failed in the checkout flow - payment validation is broken"
2128
+ assistant: "I'll use the issue-tracker agent to create Asana tasks for these failures with detailed reproduction steps and test evidence."
2129
+ <commentary>Since test failures were discovered, use the issue-tracker agent to create Asana tasks, check for duplicates, and properly categorize each bug.</commentary></example> <example>Context: A task needs to be updated with test results.
2130
+ user: "Task 1234567890 has been verified on staging"
2131
+ assistant: "Let me use the issue-tracker agent to mark the task as complete and add verification comments."
2132
+ <commentary>Use the issue-tracker agent to update task status and document QA validation results.</commentary></example>`,
2133
+ model: "sonnet",
2134
+ color: "red"
2135
+ };
2136
+ var CONTENT13 = `You are an expert Issue Tracker specializing in managing tasks, bugs, and project work items in Asana. Your primary responsibility is to track issues discovered during testing, manage task lifecycle, and ensure all items are properly documented and resolved.
2137
+
2138
+ **Important: CLI-First Approach**
2139
+
2140
+ Always prefer CLI commands via Bash over MCP tool calls. The CLI produces compact output optimized for agent consumption and avoids MCP schema overhead.
2141
+
2142
+ **Primary Interface \u2014 CLI Commands (via Bash):**
2143
+
2144
+ - **Search tasks**: \`asana-cli task search --query "login bug" [--project GID] [--assignee GID]\`
2145
+ - **Get task details**: \`asana-cli task get <gid>\`
2146
+ - **Create task**: \`asana-cli task create --name "Bug: ..." --project GID [--description "..."] [--assignee GID] [--due YYYY-MM-DD]\`
2147
+ - **Update task**: \`asana-cli task update <gid> [--name "..."] [--completed] [--assignee GID] [--due YYYY-MM-DD]\`
2148
+ - **Add comment**: \`asana-cli task comment <gid> --body "Test evidence: ..."\`
2149
+ - **List projects**: \`asana-cli project list\`
2150
+ - **All commands**: Add \`--json\` for structured JSON output when parsing is needed
2151
+
2152
+ **Attribution:** Always prefix your comments and task descriptions with "[Bugzy]:" to clearly identify actions taken by the Bugzy integration. For example:
2153
+ - Comment: "[Bugzy]: Test evidence shows the login form fails on Chrome 120..."
2154
+ - Task description: "[Bugzy]: Reproduction steps: 1. Navigate to..."
2155
+ Do NOT prefix task names \u2014 keep them clean (e.g. "Bug: Login timeout").
2156
+
2157
+ **Core Responsibilities:**
2158
+
2159
+ 1. **Task Creation & Management**: Generate detailed tasks with reproduction steps, environment details, and test evidence. Include severity assessment and proper project/section assignment.
2160
+
2161
+ 2. **Duplicate Detection**: Before creating new tasks, always search for existing similar tasks to avoid duplicates and link related work.
2162
+
2163
+ 3. **Lifecycle Management**: Track task status, mark tasks complete when verified, add comments with test findings and status updates.
2164
+
2165
+ 4. ${MEMORY_READ_INSTRUCTIONS.replace(/{ROLE}/g, "issue-tracker")}
2166
+
2167
+ **Memory Sections for Issue Tracker (Asana)**:
2168
+ - Asana workspace GID, project GIDs, and section mappings
2169
+ - Recently reported tasks with their GIDs and status
2170
+ - Search queries that work well for finding duplicates
2171
+ - Task naming conventions and description templates
2172
+ - Project-specific workflows and assignee mappings
2173
+
2174
+ **Operational Workflow:**
2175
+
2176
+ 1. **Initial Check**: Always begin by reading \`.bugzy/runtime/memory/issue-tracker.md\` to load your Asana configuration and recent task history
2177
+
2178
+ 2. **Duplicate Detection**:
2179
+ - Check memory for recently reported similar tasks
2180
+ - Use \`asana-cli task search --query "error keywords"\` to search
2181
+ - Look for matching names, descriptions, or error messages
2182
+ - If duplicate found, add a comment to the existing task instead
2183
+
2184
+ 3. **Task Creation**:
2185
+ - Use the project GID from memory
2186
+ - Include comprehensive details: reproduction steps, expected vs actual behavior, environment
2187
+ - Set appropriate assignee and due date when known
2188
+ - Add test evidence and screenshots references in the description
2189
+
2190
+ 4. ${MEMORY_UPDATE_INSTRUCTIONS.replace(/{ROLE}/g, "issue-tracker")}
2191
+
2192
+ Specifically for issue-tracker (Asana), consider updating:
2193
+ - **Created Tasks**: Add newly created tasks with their GIDs
2194
+ - **Project Mappings**: Track which projects map to which areas
2195
+ - **Search Patterns**: Save effective search queries
2196
+ - **Assignee Mappings**: Track who handles what areas
2197
+ - Update pattern library with new issue types
2198
+
2199
+ **Memory File Structure** (\`.bugzy/runtime/memory/issue-tracker.md\`):
2200
+ \`\`\`markdown
2201
+ # Issue Tracker Memory
2202
+
2203
+ ## Last Updated: [timestamp]
2204
+
2205
+ ## Asana Configuration
2206
+ - Workspace GID: 12345
2207
+ - Default Project GID: 67890
2208
+ - Project: My Project
2209
+
2210
+ ## Project Mappings
2211
+ - Auth issues \u2192 Project "Auth" (GID: 11111)
2212
+ - Payment issues \u2192 Project "Payments" (GID: 22222)
2213
+ - UI issues \u2192 Project "Frontend" (GID: 33333)
2214
+
2215
+ ## Assignee Mappings
2216
+ - Auth bugs \u2192 user GID 44444
2217
+ - Payment bugs \u2192 user GID 55555
2218
+
2219
+ ## Recent Tasks (Last 30 days)
2220
+ - [Date] GID 98765: Login timeout on Chrome - Status: Open
2221
+ - [Date] GID 98766: Payment validation error - Status: Completed
2222
+
2223
+ ## Effective Search Queries
2224
+ - Login issues: --query "login" --project 11111
2225
+ - Payment bugs: --query "payment" --project 22222
2226
+ - Recent failures: --query "fail" (no project filter)
2227
+
2228
+ ## Issue Patterns
2229
+ - Timeout errors: Usually infrastructure-related
2230
+ - Validation failures: Often missing edge case handling
2231
+ - Browser-specific: Test across Chrome, Firefox, Safari
2232
+ \`\`\`
2233
+
2234
+ **Task Creation Standards:**
2235
+
2236
+ - Always search before creating to prevent duplicates
2237
+ - Task names: \`Bug: [Component] Short description\` or \`[Type]: Short description\`
2238
+ - Description includes: reproduction steps, expected behavior, actual behavior, environment details, test evidence
2239
+ - Set assignee when the responsible team member is known
2240
+ - Set due date for urgent/critical bugs
2241
+
2242
+ **Quality Assurance:**
2243
+
2244
+ - Verify project GIDs are current
2245
+ - Update task status after verification
2246
+ - Maintain accurate recent task list in memory
2247
+ - Prune old patterns that no longer apply
2248
+
2249
+ You are meticulous about maintaining your memory file as a critical resource for efficient Asana operations. Your goal is to make issue tracking faster and more accurate while building knowledge about the system's patterns.`;
2250
+
2251
+ // src/subagents/templates/issue-tracker/notion.ts
2252
+ var FRONTMATTER14 = {
2125
2253
  name: "issue-tracker",
2126
2254
  description: `Use this agent to track and manage all types of issues including bugs, stories, and tasks in Notion databases. This agent creates detailed issue reports, manages issue lifecycle through status updates, handles story transitions for QA workflows, and maintains comprehensive tracking of all project work items. Examples: <example>Context: Test execution revealed a UI bug that needs documentation.
2127
2255
  user: "The submit button on the checkout page doesn't work on mobile Safari"
@@ -2133,7 +2261,7 @@ assistant: "Let me use the issue-tracker agent to update the story status to 'QA
2133
2261
  model: "haiku",
2134
2262
  color: "red"
2135
2263
  };
2136
- var CONTENT13 = `You are an expert Issue Tracker specializing in managing all types of project issues including bugs, stories, and tasks in Notion databases. Your primary responsibility is to track work items discovered during testing, manage story transitions through QA workflows, and ensure all issues are properly documented and resolved.
2264
+ var CONTENT14 = `You are an expert Issue Tracker specializing in managing all types of project issues including bugs, stories, and tasks in Notion databases. Your primary responsibility is to track work items discovered during testing, manage story transitions through QA workflows, and ensure all issues are properly documented and resolved.
2137
2265
 
2138
2266
  **Core Responsibilities:**
2139
2267
 
@@ -2280,7 +2408,7 @@ Your memory file grows more valuable over time:
2280
2408
  You are meticulous about maintaining your memory file as a critical resource that makes issue tracking more efficient and effective. Your goal is to not just track issues, but to build institutional knowledge about the system's patterns, manage workflows effectively, and help deliver quality software.`;
2281
2409
 
2282
2410
  // src/subagents/templates/issue-tracker/slack.ts
2283
- var FRONTMATTER14 = {
2411
+ var FRONTMATTER15 = {
2284
2412
  name: "issue-tracker",
2285
2413
  description: `Use this agent to track and manage all types of issues including bugs, stories, and tasks in Slack. This agent creates detailed issue threads, manages issue lifecycle through thread replies and reactions, handles story transitions for QA workflows, and maintains comprehensive tracking of all project work items using Slack channels. Examples: <example>Context: Test failures need to be reported to the team immediately.
2286
2414
  user: "3 critical tests failed in the payment flow - looks like the Stripe integration is broken"
@@ -2292,7 +2420,7 @@ assistant: "Let me use the issue-tracker agent to update the story thread with Q
2292
2420
  model: "sonnet",
2293
2421
  color: "red"
2294
2422
  };
2295
- var CONTENT14 = `You are an expert Issue Tracker specializing in managing all types of project issues including bugs, stories, and tasks in Slack. Your primary responsibility is to track work items discovered during testing, manage story transitions through QA workflows, and ensure all issues are properly documented and resolved using Slack threads and channels.
2423
+ var CONTENT15 = `You are an expert Issue Tracker specializing in managing all types of project issues including bugs, stories, and tasks in Slack. Your primary responsibility is to track work items discovered during testing, manage story transitions through QA workflows, and ensure all issues are properly documented and resolved using Slack threads and channels.
2296
2424
 
2297
2425
  **Core Responsibilities:**
2298
2426
 
@@ -2514,7 +2642,7 @@ Maintain organized issue tracking:
2514
2642
  You are focused on creating clear, organized issue threads that leverage Slack's real-time collaboration features while maintaining comprehensive tracking in your memory. Your goal is to make issue management efficient and visible to the entire team while building knowledge about failure patterns to prevent future bugs.`;
2515
2643
 
2516
2644
  // src/subagents/templates/changelog-historian/github.ts
2517
- var FRONTMATTER15 = {
2645
+ var FRONTMATTER16 = {
2518
2646
  name: "changelog-historian",
2519
2647
  description: `Use this agent when you need to understand what code changes went into a build, deployment, or release. This agent retrieves PR and commit information from GitHub to help investigate test failures, regressions, or to understand what changed between releases. Examples: <example>Context: A test started failing after a deployment.
2520
2648
  user: "The checkout flow test is failing in staging. What changed recently?"
@@ -2526,7 +2654,7 @@ assistant: "I'll use the changelog-historian agent to compare the two releases a
2526
2654
  model: "haiku",
2527
2655
  color: "gray"
2528
2656
  };
2529
- var CONTENT15 = `You are an expert Changelog Historian specializing in understanding code changes and their impact. Your primary responsibility is to retrieve and analyze PR and commit information from GitHub to help understand what changed in a codebase.
2657
+ var CONTENT16 = `You are an expert Changelog Historian specializing in understanding code changes and their impact. Your primary responsibility is to retrieve and analyze PR and commit information from GitHub to help understand what changed in a codebase.
2530
2658
 
2531
2659
  ## Core Responsibilities
2532
2660
 
@@ -2698,19 +2826,23 @@ var TEMPLATES = {
2698
2826
  frontmatter: FRONTMATTER12,
2699
2827
  content: CONTENT12
2700
2828
  },
2701
- notion: {
2829
+ asana: {
2702
2830
  frontmatter: FRONTMATTER13,
2703
2831
  content: CONTENT13
2704
2832
  },
2705
- slack: {
2833
+ notion: {
2706
2834
  frontmatter: FRONTMATTER14,
2707
2835
  content: CONTENT14
2836
+ },
2837
+ slack: {
2838
+ frontmatter: FRONTMATTER15,
2839
+ content: CONTENT15
2708
2840
  }
2709
2841
  },
2710
2842
  "changelog-historian": {
2711
2843
  github: {
2712
- frontmatter: FRONTMATTER15,
2713
- content: CONTENT15
2844
+ frontmatter: FRONTMATTER16,
2845
+ content: CONTENT16
2714
2846
  }
2715
2847
  }
2716
2848
  };
@@ -2758,6 +2890,13 @@ var INTEGRATIONS = {
2758
2890
  integrationType: "oauth"
2759
2891
  // Uses Nango with API key auth for PAT
2760
2892
  },
2893
+ asana: {
2894
+ id: "asana",
2895
+ name: "Asana",
2896
+ provider: "asana",
2897
+ // No requiredMCP — uses asana-mcp-server CLI (CLI tool), not MCP server
2898
+ integrationType: "oauth"
2899
+ },
2761
2900
  notion: {
2762
2901
  id: "notion",
2763
2902
  name: "Notion",
@@ -2862,6 +3001,7 @@ var SUBAGENTS = {
2862
3001
  INTEGRATIONS.jira,
2863
3002
  INTEGRATIONS["jira-server"],
2864
3003
  INTEGRATIONS["azure-devops"],
3004
+ INTEGRATIONS.asana,
2865
3005
  INTEGRATIONS.notion,
2866
3006
  INTEGRATIONS.slack
2867
3007
  ],