@bugzy-ai/bugzy 1.19.3 → 1.20.0
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.
- package/LICENSE +21 -21
- package/README.md +273 -273
- package/dist/cli/index.cjs +76 -8
- package/dist/cli/index.cjs.map +1 -1
- package/dist/cli/index.js +75 -7
- package/dist/cli/index.js.map +1 -1
- package/dist/index.cjs +73 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +73 -5
- package/dist/index.js.map +1 -1
- package/dist/subagents/index.cjs.map +1 -1
- package/dist/subagents/index.js.map +1 -1
- package/dist/subagents/metadata.cjs.map +1 -1
- package/dist/subagents/metadata.js.map +1 -1
- package/dist/tasks/index.cjs +27 -4
- package/dist/tasks/index.cjs.map +1 -1
- package/dist/tasks/index.js +27 -4
- package/dist/tasks/index.js.map +1 -1
- package/dist/templates/init/.bugzy/runtime/knowledge-base.md +61 -0
- package/dist/templates/init/.bugzy/runtime/knowledge-maintenance-guide.md +97 -0
- package/dist/templates/init/.bugzy/runtime/project-context.md +35 -0
- package/dist/templates/init/.bugzy/runtime/subagent-memory-guide.md +87 -0
- package/dist/templates/init/.bugzy/runtime/templates/test-plan-template.md +50 -0
- package/dist/templates/init/.bugzy/runtime/templates/test-result-schema.md +498 -0
- package/dist/templates/init/.bugzy/runtime/test-execution-strategy.md +535 -0
- package/dist/templates/init/.bugzy/runtime/testing-best-practices.md +632 -0
- package/dist/templates/init/.gitignore-template +25 -0
- package/package.json +95 -95
- package/templates/init/.bugzy/runtime/hooks/pre-compact.sh +53 -53
- package/templates/init/.bugzy/runtime/hooks/session-start.sh +68 -68
- package/templates/init/.bugzy/runtime/knowledge-base.md +61 -61
- package/templates/init/.bugzy/runtime/knowledge-maintenance-guide.md +140 -140
- package/templates/init/.bugzy/runtime/project-context.md +35 -35
- package/templates/init/.bugzy/runtime/subagent-memory-guide.md +122 -122
- package/templates/init/.bugzy/runtime/templates/event-examples.md +194 -194
- package/templates/init/.bugzy/runtime/templates/test-plan-template.md +50 -50
- package/templates/init/.bugzy/runtime/templates/test-result-schema.md +498 -498
- package/templates/init/.claude/settings.json +49 -49
- package/templates/init/.env.testdata +18 -18
- package/templates/init/.gitignore-template +24 -24
- package/templates/init/AGENTS.md +155 -155
- package/templates/init/CLAUDE.md +157 -157
- package/templates/init/test-runs/README.md +45 -45
- package/templates/init/tests/CLAUDE.md +199 -199
- package/templates/init/tests/docs/test-execution-strategy.md +535 -535
- package/templates/init/tests/docs/testing-best-practices.md +724 -724
- package/templates/playwright/BasePage.template.ts +190 -190
- package/templates/playwright/auth.setup.template.ts +89 -89
- package/templates/playwright/dataGenerators.helper.template.ts +148 -148
- package/templates/playwright/dateUtils.helper.template.ts +96 -96
- package/templates/playwright/pages.fixture.template.ts +50 -50
- package/templates/playwright/playwright.config.template.ts +97 -97
- package/templates/playwright/reporters/__tests__/bugzy-reporter-failure-classification.test.ts +299 -299
- package/templates/playwright/reporters/__tests__/bugzy-reporter-manifest-merge.test.ts +329 -329
- package/templates/playwright/reporters/__tests__/playwright.config.ts +5 -5
- package/templates/playwright/reporters/bugzy-reporter.ts +784 -784
package/dist/index.cjs
CHANGED
|
@@ -718,7 +718,7 @@ If intent is not in the payload, detect from message patterns:
|
|
|
718
718
|
| Condition | Intent |
|
|
719
719
|
|-----------|--------|
|
|
720
720
|
| Keywords: "status", "progress", "how did", "results", "how many passed" | \`status\` |
|
|
721
|
-
| Keywords: "bug", "issue", "broken", "doesn't work", "failed", "error" | \`feedback\` |
|
|
721
|
+
| Keywords: "bug", "issue", "broken", "doesn't work", "failed", "error", "wrong triage", "incorrect classification", "dispute", "that was wrong" | \`feedback\` |
|
|
722
722
|
| Question words: "what", "which", "do we have", "is there" about tests/project | \`question\` |
|
|
723
723
|
| Default (none of above) | \`feedback\` |
|
|
724
724
|
|
|
@@ -754,7 +754,26 @@ Extract the following from the message:
|
|
|
754
754
|
- \`suggestion\`: "should", "could we", "what if", "idea"
|
|
755
755
|
- \`general\`: Default for unclassified feedback
|
|
756
756
|
|
|
757
|
-
### Step 2:
|
|
757
|
+
### Step 2: Check for Dispute Intent
|
|
758
|
+
|
|
759
|
+
Before processing other feedback types, check if the message is disputing a prior triage finding (e.g., "that triage was wrong", "the login timeout is actually CI flakiness not a product bug", "incorrect classification for...").
|
|
760
|
+
|
|
761
|
+
**If dispute detected:**
|
|
762
|
+
1. Call \`bugzy-findings list\` to retrieve recent findings
|
|
763
|
+
2. Match the customer's message to a specific finding by test name, description, or ID
|
|
764
|
+
3. If ambiguous (multiple possible matches), list recent findings and ask the customer to clarify which one they're disputing
|
|
765
|
+
4. Once matched, call:
|
|
766
|
+
\`\`\`bash
|
|
767
|
+
bugzy-findings dispute --finding-id <matched-finding-id> --explanation "<customer's explanation>"
|
|
768
|
+
\`\`\`
|
|
769
|
+
5. Confirm the dispute was recorded: "Dispute recorded for [finding title]. A triage credit has been applied and the finding is now marked as disputed. This feedback will help improve future triages."
|
|
770
|
+
6. Skip the remaining feedback steps (the dispute is the action)
|
|
771
|
+
|
|
772
|
+
If \`bugzy-findings\` is not available (command not found), inform the customer that dispute functionality is not available for this project and suggest contacting support.
|
|
773
|
+
|
|
774
|
+
**If NOT a dispute**, continue with the standard feedback flow below.
|
|
775
|
+
|
|
776
|
+
### Step 3: Update Test Case Specifications
|
|
758
777
|
|
|
759
778
|
**CRITICAL**: When feedback requests changes to test behavior (e.g., "change the expected result", "update the test to check for X", "the test should verify Y instead"), you MUST update the test case markdown files to reflect the requested changes.
|
|
760
779
|
|
|
@@ -766,7 +785,7 @@ For each actionable feedback item:
|
|
|
766
785
|
|
|
767
786
|
This step updates the **specification** (markdown test case files) only. The \`sync-automation-from-feedback\` step that follows handles syncing the **implementation** (automation code) to match.
|
|
768
787
|
|
|
769
|
-
### Step
|
|
788
|
+
### Step 4: Acknowledge and Confirm
|
|
770
789
|
|
|
771
790
|
Respond confirming: feedback received, summary of what was captured, actions taken (including any test case updates), and follow-up questions if needed.
|
|
772
791
|
|
|
@@ -1051,7 +1070,11 @@ Use these as reference patterns for common events. The webhook routing system al
|
|
|
1051
1070
|
|
|
1052
1071
|
**Jira Events:**
|
|
1053
1072
|
- **Status \u2192 "Ready to Test" / "In Testing" / "Ready for QA"**: Propose \`/verify-changes\` with issue context
|
|
1054
|
-
- **Resolution: "Not a Bug" / "Won't Fix" / "User Error"**: Update knowledge base directly with the learning (no queue needed)
|
|
1073
|
+
- **Resolution: "Not a Bug" / "Won't Fix" / "User Error"**: Update knowledge base directly with the learning (no queue needed). Additionally, if the issue was linked to a triage finding (check via \`bugzy-findings list\` matching by issue tracker key), auto-dispute the finding:
|
|
1074
|
+
\`\`\`bash
|
|
1075
|
+
bugzy-findings dispute --finding-id <matched-finding-id> --explanation "Issue resolved as Not a Bug/Won't Fix in issue tracker"
|
|
1076
|
+
\`\`\`
|
|
1077
|
+
This applies a triage credit automatically when the issue tracker confirms the triage was incorrect. If \`bugzy-findings\` is not available, skip the dispute and only update the knowledge base.
|
|
1055
1078
|
- **Bug created with relevant labels**: Propose \`/generate-test-cases\` to update related test coverage, confirm with team
|
|
1056
1079
|
- **Backlog \u2192 To Do**: No QA action needed, log to event history only
|
|
1057
1080
|
|
|
@@ -6098,6 +6121,16 @@ After analyzing test results, triage each failure to determine if it's a product
|
|
|
6098
6121
|
|
|
6099
6122
|
**IMPORTANT: Do NOT report bugs without triaging first.**
|
|
6100
6123
|
|
|
6124
|
+
### 0. Read Disputed Findings (Learning Context)
|
|
6125
|
+
|
|
6126
|
+
Before triaging, check for prior disputed findings to avoid repeating past mistakes:
|
|
6127
|
+
|
|
6128
|
+
\`\`\`bash
|
|
6129
|
+
cat .bugzy/runtime/disputed-findings.md 2>/dev/null || echo "No disputed findings found"
|
|
6130
|
+
\`\`\`
|
|
6131
|
+
|
|
6132
|
+
If the file exists, read it carefully. It contains past triage mistakes and lessons learned. Use this context to improve classification accuracy for similar failures.
|
|
6133
|
+
|
|
6101
6134
|
### 1. Check Failure Classification
|
|
6102
6135
|
|
|
6103
6136
|
**Before triaging any failure**, read \`new_failures\` from the latest \`test-runs/*/manifest.json\`:
|
|
@@ -6155,7 +6188,42 @@ For each failed test (from \`new_failures\` or all failures if field is missing)
|
|
|
6155
6188
|
| Test ID | Test Name | Last Passed Run |
|
|
6156
6189
|
|---------|-----------|-----------------|
|
|
6157
6190
|
| TC-003 | Search | 20260210-103045 |
|
|
6158
|
-
|
|
6191
|
+
\`\`\`
|
|
6192
|
+
|
|
6193
|
+
### 4. Record Findings
|
|
6194
|
+
|
|
6195
|
+
After triaging, record each classified failure as a structured finding via the \`bugzy-findings\` CLI. This stores findings in the platform database for tracking, disputes, and dashboard visualization.
|
|
6196
|
+
|
|
6197
|
+
For each triaged failure, run:
|
|
6198
|
+
|
|
6199
|
+
\`\`\`bash
|
|
6200
|
+
bugzy-findings add \\
|
|
6201
|
+
--title "<concise failure description>" \\
|
|
6202
|
+
--description "<detailed analysis including error message and root cause>" \\
|
|
6203
|
+
--severity <critical|high|medium|low> \\
|
|
6204
|
+
--classification <product-bug|test-issue> \\
|
|
6205
|
+
--test-case-id "<test ID from triage table>" \\
|
|
6206
|
+
--test-run-timestamp "<timestamp from manifest.json>"
|
|
6207
|
+
\`\`\`
|
|
6208
|
+
|
|
6209
|
+
**Severity Guidelines:**
|
|
6210
|
+
- **critical**: Application crash, data loss, security vulnerability
|
|
6211
|
+
- **high**: Major feature broken, blocking workflow
|
|
6212
|
+
- **medium**: Feature partially broken, workaround exists
|
|
6213
|
+
- **low**: Minor cosmetic issue, edge case
|
|
6214
|
+
|
|
6215
|
+
Example:
|
|
6216
|
+
\`\`\`bash
|
|
6217
|
+
bugzy-findings add \\
|
|
6218
|
+
--title "Checkout form returns 500 on submit" \\
|
|
6219
|
+
--description "POST /api/checkout returns HTTP 500 when submitting with valid payment data. Stack trace shows null reference in payment processor." \\
|
|
6220
|
+
--severity high \\
|
|
6221
|
+
--classification product-bug \\
|
|
6222
|
+
--test-case-id "TC-002" \\
|
|
6223
|
+
--test-run-timestamp "20260219-103045"
|
|
6224
|
+
\`\`\`
|
|
6225
|
+
|
|
6226
|
+
If \`bugzy-findings\` is not available (command not found), skip this step silently \u2014 findings recording is optional and does not block triage.`,
|
|
6159
6227
|
tags: ["execution", "triage", "analysis"]
|
|
6160
6228
|
};
|
|
6161
6229
|
|