ECS Proposal Stages

These are the stages that an individual RFC advances through before being released for general availability in the Elastic Common Schema (ECS). See the Contributing Guide for broader details about contributing changes to ECS through the RFC process.

Stage Goals during this stage Criteria for consideration for this stage Acceptance into this stage signifies Acceptable changes to schema in this stage Breaking changes expected after acceptance into this stage Recommended types of usage implementation
0 Strawperson
  • Discuss with domain or subject matter experts the utility of these changes
  • Discuss with ECS team whether these changes seem appropriate for ECS
Opened RFC pull request for this strawperson at elastic/ecs The premise of these changes is not obviously useless or inappropriate for ECS None Major N/A
1 Proposal
  • Make the case for these changes
  • Describe the field definitions at a high level
  • Identify potential challenges and areas that need more clarity
  • Opened pull request for this proposal revising the existing strawperson
  • Identified "sponsor" at Elastic who will participate in RFC process and take ownership of the change after the process completes
  • Types of fields or changes outlined
  • High-level description of examples of usage
  • High-level description of example sources of data
  • Identified potential concerns and implementation challenges/complexity
  • Subject matter experts identified and weighed in on the high level utility of these changes in the pull request
  • ECS team weighed in on appropriateness of these changes in the pull request
ECS team accepts the premise of the addition and commits to considering this proposal as it advances. None Major Proof of concepts, demos
2 Draft Identify a comprehensive set of field definitions that could be appropriate for real-world usage
  • Opened pull request for this draft revising the existing proposal
  • Outlined initial field definitions
  • Included a real world example source document
  • Identifies scope of impact of changes to ingestion mechanisms (e.g. beats/logstash), usage mechanisms (e.g. Kibana applications, detections), and the ECS project (e.g. docs, tooling)
  • Subject matter experts weighed in on technical utility of field definitions in the pull request
The initial field definitions are a comprehensive, though not necessarily complete, model of the addition to the schema. Fundamental questions and concerns are resolved, though some less significant questions remain open. Draft field definitions can be committed to the ECS schema as "experimental" fields Iterative Experimental and beta features
3 Candidate Indicate that direct experience from implementations and users is necessary to validate the additions
  • Opened pull request for this candidate revising the existing draft
  • Completed field definitions
  • Included multiple real world example source documents
  • Existing or newly raised questions and concerns are addressed
There are no further open questions or unaddressed concerns, and the field definitions are complete based on the information and usage experience we have. Candidate field definitions can be committed to the ECS schema as "beta" fields Minimal: only those determined to be critical based on usage experience GA features
4 Finished Indicate that the addition is ready for GA release in ECS
  • Opened pull request for this candidate revising the existing candidate
  • At least one real-world, production-ready usage implementation exists for the field definitions
  • Existing or newly raised questions and concerns are addressed
  • No objections from sponsor, ECS team, or subject matter experts
The field definitions are in use as defined in real-world, production-ready software without raising additional questions or concerns that need to be resolved. The changes are ready to be released as GA in ECS. Field definitions can be committed to the ECS schema as "GA" fields None outside major versions Any