Improve Jira comment UX#129
Merged
Merged
Conversation
1edc520 to
4a3683f
Compare
- Use word-boundary padding for "ci" keyword match to prevent false positives on words like "ancient", "special" (matches "pr" pattern) - Add "?" question guidance to RCA option footer for consistency with artifact_interaction_options - Switch plan artifact comment to post_status_comment so a transient Jira failure doesn't discard a successfully generated plan - Replace silent fallback in artifact_interaction_options with KeyError to fail fast on unmapped comment types Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
PRD and spec generation had three posting paths but only the Jira-comment path (add_structured_comment) included interaction options guidance. The PR-based path and description-update path left users without instructions on how to approve, revise, or ask questions. - Add pr_interaction_options() for PR-based approval (merge to approve) - Append interaction options to PR creation status comments (PRD + spec) - Post interaction options after description updates (PRD) - Post interaction options after custom-field/attachment updates (spec) - Add interaction options to PR-based regeneration comments Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…rendering issues post_status_comment prepends an emoji via format_status_comment, which breaks markdown rendering when the message starts with a ## header (e.g., "ℹ️ ## Interaction options" is not a valid markdown heading). Use jira.add_comment directly for bare interaction-options comments (description-update, custom-field, attachment, and plan artifact paths). Combined status+interaction comments (PR-based paths) keep post_status_comment since the emoji goes on the status line and the ## header is on its own line. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…ation Both stages were missing user guidance on how to approve, revise, or ask questions. The messages mention per-ticket revision (comment with ! on a specific Epic/Task to revise just that one, or on the Feature ticket to regenerate all). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
ekuris-redhat
left a comment
Collaborator
There was a problem hiding this comment.
Looks good overall. One CI fix needed before merge:
Lint gate failure: ruff format check fails on 2 files
src/forge/workflow/nodes/prd_generation.py and src/forge/workflow/nodes/spec_generation.py need reformatting.
Rename "## Interaction options" to "## Forge — what's next?" across all nodes so the heading clearly identifies the hints as coming from Forge. Also add missing interaction options to the PRD description-update regeneration path and the spec non-comment regeneration path. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Rename heading to "🤖 Forge interaction options" across all nodes. Add emoji prefixes to each action line (✅ Approve, ♻️ Request changes, 🔧 Revise single, ❓ Ask a question) and bold the action labels. Standardize RCA option gate footer to use the same heading and format. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
!revision and?question guidanceTests
uv run ruff check src/forge/integrations/jira/client.py src/forge/workflow/nodes/rca_option_gate.py src/forge/workflow/gates/prd_approval.py src/forge/workflow/gates/spec_approval.py src/forge/workflow/gates/plan_approval.py src/forge/workflow/gates/task_approval.py src/forge/workflow/utils/comment_classifier.py src/forge/workflow/nodes/qa_handler.py tests/unit/integrations/jira/test_client.pyuv run pytest tests/unit/integrations/jira/test_client.py tests/unit/workflow/nodes/test_rca_option_gate.py tests/unit/workflow/test_comment_classifier.py tests/unit/workflow/nodes/test_qa_handler.pyuv run pytest tests/unit/workflow/nodes/test_prd_pr.py tests/unit/workflow/nodes/test_spec_pr.py tests/unit/workflow/nodes/test_epic_decomposition.py tests/unit/workflow/nodes/test_task_generation.py tests/unit/workflow/nodes/test_rca_analysis.py tests/unit/workflow/nodes/test_rca_option_gate.py tests/unit/workflow/nodes/test_code_review.py tests/unit/workflow/nodes/test_workspace_setup.py tests/unit/workflow/nodes/test_implementation.py tests/unit/workflow/test_pr_status_comments.py tests/unit/workflow/bug/test_workflow.py tests/unit/workflow/bug/test_graph.py