@bugzy-ai/bugzy 1.12.2 → 1.12.4
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/dist/cli/index.cjs +102 -58
- package/dist/cli/index.cjs.map +1 -1
- package/dist/cli/index.js +102 -58
- package/dist/cli/index.js.map +1 -1
- package/dist/index.cjs +102 -58
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +102 -58
- package/dist/index.js.map +1 -1
- package/dist/tasks/index.cjs +102 -58
- package/dist/tasks/index.cjs.map +1 -1
- package/dist/tasks/index.js +102 -58
- package/dist/tasks/index.js.map +1 -1
- package/package.json +1 -1
package/dist/tasks/index.js
CHANGED
|
@@ -663,9 +663,9 @@ The handler file contains all necessary processing logic for the detected intent
|
|
|
663
663
|
var processEventTask = {
|
|
664
664
|
slug: TASK_SLUGS.PROCESS_EVENT,
|
|
665
665
|
name: "Process Event",
|
|
666
|
-
description: "Process
|
|
666
|
+
description: "Process webhook events by analyzing for QA relevance and queuing proposed actions for team confirmation",
|
|
667
667
|
frontmatter: {
|
|
668
|
-
description: "Process
|
|
668
|
+
description: "Process webhook events by analyzing for QA relevance and queuing proposed actions for team confirmation",
|
|
669
669
|
"argument-hint": "[event payload or description]"
|
|
670
670
|
},
|
|
671
671
|
steps: [
|
|
@@ -675,7 +675,9 @@ var processEventTask = {
|
|
|
675
675
|
title: "Process Event Overview",
|
|
676
676
|
content: `# Process Event Command
|
|
677
677
|
|
|
678
|
-
Process
|
|
678
|
+
Process webhook events from integrated systems by analyzing event content, determining appropriate QA actions, and queuing them for team confirmation.
|
|
679
|
+
|
|
680
|
+
**This task does NOT execute actions directly.** It proposes actions via the blocked-task-queue and notifies the team for confirmation. Only knowledge base updates and event history logging are performed directly.`
|
|
679
681
|
},
|
|
680
682
|
// Step 2: Security Notice (library)
|
|
681
683
|
"security-notice",
|
|
@@ -698,7 +700,7 @@ Process various types of events using intelligent pattern matching and historica
|
|
|
698
700
|
- **Source Control**: GitHub, GitLab
|
|
699
701
|
- **Communication Tools**: Slack
|
|
700
702
|
|
|
701
|
-
**Event structure and semantics vary by source.**
|
|
703
|
+
**Event structure and semantics vary by source.** Use the inline event-action reference patterns and historical context to determine actions.
|
|
702
704
|
|
|
703
705
|
#### Event Context to Extract:
|
|
704
706
|
- **What happened**: The core event (test failed, PR merged, etc.)
|
|
@@ -819,42 +821,30 @@ Read \`.bugzy/runtime/memory/event-history.md\` to:
|
|
|
819
821
|
- List \`./test-cases/\` for existing tests
|
|
820
822
|
- Check \`.bugzy/runtime/knowledge-base.md\` for past insights
|
|
821
823
|
|
|
822
|
-
#### 2.4
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
**
|
|
827
|
-
-
|
|
828
|
-
-
|
|
829
|
-
- \`
|
|
830
|
-
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
**
|
|
834
|
-
|
|
835
|
-
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
-
|
|
839
|
-
-
|
|
840
|
-
|
|
841
|
-
**
|
|
842
|
-
|
|
843
|
-
-
|
|
844
|
-
|
|
845
|
-
-
|
|
846
|
-
|
|
847
|
-
**Step 4: If No Handler Exists:**
|
|
848
|
-
Do NOT guess or apply generic logic. Instead:
|
|
849
|
-
1. Inform the user that no handler exists for this event source
|
|
850
|
-
2. Ask how this event type should be processed
|
|
851
|
-
3. Suggest creating a handler file at \`.bugzy/runtime/handlers/{source}.md\`
|
|
852
|
-
|
|
853
|
-
**Project-Specific Configuration:**
|
|
854
|
-
Handlers reference \`.bugzy/runtime/project-context.md\` for project-specific rules like:
|
|
855
|
-
- Which status transitions trigger verify-changes
|
|
856
|
-
- Which resolutions should update the knowledge base
|
|
857
|
-
- Which transitions to ignore`
|
|
824
|
+
#### 2.4 Event-Action Reference Patterns
|
|
825
|
+
|
|
826
|
+
Use these as reference patterns for common events. The webhook routing system already handles events with specific default tasks (e.g., deployment_status \u2192 /run-tests). Process-event receives events that need analysis.
|
|
827
|
+
|
|
828
|
+
**Jira Events:**
|
|
829
|
+
- **Status \u2192 "Ready to Test" / "In Testing" / "Ready for QA"**: Propose \`/verify-changes\` with issue context
|
|
830
|
+
- **Resolution: "Not a Bug" / "Won't Fix" / "User Error"**: Update knowledge base directly with the learning (no queue needed)
|
|
831
|
+
- **Bug created with relevant labels**: Propose \`/generate-test-cases\` to update related test coverage, confirm with team
|
|
832
|
+
- **Backlog \u2192 To Do**: No QA action needed, log to event history only
|
|
833
|
+
|
|
834
|
+
**GitHub Events:**
|
|
835
|
+
- **PR merged (routed to process-event)**: Propose \`/verify-changes\` for the merged changes
|
|
836
|
+
- **Issue closed as "won't fix"**: Update knowledge base directly with the learning
|
|
837
|
+
- **Issue created/updated**: Analyze for QA relevance, propose actions if applicable
|
|
838
|
+
|
|
839
|
+
**Recall.ai Events (Meeting Transcripts):**
|
|
840
|
+
- **QA-relevant content found**: Propose appropriate follow-up tasks (e.g., \`/generate-test-cases\`, \`/verify-changes\`)
|
|
841
|
+
- **No QA content** (HR meeting, offsite planning, etc.): Skip \u2014 log to event history only
|
|
842
|
+
|
|
843
|
+
**Other Events:**
|
|
844
|
+
- Analyze for QA relevance based on knowledge base and project context
|
|
845
|
+
- If action needed, propose appropriate task. If not, log and skip.
|
|
846
|
+
|
|
847
|
+
Check \`.bugzy/runtime/project-context.md\` for project-specific context that may inform action decisions.`
|
|
858
848
|
},
|
|
859
849
|
// Step 8: Intelligent Event Analysis (inline)
|
|
860
850
|
{
|
|
@@ -874,17 +864,16 @@ Don't just match patterns - analyze the event within the full context:
|
|
|
874
864
|
**Example Contextual Analysis**:
|
|
875
865
|
\`\`\`
|
|
876
866
|
Event: Jira issue PROJ-456 moved to "Ready for QA"
|
|
877
|
-
+
|
|
867
|
+
+ Reference Pattern: "Ready for QA" status suggests /verify-changes
|
|
878
868
|
+ History: This issue was previously in "In Progress" for 3 days
|
|
879
869
|
+ Knowledge: Related PR #123 merged yesterday
|
|
880
|
-
= Decision:
|
|
870
|
+
= Decision: Propose /verify-changes with issue context and PR reference
|
|
881
871
|
\`\`\`
|
|
882
872
|
|
|
883
873
|
**Pattern Recognition with Context**:
|
|
884
|
-
- An issue resolution depends on
|
|
874
|
+
- An issue resolution depends on the event-action reference patterns and project context
|
|
885
875
|
- A duplicate event (same issue, same transition) should be skipped
|
|
886
876
|
- Events from different sources about the same change should be correlated
|
|
887
|
-
- Handler instructions take precedence over generic assumptions
|
|
888
877
|
|
|
889
878
|
#### 3.2 Generate Semantic Queries
|
|
890
879
|
Based on event type and content, generate 3-5 specific search queries:
|
|
@@ -910,7 +899,7 @@ Generate tasks based on event analysis, using examples from memory as reference.
|
|
|
910
899
|
Analyze the event in context of ALL available information to decide what actions to take:
|
|
911
900
|
|
|
912
901
|
**Consider the Full Context**:
|
|
913
|
-
- What
|
|
902
|
+
- What do the event-action reference patterns suggest for this event type?
|
|
914
903
|
- How does this relate to current knowledge?
|
|
915
904
|
- What's the state of related issues in external systems?
|
|
916
905
|
- Is this part of a larger pattern we've been seeing?
|
|
@@ -918,17 +907,17 @@ Analyze the event in context of ALL available information to decide what actions
|
|
|
918
907
|
|
|
919
908
|
**Contextual Decision Making**:
|
|
920
909
|
The same event type can require different actions based on context:
|
|
921
|
-
- If
|
|
910
|
+
- If reference pattern suggests verification -> Propose /verify-changes (queue for confirmation)
|
|
922
911
|
- If this issue was already processed (check event history) -> Skip to avoid duplicates
|
|
923
|
-
- If related PR exists in knowledge base -> Include PR context in actions
|
|
912
|
+
- If related PR exists in knowledge base -> Include PR context in proposed actions
|
|
924
913
|
- If this is a recurring pattern from the same source -> Consider flagging for review
|
|
925
|
-
- If
|
|
914
|
+
- If no clear action for this event type -> Analyze context or skip
|
|
926
915
|
|
|
927
916
|
**Dynamic Task Selection**:
|
|
928
917
|
Based on the contextual analysis, decide which tasks make sense:
|
|
929
918
|
- **extract_learning**: When the event reveals something new about the system
|
|
930
919
|
- **update_test_plan**: When our understanding of what to test has changed
|
|
931
|
-
- **
|
|
920
|
+
- **propose_generate_test_cases**: When tests need to reflect new reality (queued for confirmation)
|
|
932
921
|
- **report_bug**: When we have a legitimate, impactful, reproducible issue
|
|
933
922
|
- **skip_action**: When context shows no action needed (e.g., known issue, already fixed)
|
|
934
923
|
|
|
@@ -970,13 +959,64 @@ The issue-tracker agent will handle all aspects of issue tracking including dupl
|
|
|
970
959
|
// Step 12: Execute Tasks (inline)
|
|
971
960
|
{
|
|
972
961
|
inline: true,
|
|
973
|
-
title: "
|
|
974
|
-
content: `### Step 5:
|
|
962
|
+
title: "Queue Proposed Actions and Notify Team",
|
|
963
|
+
content: `### Step 5: Queue Proposed Actions and Notify Team
|
|
964
|
+
|
|
965
|
+
#### 5.1 Categorize Determined Actions
|
|
966
|
+
|
|
967
|
+
Separate actions into two categories:
|
|
968
|
+
|
|
969
|
+
**Queued Actions** (require team confirmation):
|
|
970
|
+
- \`/verify-changes\`, \`/generate-test-cases\`, \`/run-tests\`, \`/explore-application\`
|
|
971
|
+
- Any task that modifies tests, runs automation, or takes significant action
|
|
972
|
+
|
|
973
|
+
**Direct Actions** (execute immediately):
|
|
974
|
+
- Knowledge base updates and learnings
|
|
975
|
+
- Event history logging
|
|
976
|
+
- Event processor memory updates
|
|
977
|
+
- Skip decisions
|
|
978
|
+
|
|
979
|
+
#### 5.2 Execute Direct Actions
|
|
975
980
|
|
|
976
|
-
|
|
977
|
-
Follow the standard execution logic with added context from memory.
|
|
981
|
+
Update \`.bugzy/runtime/knowledge-base.md\` directly for learnings (e.g., "Not a Bug" resolutions).
|
|
978
982
|
|
|
979
|
-
#### 5.
|
|
983
|
+
#### 5.3 Queue Action Tasks
|
|
984
|
+
|
|
985
|
+
For each proposed action task, append one row to \`.bugzy/runtime/blocked-task-queue.md\`:
|
|
986
|
+
|
|
987
|
+
| Task Slug | Question | Original Args |
|
|
988
|
+
|-----------|----------|---------------|
|
|
989
|
+
| /verify-changes | Verify PROJ-456 changes (moved to Ready for QA)? Related PR #123. | \`{"issue": "PROJ-456", "context": "Jira Ready to Test"}\` |
|
|
990
|
+
|
|
991
|
+
Rules:
|
|
992
|
+
1. Read file first (create if doesn't exist)
|
|
993
|
+
2. Each action gets its own row
|
|
994
|
+
3. **Question** must be clear and include enough context for team to decide
|
|
995
|
+
4. **Original Args** must include event source, IDs, and relevant context as JSON
|
|
996
|
+
|
|
997
|
+
#### 5.4 Notify Team
|
|
998
|
+
|
|
999
|
+
{{INVOKE_TEAM_COMMUNICATOR}} to share the outcome:
|
|
1000
|
+
|
|
1001
|
+
**If actions were queued:**
|
|
1002
|
+
- What event was processed
|
|
1003
|
+
- What actions are proposed (with brief reasoning)
|
|
1004
|
+
- These are awaiting confirmation
|
|
1005
|
+
|
|
1006
|
+
**If no actions queued (KB-only update or skip):**
|
|
1007
|
+
- What event was processed
|
|
1008
|
+
- What was learned or why it was skipped
|
|
1009
|
+
- That no action is needed from the team
|
|
1010
|
+
|
|
1011
|
+
#### 5.5 Complete Task
|
|
1012
|
+
|
|
1013
|
+
After queuing and notifying, the task is DONE. Do NOT:
|
|
1014
|
+
- Execute /verify-changes, /run-tests, /generate-test-cases directly
|
|
1015
|
+
- Wait for team response (messaging infrastructure handles that)
|
|
1016
|
+
- Create or modify test files
|
|
1017
|
+
- Run Playwright tests
|
|
1018
|
+
|
|
1019
|
+
#### 5.6 Update Event Processor Memory
|
|
980
1020
|
If new patterns discovered, append to \`.bugzy/runtime/memory/event-processor.md\`:
|
|
981
1021
|
\`\`\`markdown
|
|
982
1022
|
### Pattern: [New Pattern Name]
|
|
@@ -986,7 +1026,7 @@ If new patterns discovered, append to \`.bugzy/runtime/memory/event-processor.md
|
|
|
986
1026
|
**Example**: [This event]
|
|
987
1027
|
\`\`\`
|
|
988
1028
|
|
|
989
|
-
#### 5.
|
|
1029
|
+
#### 5.7 Update Event History
|
|
990
1030
|
Append to \`.bugzy/runtime/memory/event-history.md\`:
|
|
991
1031
|
\`\`\`markdown
|
|
992
1032
|
## [Timestamp] - Event #[ID]
|
|
@@ -1059,7 +1099,8 @@ Create files if they don't exist:
|
|
|
1059
1099
|
- Adjust responses based on business priorities and risk
|
|
1060
1100
|
|
|
1061
1101
|
### Smart Task Generation
|
|
1062
|
-
-
|
|
1102
|
+
- NEVER execute action tasks directly \u2014 all action tasks go through blocked-task-queue for team confirmation
|
|
1103
|
+
- Knowledge base updates and event history logging are the only direct operations
|
|
1063
1104
|
- Document why each decision was made with full context
|
|
1064
1105
|
- Skip redundant actions (e.g., duplicate events, already-processed issues)
|
|
1065
1106
|
- Escalate appropriately based on pattern recognition
|
|
@@ -1787,8 +1828,11 @@ This command orchestrates the complete test coverage workflow in a single execut
|
|
|
1787
1828
|
2. **Phase 2**: Generate lightweight test plan
|
|
1788
1829
|
3. **Phase 3**: Generate and verify test cases (create + fix until passing)
|
|
1789
1830
|
4. **Phase 4**: Triage failures and fix test issues
|
|
1790
|
-
5. **Phase 5**: Log product bugs
|
|
1791
|
-
6. **Phase 6**:
|
|
1831
|
+
5. **Phase 5**: Log product bugs to issue tracker
|
|
1832
|
+
6. **Phase 6**: Notify team via Slack/Teams with results summary
|
|
1833
|
+
7. **Phase 7**: Generate final report
|
|
1834
|
+
|
|
1835
|
+
**IMPORTANT**: All phases must be completed. Do NOT skip Phase 5 (bug logging) or Phase 6 (team notification) \u2014 these are required deliverables.`
|
|
1792
1836
|
},
|
|
1793
1837
|
// Step 2: Security Notice (from library)
|
|
1794
1838
|
"security-notice",
|