Commit Graph

9 Commits

Author SHA1 Message Date
Miguel Palhas ca02107d42 fix(pr): pin agent-meta marker, add harness field
ci / nix (push) Successful in 10s
ci / lint (push) Failing after 12s
2026-08-26 10:34:52 +01:00
Miguel Palhas e627f53934 feat(land): merge on gitea, stop at the button on github
The never-merge rule only holds for GitHub. Gitea repos here are the
user's own, so land squash-merges once CI is green, threads are
resolved and the branch is current. A gitea PR with no reviewer ever
requested counts as approved, otherwise it waits forever.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-23 09:56:56 +01:00
naps62-yolo 51fd18b23e feat(pr): hidden agent-meta marker on posted bodies (#16)
ci / nix (push) Successful in 8s
ci / lint (push) Successful in 9s
2026-08-21 16:36:40 +01:00
Miguel Palhas 04baf8242a refactor: rename tracker common
ci / nix (push) Successful in 8s
ci / lint (push) Successful in 11s
2026-08-20 15:40:17 +01:00
Miguel Palhas 5d1a81ec48 fix(review-pr): anchor findings to diff lines
The gitea posting snippet used the issue-comment endpoint, which has no
path or line, so findings named `path:line` in prose instead of landing
on the code. Both forges now post one COMMENT review carrying anchored
findings in comments[] and loose ones in the body.

land's gitea baseline missed review-comment ids, which would replay
every code comment on the first hint.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-20 10:24:00 +01:00
Miguel Palhas 787f133fdc feat: PR daemon + reviewer/author skill split
One systemd daemon watches GitHub and Gitea and routes each PR to an aoe
session: `land` for PRs you authored, `review-pr` for everyone else's.
It reads metadata only and sends a single inert hint line, so untrusted
PR text never passes through the thing that types into agent prompts.

Routing is derived from `aoe list --json --all` by worktree branch, so
no claim files and no daemon database. Dedupe stays in the session via
`pr-<N>-seen`, which makes hints idempotent and a swallowed send
self-healing.

`land` loses its watcher machinery to the daemon and keeps the policy
and per-event handlers; `pr-common` holds what both skills share.

Review sessions run non-yolo without trusted hooks and never run the
branch's code.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-19 18:51:43 +01:00
naps62 a0b42c9210 feat: land requests a Copilot review on GitHub PRs 2026-08-12 08:19:13 +00:00
naps62 17677c18df feat(land): never merge, user clicks
Auto-merge burned a client PR meant for manual merge. Human gate
needed on public/client repos; one click on private is cheap, so
rule is universal. Land now stops at green + approved + updated
branch, notifies, and leaves the merge button alone.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WLkYHLzszmzq5fMGpFAkHh
2026-07-30 08:33:00 +00:00
naps62 f83a247de3 init: centralized agent skills for Claude Code + Codex
- skills/ shared by both tools (open Agent Skills standard)
- portable cross-skill refs (root-relative, no ~/.claude hardcode)
- bin/link.sh bootstrap for non-Nix machines
- nix/home.nix + flake.nix for home-manager

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014SK5Lo7LQfwLRVdCv1A8uF
2026-07-24 17:59:44 +00:00