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

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:
Stefan Lohmaier
2026-05-12 03:37:51 -07:00
parent a47e0aed3e
commit fb2c083551
54 changed files with 1528 additions and 1600 deletions
+31 -31
View File
@@ -25,19 +25,19 @@ jobs:
- name: Tag from ref
run: echo "TAG=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV
- name: Build + Tests + Coverage + Test-Report
- name: Build + tests + coverage + Test-Report
run: |
make test
make coverage
make test-report
- name: Traceability + Diagramme + API-Doc
- name: Traceability + diagrams + API doc
run: |
python3 tools/traceability.py publish docs/traceability
python3 tools/render_plantuml.py
make docs
- name: Cppcheck-Report (XML + HTML)
- name: Cppcheck Report (XML + HTML)
run: |
mkdir -p build
cppcheck --enable=all --inconclusive --xml --xml-version=2 \
@@ -48,15 +48,15 @@ jobs:
--source-dir=. \
--title="demo-epb Cppcheck Report" || echo "htmlreport skipped"
- name: Landing-Page
- name: Landing page
run: make landing-page
- name: Release-Bundle paketieren
- name: Package release bundle
run: |
BUNDLE="release/demo-epb-${TAG}"
mkdir -p "$BUNDLE"/{coverage,traceability,diagrams,api-doc,reports/cppcheck,docs,src,tests}
# Landing-Page (Startseite) im Bundle-Root
# Landing page in the bundle root
cp build/index.html "$BUNDLE/index.html"
# CI-generierte Artefakte
@@ -73,7 +73,7 @@ jobs:
cp -r src/*.c src/*.h "$BUNDLE/src/" 2>/dev/null || true
cp -r src/stubs "$BUNDLE/src/" 2>/dev/null || true
# Alle Word-Dokumente (Plaene, Safety, Manuals, Audit-Artefakte)
# All Word documents (plans, safety, manuals, audit artefacts)
mkdir -p "$BUNDLE/docs/plaene" "$BUNDLE/docs/safety" "$BUNDLE/docs/manuals" \
"$BUNDLE/docs/reviews" "$BUNDLE/docs/non-conformities" "$BUNDLE/misra/records"
cp -r docs/plaene/* "$BUNDLE/docs/plaene/" 2>/dev/null || true
@@ -93,55 +93,55 @@ jobs:
ls -la release/
- name: Release-Notes generieren
- name: Generate release notes
run: |
cat > release/RELEASE_NOTES.md <<EOF
# demo-epb ${TAG}
Vollstaendige Demo des slohmaier Dev Process anhand einer
Complete demo of the slohmaier Dev Process anhand einer
EPB-Steuergeraet-Software.
## Release-Bundle Inhalt
## Release bundle contents
| Asset | Inhalt |
| Asset | Content |
|-------|--------|
| \`demo-epb-${TAG}-source.tar.gz\` | Vollstaendiger Quellcode (git archive) |
| \`demo-epb-${TAG}-artifacts.tar.gz\` | Alle generierten und kuratierten Dokumente |
| \`demo-epb-${TAG}-source.tar.gz\` | Full source code (git archive) |
| \`demo-epb-${TAG}-artifacts.tar.gz\` | All generated and curated documents |
### Im Artefakt-Bundle enthalten
**Engineering (CI-generiert):**
- \`coverage/\` — gcov/lcov HTML-Coverage-Report
- \`traceability/\` — Bidirektionale Traceability-Matrix als HTML + JSON
- \`diagrams/\` — PlantUML-Architektur-Diagramme als SVG
- \`api-doc/\` — Doxygen-generierte API-Dokumentation
- \`reports/cppcheck-report.xml\` — Statische Analyse + MISRA
- \`reports/test-report.html\` — Test-Summary mit Anforderungs-Mapping
**Engineering (CI-generated):**
- \`coverage/\` — gcov/lcov HTML coverage report
- \`traceability/\` — Bidirectional traceability matrix as HTML + JSON
- \`diagrams/\` — PlantUML architecture diagrams as SVG
- \`api-doc/\` — Doxygen-generated API documentation
- \`reports/cppcheck-report.xml\` — Static analysis + MISRA
- \`reports/test-report.html\` — Test summary with requirement mapping
**Dokumente (Word, kuratiert):**
**Documents (Word, curated):**
- \`docs/plaene/\` — PID, PM-/QA-/SWE-/Test-Plan
- \`docs/safety/\` — HARA, Safety Case, FMEDA, MISRA-Compliance, Verification-Report, Tool-Qualification
- \`docs/manuals/\` — User-Manual + Service-Manual
- \`docs/reviews/\` — Review-Protokoll(e)
- \`docs/non-conformities/\` — Non-Conformity-Eintraege
- \`docs/non-conformities/\` — Non-conformity entries
- \`docs/misra/\` — MISRA Deviation Records
## Build-Beweis
## Build evidence
- Alle 41 Unit-Tests gruen (Linux-Runner verbindlich)
- Coverage gemessen mit gcov/lcov
- All 46 unit tests green (Linux runner required)
- Coverage measured with gcov/lcov
- Statische Analyse mit Cppcheck (0 Findings)
- MISRA-C:2012 Compliance bestaetigt (1 Advisory Deviation)
- Traceability bidirektional verifiziert (50 Items)
- MISRA C:2012 compliance confirmed (1 Advisory deviation)
- Traceability verified bidirectionally (50 Items)
## Referenzen
- Methodik: https://gitea.slohmaier.com/slohmaier/dev-process
- Methodology: https://gitea.slohmaier.com/slohmaier/dev-process
- Commit: ${{ github.sha }}
- Built: $(date -u +%Y-%m-%dT%H:%M:%SZ)
EOF
- name: Gitea-Release anlegen + Artefakte hochladen
- name: Create Gitea release + upload assets
env:
GITEA_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
@@ -173,7 +173,7 @@ jobs:
echo "Release verfuegbar unter ${GITHUB_SERVER_URL}/${OWNER}/${REPO}/releases/tag/${TAG}"
- name: Deploy zu gitea.slohmaier.com/pages/demo-epb/
- name: Deploy to gitea.slohmaier.com/pages/demo-epb/
run: |
DEPLOY=/var/www/pages/demo-epb
if [ ! -d "$DEPLOY" ]; then
@@ -185,7 +185,7 @@ jobs:
cp -r "$BUNDLE"/. "$DEPLOY/"
echo "https://gitea.slohmaier.com/pages/demo-epb/ updated to ${TAG}"
- name: Upload artifacts (Backup als CI-Artefakt)
- name: Upload artifacts (backup as CI artifact)
uses: actions/upload-artifact@v3
if: always()
with: