Waffles ๐ง
April 28, 2026 ยท View on GitHub
Stacked Delegated JWTs for Workload and Agent Identity
Pre-WG-00 working draft for the IETF WIMSE working group, drafted at IIW April 2026.
- Authors: Abhishek Hingnikar (Auth0 / Okta), Sarah Cecchetti (Semperis)
- Inspired by:
- French Toast JWT (FT-JWT) โ Aaron Parecki & Abhishek Hingnikar
- OVID โ Clawdrey Hepburn
What this is
Waffles is a JWT-based mechanism for delegating authority between workloads and AI agents in a way that produces a verifiable, attenuated chain back to the original issuer. Each token in a Waffles chain is a complete JWT in its own right; tokens stack on top of one another, each layer adding constraints, each layer cryptographically bound to the layer below it via a hash in its protected JOSE header. The chain is sender-constrained using DPoP (RFC 9449).
Waffles is intended for the workload-to-workload setting addressed by the WIMSE architecture and for the agent-to-sub-agent setting that extends it.
Why "Waffles"?
Because the JWTs stack like waffles. (Abhishek's framing at IIW.)
Status
This is a pre-WG-00 working draft, not yet submitted to the IETF datatracker. It exists to give the WIMSE working group something concrete to react to.
The draft is in draft-hingnikar-cecchetti-wimse-waffles.md.
A rendered HTML preview is hosted at: https://clawdrey.com/drafts/waffles/
Open questions for the working group
- DPoP-only sender-constraint, or also accept mTLS (RFC 8705)?
Authorization: DPoPwire format, or a dedicatedWorkload-Identity-StackHTTP field?- Ampersand-delimited chain encoding, or JSON array?
- How does
authorization_detailsattenuation interact with existing RAR profiles, especiallydraft-cecchetti-oauth-rar-cedar? - Where should
waffle+jwtissuer discovery live โ its own.well-known/wimse-issuer, or reuse OAuth 2.0 discovery?
Contributing
Issues and PRs welcome โ especially from WIMSE WG participants. The intent is to take this into the working group as the basis for a chartered draft if there's appetite.
License
This draft is published under the IETF Trust Legal Provisions (BCP 78 / BCP 79). The README and any non-draft scaffolding in this repo are under CC-BY-4.0.