Commit graph

68 commits

Author SHA1 Message Date
Agent
19dd7e61f4 fix: fix: triage entrypoint overwrites original issue labels even when root cause was found (#387)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
Some checks failed
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)
Some checks failed
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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
All checks were successful
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
All checks were successful
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)
Some checks failed
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)
All checks were successful
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)
All checks were successful
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)
All checks were successful
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
All checks were successful
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
All checks were successful
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
Some checks failed
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)
All checks were successful
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
All checks were successful
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)
All checks were successful
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
Some checks failed
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
All checks were successful
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