-
Notifications
You must be signed in to change notification settings - Fork 15
feat: triage variable to control auto-coding #331
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,2 +1,3 @@ | ||
| export GITHUB_ISSUE_URL="${GITHUB_ISSUE_URL}" | ||
| export GH_TOKEN=${GH_TOKEN} | ||
| export TRIAGE_AUTO_CODE="${TRIAGE_AUTO_CODE:-true}" | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. [MEDIUM] env/triage.env ships TRIAGE_AUTO_CODE into the sandbox using a fallback syntax the harness's expansion doesn't support Finding: Suggestion: Drop the |
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -312,24 +312,44 @@ ${FAILED_CREATES}" | |
| # ready-to-code, which triggers the code agent. Feature work and anything | ||
| # else receives the triaged label and waits for human prioritization | ||
| # (per #561, only feature issues should require human review before coding). | ||
| # | ||
|
rh-hemartin marked this conversation as resolved.
|
||
| # Set TRIAGE_AUTO_CODE=false to disable the automatic ready-to-code | ||
| # promotion. When disabled, low-risk categories receive "triaged" instead, | ||
| # requiring human review before the code agent runs. | ||
| TRIAGE_AUTO_CODE="${TRIAGE_AUTO_CODE:-true}" | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 2. Unvalidated auto-code flag scripts/post-triage.sh treats any TRIAGE_AUTO_CODE value other than the exact string "false" as enabled, so typos/case variants (e.g., "FALSE", "0", "fasle") will still apply "ready-to-code" and can unintentionally trigger the coding agent. Agent Prompt
|
||
| CATEGORY=$(jq -r '.triage_summary.category // "unknown"' "${RESULT_FILE}") | ||
| echo "Category: ${CATEGORY}" | ||
| case "${CATEGORY}" in | ||
| bug) | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. [HIGH] Branch is stale and will conflict with the already-merged workflow-changes guard (#325) on these lines Finding: This branch is significantly behind main (diverged, roughly 86 commits behind / 2 ahead). Current main's Suggestion: Rebase onto current main before merging. Reconcile by computing one combined boolean ahead of the case statement (e.g.
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. [MEDIUM] Identical TRIAGE_AUTO_CODE if/else block duplicated across three category branches Finding: The same six-line block ( Suggestion: Extract a helper, e.g. |
||
| echo "Applying bug label..." | ||
| add_label "bug" | ||
| echo "Deferring ready-to-code label (${CATEGORY}) until after label_actions..." | ||
| DEFERRED_LABEL="ready-to-code" | ||
| if [[ "${TRIAGE_AUTO_CODE}" == "false" ]]; then | ||
| echo "TRIAGE_AUTO_CODE=false — applying triaged label instead of ready-to-code (${CATEGORY})" | ||
| add_label "triaged" | ||
| else | ||
| echo "Deferring ready-to-code label (${CATEGORY}) until after label_actions..." | ||
| DEFERRED_LABEL="ready-to-code" | ||
| fi | ||
| ;; | ||
| documentation) | ||
| echo "Applying documentation label..." | ||
| add_label "documentation" | ||
| echo "Deferring ready-to-code label (${CATEGORY}) until after label_actions..." | ||
| DEFERRED_LABEL="ready-to-code" | ||
| if [[ "${TRIAGE_AUTO_CODE}" == "false" ]]; then | ||
| echo "TRIAGE_AUTO_CODE=false — applying triaged label instead of ready-to-code (${CATEGORY})" | ||
| add_label "triaged" | ||
| else | ||
| echo "Deferring ready-to-code label (${CATEGORY}) until after label_actions..." | ||
| DEFERRED_LABEL="ready-to-code" | ||
| fi | ||
| ;; | ||
| performance) | ||
| echo "Deferring ready-to-code label (${CATEGORY}) until after label_actions..." | ||
| DEFERRED_LABEL="ready-to-code" | ||
| if [[ "${TRIAGE_AUTO_CODE}" == "false" ]]; then | ||
| echo "TRIAGE_AUTO_CODE=false — applying triaged label instead of ready-to-code (${CATEGORY})" | ||
| add_label "triaged" | ||
| else | ||
| echo "Deferring ready-to-code label (${CATEGORY}) until after label_actions..." | ||
| DEFERRED_LABEL="ready-to-code" | ||
| fi | ||
| ;; | ||
| feature) | ||
| echo "Applying feature + triaged labels..." | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[MEDIUM] TRIAGE_AUTO_CODE's design doesn't appear to have been requested or confirmed in the issue this PR claims to fix
Finding: The full fullsend-ai/fullsend#1750 thread (root-cause comment, reporter follow-up, RICE-score comment, and the 2026-07-02 meeting-update comment) doesn't discuss or request a mechanism to gate auto-promotion to
ready-to-code. The meeting-update decision is scoped to whether the triage agent should run by default (yes) — a different question from whether a successful triage should auto-trigger the code agent, which is whatTRIAGE_AUTO_CODEactually controls. Unlike the neighboring code comment in the same block, which cites a real discussion ("#561") for the existing feature/non-feature split, this new gate has no comparable paper trail.Suggestion: Get explicit maintainer/reporter sign-off on the requirement (a comment on a genuinely relevant issue, or a fresh issue capturing the need) before merging, or reframe the PR description as an independent enhancement not tied to closing #1750.