Commit graph

1533 commits

Author SHA1 Message Date
Claude
d60a3da1b1 fix: bug: migrate_ops_repo seeds canonical structure in host path but agents container uses a Docker named volume — migration is orphaned (#586)
Some checks failed
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
ci/woodpecker/pr/smoke-init Pipeline failed
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-10 14:48:47 +00:00
0612bb25d0 Merge pull request 'fix: bug: setup_ops_repo tries POST /api/v1/orgs/disinto-admin/repos but disinto-admin is a user, not an org (#585)' (#624) from fix/issue-585 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 14:40:47 +00:00
Claude
6dc42c3d1a fix: bug: via_msg unbound variable under set -euo pipefail (#585)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-10 14:37:54 +00:00
Claude
c7e43e091a fix: bug: setup_ops_repo tries POST /api/v1/orgs/disinto-admin/repos but disinto-admin is a user, not an org (#585)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-10 14:31:18 +00:00
316f9fd64b Merge pull request 'fix: bug: bin/disinto init rotates all bot tokens and passwords on every run, invalidating existing cloned repos with embedded credentials (#584)' (#618) from fix/issue-584 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 14:30:18 +00:00
Claude
cecfb3374d fix: bug: bin/disinto init rotates all bot tokens and passwords on every run, invalidating existing cloned repos with embedded credentials (#584)
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-10 14:18:27 +00:00
6b858c9c43 Merge pull request 'fix: bug: setup_forge's admin_token is a local variable, not exported — setup_ops_repo falls back to dev-bot token and fails with 403 (#583)' (#617) from fix/issue-583 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 14:14:35 +00:00
Claude
e58caa5dfd fix: bug: setup_forge's admin_token is a local variable, not exported — setup_ops_repo falls back to dev-bot token and fails with 403 (#583)
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-10 14:07:49 +00:00
6305597156 Merge pull request 'fix: bug: setup_forge has ~6 other anonymous curl checks for user/repo existence, all fail with 403 on locked-down forgejos (#582)' (#616) from fix/issue-582 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 14:04:55 +00:00
Claude
817d691e4d fix: bug: setup_forge has ~6 other anonymous curl checks for user/repo existence, all fail with 403 on locked-down forgejos (#582)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-10 13:58:48 +00:00
31639b95f4 Merge pull request 'fix: bug: setup_forge reachability check uses unauthenticated curl against /api/v1/version, fails on REQUIRE_SIGNIN_VIEW=true forgejos (#581)' (#615) from fix/issue-581 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 13:41:58 +00:00
Claude
c753bebb14 fix: bug: setup_forge reachability check uses unauthenticated curl against /api/v1/version, fails on REQUIRE_SIGNIN_VIEW=true forgejos (#581)
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-10 13:36:02 +00:00
7c8f734d6c Merge pull request 'fix: bug: set -o pipefail + git ls-remote failure silently kills dev-agent with no log line (#577)' (#614) from fix/issue-577 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 13:35:10 +00:00
Claude
0b7a41c3a1 fix: bug: set -o pipefail + git ls-remote failure silently kills dev-agent with no log line (#577)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-10 13:33:02 +00:00
56a4700e16 Merge pull request 'fix: bug: agents entrypoint creates log dir as root, then gosu agent can't mkdir subdirs (#576)' (#613) from fix/issue-576 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 13:11:44 +00:00
Claude
af74eedad9 fix: bug: agents entrypoint creates log dir as root, then gosu agent can't mkdir subdirs (#576)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-10 13:05:30 +00:00
b591e38153 Merge pull request 'fix: bug: tracked docker-compose.yml missing DISINTO_CONTAINER=1 on agents / agents-llama (#575)' (#612) from fix/issue-575 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 13:00:03 +00:00
Claude
5997667cb5 fix: bug: tracked docker-compose.yml missing DISINTO_CONTAINER=1 on agents / agents-llama (#575)
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-10 12:54:45 +00:00
dbf1340027 Merge pull request 'fix: bug: dev-agent.sh line 272 — grep -c ... || echo 0 produces "0\n0" and breaks arithmetic (#574)' (#611) from fix/issue-574 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 12:49:44 +00:00
Claude
2b7edfaf1a fix: bug: dev-agent.sh line 272 — grep -c ... || echo 0 produces 0n0 and breaks arithmetic (#574)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-10 12:45:24 +00:00
1499eb04df Merge pull request 'fix: bug: architect-run.sh exits silently — runs git from baked /home/agent/disinto which is not a git repo (#569)' (#610) from fix/issue-569-1 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 12:43:00 +00:00
Claude
c7168b58e5 fix: bug: architect-run.sh exits silently — runs git from baked /home/agent/disinto which is not a git repo (#569)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-10 12:36:51 +00:00
05954191ae Merge pull request 'fix: bug: dev-poll exits early when another agent has any in-progress issue, blocking parallel agents from claiming backlog (#572)' (#609) from fix/issue-572 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 12:19:34 +00:00
Claude
c096373ef6 fix: bug: dev-poll exits early when another agent has any in-progress issue, blocking parallel agents from claiming backlog (#572)
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-10 12:14:36 +00:00
e46c367bd5 Merge pull request 'fix: bug: WOODPECKER_REPO_ID not set in agent containers — ci-debug.sh fails to fetch logs, agents see "No logs available" (#599)' (#601) from fix/issue-599 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 11:54:12 +00:00
Claude
95aba008ac fix: bug: WOODPECKER_REPO_ID not set in agent containers — ci-debug.sh fails to fetch logs, agents see "No logs available" (#599)
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-10 11:50:08 +00:00
Claude
e092158fb0 fix: bug: WOODPECKER_REPO_ID not set in agent containers — ci-debug.sh fails to fetch logs, agents see "No logs available" (#599)
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-10 11:41:50 +00:00
2d372679d4 Merge pull request 'fix: bug: architect has no path for approved PRs awaiting initial design questions (#570)' (#598) from fix/issue-570 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 11:36:53 +00:00
Claude
99d430a0c2 fix: bug: architect has no path for approved PRs awaiting initial design questions (#570)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
Implementation:
- Added detect_approved_pending_questions() function to identify approved PRs
  that have no ## Design forks section and no Q1:, Q2: comments yet.
- Modified response processing block to handle three session modes:
  1. questions_phase: Resume session for processing Q&A answers
  2. start_questions: Fresh session to post initial design questions
  3. pitch: Original behavior for new pitch generation
- Added build_architect_prompt_for_mode() function to generate appropriate
  prompts for each session mode.
- When an approved PR is detected, the agent posts initial design questions
  (Q1:, Q2:, etc.) and adds the ## Design forks section, transitioning the
  PR into the existing questions phase.

This fixes the issue where approved architect PRs would sit indefinitely
because the agent had no path to start the design conversation.
2026-04-10 11:30:46 +00:00
fda647a4d9 Merge pull request 'fix: bug: in_progress_recently_added grace period broken — filters timeline by type==7 but Forgejo API returns type as string "label" (#565)' (#596) from fix/issue-565 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 11:05:15 +00:00
Claude
6df0476808 fix: bug: in_progress_recently_added grace period broken — filters timeline by type==7 but Forgejo API returns type as string "label" (#565)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-10 10:59:06 +00:00
d29a19612e Merge pull request 'fix: bug: local-model agents reuse FORGE_TOKEN of main agent — wrong Forgejo identity (#563)' (#595) from fix/issue-563 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 10:56:03 +00:00
Claude
f700c33a1b fix: bug: local-model agents reuse FORGE_TOKEN of main agent — wrong Forgejo identity (#563)
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
This fixes the issue where agents-llama containers were using the main
FORGE_TOKEN (dev-bot) instead of dedicated credentials for the llama bot user.

Changes:
- forge-setup.sh: Added generation of FORGE_TOKEN_LLAMA and FORGE_PASS_LLAMA
  for local-model bot users (dev-qwen, dev-qwen-nightly). These are created
  as Forgejo users with their own API tokens and passwords for git push.
- generators.sh: Updated agents-llama service to use FORGE_TOKEN_LLAMA and
  FORGE_PASS_LLAMA instead of falling back to dev-bot's credentials.
  Fixed escaping to defer variable resolution to docker-compose runtime.
- docker-compose.yml: Updated to use FORGE_TOKEN_LLAMA and FORGE_PASS_LLAMA
  (renamed from FORGE_TOKEN_DEVQWEN for consistency).
- .env.example: Added documentation for all per-bot tokens and passwords.
- projects/disinto.toml.example: Documented the auto-credential generation.

When a project TOML configures [agents.llama] with forge_user = dev-qwen:
1. disinto init creates the dev-qwen Forgejo user
2. Generates FORGE_TOKEN_LLAMA and FORGE_PASS_LLAMA
3. Adds dev-qwen as write collaborator on the project repo
4. The agents-llama container uses these credentials for all Forgejo API calls

This ensures issues and PRs created by the llama agent are correctly
attributed to dev-qwen instead of dev-bot.
2026-04-10 10:49:23 +00:00
42d4367fe1 Merge pull request 'fix: feat: disinto agent enable/disable commands for guard control (#556)' (#592) from fix/issue-556 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 10:26:40 +00:00
Claude
934bf9876c fix: feat: disinto agent enable/disable commands for guard control (#556)
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-10 10:20:00 +00:00
56f21b0362 Merge pull request 'fix: bug: dispatcher reproduce/triage/verify dispatch fails — no project TOML at /opt/disinto/projects/ in edge container (#554)' (#579) from fix/issue-554 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 10:13:33 +00:00
afeaffbeae Merge pull request 'fix: bug: edge container supervisor loop never runs (and /opt/disinto-logs not created) (#555)' (#580) from fix/issue-555 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 10:07:38 +00:00
Claude
fde7d1170e fix: bug: dispatcher reproduce/triage/verify dispatch fails — no project TOML at /opt/disinto/projects/ in edge container (#554)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-10 09:35:50 +00:00
Claude
098c19cb3a fix: bug: edge container supervisor loop never runs (and /opt/disinto-logs not created) (#555)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
Two fixes:
- Create /opt/disinto-logs before supervisor loop starts (tee was failing)
- Replace exec caddy with background caddy + wait -n pattern so the
  supervisor loop subshell isn't orphaned when the parent shell exec's away

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-10 09:32:47 +00:00
Claude
37c44d7ac4 fix: bug: dispatcher reproduce/triage/verify dispatch fails — no project TOML at /opt/disinto/projects/ in edge container (#554)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-10 09:23:29 +00:00
8dca5c7eb3 Merge pull request 'fix: bug: edge container missing claude binary and OAuth credentials mount (#553)' (#573) from fix/issue-553 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 09:18:39 +00:00
Claude
f38e3e0d0d fix: bug: edge container missing claude binary and OAuth credentials mount (#553)
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-10 09:13:11 +00:00
06eb806566 Merge pull request 'fix: tech-debt: rewrite AD-002 — concurrency is bounded per LLM backend, not per project (#550)' (#571) from fix/issue-550 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 09:07:25 +00:00
Claude
0a5b54ff4f fix: tech-debt: rewrite AD-002 — concurrency is bounded per LLM backend, not per project (#550)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-10 09:03:52 +00:00
b7e8fdc9ac Merge pull request 'fix: tech-debt: sweep cron-isms from code comments, helpers, lib, and public site copy (#548)' (#568) from fix/issue-548 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 09:00:36 +00:00
Claude
f0c3c773ff fix: tech-debt: sweep cron-isms from code comments, helpers, lib, and public site copy (#548)
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
- Rename acquire_cron_lock → acquire_run_lock in lib/formula-session.sh
  and all five *-run.sh call sites
- Update all *-run.sh file headers: "Cron wrapper" → "Polling-loop wrapper"
- Rewrite docs/updating-factory.md: replace crontab check with pgrep,
  replace "Crontab empty after restart" section with polling-loop equivalent
- Update docs/EVAL-MCP-SERVER.md to reflect polling-loop reality
- Update lib/guard.sh, lib/AGENTS.md, lib/ci-setup.sh comments
- Update formulas/*.toml comments (cron → polling loop)
- Update dev/dev-poll.sh usage comment
- Update tests/smoke-init.sh to handle compose vs bare-metal scheduling
- Update .woodpecker/agent-smoke.sh comments
- Update site HTML: architecture.html, quickstart.html, index.html
- Clarify _install_cron_impl is bare-metal only (compose uses polling loop)
- Keep site/collect-engagement.sh and site/collect-metrics.sh cron refs
  (genuinely cron-driven on the website host, separate from factory loop)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-10 08:54:11 +00:00
da4d9077dd Merge pull request 'fix: docs: per-agent AGENTS.md files still describe cron triggers (#547)' (#567) from fix/issue-547 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 08:42:02 +00:00
Claude
6a6d2d0774 fix: docs: per-agent AGENTS.md files still describe cron triggers (#547)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
2026-04-10 08:35:19 +00:00
84ab6ef0a8 Merge pull request 'fix: docs: architecture docs still describe cron scheduling — factory runs from while-true polling loop (#546)' (#566) from fix/issue-546 into main
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
2026-04-10 08:30:23 +00:00
Claude
3f76b3495a fix: docs: architecture docs still describe cron scheduling — factory runs from while-true polling loop (#546)
Some checks failed
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline failed
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-10 08:26:24 +00:00