docs(#2821): add ADR 0074 for human-gated permission adjustments - #5611
docs(#2821): add ADR 0074 for human-gated permission adjustments#5611fullsend-ai-coder[bot] wants to merge 1 commit into
Conversation
Records the three-layer design (CLI policy, mint mechanics, deterministic automation) and threat model for label-gated elevated agent permissions. Builds on ADR 0073 (named privilege levels) and supersedes the draft automated-gating approach from #1739. Updates docs/architecture.md with the authorization gate pattern. Note: pre-commit hook could not run in-sandbox (network policy blocked git fetch for tag resolution). ADR-specific linters (lint-adr-status, lint-adr-numbers, lint-adr-frontmatter) all passed. The post-script runs an authoritative pre-commit check on the runner. Closes #2821 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
🤖 Finished Review · ✅ Success · Started 10:51 AM UTC · Completed 11:06 AM UTC |
Site previewPreview: https://cf2ceb99-site.fullsend-ai.workers.dev Commit: |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
ReviewFindingsLow
Labels: PR adds ADR 0074 covering mint permission elevation design and updates architecture docs |
| ### Threat model | ||
|
|
||
| Three vectors specific to permission elevation: | ||
|
|
There was a problem hiding this comment.
[low] internal consistency
The TOCTOU mitigation states "Authorization check and mint request occur in a single CLI invocation" but the Layer Boundaries section describes the CLI policy layer and mint mechanics layer as separate components with separate responsibilities. The follow-up sentence clarifies the window is bounded by "a single workflow step, not by human reaction time," which is a different (and weaker) claim than a single CLI invocation. Consider clarifying whether fullsend auth check both verifies authorization and calls the mint API atomically in one process, or whether these are two sequential calls within one workflow step.
|
This pull request has been automatically marked as stale because it has not had any activity in the last month. It will be closed in 2 weeks if no further activity occurs. Remove the |
Summary
Adds ADR 0074 recording the design decision for human-gated permission adjustments — the authorization path that allows agents to receive elevated permissions (e.g.,
workflows: write) only when a repository collaborator explicitly grants approval via forge-native labels.Related Issue
Closes #2821
Changes
docs/ADRs/0074-human-gated-permission-adjustments.md): Records:workflow-change-needed/workflow-change-allowedlabel pair with stale invalidationdocs/architecture.md: Added "Decided" entry under Agent Identity Provider for the authorization gate pattern, referencing ADR 0074Builds on ADR 0073 (named mint privilege levels, merged via PR #5328). Uses the closed PR #2548 draft ADR as reference material.
Testing
lint-adr-status,lint-adr-numbers,lint-adr-frontmatter)make lintcould not run (sandbox network policy blocks pre-commit's git fetch); post-script runs authoritative pre-commit on the runnerCloses #2821
Post-script verification
agent/2821-adr-human-gated-perms)8e3d60fa6cd20b8a7410b5533c63200689de56d6..HEAD)