Skip to content

Sign run attribution metadata#691

Merged
eloylp merged 1 commit into
mainfrom
attribution-signatures
Jun 15, 2026
Merged

Sign run attribution metadata#691
eloylp merged 1 commit into
mainfrom
attribution-signatures

Conversation

@eloylp

@eloylp eloylp commented Jun 14, 2026

Copy link
Copy Markdown
Owner

Summary

  • sign public run attribution metadata before agent execution and render exact copyable comment/trailer values into the prompt
  • verify all gathered attribution metadata during feedback capture, logging invalid blocks while only trusting valid signed metadata for exact attribution
  • reject exact attribution for unsigned metadata when signing is enabled, bad signatures, wrong instances, copied metadata from another repo/PR, and unknown spans
  • document AGENTS_ATTRIBUTION_SIGNING_SECRET, AGENTS_INSTANCE_ID, and secret-rotation behavior

Validation

  • GOCACHE=/tmp/go-build-agents go test ./internal/workflow ./internal/observe ./internal/ai ./internal/config ./internal/webhook
  • GOCACHE=/tmp/go-build-agents go test ./...
  • local daemon E2E on eloylp/test-acme-repo covered: valid signed metadata, unsigned legacy metadata, invalid signature, wrong instance, copied footer/wrong PR number, unknown span, multiple metadata blocks, unauthorized author, and secret rotation

Notes

  • The local lab-coder Codex run hit an unrelated stale Codex refresh token, but the daemon persisted the composed prompt before backend execution, so signed prompt generation and attribution persistence were still verified.

@eloylp eloylp force-pushed the attribution-signatures branch from c720188 to 34def1e Compare June 14, 2026 14:01
@eloylp eloylp merged commit 48442fc into main Jun 15, 2026
1 check passed
@eloylp eloylp deleted the attribution-signatures branch June 15, 2026 11:52
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.

1 participant