Decision Records
Architecture Decision Records (ADRs) document significant technical decisions made during the development of Tractus-X TestLab.
Format
Each ADR follows the Michael Nygard format:
| Section | Purpose |
|---|---|
| Status | Proposed, Accepted, Deprecated, or Superseded |
| Date | When the decision was made |
| Context | Forces at play and constraints |
| Decision | What was decided |
| Consequences | Trade-offs accepted |
Records
ADRs are grouped by the part of the system they primarily affect: the backend Python
library (src/tractusx_testlab/) or shared concerns that span the system. The
template lives at the root of this folder.
Backend
| ADR | Title | Status |
|---|---|---|
| 0005 | Filesystem Participant Manager with Protocol | Accepted |
| 0012 | Compilation and Packaging | Proposed |
| 0014 | Flat Compilation Intermediate Representation | Accepted |
| 0015 | Package Asset Resolution | Accepted |
| 0016 | Execution Trace Format | Proposed |
| 0017 | Input Callback Endpoint | Proposed |
| 0019 | Service Requirements and Engine Bindings | Proposed |
| 0022 | TCK Static Inspection | Accepted |
| 0023 | Variable Scope Annotation (engine / sut) |
Accepted |
| 0024 | Test-Level Skip Configuration | Accepted |
Shared
| ADR | Title | Status |
|---|---|---|
| 0003 | SSE for Live Execution | Accepted |
| 0008 | Test-Case to TCK Rename | Accepted |
| 0009 | Typed Variable Class System | Accepted |
| 0010 | YAML Syntax v2 (GHA-Inspired) | Accepted |
| 0011 | Environment Variables and Services Management | Proposed |
| 0018 | Unified Variables Model (Preconditions as Complex Variables) | Accepted (finalized by 0021) |
| 0021 | Remove the Precondition Concept in Favor of Unified Variables | Accepted |
| 0025 | Assertions Read Declared Returns | Proposed |
Deprecated / Superseded
These ADRs are not published and remain as plain-text history only.
| ADR | Title | Status |
|---|---|---|
| 0004 | Precondition as Distinct Step Phase | Superseded by 0021 (not published) |
| 0007 | Precondition Execution Logs Model | Superseded by 0021 (not published) |
| 0013 | Preconditions Specification | Superseded by 0021 (not published) |
Creating a New ADR
- Copy
ADR-0000-template.mdtoADR-NNNN-short-title.md(next available number). - Fill in all sections.
- Place the file in the correct subfolder —
backend/orshared/— based on which part of the system the decision primarily affects. - Add the entry to the matching subsection in this index table, using the subfolder path (for example
[NNNN](backend/ADR-NNNN-short-title.md)). - Add the file to
mkdocs.ymlunder the Decision Records nav section, in the matchingBackend:/Shared:group.