Repository navigation
docs: propose credential lifecycle and GitHub App access - #68
freeqaz-openai wants to merge 18 commits into
Conversation
|
🦞👀 Pull request received. I will update this pull request when review starts. ClawSweeper review completeClawSweeper finished reviewing this revision. The review result is being finalized. |
|
Codex review: blocked before merge. What this changesThis PR proposes managed GitHub repository access, protected credential lifecycle management, and staged human-approved publication for Enterprise Agents. Example: An Agent has coding access to org/service and read access to org/library.
Review scores
ProductKind: Feature · Worth it: Needs a maintainer decision Merge readiness⛔ Blocked before merge - 1 item remains Keep this PR open for RFC acceptance: it makes a distinct, coherent proposal absent from current main, and no concrete document defect was found. Priority: P3 Decision needed
Before merge
FindingsNone. Agent review detailsHow this fits togetherThe proposed credential gateway sits between Enterprise Agent Git clients and GitHub, consuming current OCC authorization and protected execution context before dispatching scoped requests with credentials held outside Agent execution. flowchart LR
Config[Administrator repository selection] --> OCC[OCC authorization]
Agent[Agent Git client] --> Connector[Trusted execution connector]
Connector --> Gateway[Proposed credential gateway]
OCC --> Gateway
Agent --> Publisher[Human approved publisher]
Publisher --> Gateway
Gateway --> GitHub[GitHub]
Technical reviewBest possible solution: Resolve the staged credential-access contract through RFC acceptance, then track implementation and runtime qualification separately. Do we have a high-confidence way to reproduce the issue? This is an explicitly unimplemented design proposal, so there is no reported runtime failure to reproduce. Is this the best way to solve the issue? The proposed ownership and qualification boundaries are coherent, but choosing their MVP scope requires an owner decision rather than a mechanical repair. AGENTS.md: not found in the target repository. Codex review notes: model internal, reasoning medium; reviewed against 967d9aac7472. SecurityNone. EvidenceWhat I checked:
Likely related people:
Review metrics
LabelsLabel changes: No label changes. Label justifications:
Rating scale6/6 🦀 challenger crab · 5/6 🦞 diamond lobster · 4/6 🐚 platinum hermit · 3/6 🦐 gold shrimp · 2/6 🦪 silver shellfish · 1/6 🧂 unranked krab. Overall follows the weaker of proof and patch quality; ✨ marks media proof (a screenshot, video, or linked artifact) that directly shows the changed behavior. WorkflowClawSweeper edits this one comment on every review. Comment HistoryReview history (19 earlier review cycles; latest 8 shown)
Reviewed October 14, 2026, 7:28 AM ET / 11:28 UTC (Revision 20). |
What Problem This Solves
Enterprise Agents need repository access whose scope, approvals and cleanup survive turns and runtime replacement. Provider tokens alone cannot enforce an approved candidate, exact branch or original-work attribution.
Why This Change Was Made
Propose native Agent repository configuration and an Installation-selected
CredentialGatewayDriverfor mediation and credential lifecycle. Delivery starts with managed metadata, clone and fetch, then adds selected coding read workflows and exact-candidate Approve and publish. Any configured, authorized human may approve, including the requester; an Agent cannot. Independent-human approval and automatic authorization under explicit policy for bounded, allowlisted push/draft-PR operations are separate later modes. Broader durable Work and lifecycle controls follow the initial root work and subordinate helpers using the same scope.User Impact
The proposed configuration and driver API are not implemented. The proposed GitHub profile keeps provider credentials outside Agent workloads and requires current online OCC authority for reads, writes and credential maintenance. Publication binds the candidate, refs, expected remote tip and PR metadata, preserving separate effect receipts and reconciling unknown outcomes without blind replay. Permission changes require fresh Pod/gVisor isolation; uncapped execution still uses finite leases.
This is a documentation proposal extending RFC 0027. It remains draft with a blank implementation issue pending acceptance.
Reading Guide
Evidence