Issue Fixer Pipeline — Known Issues and Fixes Applied #34
Labels
No labels
blocked:gate-research
blocked:needs-decision
blocked:needs-human
blocked:no-changes
bug
documentation
enhancement
feature-request
in-progress
quickfix
research
triage-approved
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Mark/infrastructure#34
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Issue: no_agent 120s Timeout
Symptom
The script would be killed after 120 seconds by the cron scheduler in no_agent mode. The GSD pipeline and hermes chat -q calls can take longer than 120s to complete.
Fix Applied
Switched both issue-fixer-autorun and feature-triage from no_agent=true to agent-mode (LLM-driven). In agent-mode, the script runs under the subprocess timeout (configurable, typically 600s) instead of the scheduler's hard 120s no_agent cap. The agent LLM then processes the script output for delivery.
Files Changed
Issue: Feature Requests Blocked in Silence
Symptom
The original next-issue.sh silently labeled feature-request issues and dumped them in a skip pile with no visibility or decision point. All ~165 feature requests across 24 repos were auto-skipped with no triage.
Fix Applied
Created the feature-triage cron job and label bridge system. Feature requests now get:
Files Created
Issue: exfil_curl Threat Pattern
Symptom
Cron job failed because the prompt text matched the exfil_curl threat pattern (a curl command with a token in it).
Fix Applied
Rewrote the cron prompt to avoid including raw curl commands with tokens. The script handles API calls internally.
Issue: Gate Pipeline Blocks (pre-dispatch gate missing)
Symptom
GSD pipeline blocks at the pre-dispatch gate because implementation scripts don't call the pre-dispatch.sh gate script.
Status
Still a known friction point. The gates must be called explicitly by the implementation phase. Current pipeline expects the implement step to run something like: bash ~/Projects/gsd-self/.gsd/gates/pre-dispatch.sh
Issue: Duplicate state when label_issue fails
Symptom
If the Forgejo label_issue API call fails (e.g., label already exists), the state file may still record the issue as visited, causing it to be skipped permanently.
Status
Minor issue. The state append happens regardless of API success.
Fix Applied: Duplicate state when label_issue fails
Repository: Mark/hermes-scripts
Commit: 8de3852
Changes
What was broken
When label_issue() failed (network error, rate limit, label already exists), the issue was already marked as visited in the state file, causing it to be permanently skipped.