RFCs

The LLM Data Card schema evolves through a Request for Comments (RFC) process. This ensures changes are well-considered, community-driven, and maintain backwards compatibility.

What is an RFC?

An RFC (Request for Comments) is a formal proposal for changes to the schema. RFCs are used for:

  • Adding new fields or sections
  • Changing field semantics or validation rules
  • Deprecating or removing fields
  • Adding new enumeration values
  • Modifying conditional requirements

RFC Process

Stage 1: Discussion

Start with a GitHub Discussion to gauge community interest:

  1. Open a new discussion in the "Schema Proposals" category
  2. Describe the problem you're trying to solve
  3. Outline your proposed solution
  4. Gather feedback from the community

Discussions that receive positive feedback and maintainer support can proceed to a formal RFC.

Stage 2: Draft RFC

Create a formal RFC document:

  1. Fork the repository
  2. Create rfcs/NNNN-feature-name.md using the template
  3. Fill in all sections thoroughly
  4. Open a pull request titled RFC: Feature Name

Stage 3: Review

The RFC undergoes community and maintainer review:

  • Minimum 2-week review period
  • Community members comment on the PR
  • Author addresses feedback and revises
  • Maintainers provide official feedback

Stage 4: Decision

After review, maintainers make a decision:

  • Accepted - RFC is merged, scheduled for implementation
  • Deferred - Good idea, but not right now
  • Rejected - Does not align with project goals

Stage 5: Implementation

Accepted RFCs are implemented:

  1. Schema changes are made in a separate PR
  2. Documentation is updated
  3. Migration guides are written if needed
  4. Changes are released in a new schema version

Guiding Principles

Schema changes should follow these principles:

Backwards Compatibility

  • New fields should be optional when possible
  • Avoid removing required fields in minor versions
  • Provide migration paths for breaking changes
  • Use deprecation warnings before removal

Simplicity

  • Prefer simple solutions over complex ones
  • Avoid redundant fields that duplicate information
  • Keep the schema minimal but complete

Current RFCs

Under Discussion

View current proposals in GitHub Discussions .

Accepted RFCs

RFC Title Version
0001 Initial Schema Design 1.0
0002 Language Details Object 1.0
0003 Processing and Quality Sections 1.0
0004 Task Types Enumeration 1.0

Get Involved

Have an idea for improving the schema? We'd love to hear it:

  1. Check existing discussions to see if it's been proposed
  2. If not, start a new discussion with your idea
  3. Gather feedback and refine your proposal
  4. If there's support, create a formal RFC