Skip to content

Align Security work products with ISO SAE 21434 and fix template inconsistencies - #236

Merged
PandaeDo merged 8 commits into
eclipse-score:mainfrom
qorix-group:jnsqrx_update_security_wp
Nov 4, 2026
Merged

PandaeDo merged 8 commits into
eclipse-score:mainfrom
qorix-group:jnsqrx_update_security_wp

Conversation

@janis-qorix

Copy link
Copy Markdown
Contributor

Summary

Improves the quality and ISO SAE 21434 alignment of the module template's Security work products, which had largely been copy-pasted from the Safety equivalents without adapting to where the two standards actually differ.

  • Security Package FDR / Security Plan FDR (module_security_package_fdr.rst, module_security_plan_fdr.rst): added a Reference column linking each checklist item to the relevant std_req__isosae21434__* / std_wp__isosae21434__* needs already published in process_description, and a Conduct section (mirroring the Safety FDRs). Split the previously conflated "Process Security Audit" check into the two concepts ISO SAE 21434 actually separates: the organizational Cybersecurity Audit (clause 5.4.7) and the project-level Cybersecurity Assessment (clause 6.4.8). Added checklist items with no Safety equivalent (OTS/OSS qualification, post-development vulnerability/verification info).
  • Security Plan (module_security_plan.rst): fixed an indentation bug where sections 1–5 (Context, Scope, Roles, Tailoring, Work Products) were unintentionally nested inside the .. attention:: admonition and rendered as part of the warning box. Converted to proper RST sections and a list-table for roles, matching the Safety Plan's structure. Added four new ISO SAE 21434–specific sections with no Safety equivalent: Component Out-of-Context Assumptions, Off-the-Shelf/OSS Component Qualification, Cybersecurity Assessment Decision, and Vulnerability Monitoring and Management. Filled in the previously empty "Link to process"/"Link to WP" columns in both work product tables with the existing, verified guidance/template needs.
  • Security Manual (security_manual.rst): fixed AoU needtable filters to also check security == "YES" (previously listed all AoUs regardless of relevance), added the missing "mitigates a security analysis entry" attention box and platform/module scoping note (present in the Safety Manual but missing here), replaced a copy-pasted Safety example (HW/QM error wording) with a security-relevant one, and added new sections: Cybersecurity Claims and Residual Risk, Secure Configuration and Hardening, Vulnerability Reporting, and Security Support.
  • Minor fixes: corrected :security: YES → NO on module_safety_analysis_fdr.rst; fixed a document ID mismatch and typo in security_planning/index.rst; de-duplicated a template AoU example ID shared between the Safety and Security component templates; added the missing safety != "QM" filter to the Safety Manual's AoU tables; fixed a "feature_example"/"feature_name" filter inconsistency in safety_planning/index.rst.

All added :need: references reuse existing, already-published IDs from process_description (or existing module template documents) — no ISO/SAE 21434 standard text is reproduced, per the project's licensing constraints on that standard.

Test plan

  • bazel build //:docs completes successfully with no broken :need: references
  • pre-commit run on all changed files passes (copyright headers, REUSE lint, whitespace, bazel mod tidy)

@github-actions

github-actions Bot commented Nov 3, 2026 •

Copy link
Copy Markdown
Contributor

License Check Results

🚀 The license check job ran with the Bazel command:

bazel run --lockfile_mode=error //:license-check

Status: ⚠️ Needs Review

Click to expand output
[License Check Output]
Extracting Bazel installation...
Starting local Bazel server (8.8.2) and connecting to it...
INFO: Invocation ID: 379d3068-dd62-4541-9a29-e5dd3ccc155a
Computing main repo mapping: 
Computing main repo mapping: 
Computing main repo mapping: 
WARNING: For repository 'aspect_rules_lint', the root module requires module version aspect_rules_lint@2.3.0, but got aspect_rules_lint@2.5.0 in the resolved dependency graph. Please update the version in your MODULE.bazel or set --check_direct_dependencies=off
Loading: 
Loading: 0 packages loaded
Loading: 0 packages loaded
Loading: 0 packages loaded
    currently loading: 
Loading: 0 packages loaded
    currently loading: 
Loading: 0 packages loaded
    currently loading: 
Loading: 0 packages loaded
    currently loading: 
Loading: 0 packages loaded
    currently loading: 
Loading: 0 packages loaded
    currently loading: 
Loading: 0 packages loaded
    currently loading: 
DEBUG: /home/runner/.bazel/external/score_docs_as_code+/docs.bzl:732:14: INFO: ⚠️ DEPRECATED: Passing a Needs inventory through docs(data = [...]) is deprecated!!! Move it to external_needs = [...] instead.
Analyzing: target //:license-check (1 packages loaded, 0 targets configured)
Analyzing: target //:license-check (1 packages loaded, 0 targets configured)

Analyzing: target //:license-check (43 packages loaded, 10 targets configured)

Analyzing: target //:license-check (89 packages loaded, 10 targets configured)

Analyzing: target //:license-check (90 packages loaded, 10 targets configured)

Analyzing: target //:license-check (146 packages loaded, 2504 targets configured)

Analyzing: target //:license-check (162 packages loaded, 4605 targets configured)

Analyzing: target //:license-check (164 packages loaded, 9550 targets configured)

Analyzing: target //:license-check (171 packages loaded, 9880 targets configured)

Analyzing: target //:license-check (171 packages loaded, 9880 targets configured)

Analyzing: target //:license-check (172 packages loaded, 10004 targets configured)

Analyzing: target //:license-check (175 packages loaded, 11889 targets configured)

Analyzing: target //:license-check (176 packages loaded, 12009 targets configured)

Analyzing: target //:license-check (176 packages loaded, 12009 targets configured)

INFO: Analyzed target //:license-check (177 packages loaded, 13588 targets configured).
[5 / 14] checking cached actions
[12 / 16] JavaToolchainCompileClasses external/rules_java+/toolchains/platformclasspath_classes; 0s disk-cache, processwrapper-sandbox ... (2 actions running)
INFO: From Generating Dash formatted dependency file ...:
INFO: Successfully converted 2 packages from Cargo.lock to bazel-out/k8-fastbuild/bin/formatted.txt
[14 / 16] JavaToolchainCompileBootClasspath external/rules_java+/toolchains/platformclasspath.jar; 0s disk-cache, processwrapper-sandbox
INFO: Found 1 target...
Target //:license.check.license_check up-to-date:
  bazel-bin/license.check.license_check
  bazel-bin/license.check.license_check.jar
INFO: Elapsed time: 205.858s, Critical Path: 2.97s
INFO: 16 processes: 12 internal, 3 processwrapper-sandbox, 1 worker.
INFO: Build completed successfully, 16 total actions
INFO: Running command line: bazel-bin/license.check.license_check ./formatted.txt <args omitted>
usage: org.eclipse.dash.licenses.cli.Main [-batch <int>] [-cd <url>]
       [-confidence <int>] [-ef <url>] [-excludeSources <sources>] [-help] [-lic
       <url>] [-project <shortname>] [-repo <url>] [-review] [-summary <file>]
       [-timeout <seconds>] [-token <token>]

@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Documentation preview for this pull request is available at:
pr-236: https://eclipse-score.github.io/module_template/pr-236/

Comment thread docs/module/manuals/security_manual.rst Resolved
Comment thread docs/module/manuals/security_manual.rst Resolved
Comment thread docs/module/manuals/security_manual.rst Resolved
Comment thread docs/module/manuals/security_manual.rst Resolved
janis-qorix and others added 2 commits November 4, 2026 08:13
Add empty line after captions, replace line blocks by plain paragraphs
and align underline lengths in the new security manual sections.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@PandaeDo
PandaeDo merged commit 0b5e604 into eclipse-score:main Nov 4, 2026
4 checks passed
@janis-qorix
janis-qorix deleted the jnsqrx_update_security_wp branch November 4, 2026 07:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Development

Successfully merging this pull request may close these issues.

4 participants