en un clic
fix-issue
// Use when working on a GitHub issue - fetches issue details, analyzes codebase, implements fix following project methodology
// Use when working on a GitHub issue - fetches issue details, analyzes codebase, implements fix following project methodology
Use when preparing or executing a release - verifies changelog content, updates version references, commits release prep, and, when the maintainer explicitly asks, pushes the release tag that triggers automation
Use when reviewing a pull request - security-focused review following CLAUDE.md guidelines for breaking changes, malicious patterns, and backward compatibility
Use after making changes to run terraform fmt, validate, and plan against test environment
Use when users need help with kube-hetzner configuration, debugging, or questions - acts as an intelligent assistant with live repo access
Use when documentation needs updating - ensures variables.tf, llms.md, kube.tf.example, and README are in sync
Use when triaging a GitHub issue - analyzes issue, checks for duplicates, categorizes, and drafts response
| name | fix-issue |
| description | Use when working on a GitHub issue - fetches issue details, analyzes codebase, implements fix following project methodology |
| args | issue_number |
Guided workflow for implementing fixes for GitHub issues following the project's CLAUDE.md methodology.
/fix-issue <number>
digraph fix_flow {
rankdir=TB;
node [shape=box];
fetch [label="1. Fetch issue details"];
analyze [label="2. Analyze issue type"];
verify [label="3. Verify it's a real bug"];
investigate [label="4. Deep investigation"];
plan [label="5. Enter plan mode"];
implement [label="6. Implement fix"];
test [label="7. Test changes"];
commit [label="8. Commit & push"];
fetch -> analyze;
analyze -> verify;
verify -> investigate;
investigate -> plan;
plan -> implement;
implement -> test;
test -> commit;
}
# Get issue details
gh issue view <number> --repo kube-hetzner/terraform-hcloud-kube-hetzner
# CRITICAL: Always read ALL comments - solutions may already be proposed
gh issue view <number> --repo kube-hetzner/terraform-hcloud-kube-hetzner --comments
| Type | Description | Action |
|---|---|---|
| 🔴 BUG | Reproducible defect | Fix it |
| 🟡 EDGE CASE | Fails in specific scenario | Evaluate effort vs impact |
| 🟠 USER ERROR | Misconfigured kube.tf | Help user, improve docs |
| ⚪ OLD VERSION | Fixed in newer release | Ask user to upgrade |
| 🔵 FEATURE REQUEST | New functionality | Move to Discussions |
| ❓ NEEDS INFO | Can't reproduce | Ask for more info |
CRITICAL: Many issues are user configuration errors, NOT bugs.
Before implementing any fix:
# Search for existing PRs
gh pr list --search "<error keyword>" --repo kube-hetzner/terraform-hcloud-kube-hetzner
# Check if issue is already mentioned in changelog
grep -i "<keyword>" CHANGELOG.md
Read these files to understand context:
# Always start with these
cat versions.tf # Provider/terraform versions
cat variables.tf # All configurable options
cat locals.tf # Core logic and computed values
# Then investigate specific areas based on the issue
| Area | Files to Check |
|---|---|
| Network | locals.tf (subnet calculations), network.tf |
| Control Plane | control_planes.tf, locals.tf |
| Agents | agents.tf, autoscaler.tf |
| Load Balancer | load_balancer.tf, init.tf |
| CNI | templates/cni/*.yaml.tpl |
| Storage | templates/longhorn.yaml.tpl |
| Firewall | firewall.tf |
# Codex CLI for deep reasoning
codex exec -m gpt-5.5 -s read-only -c model_reasoning_effort="xhigh" \
"Analyze this issue and identify root cause: <issue description>"
# Gemini for large context analysis
gemini --model gemini-3-pro-preview -p \
"@locals.tf @variables.tf Analyze how <feature> works and potential issues"
MANDATORY: Always enter plan mode before implementing.
Write a plan that includes:
# Pull latest master first!
git pull origin master
# Create feature branch
git checkout -b fix/issue-<number>-<description>
# ALWAYS run these before committing
terraform fmt
terraform validate
# Test against existing deployment
cd /path/to/kube-test
terraform init -upgrade
terraform plan # Should NOT show resource destruction
terraform fmt passesterraform validate passesterraform plan shows expected changes onlygit add <specific-files>
git commit -m "$(cat <<'EOF'
fix: <brief description>
Fixes #<number>
<explanation of what was wrong and how it's fixed>
EOF
)"
git push -u origin fix/issue-<number>-<description>
Before completing ANY issue:
| Step | Command |
|---|---|
| Fetch issue | gh issue view <num> --comments |
| Check PRs | gh pr list --search "<keyword>" |
| Create branch | git checkout -b fix/issue-<num>-<desc> |
| Format | terraform fmt |
| Validate | terraform validate |
| Test plan | terraform plan |
| Commit | git commit -m "fix: ..." |
| Push | git push -u origin <branch> |