feat(i18n): full English translation of demo-epb
Validate / build-test (macos-latest) (push) Failing after 3s
Validate / build-test (windows-latest) (push) Failing after 15s
Validate / build-test (ubuntu-latest) (push) Successful in 17s
Validate / reports (push) Successful in 50s
Release / release (push) Successful in 50s
Validate / build-test (macos-latest) (push) Failing after 3s
Validate / build-test (windows-latest) (push) Failing after 15s
Validate / build-test (ubuntu-latest) (push) Successful in 17s
Validate / reports (push) Successful in 50s
Release / release (push) Successful in 50s
Phase 2 of the English translation: Word documents (filled, EPB-specific): - 8 plans (PID, PM, QA, SWE, Test, Project Manual, CM, RM) - 6 safety docs (HARA, Safety Case, FMEDA, MISRA Compliance, Verification Report, Tool Qualification Cppcheck) - 2 manuals (User, Service) - 3 audit artefacts (Review minutes, NC-001, MISRA-REC-001) - All regenerated via pandoc from English markdown sources Code, tests, headers: - All file headers, struct comments, function docstrings in English - All test names (TEST_BEGIN strings) translated - Inline comments translated - 46 tests still green after translation CI workflows: - All step names in English - Step descriptions, comments, release notes template in English README.md fully rewritten in English with proper guided tour. Phase 3 (still pending): dev-process repo templates + toolstack/setup docs.
This commit is contained in:
@@ -1,58 +1,55 @@
|
||||
---
|
||||
doc-id: SLM-EPB-MISRA-COMP-001
|
||||
version: 1.0
|
||||
status: Freigegeben
|
||||
datum: 2026-05-12
|
||||
status: Released
|
||||
date: 2026-05-12
|
||||
---
|
||||
|
||||
# MISRA C:2012 Compliance Statement
|
||||
|
||||
| Feld | Wert |
|
||||
|--------------|----------------------------------------|
|
||||
| Projekt | demo-epb |
|
||||
| Dokument-ID | SLM-EPB-MISRA-COMP-001 |
|
||||
| Datum | 2026-05-12 |
|
||||
| Standard | MISRA C:2012 (inkl. Amendment 1) |
|
||||
| Compiler | GCC 11.2 (Linux CI) / GCC 16.1 (Win) |
|
||||
| Checker | Cppcheck 2.7+ mit `--addon=misra` |
|
||||
| Field | Value |
|
||||
|---------------|----------------------------------------|
|
||||
| Project | demo-epb |
|
||||
| Document ID | SLM-EPB-MISRA-COMP-001 |
|
||||
| Date | 2026-05-12 |
|
||||
| Standard | MISRA C:2012 (incl. Amendment 1) |
|
||||
| Compiler | GCC 11.2 (Linux CI) / GCC 16.1 (Win) |
|
||||
| Checker | Cppcheck 2.7+ with `--addon=misra` |
|
||||
|
||||
---
|
||||
|
||||
## 1. Zusammenfassung
|
||||
## 1. Summary
|
||||
|
||||
Der Quellcode von demo-epb wurde gegen MISRA C:2012 geprueft.
|
||||
Alle **Required** und **Mandatory** Regeln werden eingehalten, mit Ausnahme
|
||||
von einer dokumentierten Deviation (siehe MISRA-REC-001).
|
||||
The source code of demo-epb has been checked against MISRA C:2012. All **Required** and **Mandatory** rules are observed, with the exception of one documented deviation (see MISRA-REC-001).
|
||||
|
||||
**Compliance-Erklaerung:** demo-epb v1.0 ist **MISRA C:2012 compliant** unter
|
||||
Beruecksichtigung dokumentierter Deviation Records.
|
||||
**Compliance statement:** demo-epb v1.0 is **MISRA C:2012 compliant** taking into account the documented deviation records.
|
||||
|
||||
## 2. Geltungsbereich
|
||||
## 2. Scope
|
||||
|
||||
| Modul | MISRA-konform geprueft |
|
||||
|----------------------|-----------------------------|
|
||||
| `src/switch_debouncer.{c,h}` | Ja |
|
||||
| `src/actuator_driver.{c,h}` | Ja |
|
||||
| `src/apply_controller.{c,h}` | Ja |
|
||||
| `src/safety_manager.{c,h}` | Ja |
|
||||
| `src/epb_types.h` | Ja |
|
||||
| `src/stubs/*.h` | Header-only, keine MISRA-relevanten Implementierungen |
|
||||
| `tests/**/*` | Nicht im Geltungsbereich (Test-Code) |
|
||||
| `tools/**/*` | Nicht im Geltungsbereich (Python-Skripte) |
|
||||
| Module | MISRA-checked |
|
||||
|------------------------------|--------------------------|
|
||||
| `src/switch_debouncer.{c,h}` | Yes |
|
||||
| `src/actuator_driver.{c,h}` | Yes |
|
||||
| `src/apply_controller.{c,h}` | Yes |
|
||||
| `src/safety_manager.{c,h}` | Yes |
|
||||
| `src/epb_types.h` | Yes |
|
||||
| `src/stubs/*.h` | Header-only, no MISRA-relevant implementations |
|
||||
| `tests/**/*` | Out of scope (test code) |
|
||||
| `tools/**/*` | Out of scope (Python scripts) |
|
||||
|
||||
## 3. Regel-Aktivierung
|
||||
## 3. Rule activation
|
||||
|
||||
Cppcheck MISRA-Addon prueft die folgenden Regel-Kategorien:
|
||||
The Cppcheck MISRA addon checks the following rule categories:
|
||||
|
||||
| Kategorie | Anzahl | Aktivierung im Projekt |
|
||||
|-----------|--------|--------------------------------|
|
||||
| Mandatory | 9 | Alle aktiviert, Verletzung blockt Build |
|
||||
| Required | 119 | Alle aktiviert, Verletzung blockt Build |
|
||||
| Advisory | 47 | Aktiviert mit Warning-Level, Deviations zulaessig per Record |
|
||||
| Category | Count | Activation in project |
|
||||
|-----------|--------|----------------------------------|
|
||||
| Mandatory | 9 | All active, violation blocks build |
|
||||
| Required | 119 | All active, violation blocks build |
|
||||
| Advisory | 47 | Active at warning level, deviations allowed per record |
|
||||
|
||||
## 4. Compliance-Status pro Regel-Kategorie
|
||||
## 4. Compliance status per rule category
|
||||
|
||||
### 4.1 Mandatory Rules (9)
|
||||
### 4.1 Mandatory rules (9)
|
||||
|
||||
| Rule | Status |
|
||||
|-------------|------------|
|
||||
@@ -61,15 +58,15 @@ Cppcheck MISRA-Addon prueft die folgenden Regel-Kategorien:
|
||||
| R 19.1, R 21.13, R 21.17 | Compliant |
|
||||
| R 21.18, R 21.19, R 21.20 | Compliant |
|
||||
|
||||
**Mandatory Status: 100 % Compliant.**
|
||||
**Mandatory status: 100% Compliant.**
|
||||
|
||||
### 4.2 Required Rules
|
||||
### 4.2 Required rules
|
||||
|
||||
Gesamt: 119 Required Rules. Verletzungen: **0**.
|
||||
Total: 119 Required rules. Violations: **0**.
|
||||
|
||||
Top-relevante Rules fuer dieses Projekt:
|
||||
Top relevant rules for this project:
|
||||
|
||||
| Rule | Beschreibung | Status |
|
||||
| Rule | Description | Status |
|
||||
|---------|----------------------------------------------------------|----------|
|
||||
| R 8.1 | Type specifier shall be explicit | Compliant |
|
||||
| R 8.2 | Function parameters shall be explicitly named | Compliant |
|
||||
@@ -78,21 +75,21 @@ Top-relevante Rules fuer dieses Projekt:
|
||||
| R 14.1 | Loop counter shall not have essentially floating type | Compliant |
|
||||
| R 14.4 | Controlling expression shall have essentially Boolean type | Compliant |
|
||||
| R 15.4 | At most one break or goto per loop | Compliant |
|
||||
| R 17.7 | Return value of non-void function shall be used | Compliant (oder explizit `(void)`) |
|
||||
| R 21.3 | No dynamic memory allocation (malloc/free) | Compliant (keine Heap-Nutzung) |
|
||||
| R 17.7 | Return value of non-void function shall be used | Compliant (or explicit `(void)`) |
|
||||
| R 21.3 | No dynamic memory allocation (malloc/free) | Compliant (no heap use) |
|
||||
| R 21.4 | No setjmp/longjmp | Compliant |
|
||||
|
||||
### 4.3 Advisory Rules
|
||||
### 4.3 Advisory rules
|
||||
|
||||
47 Advisory Rules. Verletzungen werden via MISRA Deviation Records dokumentiert.
|
||||
47 Advisory rules. Violations are documented via MISRA deviation records.
|
||||
|
||||
| Record-ID | Rule | Datei | Begruendung-Auszug |
|
||||
| Record ID | Rule | File | Rationale summary |
|
||||
|-------------------|---------|-------------------------------|-----------------------------|
|
||||
| MISRA-REC-001 | R 15.5 | `src/apply_controller.c:64` | Early-Exit fuer NULL-Check |
|
||||
| MISRA-REC-001 | R 15.5 | `src/apply_controller.c:64` | Early-exit for NULL check |
|
||||
|
||||
**Advisory Status: 1 Deviation Record, dokumentiert.**
|
||||
**Advisory status: 1 deviation record, documented.**
|
||||
|
||||
## 5. Pruef-Pipeline
|
||||
## 5. Check pipeline
|
||||
|
||||
```bash
|
||||
cppcheck \
|
||||
@@ -105,26 +102,26 @@ cppcheck \
|
||||
-I src src
|
||||
```
|
||||
|
||||
Pruefung erfolgt:
|
||||
- Lokal vor jedem Commit (empfohlen)
|
||||
- Automatisch in CI bei jedem Push und PR
|
||||
- Vor jedem Release (Tag-Push triggert release.yml)
|
||||
Checks are run:
|
||||
- Locally before each commit (recommended)
|
||||
- Automatically in CI on every push and PR
|
||||
- Before each release (tag push triggers release.yml)
|
||||
|
||||
## 6. Deviation Permits (projektweit)
|
||||
## 6. Deviation Permits (project-wide)
|
||||
|
||||
Keine projektweiten Permits aktiv.
|
||||
No project-wide permits are active.
|
||||
|
||||
## 7. Re-Audit-Trigger
|
||||
## 7. Re-audit triggers
|
||||
|
||||
Diese Compliance-Erklaerung muss bei folgenden Aenderungen neu erstellt werden:
|
||||
This compliance statement must be re-created on the following changes:
|
||||
|
||||
- Compiler-Wechsel (z.B. GCC -> Clang)
|
||||
- Major-Update von Cppcheck oder MISRA-Addon
|
||||
- Neue Quelldateien ausserhalb `src/`
|
||||
- MISRA-Standard-Update (z.B. C:2025 Release)
|
||||
- Compiler change (e.g. GCC → Clang)
|
||||
- Major update of Cppcheck or the MISRA addon
|
||||
- New source files outside `src/`
|
||||
- MISRA standard update (e.g. C:2025 release)
|
||||
|
||||
## 8. Aenderungshistorie
|
||||
## 8. Revision history
|
||||
|
||||
| Version | Datum | Aenderung | Autor |
|
||||
|---------|-------------|-------------------------|----------------|
|
||||
| 1.0 | 2026-05-12 | Erstfreigabe v1.0 | S. Lohmaier |
|
||||
| Version | Date | Change | Author |
|
||||
|---------|-------------|---------------------|------------|
|
||||
| 1.0 | 2026-05-12 | First release v1.0 | S. Lohmaier|
|
||||
|
||||
Reference in New Issue
Block a user