atlas
d5a81f9195
feat(#2377): forge-webhook-triggered config-PR merge flow
Replace the request_merge_config_pr MCP tool with a Forgejo
pull_request webhook on the agent-configs org. Agents now open a
config PR normally; hive-c0re auto-queues the MergeConfigPr approval
from the webhook event — no extra tool call needed.
Changes:
- dashboard/webhook.rs: add POST /webhook/config-pr handler
- parses Forgejo pull_request payload (opened/synchronize)
- strips agent-configs/<agent> prefix to extract agent name
- calls submit_merge_config_pr → queues dashboard approval card
- always 200 to prevent Forgejo retries; errors logged at warn
- dashboard/mod.rs: wire /webhook/config-pr route
- forge/mod.rs: add ensure_config_pr_webhook() — idempotent org-level
hook registration on agent-configs at startup; CONFIG_ORG now
pub(crate) for webhook handler
- main.rs: call ensure_config_pr_webhook alongside knowledge webhook
- socket_server/config_approvals.rs: drop handle_request_merge_config_pr;
make submit_merge_config_pr pub(crate) for webhook handler
- socket_server/mod.rs: re-export submit_merge_config_pr; drop dispatch arm
- hive-sh4re/src/lib.rs: remove AgentRequest::RequestMergeConfigPr
wire type; drop from ToolGroup::Approvals tool list
- hive-ag3nt/src/mcp/: drop request_merge_config_pr tool + args struct
- docs: update approvals.md (webhook trigger), conventions.md (tool
group), agent-hierarchy.md, tools/lifecycle.md
Hardening from #2375-merge-config-pr-hardening branch preserved:
- pr_is_open check at queue time (rejects closed/merged PRs)
- atomic fetched_sha INSERT via submit_kind(fetched_sha: Some(&sha))
Approve-handler machinery unchanged (run_merge_config_pr,
ff_push_to_main, fetch_pr_head_into_applied, mark_pr_merged).
|
2026-07-11 12:19:52 +02:00 |
| .. |
|
tools
|
feat(#2377): forge-webhook-triggered config-PR merge flow
|
2026-07-11 12:19:52 +02:00 |
|
turn-loop
|
feat(#2112): make http-mcp the sole transport for the built-in surface
|
2026-07-11 00:32:51 +02:00 |
|
web-ui
|
web_ui: support unix:<path> upstreams in extraWebProxies
|
2026-07-10 12:53:09 +02:00 |
|
agent-hierarchy.md
|
feat(#2377): forge-webhook-triggered config-PR merge flow
|
2026-07-11 12:19:52 +02:00 |
|
approvals.md
|
feat(#2377): forge-webhook-triggered config-PR merge flow
|
2026-07-11 12:19:52 +02:00 |
|
boundary.md
|
docs(security): ci netns, knowledge .git tmpfs, matrix id/secret split
|
2026-07-10 19:17:17 +02:00 |
|
ci.md
|
docs(security): ci netns, knowledge .git tmpfs, matrix id/secret split
|
2026-07-10 19:17:17 +02:00 |
|
conventions.md
|
feat(#2377): forge-webhook-triggered config-PR merge flow
|
2026-07-11 12:19:52 +02:00 |
|
coordinator.md
|
refactor(hive-c0re): group src-root files into submodules
|
2026-07-06 22:38:47 +02:00 |
|
forge.md
|
docs(forge): note forgejo-api client + remaining raw-HTTP surfaces
|
2026-07-07 09:25:51 +02:00 |
|
gateway.md
|
docs(gateway): remove stale TCP loopback fallback section
|
2026-07-04 22:42:56 +02:00 |
|
github.md
|
docs(#1970): rewrite for UI-driven shape (github.enable + host switch), purge githubAccount refs, regen hivectl-cli.md
|
2026-07-11 12:18:55 +02:00 |
|
gotchas.md
|
docs(gotchas): document nix fmt failure in git worktrees
|
2026-07-04 20:50:50 +02:00 |
|
knowledge.md
|
docs(security): ci netns, knowledge .git tmpfs, matrix id/secret split
|
2026-07-10 19:17:17 +02:00 |
|
matrix.md
|
chore(docs,nix): fix stale 'localhost via shared netns' claims in forge/matrix
|
2026-07-04 22:54:38 +02:00 |
|
network.md
|
docs(network): fix stale '(shared netns)' in bridge firewall table row
|
2026-07-04 21:18:57 +02:00 |
|
observability.md
|
fix(hive-metric): multi-thread runtime + counter default
|
2026-07-10 21:27:56 +02:00 |
|
persistence.md
|
refactor(hive-c0re): group src-root files into submodules
|
2026-07-06 22:38:47 +02:00 |
|
security.md
|
docs(security): ci netns, knowledge .git tmpfs, matrix id/secret split
|
2026-07-10 19:17:17 +02:00 |
|
setup.md
|
docs(#2012): add first-run setup guide + link from index
|
2026-06-27 20:02:15 +02:00 |
|
swarm.md
|
feat(#1997): add prettier markdown formatter to treefmt
|
2026-07-02 23:33:11 +02:00 |
|
terminal-rendering.md
|
fix(terminal-rendering): move fmtToolUse table after numbered list
|
2026-07-04 18:56:59 +02:00 |
|
turn-loop.md
|
refactor(#2112): remove the dead stdio transport from hive-agent-mcp
|
2026-07-11 00:55:41 +02:00 |
|
web-ui.md
|
docs(web-ui): update reading path to point at terminal-rendering.md
|
2026-07-04 18:06:55 +02:00 |