Skip to content

feat(mandla): change PRs open with a plain summary (decision 77) - #53

Merged
mttrbrts merged 1 commit into
mainfrom
feat/mandla-plain-summary
Nov 13, 2026
Merged

mttrbrts merged 1 commit into
mainfrom
feat/mandla-plain-summary

Conversation

@mttrbrts

Copy link
Copy Markdown
Member

Mandla's PRs were hard to follow: they opened with ids and file-by-file mechanics, never saying in plain words what the PR was for. Now every change PR he opens starts with a short plain summary of the problem and the fix, and the gateway refuses a submission without one.


What changed

  • submit_change takes a new required summary: one paragraph, at most 600 characters. The gateway puts it at the top of the PR description, above its own header (change, decision, evidence, measure), and in the commit message, so a commit added to an open PR carries one too. Mandla's detailed body follows under "Details" (was "Change").
  • The gateway refuses a summary that is missing, over 600 characters, more than one paragraph, or mentions an internal id (C-n, D-n, T-n, Pn-n). Line breaks are refused because they could forge a trailer in the commit message, the same reason the title is one line.
  • Mandla's spec (agents/mandla.md) explains what the summary is for, with an example. A change that loosens a safety rule or a gateway check now says so in the summary rather than the first line of the body.
  • Decision 77 recorded in docs/decisions.md.

This touches the gateway's checks and tools, so CI will flag it as a safety-file change.

Deploying

Both steps, which the deploy workflow does on merge: deploy:agents (Mandla's spec and tool schema) and gateway:deploy (the check). If the gateway goes first, a Mandla task already running without the new schema gets a clear "summary is required" refusal and can resubmit.

Tests

npm test passes: 424 gateway tests. One new test covers the summary checks (missing, too long, ids, line breaks, and words like UTF-8 that only look like ids). The existing "opens one PR" test now checks the summary comes first in the description and appears in the commit message.

🤖 Generated with Claude Code

Mandla's PR descriptions started with the gateway's ids and file-by-file
mechanics, so it was hard to tell what a PR was for. submit_change now
needs a one-paragraph plain summary, which the gateway puts first in the
PR description and in the commit message. It refuses a summary that is
missing, over 600 characters, more than one paragraph, or mentions an
internal id.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Matt Roberts (Agent) <code+agent@rbrts.uk>
@mttrbrts
mttrbrts merged commit 19e2d57 into main Nov 13, 2026
5 checks passed
@mttrbrts
mttrbrts deleted the feat/mandla-plain-summary branch November 13, 2026 16:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants