Weekly self-hosted forge groom: skill, timer, and emailed report #48

Open
opened 2026-09-09 21:46:10 +01:00 by allod-agent · 0 comments
Member

Run a weekly, self-hosted triage of every open issue and pull request across the allod repos, close what has verifiably landed, label the rest, and email the owner one short report, so the trackers stop accumulating settled and undecided items that only a manual sweep catches.

Primary goals:

  • One portable skillforge-groom in allod/memory/skills, runnable by hand from any harness and by a timer, with a fixed report shape: closed with evidence, ready to merge, decisions for the owner, blocked, still open.
  • Bounded autonomy — the groom may close an issue only when a merged pull request's body carries Closes for it, may set its own small label set, and may do nothing else: no not-planned closes, no thread comments beyond the close note, no pushes, no PR merges. A Refs link is reported as likely landed, never closed on.
  • Free inference — the timer runs pi headless against the self-hosted deepseek reasoning model at medium thinking.
  • Email, not the forge — the report goes out as one plain-text email per run through an msmtp relay whose credential is agenix-delivered; nothing is posted to a tracking issue, which would bloat the tracker the groom exists to thin.
  • Structural limits, not prompt promises — the timer authenticates with a dedicated forge token scoped to issue write and repository read, so the model cannot push or merge even if it tries.

Current state and specifics

Today's manual pass over allod/tools (2026-09-09) closed five issues, unblocked a four-PR chain whose recorded blocker had been fixed on master weeks earlier, and surfaced three decision issues that had sat since July. Every one of those outcomes was mechanical: list, read, check master, classify. The other nine public repos hold 52 open issues that have had no such pass.

Two facts shape the design. Master in these repos is fast-forward only, so a merged PR's Closes/Refs lines exist only on the forge, and forge pr list lists open PRs only; the groom needs forge pr list -s closed (or all) before it can find merged evidence. And no dev VM or public module sends mail today, so the email path is new.

Dev plan: allod/strategy dev-plans/forge-groom.md. Slices: the skill (memory), forge pr list -s (tools), the timer and mail module (archetypes), the private recipient, SMTP secret, and groom token (deployment), then two measured weekly runs before any autonomy is widened.

Scope

In: the skill, the forge pr list state flag, a public archetypes module for the timer and msmtp relay, and the private deployment values. Out: any change to how issues are written, any autonomy beyond the rule above, and replacing the retired allod pm board; the forge itself is the board.

Run a weekly, self-hosted triage of every open issue and pull request across the allod repos, close what has verifiably landed, label the rest, and email the owner one short report, so the trackers stop accumulating settled and undecided items that only a manual sweep catches. Primary goals: - **One portable skill** — `forge-groom` in `allod/memory/skills`, runnable by hand from any harness and by a timer, with a fixed report shape: closed with evidence, ready to merge, decisions for the owner, blocked, still open. - **Bounded autonomy** — the groom may close an issue only when a merged pull request's body carries `Closes` for it, may set its own small label set, and may do nothing else: no not-planned closes, no thread comments beyond the close note, no pushes, no PR merges. A `Refs` link is reported as likely landed, never closed on. - **Free inference** — the timer runs `pi` headless against the self-hosted deepseek reasoning model at medium thinking. - **Email, not the forge** — the report goes out as one plain-text email per run through an msmtp relay whose credential is agenix-delivered; nothing is posted to a tracking issue, which would bloat the tracker the groom exists to thin. - **Structural limits, not prompt promises** — the timer authenticates with a dedicated forge token scoped to issue write and repository read, so the model cannot push or merge even if it tries. ### Current state and specifics Today's manual pass over `allod/tools` (2026-09-09) closed five issues, unblocked a four-PR chain whose recorded blocker had been fixed on master weeks earlier, and surfaced three decision issues that had sat since July. Every one of those outcomes was mechanical: list, read, check master, classify. The other nine public repos hold 52 open issues that have had no such pass. Two facts shape the design. Master in these repos is fast-forward only, so a merged PR's `Closes`/`Refs` lines exist only on the forge, and `forge pr list` lists open PRs only; the groom needs `forge pr list -s closed` (or `all`) before it can find merged evidence. And no dev VM or public module sends mail today, so the email path is new. Dev plan: `allod/strategy` `dev-plans/forge-groom.md`. Slices: the skill (memory), `forge pr list -s` (tools), the timer and mail module (archetypes), the private recipient, SMTP secret, and groom token (deployment), then two measured weekly runs before any autonomy is widened. ### Scope In: the skill, the `forge pr list` state flag, a public archetypes module for the timer and msmtp relay, and the private deployment values. Out: any change to how issues are written, any autonomy beyond the rule above, and replacing the retired `allod pm` board; the forge itself is the board.
vnprc referenced this issue from a commit 2026-09-09 23:46:53 +01:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
allod/strategy#48
No description provided.