Skip to content

security(agent): bind inference to durable admission - #41

Merged
darwin67 merged 14 commits into
mainfrom
rfd-5-phase-3-admission-hardening
Sep 13, 2026
Merged

darwin67 merged 14 commits into
mainfrom
rfd-5-phase-3-admission-hardening

Conversation

@darwin67

Copy link
Copy Markdown
Member

Summary

  • recover durable device authorization and OAuth refresh work after process loss
  • preserve activation intent and refresh lineage through fenced recovery transitions
  • preflight every turn and atomically admit model invocations against the persisted route
  • harden provider request metadata and prevent credentials from crossing unsafe request boundaries
  • bind evaluation and final-review inference to the same durable admission contract

Stack

Verification

  • covered by the Phase 3 stack's passing DATABASE_PORT=5432 mix precommit run

@darwin67
darwin67 force-pushed the rfd-5-phase-3-admission-hardening branch from 14b8640 to 151feb2 Compare September 13, 2026 00:01
@darwin67
darwin67 force-pushed the rfd-5-phase-3-route-snapshots branch from 88a2bf7 to 2a2d14a Compare September 13, 2026 00:01
darwin67 added a commit that referenced this pull request Sep 13, 2026
## Summary
- claim, poll, and complete ChatGPT device authorization through durable
generation-fenced transitions
- add ChatGPT subscription accounts and the device authorization UI
- lease and coordinate OAuth refresh, normalize rotated credentials, and
refresh just in time for inference
- validate subscription access and provide actionable reconnect guidance
- simplify authorization boundaries so this provider-integration layer
is independently lint-clean

## Stack
1. **This PR** — ChatGPT device authorization and OAuth refresh
2. #40 — immutable execution-route snapshots
3. #41 — invocation admission hardening
4. #42 — final concurrency and UX hardening

## Verification
- covered by the Phase 3 stack's passing `DATABASE_PORT=5432 mix
precommit` run

---------

Co-authored-by: Darwin Wu <tough.pasta0068@wunli88.com>
@darwin67
darwin67 force-pushed the rfd-5-phase-3-route-snapshots branch from 2a2d14a to 925c393 Compare September 13, 2026 06:22
@darwin67
darwin67 force-pushed the rfd-5-phase-3-admission-hardening branch from 151feb2 to 424c551 Compare September 13, 2026 06:22
darwin67 added a commit that referenced this pull request Sep 13, 2026
## Summary
- snapshot the selected provider, model, integration, and credential
generation per turn
- persist capability contracts and enforce the durable route during
execution
- gate route changes through compatibility checks and queue approved
transitions
- reject unapproved route records and normalize replay across accepted
routes

## Stack
- Depends on #38
- Followed by #41 invocation admission hardening and #42 final
concurrency/UX hardening

## Verification
- covered by the Phase 3 stack's passing `DATABASE_PORT=5432 mix
precommit` run

---------

Co-authored-by: Darwin Wu <tough.pasta0068@wunli88.com>
Base automatically changed from rfd-5-phase-3-route-snapshots to main September 13, 2026 07:21
@darwin67
darwin67 force-pushed the rfd-5-phase-3-admission-hardening branch from 424c551 to 5b94664 Compare September 13, 2026 07:22
@darwin67
darwin67 merged commit 30ffc0d into main Sep 13, 2026
17 checks passed
@darwin67
darwin67 deleted the rfd-5-phase-3-admission-hardening branch September 13, 2026 07:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant