hyperhive/hive-ag3nt/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
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
..
bin refactor(#2112): remove the dead stdio transport from hive-agent-mcp 2026-07-11 00:55:41 +02:00
mcp feat(#2377): forge-webhook-triggered config-PR merge flow 2026-07-11 12:19:52 +02:00
web_ui web_ui: support unix:<path> upstreams in extraWebProxies 2026-07-10 12:53:09 +02:00
client.rs refactor(agent): drop vestigial install_configured param, non_empty_env helper, explicit infallible expect in client 2026-07-05 22:49:45 +02:00
events.rs style: import ordering + blank lines after now_unix sweep (treefmt) 2026-07-06 22:08:40 +02:00
forge_notify.rs fix(forge): review fixes for the forgejo-api port 2026-07-07 14:42:43 +02:00
identity.rs refactor(agent): drop vestigial install_configured param, non_empty_env helper, explicit infallible expect in client 2026-07-05 22:49:45 +02:00
lib.rs refactor(hive-ag3nt): split hive bin into hive-agent / hive-agent-mcp / hive-agent-wake 2026-07-06 23:48:05 +02:00
login.rs docs(agent): clarify cred-file set + settings doc pointer, fix forge_notify cross-ref 2026-07-06 00:03:43 +02:00
login_session.rs hive-ag3nt: scrub stale #658/#419 attribution cookies (#716 batch 2) 2026-05-31 16:48:13 +02:00
mcp_config.rs feat(#2112): make http-mcp the sole transport for the built-in surface 2026-07-11 00:32:51 +02:00
mcp_loose_ends.rs refactor(#1450): lift shared harness-path resolution into hive-sh4re 2026-06-14 21:34:58 +02:00
paths.rs hive-sh4re: make harness_dir the single resolver; hive-ag3nt delegates (#1450) 2026-06-16 12:36:48 +02:00
plugins.rs refactor(agent): drop vestigial install_configured param, non_empty_env helper, explicit infallible expect in client 2026-07-05 22:49:45 +02:00
prompt.rs docs(turn-loop): split into index + claude-invocation/config/mcp sub-pages, condense the loop 2026-07-05 23:04:48 +02:00
serve_common.rs feat(#2300): recv reports remaining inbox depth so agents know how many messages are left 2026-07-10 02:03:29 +02:00
stats.rs style: import ordering + blank lines after now_unix sweep (treefmt) 2026-07-06 22:08:40 +02:00
turn.rs feat(#2112): make http-mcp the sole transport for the built-in surface 2026-07-11 00:32:51 +02:00
turn_stats.rs fix(stats): last_usage orders by id (insertion order); clarify Window default 2026-07-05 22:53:16 +02:00
vacuum.rs style: import ordering + blank lines after now_unix sweep (treefmt) 2026-07-06 22:08:40 +02:00