Agent
19dd7e61f4
fix: fix: triage entrypoint overwrites original issue labels even when root cause was found ( #387 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-07 22:03:25 +00:00
Agent
9a22e407a4
fix: fix: triage agent creates root cause issues without backlog label ( #386 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-07 21:52:44 +00:00
Agent
d653680d64
fix: fix: standardize logging across all agents — capture errors, log exit codes, consistent format ( #367 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
ci/woodpecker/pr/smoke-init Pipeline was successful
2026-04-07 21:15:36 +00:00
Claude
7db129aba2
fix: fix: FORGE_TOKEN_OVERRIDE in entrypoint-llama.sh is overwritten by env.sh sourcing .env ( #375 )
...
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
ci/woodpecker/pr/smoke-init Pipeline was successful
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 18:34:45 +00:00
Agent
630344900d
fix: fix: entrypoint-reproduce.sh ignores DISINTO_FORMULA env var — always runs reproduce formula ( #356 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-07 18:27:34 +00:00
Claude
7e7fafd234
fix: fix: install_project_crons does not set PATH — claude not found in cron jobs ( #366 )
...
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 17:39:27 +00:00
Agent
8480308d1d
fix: fix: edge entrypoint clones disinto repo without auth — fails when Forgejo requires authentication ( #353 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
ci/woodpecker/pr/smoke-init Pipeline was successful
2026-04-07 17:11:59 +00:00
Claude
daf9151b9a
fix: fix: Forgejo API tokens rejected for git HTTP push — agents must use password auth ( #361 )
...
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
Forgejo 11.x rejects API tokens for git HTTP push while accepting them
for all other operations. Store bot passwords alongside tokens during
init and use password auth for git operations consistently.
- forge-setup.sh: persist bot passwords to .env (FORGE_PASS, etc.)
- forge-push.sh: use FORGE_PASS instead of FORGE_TOKEN for git remote URL
- entrypoint.sh: configure git credential helper with password auth
- entrypoint-llama.sh: use FORGE_PASS for git clone (fallback to FORGE_TOKEN)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:48:43 +00:00
Claude
cc7dc6ccd7
fix: fix: edge container cannot run claude — Alpine lacks glibc ( #352 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-07 15:44:13 +00:00
Agent
f499de7c9d
fix: fix: entrypoint-llama.sh should reset base repo to origin/main on startup ( #336 )
ci/woodpecker/push/ci Pipeline was successful
2026-04-07 11:46:45 +00:00
Agent
bba7665e09
fix: fix: entrypoint-llama.sh should reset base repo to origin/main on startup ( #336 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-07 11:40:24 +00:00
Claude
13a35f8355
fix: feat: integrate supervisor into edge container ( #344 )
...
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 09:11:24 +00:00
Agent
c29d49cd5c
fix: fix: triage agent must clean up throwaway debug branch on exit/crash ( #341 )
...
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
Add an EXIT trap in entrypoint-reproduce.sh that:
- Switches back to the primary branch
- Deletes the triage-debug-${ISSUE_NUMBER} branch
This ensures the throwaway branch used for debug instrumentation
(console.log, verbose logging) is cleaned up if the agent crashes
or times out, preventing repository pollution.
The trap is combined with existing cleanup (heartbeat kill, stack
lock release) into a single EXIT handler.
2026-04-07 08:41:11 +00:00
Claude
fb23dcab41
fix: fix: dispatcher uses old single-label names instead of bug-report combo labels ( #339 )
...
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 08:34:39 +00:00
Claude
5189b70dd3
fix: feat: triage agent — deep root cause analysis for reproduced bugs ( #258 )
...
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 08:06:40 +00:00
Agent
3606d66a51
fix: fix: reproduce-agent formula — primary goal is reproduction, not root cause ( #320 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-06 21:01:35 +00:00
Claude
2b0f4f01d7
fix: fix: reproduce container must mount ~/.claude.json for Claude auth ( #312 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-06 20:34:33 +00:00
Agent
f637b53d3e
fix: fix: reproduce container needs --security-opt apparmor=unconfined for LXD ( #311 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-06 20:27:43 +00:00
Claude
e2e4ca5579
fix: fix: entrypoint-llama.sh install_project_crons ignores DISINTO_AGENTS — installs all agents ( #310 )
...
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
Remove install_project_crons() function and cron daemon startup from
entrypoint-llama.sh. The llama container runs dev-poll via its while
loop only — cron is not suitable as it doesn't inherit Docker compose
env vars (ANTHROPIC_API_KEY, ANTHROPIC_BASE_URL, CLAUDE_CONFIG_DIR).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 20:20:46 +00:00
Agent
5f6235e1f1
fix: fix: entrypoint-llama.sh su block drops ANTHROPIC_API_KEY and CLAUDE_CONFIG_DIR ( #306 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-06 18:12:08 +00:00
Claude
300f335179
fix: feat: extend edge container with Playwright and docker compose for bug reproduction ( #256 )
...
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-06 07:45:14 +00:00
Agent
2b4c8be245
fix: remove hardcoded 'johba' references — use dynamic project config instead ( #241 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
ci/woodpecker/pr/smoke-init Pipeline was successful
2026-04-05 17:18:04 +00:00
Agent
ed78d94025
fix: fix: remove supervisor from agents container cron — cannot run without Docker access ( #231 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-05 16:14:56 +00:00
Agent
31449cd401
fix: fix: lib/env.sh crashes with USER unbound variable in agent container ( #229 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-05 15:59:24 +00:00
Agent
c362ac1440
fix: fix: agents container missing procps package — formula-session check_memory fails ( #211 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-05 14:24:20 +00:00
Agent
02a2c139a5
fix: dispatcher.sh: || true suppresses errors in get_pr_merger / get_pr_reviews, making error handlers dead code ( #189 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-05 13:49:34 +00:00
Agent
09a47e613c
fix: feat: configurable agent roles per container via DISINTO_AGENTS env var ( #197 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline failed
2026-04-04 21:38:12 +00:00
Agent
741cf01517
fix: fix: entrypoint-llama.sh does not start cron daemon ( #195 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline failed
2026-04-04 21:21:53 +00:00
Agent
0816af820e
fix: fix: dispatcher should verify admin approver, not merger ( #186 )
...
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
The dispatcher verifies vault actions by checking whether the merger
of the PR is an admin. With the auto-merge workflow, the merger is
always the bot that requested auto-merge (e.g. dev-bot), not the
human who approved the PR.
This change:
1. Adds get_pr_reviews() to fetch reviews from Forgejo API
2. Adds verify_admin_approver() to check for admin APPROVED reviews
3. Updates verify_admin_merged() to check approver first, then fallback
to merger check for backwards compatibility
This ensures auto-merged vault PRs approved by an admin pass verification,
while still rejecting vault PRs without any admin approval.
2026-04-03 12:55:40 +00:00
Agent
79d46f1e99
fix: fix: agents entrypoint crashes — pname unbound variable in cron setup ( #171 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-03 07:08:28 +00:00
Agent
ff58fcea65
fix: use safe array-based docker run command in dispatcher ( #153 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-02 20:28:43 +00:00
Agent
7724488227
fix: fix: dispatcher cannot launch runner — docker compose context not available in edge container ( #153 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-02 20:16:21 +00:00
Agent
e07e718060
fix: fix: dispatcher admin check fails — is_admin not visible to non-admin tokens ( #152 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
ci/woodpecker/pr/smoke-init Pipeline was successful
2026-04-02 18:01:14 +00:00
Agent
843440428e
fix: bug: dispatcher grep -oP fails in Alpine — BusyBox doesn't support Perl regex ( #150 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-02 16:00:00 +00:00
Agent
978dd88347
fix: add --reverse to get_pr_for_file ancestry lookup ( #129 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-01 20:21:31 +00:00
Agent
e40ea2acf2
fix: bug: dispatcher PR lookup fails — --diff-filter=A misses merge commits ( #129 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-01 20:09:34 +00:00
Agent
1eefd5ac72
fix: correct entrypoint.sh COPY path for root build context
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-01 18:28:45 +00:00
Agent
e617999074
fix: correct build context for agents Dockerfile
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-01 18:16:56 +00:00
Agent
ad0b0e181f
fix: bug: agents Dockerfile build fails — SOPS checksum download unreachable ( #120 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline failed
2026-04-01 18:14:18 +00:00
Agent
941cc4ba65
fix: bug: dispatcher fails in edge container — lib/env.sh not available ( #119 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-01 17:58:04 +00:00
Agent
a7ad6eb32a
fix: feat: versioned releases — vault-gated tag, image build, and deploy ( #112 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-01 14:03:49 +00:00
Agent
e7ed5d6567
fix: feat: rewrite dispatcher — poll for merged vault PRs, enforce admin approval ( #76 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-01 06:35:26 +00:00
Agent
6be0eee20b
fix: dispatcher — fix clone URL and secret injection
...
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
- Use FORGE_URL/FORGE_OPS_REPO for clonable URL
- Pass -e SECRET_NAME without value (Docker inherits from env)
- Simplify logging to hide all -e flags entirely
2026-03-29 11:00:58 +00:00
Agent
649a893184
fix: dispatcher — remove unused variable
...
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
- Remove unused secret_val variable to pass shellcheck
2026-03-29 10:42:44 +00:00
Agent
6e34b13a05
fix: dispatcher — address AI review feedback
...
ci/woodpecker/push/ci Pipeline failed
- Redact secrets in logs (=***)
- Fix -e flags before service name in docker compose run
- Use FORGE_OPS_REPO for cloning ops repo
- Refresh ops repo in each poll loop iteration
- Use array-based command execution to prevent shell injection
- Load vault secrets after env.sh for dispatcher access
2026-03-29 10:21:54 +00:00
Agent
c9ef5eb98b
fix: feat: task dispatcher — poll ops repo and launch runners ( #45 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-03-29 09:15:01 +00:00
Agent
8ab1009b15
feat: custom edge container Dockerfile with dispatcher dependencies
...
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
- Create docker/edge/Dockerfile with bash, jq, curl, git, docker-cli
- Create docker/edge/dispatcher.sh as placeholder no-op loop
- Update edge service to build from ./docker/edge instead of caddy:alpine image
- Mount Docker socket into edge container for dispatcher access
- Mount dispatcher.sh as read-only volume
2026-03-29 08:57:20 +00:00
Agent
b2d3af4370
fix: install shellcheck in agents Dockerfile ( #48 )
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-03-29 08:38:17 +00:00
johba
8122f2dd5d
fix: clear stale session IDs before each llama poll
...
ci/woodpecker/push/ci Pipeline failed
Local llama does not support claude --resume (no server-side session
storage). Stale .sid files from failed runs cause agent_run to exit
instantly on every retry, creating an infinite 1-second failure loop.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 07:00:52 +00:00
johba
b30252d32b
feat: llama agent runs as dev-qwen Forgejo identity
...
ci/woodpecker/push/ci Pipeline was successful
FORGE_TOKEN_OVERRIDE in compose env sets a per-agent token.
PRs, issue claims, and comments from the llama agent now show
dev-qwen instead of dev-bot.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-28 21:00:24 +00:00