Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@
.history/
*.vsix
.ionide
.DS_Store
205 changes: 118 additions & 87 deletions EVES/drafts/EVES-001/eves-001.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
---
eves-identifier: 001
title: ENVITED-X Ecosystem Specification Process
author: Carlo van Driesten (@jdsika)
author: Carlo van Driesten (@jdsika); Daniel Liebert (@dansan566)
discussions-to: https://github.com/ASCS-eV/EVES/issues/9
status: Draft
status: Review
type: Process
created: 19.11.2024
requires: None
Expand All @@ -12,141 +12,172 @@

## Abstract

This specification establishes the formal process for creating, editing, and approving ENVITED Ecosystem Specifications (EVES).
These specifications standardize and document implementation decisions for the ENVITED-X Data Space, promoting transparency, collaboration, and technical consistency within the ecosystem of the Automotive Solution Center for Simulation e.V. (ASCS).
This document establishes the formal process for creating, editing, and approving ENVITED Ecosystem Specifications (EVES).

Check notice on line 15 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L15

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 15, "column": 116}}}, "severity": "INFO"}
It describes how proposals progress through Draft, Review, Candidate, and Final stages, as well as how they may be Deferred or Rejected.

Check warning on line 16 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L16

[write-good.Passive] 'be Deferred' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'be Deferred' may be passive voice. Use active voice if you can.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 16, "column": 113}}}, "severity": "WARNING"}

Check notice on line 16 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L16

[Google.Passive] In general, use active voice instead of passive voice ('be Deferred').
Raw output
{"message": "[Google.Passive] In general, use active voice instead of passive voice ('be Deferred').", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 16, "column": 113}}}, "severity": "INFO"}

Check notice on line 16 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L16

[write-good.E-Prime] Try to avoid using 'be'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'be'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 16, "column": 113}}}, "severity": "INFO"}
By defining clear entry/exit criteria, governance roles, and reference implementation requirements, this specification aligns the ENVITED-X Data Space with best practices for open standards.

## Motivation

A standardized process for EVES ensures clarity, inclusivity, and accountability in the evolution of the ENVITED ecosystem.
By defining roles, responsibilities, and lifecycle stages, this process aligns with best practices from similar initiatives, such as Chain Agnostic Improvement Proposals (CAIPs).
The ENVITED Ecosystem depends on shared standards and specifications to ensure interoperability, security, and transparency.
EVES-001 provides a clear, consensus-driven path for developing new specifications and revising existing ones.
Without a well-defined process, proposals can stall, consensus may be ambiguous, and implementation quality can suffer.

Check notice on line 23 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L23

[write-good.E-Prime] Try to avoid using 'be'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'be'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 23, "column": 68}}}, "severity": "INFO"}

## Specification

### 1. EVES Lifecycle

The EVES lifecycle consists of the following stages:
This section defines the stages an EVES must pass through, along with entry/exit criteria and outcomes.

1. **Draft**:
- The EVES is created and submitted as a pull request to the GitHub repository.
- Initial feedback is gathered informally.
### 1.1 Visual Overview

Check warning on line 31 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L31

[Google.Headings] '1.1 Visual Overview' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] '1.1 Visual Overview' should use sentence-style capitalization.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 31, "column": 5}}}, "severity": "WARNING"}

```mermaid
flowchart LR
D(Draft) --> R(Review)
R --> C(Candidate)
C --> F(Final)
R --> X(Rejected/Deferred)
C --> X(Rejected/Deferred)
F --> S(Superseded)
```

### 1.2 EVES Lifecycle Stages

Check warning on line 43 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L43

[Google.Headings] '1.2 EVES Lifecycle Stages' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] '1.2 EVES Lifecycle Stages' should use sentence-style capitalization.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 43, "column": 5}}}, "severity": "WARNING"}

Each EVES must pass through the following stages:

1. **Draft**
- Created via a Pull Request (PR).

Check notice on line 48 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L48

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 48, "column": 33}}}, "severity": "INFO"}
- Must follow the [EVES template](https://github.com/ASCS-eV/EVES/blob/main/EVES/resources/eves-template.md) and meet the requirements in the [Style Guide](https://github.com/ASCS-eV/EVES/blob/main/EVES/resources/style-guide.md).
- Open for initial community feedback.

2. **Review**:
- EVES Editors ensure compliance with format and process guidelines.
- The community provides input via GitHub discussions.
- EVES Editors confirm compliance with required format (see Section 6 "Format").

Check notice on line 53 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L53

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 53, "column": 59}}}, "severity": "INFO"}
- Community discusses proposal (GitHub issues, PR reviews).

Check notice on line 54 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L54

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 54, "column": 35}}}, "severity": "INFO"}
- **Exit Criteria**: At least two Editor approvals + no unresolved blocking objections.

3. **Candidate**:
- The EVES achieves community consensus.
- A reference implementation must be created to demonstrate feasibility and validate the proposal.
- Must include or reference a working proof of concept (Reference Implementation) demonstrating feasibility.

Check notice on line 58 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L58

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 58, "column": 59}}}, "severity": "INFO"}
- Community tests and refines details; any remaining concerns are addressed.

Check notice on line 59 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L59

[Google.Passive] In general, use active voice instead of passive voice ('are addressed').
Raw output
{"message": "[Google.Passive] In general, use active voice instead of passive voice ('are addressed').", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 59, "column": 66}}}, "severity": "INFO"}

Check notice on line 59 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L59

[write-good.E-Prime] Try to avoid using 'are'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'are'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 59, "column": 66}}}, "severity": "INFO"}

Check warning on line 59 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L59

[write-good.Passive] 'are addressed' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'are addressed' may be passive voice. Use active voice if you can.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 59, "column": 66}}}, "severity": "WARNING"}
- **Exit Criteria**: A stable implementation exists, and Approvers confirm readiness for final vote.

Check failure on line 60 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L60

[Vale.Spelling] Did you really mean 'Approvers'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'Approvers'?", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 60, "column": 61}}}, "severity": "ERROR"}

4. **Final**:
- The EVES undergoes final review by designated Approvers.
- Upon approval, the EVES is merged and marked as Final.
4. **Final**
- The EVES is officially adopted.

Check notice on line 63 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L63

[write-good.E-Prime] Try to avoid using 'is'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'is'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 63, "column": 15}}}, "severity": "INFO"}
- **Future Changes**: Only changes designated as a minor editorial update by Editors are allowed in this stage.

Check warning on line 64 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L64

[write-good.Passive] 'are allowed' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'are allowed' may be passive voice. Use active voice if you can.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 64, "column": 89}}}, "severity": "WARNING"}

Check notice on line 64 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L64

[Google.Passive] In general, use active voice instead of passive voice ('are allowed').
Raw output
{"message": "[Google.Passive] In general, use active voice instead of passive voice ('are allowed').", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 64, "column": 89}}}, "severity": "INFO"}

Check notice on line 64 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L64

[write-good.E-Prime] Try to avoid using 'are'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'are'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 64, "column": 89}}}, "severity": "INFO"}

5. **Deferred/Rejected**:
- Proposals not meeting the required criteria or consensus may be deferred for future consideration or rejected.
5. **Deferred/Rejected**
- **Deferred**: The EVES is paused for future discussion (e.g., lack of resources, overshadowed by another proposal).

Check notice on line 67 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L67

[Google.Passive] In general, use active voice instead of passive voice ('is paused').
Raw output
{"message": "[Google.Passive] In general, use active voice instead of passive voice ('is paused').", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 67, "column": 29}}}, "severity": "INFO"}

Check notice on line 67 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L67

[write-good.E-Prime] Try to avoid using 'is'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'is'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 67, "column": 29}}}, "severity": "INFO"}

Check warning on line 67 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L67

[write-good.Passive] 'is paused' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'is paused' may be passive voice. Use active voice if you can.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 67, "column": 29}}}, "severity": "WARNING"}

Check notice on line 67 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L67

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 67, "column": 61}}}, "severity": "INFO"}

Check failure on line 67 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L67

[Google.Latin] Use 'for example' instead of 'e.g.'.
Raw output
{"message": "[Google.Latin] Use 'for example' instead of 'e.g.'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 67, "column": 62}}}, "severity": "ERROR"}
- **Rejected**: Consensus cannot be reached, or the specification is fundamentally misaligned with ENVITED-X goals.

Check notice on line 68 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L68

[Google.Contractions] Use 'can't' instead of 'cannot'.
Raw output
{"message": "[Google.Contractions] Use 'can't' instead of 'cannot'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 68, "column": 30}}}, "severity": "INFO"}

Check warning on line 68 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L68

[write-good.Passive] 'be reached' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'be reached' may be passive voice. Use active voice if you can.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 68, "column": 37}}}, "severity": "WARNING"}

Check notice on line 68 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L68

[Google.Passive] In general, use active voice instead of passive voice ('be reached').
Raw output
{"message": "[Google.Passive] In general, use active voice instead of passive voice ('be reached').", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 68, "column": 37}}}, "severity": "INFO"}

Check notice on line 68 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L68

[write-good.E-Prime] Try to avoid using 'be'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'be'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 68, "column": 37}}}, "severity": "INFO"}

Check notice on line 68 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L68

[write-good.E-Prime] Try to avoid using 'is'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'is'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 68, "column": 70}}}, "severity": "INFO"}

### 2. EVES Numbering
6. **Superseded**
- A necessary major change to a **Final** EVES will result in a new **Draft** document with a unique identifier.

Check warning on line 71 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L71

[Google.Will] Avoid using 'will'.
Raw output
{"message": "[Google.Will] Avoid using 'will'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 71, "column": 51}}}, "severity": "WARNING"}
- With the new EVES document reaching the **Final** state the predecessor receives the status **Superseded**.

EVES documents follow sequential numbering, starting from EVES-001, EVES-002, and so forth. This ensures easy identification and reference.
### 1.3 Entry/Exit Criteria Example

Check warning on line 74 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L74

[Google.Headings] '1.3 Entry/Exit Criteria Example' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] '1.3 Entry/Exit Criteria Example' should use sentence-style capitalization.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 74, "column": 5}}}, "severity": "WARNING"}

### 3. EVES Types
| **Stage** | **Entry** | **Exit** |
|--------------|----------------------------------------------------------------------------|--------------------------------------------------------------------------------------|
| **Draft** | PR opened; Adheres to template & style guide | Meets minimal clarity & format → **Review** |
| **Review** | Editors confirm formatting; Community feedback in progress | ≥ 2 Editor approvals + no blocking objections → **Candidate** |
| **Candidate**| Working reference implementation; Feasibility tested | Approvers confirm readiness → **Final** (if no further changes needed) |

Check failure on line 80 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L80

[Vale.Spelling] Did you really mean 'Approvers'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'Approvers'?", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 80, "column": 95}}}, "severity": "ERROR"}

Check notice on line 80 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L80

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 80, "column": 135}}}, "severity": "INFO"}
| **Final** | Officially adopted | Major change → New EVES draft; Minor clarifications → Direct merges allowed |
| **Deferred** | N/A | Revisited later by Authors/Editors when new progress is possible |

Check notice on line 82 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L82

[write-good.E-Prime] Try to avoid using 'is'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'is'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 82, "column": 148}}}, "severity": "INFO"}
| **Rejected** | N/A | Terminal stage for unresolvable proposals |

EVES documents can fall into one of the following types:
### 2. EVES Numbering

Check warning on line 85 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L85

[Google.Headings] '2. EVES Numbering' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] '2. EVES Numbering' should use sentence-style capitalization.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 85, "column": 5}}}, "severity": "WARNING"}

1. **Standards**:
- Defines technical specifications or protocols that should be adopted by the ecosystem.
- Examples: data formats, communication protocols, APIs.
- EVES documents follow sequential numbering, starting from EVES-001, EVES-002, and so on.
- Numbers must be unique and stable once assigned (i.e., no recycling of identifiers).

Check notice on line 88 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L88

[write-good.E-Prime] Try to avoid using 'be'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'be'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 88, "column": 16}}}, "severity": "INFO"}

Check notice on line 88 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L88

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 88, "column": 51}}}, "severity": "INFO"}

Check failure on line 88 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L88

[Google.Latin] Use 'that is' instead of 'i.e.'.
Raw output
{"message": "[Google.Latin] Use 'that is' instead of 'i.e.'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 88, "column": 52}}}, "severity": "ERROR"}

2. **Informational**:
- Provides general guidelines, explanations, or context for ecosystem participants.
- Examples: best practices, usage recommendations.
### 3. EVES Types

Check warning on line 90 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L90

[Google.Headings] '3. EVES Types' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] '3. EVES Types' should use sentence-style capitalization.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 90, "column": 5}}}, "severity": "WARNING"}

3. **Process**:
- Outlines procedural or governance rules that apply to the ENVITED community.
- Examples: this EVES-001, editorial governance rules.
Each EVES must declare one of the following **type** fields in its YAML header:

Each EVES type must be specified in the document header under the "Type" field.
1. **Standards**
- Defines technical specifications or protocols recommended for ecosystem adoption (e.g., data formats, APIs).

Check notice on line 95 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L95

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 95, "column": 87}}}, "severity": "INFO"}

Check failure on line 95 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L95

[Google.Latin] Use 'for example' instead of 'e.g.'.
Raw output
{"message": "[Google.Latin] Use 'for example' instead of 'e.g.'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 95, "column": 88}}}, "severity": "ERROR"}

Check failure on line 95 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L95

[Vale.Spelling] Did you really mean 'APIs'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'APIs'?", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 95, "column": 108}}}, "severity": "ERROR"}

### 4. Roles and Responsibilities
2. **Informational**
- Provides context, best practices, or reference material without strict normative requirements.

#### Author
3. **Process**
- Outlines procedural or governance rules applicable to the ENVITED community (e.g., this EVES-001).

Check notice on line 101 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L101

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 101, "column": 82}}}, "severity": "INFO"}

Check failure on line 101 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L101

[Google.Latin] Use 'for example' instead of 'e.g.'.
Raw output
{"message": "[Google.Latin] Use 'for example' instead of 'e.g.'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 101, "column": 83}}}, "severity": "ERROR"}

- Any individual or group proposing an EVES.
- Responsible for drafting, gathering feedback, and revising the proposal.
### 4. Roles and Responsibilities

Check warning on line 103 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L103

[Google.Headings] '4. Roles and Responsibilities' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] '4. Roles and Responsibilities' should use sentence-style capitalization.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 103, "column": 5}}}, "severity": "WARNING"}

#### Community
### 4.1 Author

- All stakeholders who discuss, review, and provide input on EVES.
- Any individual or group drafting an EVES.
- Responsible for preparing the initial text, updating it based on feedback, and ensuring final clarity.

#### EVES Editors
### 4.2 Community

- (Community-)Members of the ENVITED Research Cluster within ASCS.
- Oversee formatting, process adherence, and editorial mediation.
- Governed by the rules outlined [here](https://openmsl.github.io/doc/OpenMSL/organization/governance_rules.html).
- Roles and responsibilities specified in [EVES-004](https://github.com/ASCS-eV/EVES/blob/main/drafts/EVES-001/EVES-001.md).
- All ENVITED stakeholders who participate in discussions and reviews, typically via GitHub issues and pull requests.

Check warning on line 112 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L112

[write-good.TooWordy] 'participate' is too wordy.
Raw output
{"message": "[write-good.TooWordy] 'participate' is too wordy.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 112, "column": 32}}}, "severity": "WARNING"}

#### Approvers
### 4.3 EVES Editors

Check warning on line 114 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L114

[Google.Headings] '4.3 EVES Editors' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] '4.3 EVES Editors' should use sentence-style capitalization.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 114, "column": 5}}}, "severity": "WARNING"}

- A designated body within ASCS ENVITED community responsible for final evaluation and adoption.
- The body consists of EVES Editors with voting rights as full members of the ASCS e.V.
- Oversee editorial reviews and confirm compliance with EVES format and style requirements.
- Remain neutral on technical content but ensure clarity, correctness, and adherence to process.
- Governed by [EVES-004 (Roles and Responsibilities of EVES Editors)](../EVES-004/eves-004.md).

Check notice on line 118 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L118

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 118, "column": 25}}}, "severity": "INFO"}

### 5. Reference Implementation
### 4.4 Approvers

Check failure on line 120 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L120

[Vale.Spelling] Did you really mean 'Approvers'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'Approvers'?", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 120, "column": 9}}}, "severity": "ERROR"}

To proceed from Candidate to Final, a reference implementation must:
- A subset of EVES Editors with voting rights as full ASCS e.V. ENVITED members.

Check notice on line 122 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L122

[Google.Acronyms] Spell out 'ASCS', if it's unfamiliar to the audience.
Raw output
{"message": "[Google.Acronyms] Spell out 'ASCS', if it's unfamiliar to the audience.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 122, "column": 55}}}, "severity": "INFO"}

Check failure on line 122 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L122

[Google.Spacing] 'e.V' should have one space.
Raw output
{"message": "[Google.Spacing] 'e.V' should have one space.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 122, "column": 60}}}, "severity": "ERROR"}
- Provide the final decision on moving an EVES from Candidate to Final.
- Must meet quorum requirements (e.g., at least two Approvers) to grant or deny Final status.

Check notice on line 124 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L124

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 124, "column": 33}}}, "severity": "INFO"}

Check failure on line 124 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L124

[Google.Latin] Use 'for example' instead of 'e.g.'.
Raw output
{"message": "[Google.Latin] Use 'for example' instead of 'e.g.'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 124, "column": 34}}}, "severity": "ERROR"}

Check failure on line 124 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L124

[Vale.Spelling] Did you really mean 'Approvers'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'Approvers'?", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 124, "column": 53}}}, "severity": "ERROR"}

- Validate the proposal’s feasibility,
- Serve as a practical example for adoption,
- Be submitted alongside the EVES documentation.
### 4.5 Conflict Resolution

Check warning on line 126 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L126

[Google.Headings] '4.5 Conflict Resolution' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] '4.5 Conflict Resolution' should use sentence-style capitalization.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 126, "column": 5}}}, "severity": "WARNING"}

### 6. Format
- If consensus cannot be reached at the Review or Candidate stage, Editors may escalate to an ASCS ENVITED TSC or finally an ASCS board vote.

Check notice on line 128 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L128

[Google.Contractions] Use 'can't' instead of 'cannot'.
Raw output
{"message": "[Google.Contractions] Use 'can't' instead of 'cannot'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 128, "column": 16}}}, "severity": "INFO"}

Check warning on line 128 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L128

[write-good.Passive] 'be reached' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'be reached' may be passive voice. Use active voice if you can.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 128, "column": 23}}}, "severity": "WARNING"}

Check notice on line 128 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L128

[Google.Passive] In general, use active voice instead of passive voice ('be reached').
Raw output
{"message": "[Google.Passive] In general, use active voice instead of passive voice ('be reached').", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 128, "column": 23}}}, "severity": "INFO"}

Check notice on line 128 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L128

[write-good.E-Prime] Try to avoid using 'be'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'be'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 128, "column": 23}}}, "severity": "INFO"}

Check notice on line 128 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L128

[Google.Acronyms] Spell out 'ASCS', if it's unfamiliar to the audience.
Raw output
{"message": "[Google.Acronyms] Spell out 'ASCS', if it's unfamiliar to the audience.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 128, "column": 95}}}, "severity": "INFO"}

Check notice on line 128 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L128

[Google.Acronyms] Spell out 'TSC', if it's unfamiliar to the audience.
Raw output
{"message": "[Google.Acronyms] Spell out 'TSC', if it's unfamiliar to the audience.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 128, "column": 108}}}, "severity": "INFO"}

Check notice on line 128 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L128

[Google.Acronyms] Spell out 'ASCS', if it's unfamiliar to the audience.
Raw output
{"message": "[Google.Acronyms] Spell out 'ASCS', if it's unfamiliar to the audience.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 128, "column": 126}}}, "severity": "INFO"}
- Authors can appeal Editor or Approver decisions by opening a dedicated issue in the repository with justification.

All EVES documents must adhere to the following structure:
## 5. Reference Implementation

1. **Title**: A descriptive and concise title.
2. **Abstract**: A summary of the proposal.
3. **Motivation**: The problem statement or justification for the proposal.
4. **Specification**: Detailed technical and procedural content.
5. **Rationale**: Explanation of the approach and alternatives considered.
6. **Backwards Compatibility**: Analysis of how the proposal interacts with existing systems.
7. **Implementation**: Guidelines or requirements for practical execution.
8. **References**: Links to related documents or discussions.
- **Requirement**: An EVES **MUST** demonstrate feasibility via a reference implementation before progressing from Review to Candidate.

Check warning on line 133 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L133

[write-good.TooWordy] 'Requirement' is too wordy.
Raw output
{"message": "[write-good.TooWordy] 'Requirement' is too wordy.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 133, "column": 5}}}, "severity": "WARNING"}

Check notice on line 133 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L133

[Google.Acronyms] Spell out 'MUST', if it's unfamiliar to the audience.
Raw output
{"message": "[Google.Acronyms] Spell out 'MUST', if it's unfamiliar to the audience.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 133, "column": 30}}}, "severity": "INFO"}

Check warning on line 133 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L133

[write-good.TooWordy] 'demonstrate' is too wordy.
Raw output
{"message": "[write-good.TooWordy] 'demonstrate' is too wordy.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 133, "column": 37}}}, "severity": "WARNING"}
- **Open/Closed Source**: An open-source example is strongly **RECOMMENDED**, though a closed-source reference is acceptable if sufficiently documented.

Check warning on line 134 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L134

[Google.WordList] Use 'open source' instead of 'open-source'.
Raw output
{"message": "[Google.WordList] Use 'open source' instead of 'open-source'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 134, "column": 30}}}, "severity": "WARNING"}

Check notice on line 134 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L134

[write-good.E-Prime] Try to avoid using 'is'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'is'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 134, "column": 50}}}, "severity": "INFO"}

Check notice on line 134 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L134

[write-good.E-Prime] Try to avoid using 'is'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'is'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 134, "column": 112}}}, "severity": "INFO"}
- **Community Validation**: Users are encouraged to test the reference implementation for real-world interoperability and consistency with the EVES specification.

Check warning on line 135 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L135

[write-good.Passive] 'are encouraged' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'are encouraged' may be passive voice. Use active voice if you can.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 135, "column": 35}}}, "severity": "WARNING"}

Check notice on line 135 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L135

[Google.Passive] In general, use active voice instead of passive voice ('are encouraged').
Raw output
{"message": "[Google.Passive] In general, use active voice instead of passive voice ('are encouraged').", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 135, "column": 35}}}, "severity": "INFO"}

Check notice on line 135 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L135

[write-good.E-Prime] Try to avoid using 'are'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'are'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 135, "column": 35}}}, "severity": "INFO"}

### 7. Process Flow
## 6. Format

1. **Submission**:
- Authors submit a pull request to the EVES GitHub repository.
All EVES documents **MUST** follow the structure below:

Check notice on line 139 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L139

[Google.Acronyms] Spell out 'MUST', if it's unfamiliar to the audience.
Raw output
{"message": "[Google.Acronyms] Spell out 'MUST', if it's unfamiliar to the audience.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 139, "column": 22}}}, "severity": "INFO"}

2. **Editorial Review**:
- EVES Editors review format and compliance with guidelines.
1. **Header (YAML)**

Check notice on line 141 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L141

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 141, "column": 13}}}, "severity": "INFO"}
- eves-identifier, title, author, discussions-to, status, type, created, requires, replaces
2. **Abstract**
- Brief summary (2–3 sentences) of the EVES.

Check notice on line 144 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L144

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 144, "column": 20}}}, "severity": "INFO"}
3. **Motivation**
- Context and explanation of why this EVES is needed.

Check notice on line 146 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L146

[write-good.E-Prime] Try to avoid using 'is'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'is'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 146, "column": 47}}}, "severity": "INFO"}

Check warning on line 146 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L146

[write-good.Passive] 'is needed' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'is needed' may be passive voice. Use active voice if you can.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 146, "column": 47}}}, "severity": "WARNING"}

Check notice on line 146 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L146

[Google.Passive] In general, use active voice instead of passive voice ('is needed').
Raw output
{"message": "[Google.Passive] In general, use active voice instead of passive voice ('is needed').", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 146, "column": 47}}}, "severity": "INFO"}
4. **Specification**
- Detailed technical or procedural requirements.
5. **Lifecycle**
- If relevant, describe states or phases unique to this EVES.
6. **Backwards Compatibility**
- Explain how this proposal interacts with existing implementations, if any.
7. **References**
- List any relevant RFCs, W3C standards, or other external specs.

3. **Community Review**:
- Open discussions and feedback via GitHub and other forums.
EVES must use [RFC 2119](https://www.rfc-editor.org/rfc/rfc2119) key words ("MUST," "SHOULD," "RECOMMENDED," etc.) appropriately for normative statements.

Check notice on line 156 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L156

[Google.Acronyms] Spell out 'RFC', if it's unfamiliar to the audience.
Raw output
{"message": "[Google.Acronyms] Spell out 'RFC', if it's unfamiliar to the audience.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 156, "column": 16}}}, "severity": "INFO"}

Check notice on line 156 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L156

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 156, "column": 76}}}, "severity": "INFO"}

Check notice on line 156 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L156

[Google.Acronyms] Spell out 'MUST', if it's unfamiliar to the audience.
Raw output
{"message": "[Google.Acronyms] Spell out 'MUST', if it's unfamiliar to the audience.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 156, "column": 78}}}, "severity": "INFO"}

4. **Candidate Stage**:
- Achieve community consensus and provide a reference implementation.
## 7. Revisions to Final EVES

Check warning on line 158 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L158

[Google.Headings] '7. Revisions to Final EVES' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] '7. Revisions to Final EVES' should use sentence-style capitalization.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 158, "column": 4}}}, "severity": "WARNING"}

5. **Approval**:
- Approvers review and mark the EVES as Final.
- Once an EVES reaches **Final** status, significant changes **MUST** be submitted via a new EVES draft.

Check notice on line 160 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L160

[Google.Acronyms] Spell out 'MUST', if it's unfamiliar to the audience.
Raw output
{"message": "[Google.Acronyms] Spell out 'MUST', if it's unfamiliar to the audience.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 160, "column": 64}}}, "severity": "INFO"}

Check warning on line 160 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L160

[write-good.Passive] 'be submitted' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'be submitted' may be passive voice. Use active voice if you can.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 160, "column": 71}}}, "severity": "WARNING"}

Check notice on line 160 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L160

[Google.Passive] In general, use active voice instead of passive voice ('be submitted').
Raw output
{"message": "[Google.Passive] In general, use active voice instead of passive voice ('be submitted').", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 160, "column": 71}}}, "severity": "INFO"}

Check notice on line 160 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L160

[write-good.E-Prime] Try to avoid using 'be'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'be'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 160, "column": 71}}}, "severity": "INFO"}
- Editors will determine if proposed changes are major (functionality-altering) or minor (typos, clarifications).

Check warning on line 161 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L161

[Google.Will] Avoid using 'will'.
Raw output
{"message": "[Google.Will] Avoid using 'will'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 161, "column": 11}}}, "severity": "WARNING"}

Check notice on line 161 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L161

[write-good.E-Prime] Try to avoid using 'are'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'are'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 161, "column": 46}}}, "severity": "INFO"}

Check notice on line 161 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L161

[Google.Parens] Use parentheses judiciously.
Raw output
{"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 161, "column": 56}}}, "severity": "INFO"}

Check warning on line 161 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L161

[Google.WordList] Use 'capability' or 'feature' instead of 'functionality'.
Raw output
{"message": "[Google.WordList] Use 'capability' or 'feature' instead of 'functionality'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 161, "column": 57}}}, "severity": "WARNING"}

### 8. Governance
## 8. Governance

The process emphasizes openness, inclusivity, and accountability. Discussions, decisions, and documentation are publicly accessible on the EVES GitHub repository.
Governance rules for EVES Editors are defined [here](https://openmsl.github.io/doc/OpenMSL/organization/governance_rules.html).
ENVITED-X emphasizes openness, inclusivity, and accountability. Discussions, votes, and final decisions regarding EVES are publicly visible on GitHub. Detailed governance rules, especially regarding EVES Editors, can be found in [OpenMSL Governance Rules](https://openmsl.github.io/doc/OpenMSL/organization/governance_rules.html).

Check failure on line 165 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L165

[Vale.Spelling] Did you really mean 'inclusivity'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'inclusivity'?", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 165, "column": 32}}}, "severity": "ERROR"}

Check warning on line 165 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L165

[write-good.TooWordy] 'regarding' is too wordy.
Raw output
{"message": "[write-good.TooWordy] 'regarding' is too wordy.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 165, "column": 105}}}, "severity": "WARNING"}

Check notice on line 165 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L165

[write-good.E-Prime] Try to avoid using 'are'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'are'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 165, "column": 120}}}, "severity": "INFO"}

Check warning on line 165 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L165

[write-good.TooWordy] 'regarding' is too wordy.
Raw output
{"message": "[write-good.TooWordy] 'regarding' is too wordy.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 165, "column": 190}}}, "severity": "WARNING"}

Check notice on line 165 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L165

[write-good.E-Prime] Try to avoid using 'be'.
Raw output
{"message": "[write-good.E-Prime] Try to avoid using 'be'.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 165, "column": 218}}}, "severity": "INFO"}

Check warning on line 165 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L165

[write-good.Passive] 'be found' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'be found' may be passive voice. Use active voice if you can.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 165, "column": 218}}}, "severity": "WARNING"}

Check notice on line 165 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L165

[Google.Passive] In general, use active voice instead of passive voice ('be found').
Raw output
{"message": "[Google.Passive] In general, use active voice instead of passive voice ('be found').", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 165, "column": 218}}}, "severity": "INFO"}

## Backwards Compatibility
## 9. Backwards Compatibility

Check warning on line 167 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L167

[Google.Headings] '9. Backwards Compatibility' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] '9. Backwards Compatibility' should use sentence-style capitalization.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 167, "column": 4}}}, "severity": "WARNING"}

This process introduces new standards and does not conflict with prior procedures, as it establishes a foundational framework.
This process introduces new clarity regarding EVES stages, references, and roles without invalidating earlier procedures. Existing EVES in Draft need not restart unless their authors or Editors decide to re-align them with these updated guidelines.

Check warning on line 169 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L169

[write-good.TooWordy] 'regarding' is too wordy.
Raw output
{"message": "[write-good.TooWordy] 'regarding' is too wordy.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 169, "column": 37}}}, "severity": "WARNING"}

## References
## 10. References

1. [Chain Agnostic Improvement Proposals (CAIPs)](https://github.com/ChainAgnostic/CAIPs)
2. [OpenMSL Governance Rules](https://openmsl.github.io/doc/OpenMSL/organization/governance_rules.html)
3. [IPFS Specifications](https://github.com/ipfs/specs)
1. **EVES-004: Roles and Responsibilities of EVES Editors**
[https://github.com/ASCS-eV/EVES/blob/main/drafts/EVES-004/EVES-004.md](https://github.com/ASCS-eV/EVES/blob/main/EVES/drafts/EVES-004/eves-004.md)

Check notice on line 174 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L174

[Google.Acronyms] Spell out 'ASCS', if it's unfamiliar to the audience.
Raw output
{"message": "[Google.Acronyms] Spell out 'ASCS', if it's unfamiliar to the audience.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 174, "column": 24}}}, "severity": "INFO"}

## Implementation
2. **RFC 2119: Key Words for Use in RFCs to Indicate Requirement Levels**

Check notice on line 176 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L176

[Google.Acronyms] Spell out 'RFC', if it's unfamiliar to the audience.
Raw output
{"message": "[Google.Acronyms] Spell out 'RFC', if it's unfamiliar to the audience.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 176, "column": 6}}}, "severity": "INFO"}

Check warning on line 176 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L176

[write-good.TooWordy] 'Indicate' is too wordy.
Raw output
{"message": "[write-good.TooWordy] 'Indicate' is too wordy.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 176, "column": 45}}}, "severity": "WARNING"}

Check warning on line 176 in EVES/drafts/EVES-001/eves-001.md

View workflow job for this annotation

GitHub Actions / vale

[vale] EVES/drafts/EVES-001/eves-001.md#L176

[write-good.TooWordy] 'Requirement' is too wordy.
Raw output
{"message": "[write-good.TooWordy] 'Requirement' is too wordy.", "location": {"path": "EVES/drafts/EVES-001/eves-001.md", "range": {"start": {"line": 176, "column": 54}}}, "severity": "WARNING"}
[https://www.rfc-editor.org/rfc/rfc2119](https://www.rfc-editor.org/rfc/rfc2119)

The initial implementation of EVES-001 involves:
3. **EVES Template & Style Guide**
[../resources/](https://github.com/ASCS-eV/EVES/tree/main/EVES/resources)

1. Setting up the GitHub repository [here](https://github.com/ASCS-eV/EVES).
2. Establishing an editorial board from the ENVITED Research Cluster.
3. Publishing this document as EVES-001.
4. **OpenMSL Governance Rules**
[https://openmsl.github.io/doc/OpenMSL/organization/governance_rules.html](https://openmsl.github.io/doc/OpenMSL/organization/governance_rules.html)