|
| 1 | +.. |
| 2 | + # ******************************************************************************* |
| 3 | + # Copyright (c) 2025 Contributors to the Eclipse Foundation |
| 4 | + # |
| 5 | + # See the NOTICE file(s) distributed with this work for additional |
| 6 | + # information regarding copyright ownership. |
| 7 | + # |
| 8 | + # This program and the accompanying materials are made available under the |
| 9 | + # terms of the Apache License Version 2.0 which is available at |
| 10 | + # https://www.apache.org/licenses/LICENSE-2.0 |
| 11 | + # |
| 12 | + # SPDX-License-Identifier: Apache-2.0 |
| 13 | + # ******************************************************************************* |
| 14 | +
|
| 15 | +.. _feature_template: |
| 16 | + |
| 17 | +[Your Feature Name] |
| 18 | +################### |
| 19 | + |
| 20 | +.. note:: Document header |
| 21 | + |
| 22 | +.. document:: [Your Feature Name] |
| 23 | + :id: doc__feature_name |
| 24 | + :status: draft |
| 25 | + :safety: ASIL_B |
| 26 | + :tags: template |
| 27 | + |
| 28 | +.. attention:: |
| 29 | + The above directive must be updated according to your Feature. |
| 30 | + |
| 31 | + - Modify ``document`` to be your Feature Name |
| 32 | + - Modify ``id`` to be your Feature Name in upper snake case preceded by ``doc__`` |
| 33 | + - Adjust ``status`` to be ``valid`` |
| 34 | + - Adjust ``safety`` and ``tags`` according to your needs |
| 35 | + |
| 36 | +Feature flag |
| 37 | +============ |
| 38 | + |
| 39 | +To activate this feature, use the following feature flag: |
| 40 | + |
| 41 | +``experimental_[your_feature_name]`` |
| 42 | + |
| 43 | + .. note:: |
| 44 | + The feature flag must reflect the feature name in snake_case. Further, it is prepended with ``experimental_``, as |
| 45 | + long as the feature is not yet stable. |
| 46 | + |
| 47 | +Abstract |
| 48 | +======== |
| 49 | + |
| 50 | +[A short (~200 word) description of the contribution being addressed.] |
| 51 | + |
| 52 | + |
| 53 | +Motivation |
| 54 | +========== |
| 55 | + |
| 56 | +[Clearly explain why the existing platform/project solution is inadequate to address the topic that the CR solves.] |
| 57 | + |
| 58 | + .. note:: |
| 59 | + The motivation is critical for CRs that want to change the existing features or infrastructure. |
| 60 | + It should clearly explain why the existing solution is inadequate to address the topic that the CR solves. |
| 61 | + Motivation may based on criteria as resource requirements, scheduling issues, risks, benefits, etc. |
| 62 | + CRs submissions without sufficient motivation may be rejected. |
| 63 | + |
| 64 | + |
| 65 | + |
| 66 | +Rationale |
| 67 | +========= |
| 68 | + |
| 69 | +[Describe why particular design decisions were made.] |
| 70 | + |
| 71 | + |
| 72 | + .. note:: |
| 73 | + The rationale should provide evidence of consensus within the community and discuss important objections or concerns raised during discussion. |
| 74 | + |
| 75 | + |
| 76 | +Specification |
| 77 | +============= |
| 78 | + |
| 79 | +[Describe the requirements, architecture of any new feature.] or |
| 80 | +[Describe the change to requirements, architecture, implementation, process, documentation, infrastructure of any change request.] |
| 81 | + |
| 82 | + .. note:: |
| 83 | + A CR shall specify the stakeholder requirements as part of our platform/project. |
| 84 | + Thereby the :need:`rl__technical_lead` will approve these requirements as part of accepting the CR (e.g. merging the PR with the CR). |
| 85 | + |
| 86 | + |
| 87 | + |
| 88 | +Backwards Compatibility |
| 89 | +======================= |
| 90 | + |
| 91 | +[Describe potential impact (especially including safety and security impacts) and severity on pre-existing platform/project elements.] |
| 92 | + |
| 93 | + |
| 94 | +Security Impact |
| 95 | +=============== |
| 96 | + |
| 97 | +[How could a malicious user take advantage of this new/modified feature?] |
| 98 | + |
| 99 | + .. note:: |
| 100 | + If there are security concerns in relation to the CR, those concerns should be explicitly written out to make sure reviewers of the CR are aware of them. |
| 101 | + |
| 102 | +Which security requirements are affected or has to be changed? |
| 103 | +Could the new/modified feature enable new threat scenarios? |
| 104 | +Could the new/modified feature enable new attack paths? |
| 105 | +Could the new/modified feature impact functional safety? |
| 106 | +If applicable, which additional security measures must be implemented to mitigate the risk? |
| 107 | + |
| 108 | + .. note:: |
| 109 | + Use Trust Boundary, Defense in Depth Analysis and/or Security Software Critically Analysis, |
| 110 | + Vulnerability Analysis. |
| 111 | + [Methods will be defined later in Process area Security Analysis] |
| 112 | + |
| 113 | +Safety Impact |
| 114 | +============= |
| 115 | + |
| 116 | +[How could the safety be impacted by the new/modified feature?] |
| 117 | + |
| 118 | + .. note:: |
| 119 | + If there are safety concerns in relation to the CR, those concerns should be explicitly written out to make sure reviewers of the CR are aware of them. |
| 120 | + Link here to the filled out :need:`Impact Analysis Template <gd_temp__change__impact_analysis>` or copy the template in this chapter. |
| 121 | + |
| 122 | +Which safety requirements are affected or has to be changed? |
| 123 | +Could the new/modified feature be a potential common cause or cascading failure initiator? |
| 124 | +If applicable, which additional safety measures must be implemented to mitigate the risk? |
| 125 | + |
| 126 | + .. note:: |
| 127 | + Use Dependency Failure Analysis and/or Safety Software Critically Analysis. |
| 128 | + [Methods will be defined later in Process area Safety Analysis] |
| 129 | + |
| 130 | +For new feature contributions: |
| 131 | + |
| 132 | +[What is the expected ASIL level?] |
| 133 | + |
| 134 | + |
| 135 | +License Impact |
| 136 | +============== |
| 137 | + |
| 138 | +[How could the copyright impacted by the license of the new contribution?] |
| 139 | + |
| 140 | + |
| 141 | +How to Teach This |
| 142 | +================= |
| 143 | + |
| 144 | +[How to teach users, new and experienced, how to apply the CR to their work.] |
| 145 | + |
| 146 | + .. note:: |
| 147 | + For a CR that adds new functionality or changes behavior, it is helpful to include a section on how to teach users, new and experienced, how to apply the CR to their work. |
| 148 | + |
| 149 | + |
| 150 | + |
| 151 | +Rejected Ideas |
| 152 | +============== |
| 153 | + |
| 154 | +[Why certain ideas that were brought while discussing this CR were not ultimately pursued.] |
| 155 | + |
| 156 | + .. note:: |
| 157 | + Throughout the discussion of a CR, various ideas will be proposed which are not accepted. |
| 158 | + Those rejected ideas should be recorded along with the reasoning as to why they were rejected. |
| 159 | + This both helps record the thought process behind the final version of the CR as well as preventing people from bringing up the same rejected idea again in subsequent discussions. |
| 160 | + In a way this section can be thought of as a breakout section of the Rationale section that is focused specifically on why certain ideas were not ultimately pursued. |
| 161 | + |
| 162 | + |
| 163 | + |
| 164 | +Open Issues |
| 165 | +=========== |
| 166 | + |
| 167 | +[Any points that are still being decided/discussed.] |
| 168 | + |
| 169 | + .. note:: |
| 170 | + While a CR is in draft, ideas can come up which warrant further discussion. |
| 171 | + Those ideas should be recorded so people know that they are being thought about but do not have a concrete resolution. |
| 172 | + This helps make sure all issues required for the CR to be ready for consideration are complete and reduces people duplicating prior discussion. |
| 173 | + |
| 174 | + |
| 175 | + |
| 176 | +Footnotes |
| 177 | +========= |
| 178 | + |
| 179 | +[A collection of footnotes cited in the CR, and a place to list non-inline hyperlink targets.] |
| 180 | + |
| 181 | + |
| 182 | +.. toctree:: |
| 183 | + :hidden: |
| 184 | + |
| 185 | + requirements/index.rst |
| 186 | + architecture/index.rst |
| 187 | + safety_planning/index.rst |
| 188 | + safety_analysis/fmea.rst |
| 189 | + safety_analysis/dfa.rst |
0 commit comments