[media-types] Re: [IANA #1451393] New Media Type Regis tration Request: application/vnd.fafm+yaml
"Murray S. Kucherawy" <[email protected]> Tue, 12 May 2026 14:02:42 -0700
| Newsgroups | gmane.ietf.types |
|---|---|
| Message-ID | <CAL0qLwbZgpV6w=v2mr2btOFMkAtb+Tjw2psYPNykDBJ_9rJ31g@mail.gmail.com> |
Approved after they concur with one correction, below. -MSK On Tue, May 12, 2026 at 12:22 PM Amanda Baber via RT < [email protected]> wrote: > Hi Murray, > > Sending a reminder for this one from May 5th. > > thanks, > Amanda > > On Tue May 05 18:50:12 2026, amanda.baber wrote: > > Hi Murray, > > > > Can you review this one by May 19th? > > > > thanks, > > Amanda > > > > ===== > > > > Type name: application > > > > Subtype name: vnd.fafm+yaml > > > > Required parameters: None > See RFC 6838, Section 5.6; you don't want "None" here. > > Optional parameters: version > > > > Encoding considerations: 8bit (UTF-8). Binary content, when > > present, is base64-encoded inside YAML. > > > > Security considerations: > > > > The following addresses the questions outlined in the > > media-type security considerations checklist at > > https://www.iana.org/form/media-types: > > > > 1. Active or executable content. No. The .fafm format is a YAML > > data document. It contains no scripts, code, executable > > directives, or active markup. Implementations MUST treat > > .fafm content as data, never as instructions, commands, or > > code. > > > > 2. Privacy and integrity needs. Yes. .fafm files contain personal > > user memory - preferences, names, conversational facts, and > > arbitrary user-supplied content. Confidentiality and integrity > > protection are required when these files are stored or > > transmitted. > > > > 3. Privacy and integrity services. The .fafm format itself does > > not provide cryptographic confidentiality, integrity > > protection, or signing. These services MUST be provided > > externally: > > > > - Confidentiality: OS-level file permissions (mode 0600 is > > the local-default), encryption at rest in server backends, > > and TLS for all transport. > > > > - Integrity: filesystem permissions, transport-layer > > integrity (TLS), and application-level write authorization. > > > > - Future versions of the format may add cryptographic signing > > of memory entries for provenance and audit trail. > > > > 4. YAML format considerations. .fafm is built on YAML 1.2. All > > YAML 1.2 security considerations apply, including those > > described in RFC 9512 ("YAML Media Type") section 6. Specific > > to .fafm: > > > > - Parsers MUST disable custom type construction (no > > !!python/object, !ruby/object, or equivalent > > language-specific constructors). > > > > - Parsers MUST enforce alias-expansion limits to mitigate > > entity-expansion / "billion-laughs"-style attacks. > > > > - Parsers MUST enforce nesting-depth limits to prevent stack > > overflow. > > > > 5. Compression. Not applicable. .fafm does not use or require > > compression at the format layer. If transport-level > > compression (e.g., HTTP Content-Encoding: gzip) is applied to > > .fafm content alongside other secret data, standard > > compression-with-secret considerations (e.g., CRIME/BREACH > > class attacks) apply at the transport layer. > > > > 6. Container format. Not applicable. .fafm is a single YAML > > document, not a container or archive format. No > > packaging-level security considerations apply. > > > > 7. Link references. Not applicable. .fafm content does not > > require resolution of external links to be properly > > interpreted. The format is fully self-contained. > > > > Additional security considerations: > > > > - Untrusted input / context poisoning / prompt injection. .fafm > > files are written from voice and AI interactions and MUST be > > treated as untrusted user input by consumers. Implementations > > MUST NOT elevate .fafm content to "system instructions" or > > "developer directives" within prompt hierarchies. Memory > > entries are a documented vector for context poisoning and > > prompt injection. > > > > - Cross-context isolation. Implementations SHOULD scope memory > > consumption to the originating namepoint to prevent unintended > > cross-context influence between projects, agents, or users. > > > > - No secrets or credentials. .fafm files MUST NOT contain > > secrets, API keys, or credentials. Memory is intended for > > user-facing facts and preferences only. > > > > - Voice-command safety. Memory MUST NOT be deleted by voice > > commands; deletion is a UI-only operation. Implementations > > MUST expose a forget(namepoint, criteria) method supporting > > deletion by entry ID, time range, or full wipe. > > > > Interoperability considerations: > > > > .fafm is the Voice Memory Layer (VML) sibling of the > > IANA-registered .faf format (application/vnd.faf+yaml). It is > > designed to interoperate with .faf while serving a distinct > > purpose: > > > > .faf - Foundational Context Layer (project IS - static, read once) > > .fafm - Voice Memory Layer (VML) (agent REMEMBERS - mutating, > > persisted) > > > > Two formats. Two lifecycles. One ecosystem. > > > > .faf is read once and trusted as the project's canonical context. > > .fafm accretes over time as the agent and user interact, with > > entries appended, summarized, and selectively promoted into .faf > > when they become enduring facts. > > > > The .fafm schema extends application/vnd.faf+yaml - a .fafm > > document remains a valid YAML file. Consumers that only > > understand .faf will safely ignore the memory block and still > > extract identity from namepoint and top-level fields. Consumers > > that understand .fafm gain access to accumulated memory. > > > > Both formats share the same family branding, YAML philosophy > > (YAML 1.2 / RFC 9512 baseline), and MIT license. Multiple .fafm > > documents per scope are permitted, distinguished by namepoint. > > > > Published specification: https://github.com/Wolfe- > > Jam/faf/blob/main/MEMORY-FORMAT.md > > > > Applications that use this media type: Voice agents, LiveKit > > deployments, Grok Voice SDKs, future ElevenLabs/Hume > > integrations. > > > > Fragment identifier considerations: None. > > > > Additional information - File extension: .fafm > > > > Person & email address for further information: James Wolfe, > > [email protected] > > > > Intended usage: COMMON > > > > Restrictions on usage: None > > > > Author: James Wolfe > > > > Change controller: FAF Foundation > > _______________________________________________ media-types mailing list -- [email protected] To unsubscribe send an email to [email protected]