Compare commits

...
Author SHA1 Message Date
Bot of Thomas Güttler 1e957305a6 Merge branch 'main' into issue-453-update-agentloop-defaults 2026-06-07 04:27:10 +02:00
Thomas SharedInbox 3928060169 Merge branch 'main' into issue-453-update-agentloop-defaults 2026-06-07 00:30:51 +02:00
Thomas SharedInbox 4e00e14a92 Merge branch 'main' into issue-453-update-agentloop-defaults 2026-06-07 00:15:46 +02:00
Thomas SharedInboxandClaude Sonnet 4.6 b09b43d989 fix(ci): forward SSH tunnel directly to dagger engine socket
Eliminates the socat bridge dependency by using OpenSSH's built-in
Unix socket forwarding (-L port:socket_path). The dagger user already
owns /run/dagger/engine.sock so no intermediate TCP listener is needed.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 23:43:33 +02:00
Thomas SharedInboxandClaude Sonnet 4.6 e76f7a5af2 docs: update AGENTS.md for new agentloop label names and merge prompt
- Rename in-process labels: loop/plan-in-progress → loop/plan-in-process,
  loop/code-in-progress → loop/code-in-process (matches agentloop convention)
- Add loop/merge → loop/merge-in-process → loop/merge-done to table and
  state machine (auto-merge via new merge agent)
- Update lifecycle and rules to reflect automatic merge after CI passes

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-06 21:51:03 +02:00
+13 -9
View File
@@ -13,23 +13,27 @@ Automation is handled by [agentloop](https://github.com/guettli/agentloop) runni
| Label | Trigger | Outcome |
|---|---|---|
| `loop/plan` | Planning agent reads the issue and writes an implementation plan as a comment | Issue moves to `loop/plan-done` |
| `loop/code` | Coding agent implements the change, creates a branch + PR | Issue moves to `loop/code-done` |
| `loop/code` | Coding agent implements the change, creates a branch + PR | Issue routes to `loop/merge` |
| `loop/merge` | Merge agent rebases, waits for CI, and merges the PR | Issue moves to `loop/merge-done` |
**State machine:**
```
loop/plan → loop/plan-in-progress → loop/plan-done
↘ NeedSupervisor (on failure)
loop/plan → loop/plan-in-process → loop/plan-done
↘ NeedSupervisor (on failure)
loop/code → loop/code-in-progress → loop/code-done
↘ NeedSupervisor (on failure)
loop/code → loop/code-in-process → loop/merge (via route)
↘ NeedSupervisor (on failure)
loop/merge → loop/merge-in-process → loop/merge-done
↘ NeedSupervisor (on failure)
```
**Rules:**
- Only issues authored by allowed users are picked up (guettli, guettlibot, guettlibot2, forgejo-actions).
- An issue with `NeedSupervisor` needs human attention — investigate, fix, then re-label.
- The coding agent opens a PR but does NOT close the issue. A human reviews the PR and closes the issue after merging.
- The merge agent merges the PR automatically once CI is green. A human still reviews the PR before it merges if branch protection requires a review.
- Planning agents only post a comment — they do NOT write code or open PRs.
- `loop/*` labels are managed by agentloop — do not set them manually while an agent is active.
@@ -39,9 +43,9 @@ loop/code → loop/code-in-progress → loop/code-done
1. Create issue
2. Add label loop/plan → agent writes plan as comment
3. Review plan, request changes or approve
4. Add label loop/code → agent implements + opens PR
5. Review PR, merge
6. Close issue
4. Add label loop/code → agent implements + opens PR + hands off to merge
5. (Optional) Review PR before it merges
6. Merge agent waits for CI and merges the PR automatically
```
## Code conventions