Skip to content

feat: platform_verification_report template - #839

Merged
AlexanderLanin merged 2 commits into
mainfrom
feat/split-platform-verification-report
Sep 22, 2026
Merged

AlexanderLanin merged 2 commits into
mainfrom
feat/split-platform-verification-report

Conversation

@antonkri

@antonkri antonkri commented Sep 18, 2026

Copy link
Copy Markdown
Contributor

Why

module_verification_report currently mixes two different scopes in one report:

  • module-scoped Components (the report's own name/purpose)
  • platform-scoped Features, reached transitively through the module's components

This makes the module report noisy for anything that cares only about its own components, and there was no way to get an aggregated, platform-wide view of all Features in one place.

What changed

  • src/needs_templates/module_verification_report.need: removed the Feature-loop section (Requirements/Architecture/Inspection Statistics per Feature reached via belongs_to). The report now starts at Components and only covers the module's own components, as its name implies.
  • src/needs_templates/platform_verification_report.need (new): the feature-scoped counterpart. Instead of resolving Features through one module's component graph, it collects every Feature in the current build via the existing needs_of_type("feat") render-context helper, and renders the same Requirements/Architecture/Inspection statistics per Feature that were removed from the module report (plus a Feature Overview table, analogous to the module report's Component Overview).

Verification

  • Rendered both templates standalone with minijinja (the engine sphinx_needs actually uses for .need templates) against a small fake Need graph (2 features across 2 components/1 module) to confirm they render without errors and produce structurally correct RST (heading underline lengths, macro expansion, table filters).
  • Exercised via reference_integration's --override_module=score_docs_as_code=<local checkout> to confirm the module resolves and the docs() macro picks up the templates end-to-end (bazel build //:docs succeeds).
  • A full bazel run //:docs Sphinx render against the whole reference_integration graph was not completed in this environment due to devcontainer memory limits (unrelated to the template change); would appreciate a CI/reviewer run of the reference_integration docs build against this branch to confirm the final rendered pages.

Follow-up (not in this PR)

  • reference_integration's docs/verification_report/platform_verification_report.rst was updated in that repo to use :post_template: platform_verification_report instead of its previous hand-written content, to actually consume this new template.
  • Scoping these reports to a release milestone (report_version/valid_from) is split out into feat: scope verification reports to a report_version via valid_from #843, stacked on this branch.

@github-actions

Copy link
Copy Markdown
Contributor

Documentation preview for this pull request is available at:
pr-839: https://eclipse-score.github.io/docs-as-code/pr-839/

@antonkri

Copy link
Copy Markdown
Contributor Author

@MaximilianSoerenPollak , @AlexanderLanin please review and ideally approve ;-)

This comment was marked as outdated.

@AlexanderLanin

Copy link
Copy Markdown
Member

Thanks a lot for putting this together — this is a substantial and useful change!
One thought for reviewability: would you be open to splitting it into two PRs? The first could focus on separating the module- and platform-scoped reports, and the second could introduce the  report_version  filtering. The existing commits already seem to map quite naturally to those two pieces, so hopefully this would mostly be a matter of rearranging the work rather than redoing it.
I think that would make both changes easier to review and reduce the risk of unintentionally mixing separate concerns.


We'll then somehow split the review between .py code by docs-as-code team, and .need code by process team.

@antonkri
antonkri force-pushed the feat/split-platform-verification-report branch from 2e26aec to 4a2ba64 Compare September 21, 2026 06:55
@antonkri
antonkri force-pushed the feat/split-platform-verification-report branch from 4a2ba64 to 11e4c89 Compare September 21, 2026 07:01
@antonkri

Copy link
Copy Markdown
Contributor Author

@AlexanderLanin done, see #843

module_verification_report previously rendered both the module's own
components AND every Feature reachable from those components, mixing
module-scoped and platform-scoped statistics into a single report.

- module_verification_report.need: drop the feature-loop section
  (Requirements/Architecture/Inspection Statistics per Feature). The
  report now covers Components only, as its name implies.
- platform_verification_report.need (new): the feature-scoped
  counterpart, listing every Feature in the current build (via the
  existing needs_of_type("feat") helper) with the same statistics that
  were removed from the module report.
@AlexanderLanin

Copy link
Copy Markdown
Member

@pahmann @masc2023 @aschemmel-tech @PandaeDo @RolandJentschETAS we haven't set up codeowners yet, but in process meeting we discussed that we should apply the same codeowners as module template for the templates here.

@antonkri

Copy link
Copy Markdown
Contributor Author

@AlexanderLanin as Roland has approved it, could you please approve this as well?

@MaximilianSoerenPollak

Copy link
Copy Markdown
Contributor

@antonkri @RolandJentschETAS question here.

The Platform scoped report.
At which need or document should this template be used?

@RolandJentschETAS

Copy link
Copy Markdown
Contributor

@AlexanderLanin AlexanderLanin left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We need to try that out etc and adapt our tooling. But I'll merge this as-is now as it's an improvement (over having nothing), and we have way too many open PRs.

(Once tests are green)

@AlexanderLanin AlexanderLanin changed the title feat: split platform-scoped features out of module_verification_report feat: platform_verification_report template Sep 22, 2026
@AlexanderLanin
AlexanderLanin merged commit ddc90bb into main Sep 22, 2026
23 of 25 checks passed
@AlexanderLanin
AlexanderLanin deleted the feat/split-platform-verification-report branch September 22, 2026 09:44
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.

5 participants