feat(issue-fix): pipeline-verified owner guidance re-opens assessed issues #266

Merged
k.renner merged 1 commits from feat/issue-fix-owner-guidance into master 2026-07-16 15:46:47 +00:00
Member

The #259 lesson, both directions: the fix agent rightly refused unauthenticated instructions embedded in the issue body — and then had no channel for the owner's authentic reply 18 minutes later, so a human (me) ended up hand-writing the sweep the agent should have owned.

  • Owner replies drive the loop now: an assessed issue becomes eligible again when a TRUSTED_AUTHORS comment is newer than the latest assessed-marker (timestamp comparison in jq; busybox ash has no string-<).
  • Trusted comments reach the agent as a pipeline-built "Verified owner guidance" section in issue.md. The trust anchor is the hardcoded author list (k.renner) in the pipeline file — deliberately NOT the Gitea permission API, because the pipeline itself comments as gitea_admin, and agent-authored comment text must never be able to masquerade as owner guidance.
  • Prompt contract: verified guidance is authoritative for intent and scope (it may lift the surgical ~30-line ceiling when it calls for removals/sweeps); it does NOT lift the edit-path allowlist; factual mismatches between guidance and live state get surfaced in the summary, never silently resolved in either direction.

Eligibility logic tested against #259's real comment data (assessed 11:46, owner reply 12:04 → retry) and the empty-comments case (fresh).

Note: had this existed this morning, your 12:04 comment on #259 would have re-armed the 13:41 run with your statement as trusted guidance — no human PR needed. #265 (the hand-made sweep) is still up; merge whichever you prefer — if you'd rather the agent redo it as a test of this mechanism, close #265 and remove nothing: the loop picks #259 up at the next :41 after this merges.

🤖 Generated with Claude Code

https://claude.ai/code/session_01NV7bZzZLeoFUEdAeCSLEei

The #259 lesson, both directions: the fix agent rightly refused unauthenticated instructions embedded in the issue body — and then had no channel for the owner's authentic reply 18 minutes later, so a human (me) ended up hand-writing the sweep the agent should have owned. - **Owner replies drive the loop now**: an assessed issue becomes eligible again when a `TRUSTED_AUTHORS` comment is newer than the latest assessed-marker (timestamp comparison in jq; busybox ash has no string-<). - **Trusted comments reach the agent** as a pipeline-built \"Verified owner guidance\" section in issue.md. The trust anchor is the hardcoded author list (`k.renner`) in the pipeline file — deliberately NOT the Gitea permission API, because the pipeline itself comments as gitea_admin, and agent-authored comment text must never be able to masquerade as owner guidance. - **Prompt contract**: verified guidance is authoritative for intent and scope (it may lift the surgical ~30-line ceiling when it calls for removals/sweeps); it does NOT lift the edit-path allowlist; factual mismatches between guidance and live state get surfaced in the summary, never silently resolved in either direction. Eligibility logic tested against #259's real comment data (assessed 11:46, owner reply 12:04 → retry) and the empty-comments case (fresh). Note: had this existed this morning, your 12:04 comment on #259 would have re-armed the 13:41 run with your statement as trusted guidance — no human PR needed. #265 (the hand-made sweep) is still up; merge whichever you prefer — if you'd rather the agent redo it as a test of this mechanism, close #265 and remove nothing: the loop picks #259 up at the next :41 after this merges. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01NV7bZzZLeoFUEdAeCSLEei
claude-bot added 1 commit 2026-07-16 14:56:24 +00:00
The #259 lesson, both directions: the agent rightly refused
unauthenticated instructions embedded in the issue body — and then had
no channel for the owner's authentic reply 18 minutes later, so a
human ended up doing the sweep the agent should have owned.

- Pick step: an issue with an alert-fix:assessed marker becomes
  eligible again when a TRUSTED_AUTHORS comment is NEWER than the
  latest marker (timestamps compared in jq — busybox ash test has no
  string-<). Owner replies on the issue now drive the loop.
- Trusted comments are appended to the agent's issue.md as 'Verified
  owner guidance'. Trust anchor is the hardcoded author list in this
  file — deliberately not the Gitea permission API, because the
  pipeline itself comments as gitea_admin and agent-authored text must
  never be able to masquerade as owner guidance.
- Prompt: verified guidance is authoritative for intent and scope (may
  lift the surgical ceiling when it calls for a sweep), does not lift
  the edit-path allowlist, and factual mismatches with live state are
  surfaced, not silently resolved in either direction.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NV7bZzZLeoFUEdAeCSLEei
k.renner merged commit 2a4a1f3102 into master 2026-07-16 15:46:47 +00:00
Sign in to join this conversation.