diff --git a/MODULE.bazel b/MODULE.bazel
index 4fcf2a54..3a1562d9 100644
--- a/MODULE.bazel
+++ b/MODULE.bazel
@@ -76,7 +76,7 @@ bazel_dep(name = "buildifier_prebuilt", version = "8.5.1.2", dev_dependency = Tr
#docs-as-code
bazel_dep(name = "score_docs_as_code", version = "4.5.0", dev_dependency = True)
-bazel_dep(name = "score_process", version = "1.5.4", dev_dependency = True)
+bazel_dep(name = "score_process", version = "1.6.0", dev_dependency = True)
# grpc-java 1.66.0 imports a grpc extension repo removed in newer grpc versions.
# Force a compatible grpc-java version until upstream dependencies converge.
diff --git a/MODULE.bazel.lock b/MODULE.bazel.lock
index f8d008b9..995cb5dd 100644
--- a/MODULE.bazel.lock
+++ b/MODULE.bazel.lock
@@ -38,7 +38,6 @@
"https://bcr.bazel.build/modules/aspect_bazel_lib/2.7.7/MODULE.bazel": "491f8681205e31bb57892d67442ce448cda4f472a8e6b3dc062865e29a64f89c",
"https://bcr.bazel.build/modules/aspect_bazel_lib/2.8.1/MODULE.bazel": "812d2dd42f65dca362152101fbec418029cc8fd34cbad1a2fde905383d705838",
"https://bcr.bazel.build/modules/aspect_bazel_lib/2.9.3/MODULE.bazel": "66baf724dbae7aff4787bf2245cc188d50cb08e07789769730151c0943587c14",
- "https://bcr.bazel.build/modules/aspect_bazel_lib/2.9.4/MODULE.bazel": "ccc41028429f894b02fde7ef67d416cba3ba5084ed9ddb9bb6107aa82d118776",
"https://bcr.bazel.build/modules/aspect_rules_esbuild/0.21.0/MODULE.bazel": "77dc393c43ad79398b05865444c5200c6f1aae6765615544f2c7730b5858d533",
"https://bcr.bazel.build/modules/aspect_rules_esbuild/0.21.0/source.json": "062b1d3dba8adcfeb28fe60c185647f5a53ec0487ffe93cf0ae91566596e4b49",
"https://bcr.bazel.build/modules/aspect_rules_js/1.33.1/MODULE.bazel": "db3e7f16e471cf6827059d03af7c21859e7a0d2bc65429a3a11f005d46fc501b",
@@ -47,14 +46,9 @@
"https://bcr.bazel.build/modules/aspect_rules_js/2.3.8/MODULE.bazel": "74bf20a7a6bd5f2be09607fdb4196cfd6f203422ea271752ec2b1afe95426101",
"https://bcr.bazel.build/modules/aspect_rules_js/2.3.8/source.json": "411ec9d79d6f5fe8a083359588c21d01a5b48d88a2cbd334a4c90365015b7836",
"https://bcr.bazel.build/modules/aspect_rules_lint/0.12.0/MODULE.bazel": "e767c5dbfeb254ec03275a7701b5cfde2c4d2873676804bc7cb27ddff3728fed",
- "https://bcr.bazel.build/modules/aspect_rules_lint/1.0.3/MODULE.bazel": "ed0fe929647ba21d2041e14ea3d757133ca306b72d4998e8a3d0d2f515196765",
"https://bcr.bazel.build/modules/aspect_rules_lint/1.10.2/MODULE.bazel": "a4e49c029f1e2b3d7c412c45f10e03ab5cc80f9a579737868554044b03c90365",
"https://bcr.bazel.build/modules/aspect_rules_lint/1.10.2/source.json": "82465c804422f39e7a7dddeaf05857dafbe308e54312c2ebd8508c22b22f5e6f",
- "https://bcr.bazel.build/modules/aspect_rules_lint/1.3.1/MODULE.bazel": "06ce330900a7d6403bc8d88e5dfad6aeeb8ae40179f66bb89e69c8bf6f6b1a0b",
- "https://bcr.bazel.build/modules/aspect_rules_lint/1.4.2/MODULE.bazel": "78d025facf6fa675fd6f0b62fd6a9a2bec7ef5ae1e288e5b53f4383b98017105",
- "https://bcr.bazel.build/modules/aspect_rules_lint/1.4.4/MODULE.bazel": "24459eeeeb084bc3e7628c338e494746718bc17b3a3cbd94415c8df5c7c6dc37",
"https://bcr.bazel.build/modules/aspect_rules_lint/1.5.3/MODULE.bazel": "7fee71b11be63f1cf0458cd8c731712a0e672d0bb6df8879ed70249bf8dfdfdc",
- "https://bcr.bazel.build/modules/aspect_rules_py/1.0.0/MODULE.bazel": "8eb29876512d3242af50a424300bec5c5f8957b455963df5f618cb7fd4e8ae19",
"https://bcr.bazel.build/modules/aspect_rules_py/1.4.0/MODULE.bazel": "6fd29b93207a31445d5d3ab9d9882fd5511e43c95e8e82e7492872663720fd44",
"https://bcr.bazel.build/modules/aspect_rules_py/1.4.0/source.json": "fb1ba946478fb6dbb26d49307d756b0fd2ff88be339af23c39c0397d59143d2c",
"https://bcr.bazel.build/modules/aspect_rules_ts/3.6.0/MODULE.bazel": "d0045b5eabb012be550a609589b3e5e47eba682344b19cfd9365d4d896ed07df",
@@ -73,7 +67,6 @@
"https://bcr.bazel.build/modules/bazel_features/1.17.0/MODULE.bazel": "039de32d21b816b47bd42c778e0454217e9c9caac4a3cf8e15c7231ee3ddee4d",
"https://bcr.bazel.build/modules/bazel_features/1.18.0/MODULE.bazel": "1be0ae2557ab3a72a57aeb31b29be347bcdc5d2b1eb1e70f39e3851a7e97041a",
"https://bcr.bazel.build/modules/bazel_features/1.19.0/MODULE.bazel": "59adcdf28230d220f0067b1f435b8537dd033bfff8db21335ef9217919c7fb58",
- "https://bcr.bazel.build/modules/bazel_features/1.2.0/MODULE.bazel": "122b2b606622afbaa498913d54f52d9bcd2d19a5edd1bd6d6c5aa17441c4d5f9",
"https://bcr.bazel.build/modules/bazel_features/1.21.0/MODULE.bazel": "675642261665d8eea09989aa3b8afb5c37627f1be178382c320d1b46afba5e3b",
"https://bcr.bazel.build/modules/bazel_features/1.27.0/MODULE.bazel": "621eeee06c4458a9121d1f104efb80f39d34deff4984e778359c60eaf1a8cb65",
"https://bcr.bazel.build/modules/bazel_features/1.28.0/MODULE.bazel": "4b4200e6cbf8fa335b2c3f43e1d6ef3e240319c33d43d60cc0fbd4b87ece299d",
@@ -305,14 +298,11 @@
"https://bcr.bazel.build/modules/rules_java/7.3.2/MODULE.bazel": "50dece891cfdf1741ea230d001aa9c14398062f2b7c066470accace78e412bc2",
"https://bcr.bazel.build/modules/rules_java/7.4.0/MODULE.bazel": "a592852f8a3dd539e82ee6542013bf2cadfc4c6946be8941e189d224500a8934",
"https://bcr.bazel.build/modules/rules_java/7.6.1/MODULE.bazel": "2f14b7e8a1aa2f67ae92bc69d1ec0fa8d9f827c4e17ff5e5f02e91caa3b2d0fe",
- "https://bcr.bazel.build/modules/rules_java/8.11.0/MODULE.bazel": "c3d280bc5ff1038dcb3bacb95d3f6b83da8dd27bba57820ec89ea4085da767ad",
- "https://bcr.bazel.build/modules/rules_java/8.13.0/MODULE.bazel": "0444ebf737d144cf2bb2ccb368e7f1cce735264285f2a3711785827c1686625e",
"https://bcr.bazel.build/modules/rules_java/8.14.0/MODULE.bazel": "717717ed40cc69994596a45aec6ea78135ea434b8402fb91b009b9151dd65615",
"https://bcr.bazel.build/modules/rules_java/8.15.1/MODULE.bazel": "5071eebf0fd602ab0617f846e0e0d8f388d66c961513c736e0ac4a1dcde3ff2c",
"https://bcr.bazel.build/modules/rules_java/8.15.1/source.json": "e48286d5819767bc5b3d457539ae7f94e28a9b3e55d092d5c47176cb6a2a289b",
"https://bcr.bazel.build/modules/rules_java/8.3.2/MODULE.bazel": "7336d5511ad5af0b8615fdc7477535a2e4e723a357b6713af439fe8cf0195017",
"https://bcr.bazel.build/modules/rules_java/8.5.1/MODULE.bazel": "d8a9e38cc5228881f7055a6079f6f7821a073df3744d441978e7a43e20226939",
- "https://bcr.bazel.build/modules/rules_java/8.6.3/MODULE.bazel": "e90505b7a931d194245ffcfb6ff4ca8ef9d46b4e830d12e64817752e0198e2ed",
"https://bcr.bazel.build/modules/rules_jvm_external/4.4.2/MODULE.bazel": "a56b85e418c83eb1839819f0b515c431010160383306d13ec21959ac412d2fe7",
"https://bcr.bazel.build/modules/rules_jvm_external/5.1/MODULE.bazel": "33f6f999e03183f7d088c9be518a63467dfd0be94a11d0055fe2d210f89aa909",
"https://bcr.bazel.build/modules/rules_jvm_external/5.2/MODULE.bazel": "d9351ba35217ad0de03816ef3ed63f89d411349353077348a45348b096615036",
@@ -334,7 +324,6 @@
"https://bcr.bazel.build/modules/rules_multitool/0.4.0/MODULE.bazel": "15517987d5c00c9e7faab41fbe22ee67a350b6eabcc1e08baded5c6d9025897f",
"https://bcr.bazel.build/modules/rules_multitool/1.11.1/MODULE.bazel": "f826d2d394e8d964e44ebb4a75ebcfe4e9cd4eb150e2ddcd60398ffeb939696a",
"https://bcr.bazel.build/modules/rules_multitool/1.11.1/source.json": "201f43de1d35bd17f25a4fed3ba5a2ec500ef5e08b7d4b341bb9fd39cef0cbc6",
- "https://bcr.bazel.build/modules/rules_multitool/1.2.0/MODULE.bazel": "8d818d6104f4030930291bbbbc5684702c237dbcdee7229097543e6a6035adaa",
"https://bcr.bazel.build/modules/rules_multitool/1.9.0/MODULE.bazel": "8a042b0dbf35e4aaa94c28ad69efa75c9e673e9ea4bd5c0fb70bab75ef9c636b",
"https://bcr.bazel.build/modules/rules_nodejs/5.8.2/MODULE.bazel": "6bc03c8f37f69401b888023bf511cb6ee4781433b0cb56236b2e55a21e3a026a",
"https://bcr.bazel.build/modules/rules_nodejs/6.2.0/MODULE.bazel": "ec27907f55eb34705adb4e8257952162a2d4c3ed0f0b3b4c3c1aad1fac7be35e",
@@ -348,7 +337,6 @@
"https://bcr.bazel.build/modules/rules_proto/4.0.0/MODULE.bazel": "a7a7b6ce9bee418c1a760b3d84f83a299ad6952f9903c67f19e4edd964894e06",
"https://bcr.bazel.build/modules/rules_proto/5.3.0-21.7/MODULE.bazel": "e8dff86b0971688790ae75528fe1813f71809b5afd57facb44dad9e8eca631b7",
"https://bcr.bazel.build/modules/rules_proto/6.0.0-rc1/MODULE.bazel": "1e5b502e2e1a9e825eef74476a5a1ee524a92297085015a052510b09a1a09483",
- "https://bcr.bazel.build/modules/rules_proto/6.0.0-rc2/MODULE.bazel": "e17f94f8a347e2c808517b65d74988839d2d62daceb50073e44060193b785eb1",
"https://bcr.bazel.build/modules/rules_proto/6.0.0/MODULE.bazel": "b531d7f09f58dce456cd61b4579ce8c86b38544da75184eadaf0a7cb7966453f",
"https://bcr.bazel.build/modules/rules_proto/6.0.2/MODULE.bazel": "ce916b775a62b90b61888052a416ccdda405212b6aaeb39522f7dc53431a5e73",
"https://bcr.bazel.build/modules/rules_proto/7.0.2/MODULE.bazel": "bf81793bd6d2ad89a37a40693e56c61b0ee30f7a7fdbaf3eabbf5f39de47dea2",
@@ -378,7 +366,6 @@
"https://bcr.bazel.build/modules/rules_rust/0.70.0/source.json": "24ae6d23425359db1c3148aa22c389970fce9a06102b2b3a329a2800f9569de2",
"https://bcr.bazel.build/modules/rules_shell/0.2.0/MODULE.bazel": "fda8a652ab3c7d8fee214de05e7a9916d8b28082234e8d2c0094505c5268ed3c",
"https://bcr.bazel.build/modules/rules_shell/0.3.0/MODULE.bazel": "de4402cd12f4cc8fda2354fce179fdb068c0b9ca1ec2d2b17b3e21b24c1a937b",
- "https://bcr.bazel.build/modules/rules_shell/0.4.0/MODULE.bazel": "0f8f11bb3cd11755f0b48c1de0bbcf62b4b34421023aa41a2fc74ef68d9584f0",
"https://bcr.bazel.build/modules/rules_shell/0.4.1/MODULE.bazel": "00e501db01bbf4e3e1dd1595959092c2fadf2087b2852d3f553b5370f5633592",
"https://bcr.bazel.build/modules/rules_shell/0.5.0/MODULE.bazel": "8c8447370594d45539f66858b602b0bb2cb2d3401a4ebb9ad25830c59c0f366d",
"https://bcr.bazel.build/modules/rules_shell/0.6.1/MODULE.bazel": "72e76b0eea4e81611ef5452aa82b3da34caca0c8b7b5c0c9584338aa93bae26b",
@@ -406,7 +393,6 @@
"https://bcr.bazel.build/modules/toolchain_utils/1.0.2/source.json": "88769ec576dddacafd8cca4631812cf8eead89f10a29d9405d9f7a553de6bf87",
"https://bcr.bazel.build/modules/toolchains_llvm/1.7.0/MODULE.bazel": "55aca6a8c5b372651f663c5e22faf3664d81165e40074c98fb8a30ee5af83272",
"https://bcr.bazel.build/modules/toolchains_llvm/1.7.0/source.json": "cda5fa1abeab5561e811860222952f6cb9373f34b88c5b3f4417459dca057a6d",
- "https://bcr.bazel.build/modules/toolchains_protoc/0.2.1/MODULE.bazel": "2f08433ff5e659069b3a1abfee2377d68f510f2de1da50678ed992c455b4ff91",
"https://bcr.bazel.build/modules/upb/0.0.0-20211020-160625a/MODULE.bazel": "6cced416be2dc5b9c05efd5b997049ba795e5e4e6fafbe1624f4587767638928",
"https://bcr.bazel.build/modules/upb/0.0.0-20220923-a547704/MODULE.bazel": "7298990c00040a0e2f121f6c32544bab27d4452f80d9ce51349b1a28f3005c43",
"https://bcr.bazel.build/modules/upb/0.0.0-20230516-61a97ef/MODULE.bazel": "c0df5e35ad55e264160417fd0875932ee3c9dda63d9fccace35ac62f45e1b6f9",
@@ -457,20 +443,14 @@
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_bazel_lib/2.7.7/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_bazel_lib/2.8.1/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_bazel_lib/2.9.3/MODULE.bazel": "not found",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_bazel_lib/2.9.4/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_rules_esbuild/0.21.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_rules_js/1.33.1/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_rules_js/1.40.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_rules_js/2.0.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_rules_js/2.3.8/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_rules_lint/0.12.0/MODULE.bazel": "not found",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_rules_lint/1.0.3/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_rules_lint/1.10.2/MODULE.bazel": "not found",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_rules_lint/1.3.1/MODULE.bazel": "not found",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_rules_lint/1.4.2/MODULE.bazel": "not found",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_rules_lint/1.4.4/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_rules_lint/1.5.3/MODULE.bazel": "not found",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_rules_py/1.0.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_rules_py/1.4.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_rules_ts/3.6.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/aspect_tools_telemetry/0.2.5/MODULE.bazel": "not found",
@@ -486,7 +466,6 @@
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/bazel_features/1.17.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/bazel_features/1.18.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/bazel_features/1.19.0/MODULE.bazel": "not found",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/bazel_features/1.2.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/bazel_features/1.21.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/bazel_features/1.27.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/bazel_features/1.28.0/MODULE.bazel": "not found",
@@ -669,13 +648,10 @@
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_java/7.3.2/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_java/7.4.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_java/7.6.1/MODULE.bazel": "not found",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_java/8.11.0/MODULE.bazel": "not found",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_java/8.13.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_java/8.14.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_java/8.15.1/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_java/8.3.2/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_java/8.5.1/MODULE.bazel": "not found",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_java/8.6.3/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_jvm_external/4.4.2/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_jvm_external/5.1/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_jvm_external/5.2/MODULE.bazel": "not found",
@@ -692,7 +668,6 @@
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_multitool/0.11.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_multitool/0.4.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_multitool/1.11.1/MODULE.bazel": "not found",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_multitool/1.2.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_multitool/1.9.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_nodejs/5.8.2/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_nodejs/6.2.0/MODULE.bazel": "not found",
@@ -704,7 +679,6 @@
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_proto/4.0.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_proto/5.3.0-21.7/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_proto/6.0.0-rc1/MODULE.bazel": "not found",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_proto/6.0.0-rc2/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_proto/6.0.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_proto/6.0.2/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_proto/7.0.2/MODULE.bazel": "not found",
@@ -731,63 +705,20 @@
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_rust/0.70.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_shell/0.2.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_shell/0.3.0/MODULE.bazel": "not found",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_shell/0.4.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_shell/0.4.1/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_shell/0.5.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_shell/0.6.1/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_swift/1.16.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_swift/1.18.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/rules_swift/2.1.1/MODULE.bazel": "not found",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_cr_checker/0.2.2/MODULE.bazel": "dc36d9c35543db918c3fb5b93a8e684431f56c7c784cf2a1b90f35802a373c98",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_cr_checker/0.3.1/MODULE.bazel": "f49e037d7fbc0b2a8b2734fc6b47334e8cc8589ca7a5aa0f3ccca85cc5f79fac",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_dash_license_checker/0.1.1/MODULE.bazel": "76681dbd2d45b5c540869a2337174086c56c54953aab1d02cd878b59d31d13a5",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_devcontainer/1.7.0/MODULE.bazel": "f9a5971fbd05f0ed14e7a373dbf58af72a5c58d081537a75c314daaf61c92ae9",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_devcontainer/1.7.0/source.json": "a3f55522fd9f63fae7a92f3cb5f91c25ae7474a39e9f9c633f0cf797fc0ca8e5",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/0.2.4/MODULE.bazel": "ea4801e96c87e2b8650a0fa9e5fed9b8bdbef05c1bc3e30003ba527d5af60a43",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/0.2.6/MODULE.bazel": "1af2963e91c6472555e222f0aba3dc2f5492d04598298209a361978ee3e321e3",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/0.3.3/MODULE.bazel": "95d2b7d44d461c1cf9bd016605f740716fd4ea1303f5f2ed93de3566b90feb1b",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/1.0.0-RC1/MODULE.bazel": "e118b5cbdc453cde83b5ce481107d8e4a713d3458550b9d10445046d4bba2ff3",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/1.0.0/MODULE.bazel": "a3ad204b7412c02a899034d78de62b5549bafba5530a256d1007cb3f4ed20a11",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/1.0.2-CW1/MODULE.bazel": "08d30eba6a1c502096abd65ebb759afb35f988b31e4b72ab5866177703cfec77",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/1.0.2/MODULE.bazel": "259894df09b4aa6bb5152717b03c3c06a3fd4ad583a7119c52f3a2f0d277b857",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/1.2.0/MODULE.bazel": "a2b10950d585e14b09a6266025c0624b42101f72d3c4efe9591716b8713ede47",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/2.0.0/MODULE.bazel": "0c850a488fd50067b28726bfd7330a6970e36b63e67ea06efd5fbbc813e7be5c",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/2.0.3/MODULE.bazel": "9b945514727190d4c381d8965b972884ba04ce105260ffd2b3c9df51f206ebfe",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/2.3.1/MODULE.bazel": "1b1f694232bd2037704d2f7412ef229e3df2e8e2eb796678999c9e3e2d0f5ddb",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/3.0.0/MODULE.bazel": "61625b107e374d3c3fbfa4431a497f55567ee49892290cbf64278e92878e231d",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/3.0.1/MODULE.bazel": "296328e60d5481ff529e0c937ba80c5d3d4838445d119caf517fd82f97cd053a",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/4.0.0/MODULE.bazel": "522dc070354e6be2f984468a4243fe4ab8bec690922df5f31f7f0916ee264e20",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/4.0.1/MODULE.bazel": "5955f4cf37228a9cdda7f6009b81db0446f005c618f4bc43665bfa45f2673ebc",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/4.5.0/MODULE.bazel": "4cfe52fe8b8dbeaf7e87500036391da278f72f1c2b41b689ffdd4337196dd8fe",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_docs_as_code/4.5.0/source.json": "e01b29a3e9640a0d41d880d7da525e451115649d90f097ed66d09808c9135486",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_format_checker/0.1.1/MODULE.bazel": "1acc254faa90e9f97b79ac69af25b6c21c561f8d6079914f6352b9b20d26bd37",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_platform/0.1.0/MODULE.bazel": "cc9eae86e76f2a930510ed6e50ec991bb5661687e24881685b39c322087adf6f",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_platform/0.1.1/MODULE.bazel": "eb086ba99f9319371fbbd0a9252dfd27b0817039b88bd4d691602974b1ada005",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_process/1.0.4/MODULE.bazel": "f74302cb90a7c4878db302276afae82966878099861dcfca3ef43256131dab52",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_process/1.0.5/MODULE.bazel": "ed17c232ebd65e9d50fd5c1832f90f95ffe95b2a1113d63a176295a2af64d111",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_process/1.1.0/MODULE.bazel": "97dd927309f87ecb73629725683028a5dbb37a49b1159c771292e6993569055b",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_process/1.1.1-Beta/MODULE.bazel": "7ab8931f4b2754b728101ed5a2afda458b82b885f5cfdb9d8c4c62b5c1a2da7e",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_process/1.1.1/MODULE.bazel": "35c84c7cec7d15678f63145054bb74367afb65929724c2115095d5e1b96fca94",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_process/1.2.0/MODULE.bazel": "ec092bf01731a1866352d7b8aaa0e30cae319667abc8cf7a86aec0bdb8555a0e",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_process/1.3.1/MODULE.bazel": "29666e38fbc76eddd6676e594f225e474d130dce9c3a9d224e59ae7a499c4575",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_process/1.3.2/MODULE.bazel": "a32390ef217cef9a811408b0a1c5aeed1398c377aa846f5d5416d7b95b4e4366",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_process/1.4.2/MODULE.bazel": "7593d62baf500c4e40bf0758f2515b5df016e177b889d11ca964818821ebe505",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_process/1.4.3/MODULE.bazel": "eb8243299a6ae3663618db5b4718e2c0d3c93f91a44994641e70106c400b23fb",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_process/1.5.2/MODULE.bazel": "be52d29278d6671221f28921e8f1acfce29c3bfc3e6b4f503f0625ab2c61586f",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_process/1.5.3/MODULE.bazel": "65024b7f23ce5f72bd6ffd455a67c042ecf56d267f0bf63a90330a3241781b7a",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_process/1.5.4/MODULE.bazel": "efd56704f1a93e670032e7c0e4fad97669aa3b348fb1a4cd40f67e4dd4c7037c",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_process/1.6.0/MODULE.bazel": "2496bc24311f69f49449ee85d8bb38e3b970cbfcf10d0a7f19b2d5262ce80e8d",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_process/1.6.0/source.json": "093424aa8bfed8705a3d142b21fe1d053258f2dd5eb1944941f6439b2c7157e9",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_python_basics/0.3.0/MODULE.bazel": "785ddd5295213e36c31ab86bdc34f29c0f7d1b72e9abd931bb08f42c0e48e2e9",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_python_basics/0.3.1/MODULE.bazel": "99c491109937542e61df090222666a8613ef946fa7bb2b2d5ba648b2baba03ad",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_python_basics/0.3.2/MODULE.bazel": "f25490f64035a0e3a0d53ad9cb6164e8325ce6cf2a7ee68c6ae153840cb2497e",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_python_basics/0.3.4/MODULE.bazel": "53bd16dfbb1fb8ecf6822fb26f9f4e8333bac7b14d12bb02bf84078063820a31",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_rust_policies/0.0.2/MODULE.bazel": "ade2bad4a331b02d9b7e7d9842e8de8c6fded6186486e02c4f7db5cd4b71d34d",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_rust_policies/0.0.2/source.json": "fbcbc738e652b0c68d5d28dd1db09f2e643dc111f5739b2f6af7ec56c2e88043",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_starpls_lsp/0.1.0/MODULE.bazel": "b2f8c4c8d8e851706255ff9002b448bff6e040b8f0c6adedbde2a09375aa16cc",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_tooling/1.0.2/MODULE.bazel": "e70f396375b9d612b4f41ebceff7f18f68ab423b14625c138a354cc01bc62a10",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_tooling/1.1.0/MODULE.bazel": "5a04a5ce3512eb742a036600fba58b465f427e2e193db8e88857132e4a4eb513",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_tooling/1.1.2-RC/MODULE.bazel": "ac89da18ac88f7169d2fe675bfd173464f8de58ea934c12079aed0488c3b4dcd",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_tooling/1.2.0/MODULE.bazel": "982db97a4f8440356ea935f103204f644fb2b84d8188df63533c7312c82afc37",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/score_tooling/1.2.0/source.json": "c742d8932e4e6b667f3c81f40127768a8541f01ca7b1e6751773926231cbd852",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/stardoc/0.5.0/MODULE.bazel": "not found",
@@ -804,7 +735,6 @@
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/tar.bzl/0.6.0/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/toolchain_utils/1.0.2/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/toolchains_llvm/1.7.0/MODULE.bazel": "not found",
- "https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/toolchains_protoc/0.2.1/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/upb/0.0.0-20211020-160625a/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/upb/0.0.0-20220923-a547704/MODULE.bazel": "not found",
"https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/modules/upb/0.0.0-20230516-61a97ef/MODULE.bazel": "not found",
diff --git a/docs/features/feature_example/architecture/index.rst b/docs/features/feature_example/architecture/index.rst
index f128e5e3..bff99e46 100644
--- a/docs/features/feature_example/architecture/index.rst
+++ b/docs/features/feature_example/architecture/index.rst
@@ -61,8 +61,12 @@ Mandatory: A motivation for the decomposition
Static Architecture
-------------------
-The live feature architecture template snippets are maintained in the
-`module template documentation `__.
+
+
+.. note::
+ The Architecture can be split into multiple files, it is an high level architecture design
+ which can be shown without actual c++/rust interfaces and data types
+ and there will be link to internal architecture till code to get actual api descriptions.
.. code-block:: rst
@@ -84,6 +88,8 @@ The live feature architecture template snippets are maintained in the
Dynamic Architecture
--------------------
+
+
.. code-block:: rst
.. feat_arc_dyn:: Dynamic View
@@ -101,54 +107,11 @@ Logical Interfaces
The logical interfaces of the feature are defined in the `logical interfaces` section of the feature documentation in the project repository.
-Module Viewpoint
-----------------
-
-The following modules are needed to be defined to be able to draw the static feature view.
-They will be replaced by linking the proper module definitions in the used module's repositories as soon as those exist.
-
-The rendered module and used-component examples are maintained in the
-`module template documentation `_.
-
-.. code-block:: rst
-
- .. mod:: Module Name
- :id: mod__module_name
- :includes: comp__component_name_template
-
-
- .. mod_view_sta:: Module Name Static View
- :id: mod_view_sta__feature_name__module_name
- :includes: comp__component_name_template
-
- .. needarch::
- :scale: 50
- :align: center
-
- {{ draw_module(need(), needs) }}
+See `SCORE Features `_ for more information.
Used Components
---------------
-The following components are needed to be defined to be able to draw the static feature view.
-They will be replaced by linking the proper SW component definitions in the used module's repositories as soon as those exist.
-
-.. code-block:: rst
-
- .. comp:: Component Name
- :id: comp__component_name_template
- :safety: ASIL_B
- :security: YES
- :status: invalid
- :implements: logic_arc_int__feature_name__interface_name1
-
-.. note::
- Architecture can be split into multiple files, it is an high level architecture design
- which can be shown without actual c++/rust interfaces and data types
- and there will be link to internal architecture till code to get actual api descriptions.
-
-.. attention::
- The above directives must be updated according to your feature architecture.
+The components used by the feature are defined in the `components` section of the module documentation.
- - Replace the example content by the real content (according to :need:`gd_guidl__arch_design`)
- - Set the status to valid and start the review/merge process
+See :ref:`component_template` for an example component.
diff --git a/docs/manuals/api_description/.gitkeep b/docs/manuals/api_description/.gitkeep
new file mode 100644
index 00000000..e69de29b
diff --git a/docs/manuals/config/.gitkeep b/docs/manuals/config/.gitkeep
new file mode 100644
index 00000000..e69de29b
diff --git a/docs/manuals/examples/.gitkeep b/docs/manuals/examples/.gitkeep
new file mode 100644
index 00000000..e69de29b
diff --git a/docs/manuals/index.rst b/docs/manuals/index.rst
index 8890d44c..3c905d73 100644
--- a/docs/manuals/index.rst
+++ b/docs/manuals/index.rst
@@ -18,5 +18,6 @@ Manuals
.. toctree::
:titlesonly:
+ user_manual
safety_manual
security_manual
diff --git a/docs/manuals/performance/.gitkeep b/docs/manuals/performance/.gitkeep
new file mode 100644
index 00000000..e69de29b
diff --git a/docs/manuals/user_manual.rst b/docs/manuals/user_manual.rst
new file mode 100644
index 00000000..720b7bbb
--- /dev/null
+++ b/docs/manuals/user_manual.rst
@@ -0,0 +1,148 @@
+..
+ # *******************************************************************************
+ # Copyright (c) 2026 Contributors to the Eclipse Foundation
+ #
+ # See the NOTICE file(s) distributed with this work for additional
+ # information regarding copyright ownership.
+ #
+ # This program and the accompanying materials are made available under the
+ # terms of the Apache License Version 2.0 which is available at
+ # https://www.apache.org/licenses/LICENSE-2.0
+ #
+ # SPDX-License-Identifier: Apache-2.0
+ # *******************************************************************************
+
+.. _user_manual:
+
+User Manual
+###########
+
+.. document:: User Manual
+ :id: doc__user_manual
+ :status: draft
+ :version: 1
+ :safety: QM
+ :security: NO
+ :realizes: wp__training_path[version==1]
+
+
+.. attention::
+ Update the document metadata according to your needs.
+
+Overview
+========
+
+This user manual provides comprehensive guidance for using the [Your Module Name] module from an end customer perspective.
+It covers installation, configuration, basic usage, and best practices for integrating this module
+into your project.
+
+.. note::
+ This is a template user manual. Replace placeholder text with actual module-specific information.
+
+For build and test of the module itself, please refer to the :ref:`quick-start-building-testing`.
+
+Environment Needs
+=================
+
+Basic needed software environment for the module development and usage:
+
+* **C++**: C++17 or later
+* **Rust**: 1.70 or later (if Rust support is included)
+* **Build System**: Bazel 6.0 or later
+* **Operating Systems**: Linux, QNX
+
+Dependencies
+------------
+
+[List key external dependencies, licenses, and version requirements]
+
+**Example:**
+
+* Standard library (STL/Core)
+* [Other required libraries]
+
+See also MODULE.bazel files for more details on dependencies.
+
+Module Configuration Details
+=============================
+
+
+
+Configuration Effects
+---------------------
+
+
+
+
+Examples
+========
+
+
+
+API Reference
+=============
+
+For complete and detailed API documentation and descriptions, refer to the API documentation in the ``api_description/`` directory.
+
+Performance Considerations
+==========================
+
+This section covers performance characteristics, optimization strategies, and resource requirements.
+Refer to the ``performance/`` directory for detailed performance guides and benchmarks.
+
+Integration Guidelines
+======================
+
+Integrating with Your Project
+------------------------------
+
+1. Add the module to your Bazel workspace:
+
+ .. code-block:: python
+
+ # In your MODULE.bazel
+ bazel_dep(name = "module_template", version = "1.0")
+
+2. Reference in your build files:
+
+ .. code-block:: python
+
+ cc_library(
+ name = "my_target",
+ deps = ["@module_template//score/component_example:component"],
+ )
+
+3. Include headers and compile your code
+
+
+Version History, Compatibility, and Troubleshooting
+===================================================
+
+For comprehensive information on the following topics, refer to :doc:`/docs/release/release_note`:
+
+* Version history and changes
+* Compatibility notes and upgrade instructions
+* Known issues and limitations
+* Troubleshooting tips and solutions
+* Security vulnerabilities (CVEs)
+
+Safety and Security
+===================
+
+**Safety-Critical Usage**: If you are using this module in a safety-critical context,
+please refer to :doc:`safety_manual` for detailed safety requirements and guidelines.
+
+**Security Considerations**: For information about security aspects and requirements,
+please refer to :doc:`security_manual`.
+
+License
+=======
+
+This module is licensed under the Apache License Version 2.0.
+See the LICENSE file in the repository for full license text.
+
+Feedback and Contributions
+==========================
+
+Your feedback and contributions are welcome! Please report issues or suggestions through the
+project's issue tracker or contribute directly to the repository.
diff --git a/index.rst b/index.rst
index 6422a728..ba12bc86 100644
--- a/index.rst
+++ b/index.rst
@@ -26,8 +26,9 @@ Overview
This repository provides a standardized setup for projects using **C++** or **Rust** and **Bazel** as a build system.
It integrates best practices for build, test, CI/CD and documentation.
+It also provides an example for the documentation of an module with all necessary artifacts for safety and security management, verification and release management.
It also provides an example of modeling architecture in Sphinx Needs in :doc:`/examples/docs/architecture_modeling_example`.
-It also provides the component architecture template snippets in :doc:`/score/component_example/docs/architecture/component_architecture_template`.
+It also provides the component architecture template snippets in :doc:`/score/component_example/docs/architecture/component_architecture`.
It also provides an example of documenting detailed design in :doc:`/score/component_example/docs/detailed_design/detailed_design_example`.
Module Layout
@@ -48,10 +49,16 @@ The module template includes the following top-level structure:
│ │ ├── safety_planning/ # Feature safety planning artifacts
│ │ ├── security_analysis/ # Feature security analysis artifacts [wp__feature_security_analysis]
│ │ └── security_planning/ # Feature security planning artifacts
- │ ├── manuals/ # Module manual, integration manual, table of assumptions of use,
- │ │ # safety manual [wp__module_safety_manual],
- │ │ # needs table of [wp__requirements_feat_aou]
- │ │ # security manual [wp__module_security_manual]
+ │ ├── manuals/ # Module manual, integration manual, table of assumptions of use
+ │ │ | # safety manual [wp__module_safety_manual],
+ │ │ | # needs table of [wp__requirements_feat_aou]
+ │ │ | # security manual [wp__module_security_manual]
+ │ │ │ # Additional optional user centric documentation (e.g. configuration guide,
+ │ │ │ # examples user guide, APIs & usage, performance analysis)
+ │ │ ├── config/ # Configuration guide (optional)
+ │ │ ├── examples/ # Examples user guide (optional)
+ │ │ ├── api_description/ # API detail description (optional)
+ │ │ └── performance/ # Performance analysis (optional)
│ ├── release/ # Module release note [wp__module_sw_release_note]
│ ├── safety_mgt/ # Module safety plan [wp__module_safety_plan],
│ │ # module safety package [wp__module_safety_package],
@@ -112,9 +119,15 @@ For identification of the single feature, the repository name or module name sho
│ ├── security_analysis/ # Feature security analysis artifacts [wp__feature_security_analysis]
│ ├── security_planning/ # Feature security planning artifacts
│ ├── manuals/ # Module manual, integration manual, table of assumptions of use,
- │ │ # safety manual [wp__module_safety_manual],
- │ │ # needs table of [wp__requirements_feat_aou]
- │ │ # security manual [wp__module_security_manual]
+ │ │ | # safety manual [wp__module_safety_manual],
+ │ │ | # needs table of [wp__requirements_feat_aou]
+ │ │ | # security manual [wp__module_security_manual]
+ │ │ | # Additional optional user centric documentation (e.g. configuration guide,
+ │ │ | # examples user guide, APIs & usage, performance analysis)
+ │ │ ├── config/ # Configuration guide (optional)
+ │ │ ├── examples/ # Examples user guide (optional)
+ │ │ ├── api_description/ # APIs detail description (optional)
+ │ │ └── performance/ # Performance analysis (optional)
│ ├── release/ # Module release note [wp__module_sw_release_note]
│ ├── safety_mgt/ # Module safety plan [wp__module_safety_plan],
│ │ # module safety package [wp__module_safety_package],
@@ -150,48 +163,75 @@ For identification of the single feature, the repository name or module name sho
├── project_config.bzl # Project metadata used by Bazel macros
└── README.md # Entry point of the repository
-Module / Feature Documentation
-------------------------------
+Module Documentation
+--------------------
+
+
+
+
+
+.. code-block:: rst
+
+ .. mod:: Module Name
+ :id: mod__module_name
+ :includes: comp__component_name_template
+
+
+ .. mod_view_sta:: Module Name Static View
+ :id: mod_view_sta__feature_name__module_name
+ :includes: comp__component_name_template
+
+ .. needarch::
+ :scale: 50
+ :align: center
+
+ {{ draw_module(need(), needs) }}
+
.. toctree::
:maxdepth: 1
- docs/features/index
docs/manuals/index
docs/release/release_note
+ docs/features/index
docs/safety_mgt/index
docs/security_mgt/index
docs/verification_report/module_verification_report
-Component documentation
--------------------------------
+
+Component Documentation
+-----------------------
+
+For documentation of individual components within this module:
.. toctree::
:maxdepth: 1
score/component_example/docs/index
- score/component_example/docs/architecture/index
- score/component_example/docs/detailed_design/index
- score/component_example/docs/requirements/index
- score/component_example/docs/safety_analysis/dfa
- score/component_example/docs/safety_analysis/fmea
- score/component_example/docs/safety_analysis/aou_requirements_template
- score/component_example/docs/component_classification
-
-Examples
---------
+
+Architecture Modeling Example
+-----------------------------
+
+An example of modeling architecture in Sphinx Needs can be found in
.. toctree::
:maxdepth: 1
- /examples/docs/architecture_modeling_example
+ examples/docs/architecture_modeling_example
+
+Please note, that is not a template for architecture documentation, but an example of how to use Sphinx Needs for architecture modeling. The architecture documentation of the components and features of the module should follow the provided templates and guidelines.
+.. _quick-start-building-testing:
-Quick Start
------------
+Quick Start - Building and Testing
+==================================
-To build the module:
+To build the entire module:
.. code-block:: bash
@@ -203,30 +243,28 @@ To run all tests:
bazel test //...
-To run Unit Tests:
+To run only unit tests:
.. code-block:: bash
bazel test //src/...
-To run Component / Feature Integration Tests:
+To run only component or feature integration tests:
.. code-block:: bash
bazel test //tests/...
-Module Configuration
---------------------
-
-The `project_config.bzl` file defines metadata used by Bazel macros.
-Example:
+Module Build Configuration
+--------------------------
-.. code-block:: python
+The ``project_config.bzl`` file at the root of the module defines metadata used by Bazel macros.
+This file controls build behavior and project-specific settings. It should follow the S-CORE definition.
+See `S-CORE user guide for project_config.bzl `_ for details.
- PROJECT_CONFIG = {
- "asil_level": "QM",
- "source_code": ["cpp", "rust"]
- }
+The configuration enables conditional build behavior:
-This enables conditional behavior (e.g., choosing `clang-tidy` for C++ or `clippy` for Rust).
+* **Language-specific tools**: For C++ code, tools like ``clang-tidy`` are used; for Rust code, ``clippy`` is used
+* **Safety level**: The ASIL level affects safety-related build settings and validation
+* **Source code languages**: The build system optimizes for the configured languages
diff --git a/score/component_example/docs/architecture/component_architecture.rst b/score/component_example/docs/architecture/component_architecture.rst
new file mode 100644
index 00000000..b3063346
--- /dev/null
+++ b/score/component_example/docs/architecture/component_architecture.rst
@@ -0,0 +1,142 @@
+..
+ # *******************************************************************************
+ # Copyright (c) 2026 Contributors to the Eclipse Foundation
+ #
+ # See the NOTICE file(s) distributed with this work for additional
+ # information regarding copyright ownership.
+ #
+ # This program and the accompanying materials are made available under the
+ # terms of the Apache License Version 2.0 which is available at
+ # https://www.apache.org/licenses/LICENSE-2.0
+ #
+ # SPDX-License-Identifier: Apache-2.0
+ # *******************************************************************************
+
+Component Architecture Documentation
+====================================
+
+.. document:: [Your Component Name] Architecture
+ :id: doc__mod_temp_component_name_architecture
+ :status: draft
+ :safety: ASIL_B
+ :security: NO
+ :realizes: wp__component_arch
+ :tags: template
+
+.. attention::
+ The above directive must be updated according to your needs.
+
+ - Modify ``Your Component Name`` to be your Component Name
+ - Modify ``id`` to be your Component Name in upper snake case preceded by ``doc__`` and followed by ``_architecture``
+ - Adjust ``status`` to be ``valid``
+ - Adjust ``safety`` and ``tags`` according to your needs
+
+
+Overview
+--------
+
+
+
+Requirements Linked to Component Architecture
+---------------------------------------------
+
+.. code-block:: none
+
+ .. needtable:: Overview of Component Requirements
+ :style: table
+ :columns: title;id
+ :filter: search("comp_arch_sta__archdes$", "fulfils_back")
+ :colwidths: 70,30
+
+Description
+-----------
+
+
+
+
+
+
+
+Rationale Behind Architecture Decomposition
+*******************************************
+
+Mandatory: A motivation for the decomposition or reason for not further splitting it into internal components.
+
+.. note:: Common decisions across components / cross cutting concepts is at the higher level.
+
+Static Architecture
+-------------------
+
+The components are designed to cover the expectations from the feature architecture
+(i.e. if already exists a definition it should be taken over and enriched).
+
+A component can optional also consist of lower level components to further structure the architecture. The component and its static views can also optionally use interfaces provided by other components.
+
+.. comp:: Component Name
+ :id: comp__mod_temp_component_name_template
+ :security: YES
+ :safety: ASIL_B
+ :status: valid
+ :consists_of: comp__mod_temp_archex_sub_component_1, comp__mod_temp_archex_sub_component_2, comp__mod_temp_archex_sub_component_3
+ :belongs_to: feat__mtef
+
+.. comp_arc_sta:: Component Name (Static View)
+ :id: comp_arc_sta__mod_temp_component_name__sv
+ :security: YES
+ :safety: ASIL_B
+ :status: valid
+ :belongs_to: comp__mod_temp_component_name_template
+ :fulfils: comp_req__mod_temp_component_name__some_title
+
+ .. needarch::
+ :scale: 50
+ :align: center
+
+ {{ draw_component(need(), needs) }}
+
+Dynamic Architecture
+--------------------
+
+.. comp_arc_dyn:: Dynamic View
+ :id: comp_arc_dyn__mod_temp_component_name__dv
+ :security: YES
+ :safety: ASIL_B
+ :status: valid
+ :belongs_to: comp__mod_temp_component_name_template
+ :fulfils: comp_req__mod_temp_component_name__some_title
+
+ Put here a sequence diagram
+
+Interfaces
+----------
+
+.. code-block:: rst
+
+ .. real_arc_int::
+ :id: real_arc_int____
+ :security:
+ :safety:
+ :fulfils:
+ :language: cpp
+
+Internal Components
+-------------------
+
+.. comp_arc_sta:: Component Name Static View
+ :id: comp_arc_sta__mod_temp_component_name__2
+ :status: valid
+ :safety: ASIL_B
+ :security: YES
+ :fulfils: comp_req__mod_temp_component_name__some_title
+ :belongs_to: comp__mod_temp_component_example_2
+
+ No architecture but detailed design
+
+.. note::
+ Architecture can be split into multiple files. At component level the public interfaces to be used by the user and tester to be shown.
+
+.. attention::
+ The above directives must be updated according to your component architecture.
+
+ - Replace the example content by the real content (according to :need:`gd_guidl__arch_design`)
+ - Set the status to valid and start the review/merge process
diff --git a/score/component_example/docs/architecture/component_architecture_template.rst b/score/component_example/docs/architecture/component_architecture_template.rst
deleted file mode 100644
index 419b4406..00000000
--- a/score/component_example/docs/architecture/component_architecture_template.rst
+++ /dev/null
@@ -1,124 +0,0 @@
-..
- # *******************************************************************************
- # Copyright (c) 2026 Contributors to the Eclipse Foundation
- #
- # See the NOTICE file(s) distributed with this work for additional
- # information regarding copyright ownership.
- #
- # This program and the accompanying materials are made available under the
- # terms of the Apache License Version 2.0 which is available at
- # https://www.apache.org/licenses/LICENSE-2.0
- #
- # SPDX-License-Identifier: Apache-2.0
- # *******************************************************************************
-
-Component Architecture Template
-===============================
-
-This page contains the component architecture template snippets that belong to the
-module template repository.
-
-Overview
---------
-
-Use these snippets as the starting point for documenting component architecture in
-the module template.
-
-Static Architecture
--------------------
-
-.. code-block:: rst
-
- .. comp:: Component Name
- :id: comp__mod_temp_component_name_template
- :security: YES
- :safety: ASIL_B
- :status: invalid
- :implements: logic_arc_int__feature_name__interface_name1
- :consists_of: comp__component_name_internal_1, comp__component_name_internal_2, comp__component_name_internal_3
- :belongs_to: feat__feature_name
-
- .. comp_arc_sta:: Component Name (Static View)
- :id: comp_arc_sta__mod_temp_component_name__sv
- :security: YES
- :safety: ASIL_B
- :status: invalid
- :belongs_to: comp__mod_temp_component_name_template
- :uses: logic_arc_int__feature_name__interface_name1
- :fulfils: comp_req__mod_temp_component_name__some_title
-
- .. needarch::
- :scale: 50
- :align: center
-
- {{ draw_component(need(), needs) }}
-
-Dynamic Architecture
---------------------
-
-.. code-block:: rst
-
- .. comp_arc_dyn:: Dynamic View
- :id: comp_arc_dyn__mod_temp_component_name__dv
- :security: YES
- :safety: ASIL_B
- :status: invalid
- :belongs_to: comp__mod_temp_component_name_template
- :fulfils: comp_req__mod_temp_component_name__some_title
-
- Put here a sequence diagram
-
-Component Interface
--------------------
-
-The rendered component-interface example is maintained here so the module template
-repository owns the live ``real_arc_int`` example.
-
-.. real_arc_int:: Component Interface 1
- :id: real_arc_int__mod_temp_component_name__if_1
- :status: valid
- :safety: ASIL_B
- :security: NO
- :language: cpp
-
- .. needarch::
- :scale: 50
- :align: center
-
- {{ draw_interface(need(), needs)}}
-
-Internal Components
--------------------
-
-.. code-block:: rst
-
- .. comp_arc_sta:: Component Name Static View
- :id: comp_arc_sta__mod_temp_component_name__2
- :status: invalid
- :safety: ASIL_B
- :security: YES
- :fulfils: comp_req__mod_temp_component_name__some_title
- :belongs_to: comp__mod_temp_component_name_template
-
- No architecture but detailed design
-
- .. comp:: Internal Component 1
- :id: comp__component_name_internal_1
- :status: invalid
- :safety: ASIL_B
- :security: YES
- :belongs_to: feat__feature_name
-
- .. comp:: Internal Component 2
- :id: comp__component_name_internal_2
- :status: invalid
- :safety: ASIL_B
- :security: YES
- :belongs_to: feat__feature_name
-
- .. comp:: Internal Component 3
- :id: comp__component_name_internal_3
- :status: invalid
- :safety: ASIL_B
- :security: YES
- :belongs_to: feat__feature_name
diff --git a/score/component_example/docs/architecture/index.rst b/score/component_example/docs/architecture/index.rst
index cd63b36d..3ea0100b 100644
--- a/score/component_example/docs/architecture/index.rst
+++ b/score/component_example/docs/architecture/index.rst
@@ -17,146 +17,7 @@
Component Architecture
======================
-.. document:: [Your Component Name] Architecture
- :id: doc__mod_temp_component_name_architecture
- :status: draft
- :safety: ASIL_B
- :security: NO
- :realizes: wp__component_arch
- :tags: template
-
-.. attention::
- The above directive must be updated according to your needs.
-
- - Modify ``Your Component Name`` to be your Component Name
- - Modify ``id`` to be your Component Name in upper snake case preceded by ``doc__`` and followed by ``_architecture``
- - Adjust ``status`` to be ``valid``
- - Adjust ``safety`` and ``tags`` according to your needs
-
-Overview
---------
-
-
-Requirements Linked to Component Architecture
----------------------------------------------
-
-.. code-block:: none
-
- .. needtable:: Overview of Component Requirements
- :style: table
- :columns: title;id
- :filter: search("comp_arch_sta__archdes$", "fulfils_back")
- :colwidths: 70,30
-
-Description
------------
-
-
-
-
-
-
-
-Rationale Behind Architecture Decomposition
-*******************************************
-
-Mandatory: A motivation for the decomposition or reason for not further splitting it into internal components.
-
-.. note:: Common decisions across components / cross cutting concepts is at the higher level.
-
-Static Architecture
--------------------
-
-The components are designed to cover the expectations from the feature architecture
-(i.e. if already exists a definition it should be taken over and enriched).
-
-A component can optional also consist of lower level components to further structure the architecture. The component and its static views can also optionally use interfaces provided by other components.
-
-.. comp:: Component Name
- :id: comp__mod_temp_component_name_template
- :security: YES
- :safety: ASIL_B
- :status: valid
- :consists_of: comp__mod_temp_archex_sub_component_1, comp__mod_temp_archex_sub_component_2, comp__mod_temp_archex_sub_component_3
- :belongs_to: feat__mtef
-
-.. comp_arc_sta:: Component Name (Static View)
- :id: comp_arc_sta__mod_temp_component_name__sv
- :security: YES
- :safety: ASIL_B
- :status: valid
- :belongs_to: comp__mod_temp_component_name_template
- :fulfils: comp_req__mod_temp_component_name__some_title
-
- .. needarch::
- :scale: 50
- :align: center
-
- {{ draw_component(need(), needs) }}
-
-Dynamic Architecture
---------------------
-
-.. comp_arc_dyn:: Dynamic View
- :id: comp_arc_dyn__mod_temp_component_name__dv
- :security: YES
- :safety: ASIL_B
- :status: valid
- :belongs_to: comp__mod_temp_component_name_template
- :fulfils: comp_req__mod_temp_component_name__some_title
-
- Put here a sequence diagram
-
-
-Interfaces
-----------
-
-.. code-block:: rst
-
- .. real_arc_int::
- :id: real_arc_int____
- :security:
- :safety:
- :fulfils:
- :language: cpp
-
-Internal Components
--------------------
-
-.. comp_arc_sta:: Component Name Static View
- :id: comp_arc_sta__mod_temp_component_name__2
- :status: valid
- :safety: ASIL_B
- :security: YES
- :fulfils: comp_req__mod_temp_component_name__some_title
- :belongs_to: comp__mod_temp_component_example_2
-
- No architecture but detailed design
-
-.. note::
- Architecture can be split into multiple files. At component level the public interfaces to be used by the user and tester to be shown.
-
-.. attention::
- The above directives must be updated according to your component architecture.
-
- - Replace the example content by the real content (according to :need:`gd_guidl__arch_design`)
- - Set the status to valid and start the review/merge process
-
-Component Architecture Template
--------------------------------
-
- A component architecture template is available to be used as a starting point for the documentation of the component architecture. It includes the main sections and example content to be adapted according to the real component architecture.
-
-.. toctree::
-
- component_architecture_template
-
-
-Architecture Checklist
-----------------------
-
-See following architecture inspection checklist for verification of the architecture.
-
.. toctree::
+ component_architecture
chklst_arc_inspection
diff --git a/score/component_example/docs/detailed_design/detailed_design_example.rst b/score/component_example/docs/detailed_design/detailed_design_example.rst
index 57c31468..b0020704 100644
--- a/score/component_example/docs/detailed_design/detailed_design_example.rst
+++ b/score/component_example/docs/detailed_design/detailed_design_example.rst
@@ -15,28 +15,78 @@
Example: Detailed Design
========================
+.. document:: [Your Component Name] Detailed Design
+ :id: doc__mod_temp_component_name_detailed_design
+ :status: draft
+ :safety: ASIL_B
+ :security: NO
+ :realizes: wp__sw_implementation
+ :tags: template
+
+.. attention::
+ The above directive must be updated according to your Component.
+
+ - Modify ``Your Component Name`` to be your Component Name
+ - Modify ``id`` to be your Component Name in upper snake case preceded by ``doc__`` and followed by ``_detailed_design``
+ - Adjust ``status`` to be ``valid``
+ - Adjust ``safety`` and ``tags`` according to your needs
+
+Detailed Design for Component:
+===============================================
+
Description
-----------
+| Design Decisions - For the documentation of the decision the :need:`gd_temp__change_decision_record` can be used.
+| Design Constraints
+
+Example:
+
- component is split into two units unit1 and unit2 based on single responsibility principle.
- unit2 is injected to unit1 one via dependency injection for testability.
+Rationale Behind Decomposition into Units
+******************************************
+| mandatory: a motivation for the decomposition into one or more units.
+
+.. note:: Reason for split into multiple units could be-
+ - Based on design principles like SOLID,DRY etc
+ - Based on design pattern's etc.
Static Diagrams for Unit Interactions
-------------------------------------
+A static view provides an overview of the units and their relationships using
+UML 2.0 notations (e.g. class diagrams, component diagrams). Use ``.. uml::``
+or ``.. image::`` directives to include the diagram.
+
.. uml:: dd_example_ex_sta.puml
Dynamic Diagrams for Unit Interactions (optional)
--------------------------------------------------
+A dynamic view illustrates how the units within a component interact over their
+interfaces to fulfill a specific use case or functionality. It is optional when the
+component's behaviour is straightforward and can be understood from the static view
+and interface documentation alone.
+
+Use standard UML behavioural diagrams (sequence diagrams, state machine diagrams)
+with ``.. uml::`` or ``.. image::`` directives.
+
.. uml:: dd_example_ex_dyn.puml
Units within the Component
--------------------------
-The units are defined in the source code. The relationship between a unit and the
-component is established implicitly through the file path.
+The relationship between a unit and its parent component is established implicitly
+through the file path. Each component has its own directory, and units residing
+within that directory belong to it. The unit's attributes and behaviour are documented
+in the source code itself. A separate static diagram per unit is not required.
+
+Interface documentation of a software unit is part of the source code (e.g. public
+API headers, trait definitions, or documented function signatures).
+
+Example:
- unit1: implements the main logic (see source code for details)
- unit2: injected into unit1 via dependency injection for testability
diff --git a/score/component_example/docs/detailed_design/index.rst b/score/component_example/docs/detailed_design/index.rst
index d980b371..ec980f73 100644
--- a/score/component_example/docs/detailed_design/index.rst
+++ b/score/component_example/docs/detailed_design/index.rst
@@ -20,69 +20,17 @@ Detailed Design
.. attention::
The detailed design document is optional and should be created if the design of the component is complex and cannot be easily understood from the architecture documentation and interface documentation alone.
+ But the inspection checklist for the implementation is mandatory.
-.. document:: [Your Component Name] Detailed Design
- :id: doc__mod_temp_component_name_detailed_design
- :status: draft
- :safety: ASIL_B
- :security: NO
- :realizes: wp__sw_implementation
- :tags: template
-
-.. attention::
- The above directive must be updated according to your Component.
-
- - Modify ``Your Component Name`` to be your Component Name
- - Modify ``id`` to be your Component Name in upper snake case preceded by ``doc__`` and followed by ``_detailed_design``
- - Adjust ``status`` to be ``valid``
- - Adjust ``safety`` and ``tags`` according to your needs
-
-Detailed Design for Component:
-===============================================
-
-Description
------------
-
-| Design Decisions - For the documentation of the decision the :need:`gd_temp__change_decision_record` can be used.
-| Design Constraints
-
-Rationale Behind Decomposition into Units
-******************************************
-| mandatory: a motivation for the decomposition into one or more units.
-
-.. note:: Reason for split into multiple units could be-
- - Based on design principles like SOLID,DRY etc
- - Based on design pattern's etc.
-
-Static Diagrams for Unit Interactions
--------------------------------------
-
-A static view provides an overview of the units and their relationships using
-UML 2.0 notations (e.g. class diagrams, component diagrams). Use ``.. uml::``
-or ``.. image::`` directives to include the diagram.
-
-Dynamic Diagrams for Unit Interactions (optional)
---------------------------------------------------
-
-A dynamic view illustrates how the units within a component interact over their
-interfaces to fulfill a specific use case or functionality. It is optional when the
-component's behaviour is straightforward and can be understood from the static view
-and interface documentation alone.
-
-Use standard UML behavioural diagrams (sequence diagrams, state machine diagrams)
-with ``.. uml::`` or ``.. image::`` directives.
+Detail design example
+---------------------
-Units within the Component
---------------------------
+An example of documenting detailed design can be found in:
-The relationship between a unit and its parent component is established implicitly
-through the file path. Each component has its own directory, and units residing
-within that directory belong to it. The unit's attributes and behaviour are documented
-in the source code itself. A separate static diagram per unit is not required.
+ .. toctree::
-Interface documentation of a software unit is part of the source code (e.g. public
-API headers, trait definitions, or documented function signatures).
+ detailed_design_example
Inspection Checklist
--------------------
@@ -92,13 +40,3 @@ The checklist for verification of the detailed design inspection can be found he
.. toctree::
chklst_impl_inspection
-
-
-Detail design example
----------------------
-
-An example of documenting detailed design can be found in:
-
- .. toctree::
-
- detailed_design_example
diff --git a/score/component_example/docs/index.rst b/score/component_example/docs/index.rst
index a4ad7250..2902f98b 100644
--- a/score/component_example/docs/index.rst
+++ b/score/component_example/docs/index.rst
@@ -27,8 +27,19 @@
:realizes: wp__cmpt_request
:tags: template
+.. code-block:: rst
+
+ .. comp:: Component Name
+ :id: comp__mod_temp_component_name_template
+ :security: YES
+ :safety: ASIL_B
+ :status: invalid
+ :implements: logic_arc_int__feature_name__interface_name1
+ :consists_of: comp__component_name_internal_1, comp__component_name_internal_2, comp__component_name_internal_3
+ :belongs_to: feat__feature_name
+
.. attention::
- The above directive must be updated according to your Component.
+ The above directives must be updated according to your Component.
- Modify ``document`` to be your Component Name
- Modify ``id`` to be your Component Name in upper snake case preceded by ``doc__``
@@ -56,7 +67,6 @@ Specification
[Describe the requirements, architecture of any component.] or
-
Backwards Compatibility
=======================
@@ -149,3 +159,20 @@ Footnotes
=========
[A collection of footnotes cited in the CR, and a place to list non-inline hyperlink targets.]
+
+
+Further Documentation of the component can be found in the following sections:
+
+Component Detail Information
+============================
+
+.. toctree::
+ :maxdepth: 1
+
+ architecture/index
+ detailed_design/index
+ requirements/index
+ safety_analysis/dfa
+ safety_analysis/fmea
+ safety_analysis/aou_requirements_template
+ component_classification
diff --git a/score/component_example/docs/requirements/index.rst b/score/component_example/docs/requirements/index.rst
index 17785ce4..9eea1fc7 100644
--- a/score/component_example/docs/requirements/index.rst
+++ b/score/component_example/docs/requirements/index.rst
@@ -15,97 +15,7 @@
Requirements
############
-.. document:: [Your Component Name] Requirements
- :id: doc__mod_temp_component_name_requirements
- :status: draft
- :safety: ASIL_B
- :security: YES
- :realizes: wp__requirements_comp
- :tags: template
-
-.. attention::
- The above directive must be updated according to your Component.
-
- - Modify ``Your Component Name`` to be your Component Name
- - Modify ``id`` to be your Component Name in upper snake case preceded by ``doc__`` and followed by ``_requirements``
- - Adjust ``status`` to be ``valid``
- - Adjust ``safety``, ``security`` and ``tags`` according to your needs
-
-
-===================================================================
-
-Component Requirements
-----------------------
-
-.. comp_req:: Some Title
- :id: comp_req__mod_temp_component_name__some_title
- :reqtype: Process
- :security: YES
- :safety: ASIL_B
- :derived_from: feat_req__example_feature__example_req
- :status: valid
- :satisfied_by: comp__mod_temp_component_name_template
-
- The Component shall do xyz to another component to bring it to this condition at this time
-
- Note: (optional, not to be verified)
-
-.. attention::
- The above directive must be updated according to your component requirements.
-
- - Replace the example content by the real content for your first requirement
- - Set ``derived_from`` with links to Feature requirements
- - Set ``satisfied_by`` with a link to the right Component id
- - Set ``safety`` and ``security`` to the right value
- - Set the status to valid and start the review/merge process
- - Add other needed requirements for your component
-
-Assumption of Use Requirements
-------------------------------
-
-.. aou_req:: Next Title
- :id: aou_req__mod_temp_component_name__next_title
- :reqtype: Process
- :security: YES
- :safety: ASIL_B
- :status: valid
-
- The Component User shall do xyz to use the component safely/securely
-
-Environmental Requirements
---------------------------
-
-.. aou_req:: Another Title
- :id: aou_req__mod_temp_component_name__another
- :reqtype: Process
- :security: YES
- :safety: ASIL_B
- :status: invalid
- :tags: environment
-
- The Component shall only be used in a xyz environment to ensure its proper functioning.
-
-Hints
------
-
-.. attention::
- The above directives must be updated according to your feature requirements.
-
- - Replace the example content by the real content for your first requirement (according to :need:`gd_guidl__req_engineering`)
- - Set ``safety`` and ``security`` to the right value (ASIL B/QM; YES/NO)
- - Set ``reqtype`` with a link to the right value ()
- - Add other needed requirements for your feature
- - Set ``status`` to ``valid`` and start the review/merge process
-
-.. needextend:: is_external == False and "component_name" in id
- :+tags: component_name
-
-Requirements checklist
-----------------------
-
-See following requirements inspection checklist for verification of the requirements.
-
.. toctree::
- :hidden:
+ requirements
chklst_req_inspection
diff --git a/score/component_example/docs/requirements/requirements.rst b/score/component_example/docs/requirements/requirements.rst
new file mode 100644
index 00000000..521ba1c3
--- /dev/null
+++ b/score/component_example/docs/requirements/requirements.rst
@@ -0,0 +1,101 @@
+..
+ # *******************************************************************************
+ # Copyright (c) 2026 Contributors to the Eclipse Foundation
+ #
+ # See the NOTICE file(s) distributed with this work for additional
+ # information regarding copyright ownership.
+ #
+ # This program and the accompanying materials are made available under the
+ # terms of the Apache License Version 2.0 which is available at
+ # https://www.apache.org/licenses/LICENSE-2.0
+ #
+ # SPDX-License-Identifier: Apache-2.0
+ # *******************************************************************************
+
+Component Requirements
+#############################
+
+.. document:: [Your Component Name] Requirements
+ :id: doc__mod_temp_component_name_requirements
+ :status: draft
+ :safety: ASIL_B
+ :security: YES
+ :realizes: wp__requirements_comp[version==1]
+ :tags: template
+
+.. attention::
+ The above directive must be updated according to your Component.
+
+ - Modify ``Your Component Name`` to be your Component Name
+ - Modify ``id`` to be your Component Name in upper snake case preceded by ``doc__`` and followed by ``_requirements``
+ - Adjust ``status`` to be ``valid``
+ - Adjust ``safety``, ``security`` and ``tags`` according to your needs
+
+
+===================================================================
+
+Functional Requirements
+-----------------------
+
+.. comp_req:: Some Title
+ :id: comp_req__mod_temp_component_name__some_title
+ :reqtype: Process
+ :security: YES
+ :safety: ASIL_B
+ :derived_from: feat_req__example_feature__example_req
+ :status: valid
+ :satisfied_by: comp__mod_temp_component_name_template
+
+ The Component shall do xyz to another component to bring it to this condition at this time
+
+ Note: (optional, not to be verified)
+
+.. attention::
+ The above directive must be updated according to your component requirements.
+
+ - Replace the example content by the real content for your first requirement
+ - Set ``derived_from`` with links to Feature requirements
+ - Set ``satisfied_by`` with a link to the right Component id
+ - Set ``safety`` and ``security`` to the right value
+ - Set the status to valid and start the review/merge process
+ - Add other needed requirements for your component
+
+Assumption of Use Requirements
+------------------------------
+
+.. aou_req:: Next Title
+ :id: aou_req__mod_temp_component_name__next_title
+ :reqtype: Process
+ :security: YES
+ :safety: ASIL_B
+ :status: valid
+
+ The Component User shall do xyz to use the component safely/securely
+
+Environmental Requirements
+--------------------------
+
+.. aou_req:: Another Title
+ :id: aou_req__mod_temp_component_name__another
+ :reqtype: Process
+ :security: YES
+ :safety: ASIL_B
+ :status: invalid
+ :tags: environment
+
+ The Component shall only be used in a xyz environment to ensure its proper functioning.
+
+Hints
+-----
+
+.. attention::
+ The above directives must be updated according to your feature requirements.
+
+ - Replace the example content by the real content for your first requirement (according to :need:`gd_guidl__req_engineering`)
+ - Set ``safety`` and ``security`` to the right value (ASIL B/QM; YES/NO)
+ - Set ``reqtype`` with a link to the right value ()
+ - Add other needed requirements for your feature
+ - Set ``status`` to ``valid`` and start the review/merge process
+
+.. needextend:: is_external == False and "component_name" in id
+ :+tags: component_name