a47e0aed3e
Phase 1 of full English translation: - generate_doorstop_items.py: all 55 items (SG/SYS/SWE/SA/SWA) rewritten in English - generate_landing_page.py: full UI labels, KPI cards, section headings in English - traceability.py: docstring, error messages, HTML headers in English - generate_test_report.py: report content + table headers in English - All 55 markdown items in safety/sg/, reqs/, arch/ regenerated in English Still to come: - demo-epb filled Word docs (PID, plans, safety, manuals, audit artefacts) - Code comments + test names + CI workflow step names - README + dev-process repo templates
601 lines
9.0 KiB
JSON
601 lines
9.0 KiB
JSON
[
|
|
{
|
|
"sg": {
|
|
"id": "SG-001",
|
|
"asil": "D"
|
|
},
|
|
"sys": {
|
|
"id": "SYS-001",
|
|
"asil": "D",
|
|
"title": "Holding the parking brake at standstill"
|
|
},
|
|
"sa": [
|
|
{
|
|
"id": "SA-001",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SA-002",
|
|
"asil": "D"
|
|
}
|
|
],
|
|
"swe": [
|
|
{
|
|
"id": "SWE-001",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWE-002",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWE-022",
|
|
"asil": "B"
|
|
}
|
|
],
|
|
"swa": [
|
|
{
|
|
"id": "SWA-002",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWA-004",
|
|
"asil": "B"
|
|
}
|
|
],
|
|
"code": [
|
|
"src/apply_controller.c"
|
|
],
|
|
"tests": [
|
|
"tests/unit/test_apply_controller.c"
|
|
]
|
|
},
|
|
{
|
|
"sg": {
|
|
"id": "SG-001",
|
|
"asil": "D"
|
|
},
|
|
"sys": {
|
|
"id": "SYS-004",
|
|
"asil": "D",
|
|
"title": "Auto-apply on engine off"
|
|
},
|
|
"sa": [
|
|
{
|
|
"id": "SA-001",
|
|
"asil": "D"
|
|
}
|
|
],
|
|
"swe": [
|
|
{
|
|
"id": "SWE-007",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWE-008",
|
|
"asil": "D"
|
|
}
|
|
],
|
|
"swa": [
|
|
{
|
|
"id": "SWA-001",
|
|
"asil": "D"
|
|
}
|
|
],
|
|
"code": [
|
|
"src/safety_manager.c"
|
|
],
|
|
"tests": [
|
|
"tests/unit/test_safety_manager.c"
|
|
]
|
|
},
|
|
{
|
|
"sg": {
|
|
"id": "SG-002",
|
|
"asil": "D"
|
|
},
|
|
"sys": {
|
|
"id": "SYS-002",
|
|
"asil": "D",
|
|
"title": "Apply on driver request"
|
|
},
|
|
"sa": [
|
|
{
|
|
"id": "SA-001",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SA-002",
|
|
"asil": "D"
|
|
}
|
|
],
|
|
"swe": [
|
|
{
|
|
"id": "SWE-003",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWE-004",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWE-022",
|
|
"asil": "B"
|
|
},
|
|
{
|
|
"id": "SWE-025",
|
|
"asil": "QM"
|
|
}
|
|
],
|
|
"swa": [
|
|
{
|
|
"id": "SWA-002",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWA-004",
|
|
"asil": "B"
|
|
},
|
|
{
|
|
"id": "SWA-006",
|
|
"asil": "QM"
|
|
}
|
|
],
|
|
"code": [
|
|
"src/apply_controller.c",
|
|
"src/switch_debouncer.c"
|
|
],
|
|
"tests": [
|
|
"tests/unit/test_apply_controller.c",
|
|
"tests/unit/test_switch_debouncer.c"
|
|
]
|
|
},
|
|
{
|
|
"sg": {
|
|
"id": "SG-002",
|
|
"asil": "D"
|
|
},
|
|
"sys": {
|
|
"id": "SYS-005",
|
|
"asil": "D",
|
|
"title": "Hill-hold on an incline"
|
|
},
|
|
"sa": [
|
|
{
|
|
"id": "SA-001",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SA-003",
|
|
"asil": "B"
|
|
}
|
|
],
|
|
"swe": [
|
|
{
|
|
"id": "SWE-009",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWE-010",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWE-024",
|
|
"asil": "B"
|
|
}
|
|
],
|
|
"swa": [
|
|
{
|
|
"id": "SWA-001",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWA-005",
|
|
"asil": "B"
|
|
}
|
|
],
|
|
"code": [
|
|
"src/safety_manager.c"
|
|
],
|
|
"tests": [
|
|
"tests/unit/test_safety_manager.c"
|
|
]
|
|
},
|
|
{
|
|
"sg": {
|
|
"id": "SG-003",
|
|
"asil": "A"
|
|
},
|
|
"sys": {
|
|
"id": "SYS-007",
|
|
"asil": "B",
|
|
"title": "Actuator current monitoring"
|
|
},
|
|
"sa": [
|
|
{
|
|
"id": "SA-001",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SA-002",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SA-003",
|
|
"asil": "B"
|
|
}
|
|
],
|
|
"swe": [
|
|
{
|
|
"id": "SWE-013",
|
|
"asil": "B"
|
|
},
|
|
{
|
|
"id": "SWE-014",
|
|
"asil": "B"
|
|
},
|
|
{
|
|
"id": "SWE-015",
|
|
"asil": "B"
|
|
},
|
|
{
|
|
"id": "SWE-023",
|
|
"asil": "B"
|
|
}
|
|
],
|
|
"swa": [
|
|
{
|
|
"id": "SWA-003",
|
|
"asil": "B"
|
|
},
|
|
{
|
|
"id": "SWA-004",
|
|
"asil": "B"
|
|
}
|
|
],
|
|
"code": [
|
|
"src/actuator_driver.c"
|
|
],
|
|
"tests": [
|
|
"tests/unit/test_actuator_driver.c"
|
|
]
|
|
},
|
|
{
|
|
"sg": {
|
|
"id": "SG-004",
|
|
"asil": "C"
|
|
},
|
|
"sys": {
|
|
"id": "SYS-005",
|
|
"asil": "D",
|
|
"title": "Hill-hold on an incline"
|
|
},
|
|
"sa": [
|
|
{
|
|
"id": "SA-001",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SA-003",
|
|
"asil": "B"
|
|
}
|
|
],
|
|
"swe": [
|
|
{
|
|
"id": "SWE-009",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWE-010",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWE-024",
|
|
"asil": "B"
|
|
}
|
|
],
|
|
"swa": [
|
|
{
|
|
"id": "SWA-001",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWA-005",
|
|
"asil": "B"
|
|
}
|
|
],
|
|
"code": [
|
|
"src/safety_manager.c"
|
|
],
|
|
"tests": [
|
|
"tests/unit/test_safety_manager.c"
|
|
]
|
|
},
|
|
{
|
|
"sg": {
|
|
"id": "SG-004",
|
|
"asil": "C"
|
|
},
|
|
"sys": {
|
|
"id": "SYS-006",
|
|
"asil": "B",
|
|
"title": "Auto-release on drive-away (Drive-Away Assist)"
|
|
},
|
|
"sa": [
|
|
{
|
|
"id": "SA-001",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SA-003",
|
|
"asil": "B"
|
|
}
|
|
],
|
|
"swe": [
|
|
{
|
|
"id": "SWE-011",
|
|
"asil": "B"
|
|
},
|
|
{
|
|
"id": "SWE-012",
|
|
"asil": "B"
|
|
},
|
|
{
|
|
"id": "SWE-022",
|
|
"asil": "B"
|
|
}
|
|
],
|
|
"swa": [
|
|
{
|
|
"id": "SWA-001",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWA-004",
|
|
"asil": "B"
|
|
}
|
|
],
|
|
"code": [
|
|
"src/safety_manager.c"
|
|
],
|
|
"tests": [
|
|
"tests/unit/test_safety_manager.c"
|
|
]
|
|
},
|
|
{
|
|
"sg": {
|
|
"id": "SG-005",
|
|
"asil": "B"
|
|
},
|
|
"sys": {
|
|
"id": "SYS-002",
|
|
"asil": "D",
|
|
"title": "Apply on driver request"
|
|
},
|
|
"sa": [
|
|
{
|
|
"id": "SA-001",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SA-002",
|
|
"asil": "D"
|
|
}
|
|
],
|
|
"swe": [
|
|
{
|
|
"id": "SWE-003",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWE-004",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWE-022",
|
|
"asil": "B"
|
|
},
|
|
{
|
|
"id": "SWE-025",
|
|
"asil": "QM"
|
|
}
|
|
],
|
|
"swa": [
|
|
{
|
|
"id": "SWA-002",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWA-004",
|
|
"asil": "B"
|
|
},
|
|
{
|
|
"id": "SWA-006",
|
|
"asil": "QM"
|
|
}
|
|
],
|
|
"code": [
|
|
"src/apply_controller.c",
|
|
"src/switch_debouncer.c"
|
|
],
|
|
"tests": [
|
|
"tests/unit/test_apply_controller.c",
|
|
"tests/unit/test_switch_debouncer.c"
|
|
]
|
|
},
|
|
{
|
|
"sg": {
|
|
"id": "SG-005",
|
|
"asil": "B"
|
|
},
|
|
"sys": {
|
|
"id": "SYS-003",
|
|
"asil": "B",
|
|
"title": "Release on driver request"
|
|
},
|
|
"sa": [
|
|
{
|
|
"id": "SA-001",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SA-002",
|
|
"asil": "D"
|
|
}
|
|
],
|
|
"swe": [
|
|
{
|
|
"id": "SWE-005",
|
|
"asil": "B"
|
|
},
|
|
{
|
|
"id": "SWE-006",
|
|
"asil": "B"
|
|
},
|
|
{
|
|
"id": "SWE-025",
|
|
"asil": "QM"
|
|
}
|
|
],
|
|
"swa": [
|
|
{
|
|
"id": "SWA-002",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SWA-003",
|
|
"asil": "B"
|
|
},
|
|
{
|
|
"id": "SWA-006",
|
|
"asil": "QM"
|
|
}
|
|
],
|
|
"code": [
|
|
"src/apply_controller.c",
|
|
"src/actuator_driver.c",
|
|
"src/switch_debouncer.c"
|
|
],
|
|
"tests": [
|
|
"tests/unit/test_actuator_driver.c",
|
|
"tests/unit/test_apply_controller.c",
|
|
"tests/unit/test_switch_debouncer.c"
|
|
]
|
|
},
|
|
{
|
|
"sg": null,
|
|
"sys": {
|
|
"id": "SYS-008",
|
|
"asil": "QM",
|
|
"title": "Service mode for the workshop"
|
|
},
|
|
"sa": [
|
|
{
|
|
"id": "SA-001",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SA-004",
|
|
"asil": "QM"
|
|
}
|
|
],
|
|
"swe": [
|
|
{
|
|
"id": "SWE-016",
|
|
"asil": "QM"
|
|
},
|
|
{
|
|
"id": "SWE-017",
|
|
"asil": "QM"
|
|
}
|
|
],
|
|
"swa": [
|
|
{
|
|
"id": "SWA-009",
|
|
"asil": "QM"
|
|
}
|
|
],
|
|
"code": [],
|
|
"tests": []
|
|
},
|
|
{
|
|
"sg": null,
|
|
"sys": {
|
|
"id": "SYS-009",
|
|
"asil": "QM",
|
|
"title": "UDS diagnostics"
|
|
},
|
|
"sa": [
|
|
{
|
|
"id": "SA-001",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SA-005",
|
|
"asil": "QM"
|
|
}
|
|
],
|
|
"swe": [
|
|
{
|
|
"id": "SWE-018",
|
|
"asil": "QM"
|
|
},
|
|
{
|
|
"id": "SWE-019",
|
|
"asil": "QM"
|
|
}
|
|
],
|
|
"swa": [
|
|
{
|
|
"id": "SWA-008",
|
|
"asil": "QM"
|
|
},
|
|
{
|
|
"id": "SWA-010",
|
|
"asil": "QM"
|
|
}
|
|
],
|
|
"code": [],
|
|
"tests": []
|
|
},
|
|
{
|
|
"sg": null,
|
|
"sys": {
|
|
"id": "SYS-010",
|
|
"asil": "QM",
|
|
"title": "HMI status display"
|
|
},
|
|
"sa": [
|
|
{
|
|
"id": "SA-001",
|
|
"asil": "D"
|
|
},
|
|
{
|
|
"id": "SA-004",
|
|
"asil": "QM"
|
|
},
|
|
{
|
|
"id": "SA-005",
|
|
"asil": "QM"
|
|
}
|
|
],
|
|
"swe": [
|
|
{
|
|
"id": "SWE-020",
|
|
"asil": "QM"
|
|
},
|
|
{
|
|
"id": "SWE-021",
|
|
"asil": "QM"
|
|
}
|
|
],
|
|
"swa": [
|
|
{
|
|
"id": "SWA-007",
|
|
"asil": "QM"
|
|
}
|
|
],
|
|
"code": [],
|
|
"tests": []
|
|
}
|
|
] |