Skip to content

docs: reduce custom code#1173

Draft
Ron (rjaegers) wants to merge 8 commits intomainfrom
docs/reduce-custom-code
Draft

docs: reduce custom code#1173
Ron (rjaegers) wants to merge 8 commits intomainfrom
docs/reduce-custom-code

Conversation

@rjaegers
Copy link
Member

@rjaegers Ron (rjaegers) commented Feb 28, 2026

🚀 Hey, I have created a Pull Request

Description of changes

✔️ Checklist

  • I have followed the contribution guidelines for this repository
  • I have added tests for new behavior, and have not broken any existing tests
  • I have added or updated relevant documentation
  • I have verified that all added components are accounted for in the SBOM

Copilot AI review requested due to automatic review settings February 28, 2026 13:35
@rjaegers Ron (rjaegers) requested a review from a team as a code owner February 28, 2026 13:35
@rjaegers Ron (rjaegers) marked this pull request as draft February 28, 2026 13:35
@github-actions
Copy link
Contributor

github-actions bot commented Feb 28, 2026

📦 Container Size Analysis

Note

Comparing ghcr.io/philips-software/amp-devcontainer-base:edgeghcr.io/philips-software/amp-devcontainer-base:pr-1173

📈 Size Comparison Table

OS/Platform Previous Current Change Trend
linux/amd64 175.16 MB 175.16 MB +54 B (+0%) 🔼
linux/arm64 167.63 MB 167.63 MB 209 B (0%) 🔽

@github-actions
Copy link
Contributor

github-actions bot commented Feb 28, 2026

MegaLinter analysis: Error

Descriptor Linter Files Fixed Errors Warnings Elapsed time
✅ ACTION actionlint 23 0 0 0.67s
✅ DOCKERFILE hadolint 3 0 0 0.8s
❌ GHERKIN gherkin-lint 6 1 0 2.98s
✅ JSON npm-package-json-lint yes no no 0.54s
✅ JSON prettier 21 4 0 0 0.71s
✅ JSON v8r 21 0 0 7.07s
✅ MARKDOWN markdownlint 12 0 0 0 1.1s
✅ MARKDOWN markdown-table-formatter 12 0 0 0 0.29s
✅ REPOSITORY checkov yes no no 18.81s
✅ REPOSITORY gitleaks yes no no 0.6s
✅ REPOSITORY git_diff yes no no 0.01s
✅ REPOSITORY grype yes no no 31.25s
✅ REPOSITORY secretlint yes no no 0.95s
✅ REPOSITORY syft yes no no 1.91s
✅ REPOSITORY trivy yes no no 8.2s
✅ REPOSITORY trivy-sbom yes no no 0.24s
✅ REPOSITORY trufflehog yes no no 2.21s
⚠️ SPELL lychee 83 2 0 11.9s
✅ YAML prettier 31 0 0 0 1.02s
✅ YAML v8r 31 0 0 8.87s
✅ YAML yamllint 31 0 0 0.84s

Detailed Issues

❌ GHERKIN / gherkin-lint - 1 error
Results of gherkin-lint linter (version 0.0.0)
See documentation on https://megalinter.io/9.3.0/descriptors/gherkin_gherkin_lint/
-----------------------------------------------

❌ [ERROR] test/cpp/features/compatibility.feature
    test/cpp/features/compatibility.feature
      11    (11:5): expected: #EOF, #Comment, #BackgroundLine, #TagLine, #ScenarioLine, #RuleLine, #Empty, got 'using { aspect is compatibility }'                                                           unexpected-error
      16    (16:7): expected: #EOF, #Comment, #BackgroundLine, #TagLine, #ScenarioLine, #RuleLine, #Empty, got 'req-compat-0001 is requirement {'                                                            unexpected-error
      17    (17:9): expected: #EOF, #Comment, #BackgroundLine, #TagLine, #ScenarioLine, #RuleLine, #Empty, got 'custom:title is "[@-LINE]"'                                                                  unexpected-error
      18    (18:9): expected: #EOF, #Comment, #BackgroundLine, #TagLine, #ScenarioLine, #RuleLine, #Empty, got 'description is'                                                                              unexpected-error
      3     (3:5): expected: #EOF, #Comment, #BackgroundLine, #TagLine, #ScenarioLine, #RuleLine, #Empty, got 'compatibility is aspect {'                                                                    unexpected-error
      4     (4:7): expected: #EOF, #Comment, #BackgroundLine, #TagLine, #ScenarioLine, #RuleLine, #Empty, got 'custom:title is "[@-LINE]"'                                                                   unexpected-error
      5     (5:7): expected: #EOF, #Comment, #BackgroundLine, #TagLine, #ScenarioLine, #RuleLine, #Empty, got 'description is'                                                                               unexpected-error
      6     (6:7): expected: #EOF, #Comment, #BackgroundLine, #TagLine, #ScenarioLine, #RuleLine, #Empty, got '"As a software craftsperson,'                                                                 unexpected-error
      7     (7:8): expected: #EOF, #Comment, #BackgroundLine, #TagLine, #ScenarioLine, #RuleLine, #Empty, got 'to ensure that my development environment works well with a variety of tools and systems,'    unexpected-error
      8     (8:8): expected: #EOF, #Comment, #BackgroundLine, #TagLine, #ScenarioLine, #RuleLine, #Empty, got 'I want my development environment to be compatible with commonly used tools and systems."'    unexpected-error
      9     (9:5): expected: #EOF, #Comment, #BackgroundLine, #TagLine, #ScenarioLine, #RuleLine, #Empty, got '}'                                                                                            unexpected-error

✅ [SUCCESS] test/cpp/features/compilation.feature
✅ [SUCCESS] test/cpp/features/debugging.feature
✅ [SUCCESS] test/cpp/features/maintainability.feature
✅ [SUCCESS] test/cpp/features/security.feature
✅ [SUCCESS] test/cpp/features/static-dynamic-analysis.feature
⚠️ SPELL / lychee - 2 errors
[ERROR] https://www.contributor-covenant.org/version/2/0/code_of_conduct.html | Network error: error sending request for url (https://www.contributor-covenant.org/version/2/0/code_of_conduct.html) Maybe a certificate error?
[403] https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads | Network error: Forbidden
[IGNORED] docker://pandoc/extra:3.9.0.0-ubuntu@sha256:72afa9c8d3300e5f10c9c4330e101725687f2179bffd912fb859c6d2ae85de62 | Unsupported: Error creating request client: builder error for url (docker://pandoc/extra:3.9.0.0-ubuntu@sha256:72afa9c8d3300e5f10c9c4330e101725687f2179bffd912fb859c6d2ae85de62)
[IGNORED] https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/philips-software/amp-devcontainer | Unsupported: Error creating request client: builder error for url (vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/philips-software/amp-devcontainer)
📝 Summary
---------------------
🔍 Total..........126
✅ Successful.....122
⏳ Timeouts.........0
🔀 Redirected.......0
👻 Excluded.........0
❓ Unknown..........0
🚫 Errors...........2

Errors in .github/CODE_OF_CONDUCT.md
[ERROR] https://www.contributor-covenant.org/version/2/0/code_of_conduct.html | Network error: error sending request for url (https://www.contributor-covenant.org/version/2/0/code_of_conduct.html) Maybe a certificate error?

Errors in .github/TOOL_VERSION_ISSUE_TEMPLATE.md
[403] https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads | Network error: Forbidden

See detailed reports in MegaLinter artifacts

Your project could benefit from a custom flavor, which would allow you to run only the linters you need, and thus improve runtime performances. (Skip this info by defining FLAVOR_SUGGESTIONS: false)

  • Documentation: Custom Flavors
  • Command: npx mega-linter-runner@9.3.0 --custom-flavor-setup --custom-flavor-linters ACTION_ACTIONLINT,DOCKERFILE_HADOLINT,GHERKIN_GHERKIN_LINT,JSON_V8R,JSON_PRETTIER,JSON_NPM_PACKAGE_JSON_LINT,MARKDOWN_MARKDOWNLINT,MARKDOWN_MARKDOWN_TABLE_FORMATTER,REPOSITORY_CHECKOV,REPOSITORY_GIT_DIFF,REPOSITORY_GITLEAKS,REPOSITORY_GRYPE,REPOSITORY_SECRETLINT,REPOSITORY_SYFT,REPOSITORY_TRIVY,REPOSITORY_TRIVY_SBOM,REPOSITORY_TRUFFLEHOG,SPELL_LYCHEE,YAML_PRETTIER,YAML_YAMLLINT,YAML_V8R

MegaLinter is graciously provided by OX Security

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the documentation generation pipeline to rely more directly on SBDL tooling (instead of custom Python conversion), embedding SBDL model content alongside existing Gherkin feature files.

Changes:

  • Embed SBDL aspect/requirement declarations into compatibility.feature using @sbdl-begin / @sbdl-end blocks.
  • Update the SRS Jinja template to render aspects and their referenced requirements from the SBDL model.
  • Remove the custom Gherkin→SBDL Python conversion scripts and update the reusable document-generation workflow to compile via sbdl -m compile.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
test/cpp/features/compatibility.feature Adds embedded SBDL model blocks for compatibility requirements.
docs/templates/software-requirements-specification.md.j2 Adjusts template logic to render aspects + requirements from the compiled SBDL model.
docs/support/gherkin_sbdl_converter.py Removes custom converter implementation.
docs/support/gherkin_mapping_config.py Removes custom mapping configuration.
docs/support/gherkin-to-sbdl.py Removes CLI wrapper for the custom converter.
.github/workflows/wc-document-generation.yml Switches to sbdl -m compile and updates dependencies/artifacts for doc generation.

description is
"amp-devcontainer *SHALL* be compatible with both the x86-64 (AMD64) *and* AArch64 (ARM64) host architectures."
remark is
"Supporting both x86-64 and AArch64 has several advantages:\n\n- Increasing useability on a wide range of host machines, from PC hardware using the x86-64 architecture to Apple Silicon using the AArch64 architecture\n- Unlocking the power efficiency of the AArch64 architecture, potentially reducing energy consumption and cost for metered ci-systems"
Copy link

Copilot AI Feb 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Typo in the requirement remark text: "useability" should be "usability".

Suggested change
"Supporting both x86-64 and AArch64 has several advantages:\n\n- Increasing useability on a wide range of host machines, from PC hardware using the x86-64 architecture to Apple Silicon using the AArch64 architecture\n- Unlocking the power efficiency of the AArch64 architecture, potentially reducing energy consumption and cost for metered ci-systems"
"Supporting both x86-64 and AArch64 has several advantages:\n\n- Increasing usability on a wide range of host machines, from PC hardware using the x86-64 architecture to Apple Silicon using the AArch64 architecture\n- Unlocking the power efficiency of the AArch64 architecture, potentially reducing energy consumption and cost for metered ci-systems"

Copilot uses AI. Check for mistakes.
@github-actions
Copy link
Contributor

github-actions bot commented Feb 28, 2026

📦 Container Size Analysis

Note

Comparing ghcr.io/philips-software/amp-devcontainer-rust:edgeghcr.io/philips-software/amp-devcontainer-rust:pr-1173

📈 Size Comparison Table

OS/Platform Previous Current Change Trend
linux/amd64 555.57 MB 555.57 MB 49 B (0%) 🔽
linux/arm64 509.75 MB 509.75 MB 225 B (0%) 🔽

@github-actions
Copy link
Contributor

github-actions bot commented Feb 28, 2026

📦 Container Size Analysis

Note

Comparing ghcr.io/philips-software/amp-devcontainer-cpp:edgeghcr.io/philips-software/amp-devcontainer-cpp:pr-1173

📈 Size Comparison Table

OS/Platform Previous Current Change Trend
linux/amd64 696.86 MB 696.86 MB +902 B (+0%) 🔼
linux/arm64 677.67 MB 677.67 MB +17 B (+0%) 🔼

@github-actions
Copy link
Contributor

github-actions bot commented Feb 28, 2026

Test Results

 13 files  ±0   13 suites  ±0   19m 48s ⏱️ -12s
 33 tests ±0   33 ✅ ±0  0 💤 ±0  0 ❌ ±0 
137 runs  ±0  137 ✅ ±0  0 💤 ±0  0 ❌ ±0 

Results for commit 29f74fa. ± Comparison against base commit 02927aa.

♻️ This comment has been updated with latest results.

@sonarqubecloud
Copy link

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants