| 1 |
The ID (ADR-NNNN, 4-digit) matches the filename number and is unique and sequential |
Pass |
ADR-0008 in adr-0008-cpp-csharp-quality-check-contract.md, after ADR-0007. |
| 2 |
Context states the problem, the forces (cost, risk, constraints) and the options evaluated |
Pass |
States the two requirements from S01, the facts from runs 692 and 699, and the options. |
| 3 |
At least two options were considered, or the absence of alternatives is justified |
Pass |
Three options for the workflows, three for cppcheck, two for the SDK pin. |
| 4 |
Decision is stated in one or two unhedged sentences and matches one of the evaluated options |
Pass |
One sentence naming option 2, dropping cppcheck (c) and an exact SDK version (b). |
| 5 |
Consequences list both Positive and Negative outcomes |
Pass |
Three positive and six negative (after the fix of criterion 6). |
| 6 |
Quality-attribute impacts (performance, security, portability, etc.) are named where the decision affects them |
Pass |
Finding fixed during this review: the security impact of downloading and running tools and packages in every run was not named (ADR-0005 names it for PyPI); it is now a negative consequence, with the limit that the jobs have contents: read and no secret. |
| 7 |
Affected Artifacts are listed as links, and each is also in CrossReference |
Pass |
MIL-007, UC-005, US-001, ADR-0005 and ADR-0006 are linked and cited. |
| 8 |
Status changes are recorded as new Version History rows with a Change summary and Commit link; retained rows are never rewritten |
Pass |
The Proposed row keeps its status as Deprecated and the Accepted row is added. |
| 9 |
A superseded or deprecated ADR names its successor, and the successor links back |
N-A |
Nothing is superseded; ADR-0005 is extended and unchanged. |
| 10 |
Written in business or technical language of the domain, with no unexplained abbreviations |
Pass |
Finding fixed during this review: PyPI and SDK were used without being expanded; both are introduced at first use. |
| 11 |
Status is one of Proposed, Accepted, Rejected, Deprecated or Superseded by ADR-NNNN, and every Version History row uses only these |
Pass |
Deprecated and Accepted. |