---
# System prepended metadata

title: 'RFC: Schema Runtime Metadata'
tags: [draft]

---

# RFC: <!-- title here -->
**Author**: @aat 

## Description (what)

Some options for how we manage runtime metadata in the schema.

## Motivation (why, optional)

We are moving everything into the schema, so we need an extensible and scalable approach to handling runtime metadata. Runtime metadata is information in the schema that exists for the use of runtime systems, and is not part of the static schema type system.

## Goals

- Handle multiple systems updating distinct runtime metadata for a single node.
- Flexible.
- Extensible.
- Scalable to large amounts of discrete metadata.

### Non-Goals (optional)

<!--
- What are we explicitly not doing?
- ...
-->

## Design (how)

<!-- Keep it short and sweet. Prefer "API-driven Design": use diagrams, gRPC interfaces, protos, DB tables, etc. to describe the system. -->

### Required changes (how)

<!--
- A short list of changes required to implement the design
- ...
-->

## Rejected Alternatives (optional)

<!-- Other ideas that were considered but rejected, including reasoning. -->

