Skip to content

feat: add optional 'maturity' attribute to mod need type - #838

Merged
antonkri merged 3 commits into
mainfrom
feature/comp-maturity-attribute
Sep 18, 2026
Merged

antonkri merged 3 commits into
mainfrom
feature/comp-maturity-attribute

Conversation

@antonkri

@antonkri antonkri commented Sep 17, 2026

Copy link
Copy Markdown
Contributor

Adds an optional 'maturity' option (preview/experimental/release) to the 'comp' need type in metamodel.yaml, plus regression tests covering valid and invalid values.

Decision Record: https://github.com/eclipse-score/score/blob/main/docs/design_decisions/DR-003-strat.md

📌 Description

🚨 Impact Analysis

  • This change does not violate any tool requirements and is covered by existing tool requirements
  • This change does not violate any design decisions
  • Otherwise I have created a ticket for new tool qualification

✅ Checklist

  • Added/updated documentation for new or changed features
  • Added/updated tests to cover the changes
  • Followed project coding standards and guidelines

Adds an optional 'maturity' option (preview/experimental/release) to
the 'comp' need type in metamodel.yaml, plus regression tests
covering valid and invalid values.
The optional 'maturity' attribute added to the 'comp' need type
introduces a new field in the generated sphinx-needs schema. Update
the checked-in golden needs.json/needs_local.json files accordingly.
@antonkri
antonkri force-pushed the feature/comp-maturity-attribute branch from f9ca91a to d563fc5 Compare September 18, 2026 07:04
@github-actions

Copy link
Copy Markdown
Contributor

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

@antonkri

Copy link
Copy Markdown
Contributor Author

@MaximilianSoerenPollak , @AlexanderLanin please review/approve

@MaximilianSoerenPollak

Copy link
Copy Markdown
Contributor

@MaximilianSoerenPollak , @AlexanderLanin please review/approve

This change is only for components is this correct?
Out of the DR I can't see that, but then again I wasn't in the meetings where this was discussed so I might miss context.

If it's only for components then it's fine by me.

@antonkri

Copy link
Copy Markdown
Contributor Author

@MaximilianSoerenPollak , @AlexanderLanin please review/approve

This change is only for components is this correct? Out of the DR I can't see that, but then again I wasn't in the meetings where this was discussed so I might miss context.

If it's only for components then it's fine by me.

@MaximilianSoerenPollak , you are right, should be per mod:. Will adapt it asap.

@AlexanderLanin

Copy link
Copy Markdown
Member

what do we do for traceability? Tool requirement without parent for now?

@MaximilianSoerenPollak

Copy link
Copy Markdown
Contributor

what do we do for traceability? Tool requirement without parent for now?

That would make sense probably.

@antonkri

Copy link
Copy Markdown
Contributor Author

what do we do for traceability? Tool requirement without parent for now?

That would make sense probably.

@MaximilianSoerenPollak done, now the maturity is specified per module. Do I need to specify any requirements? If yes, where?

@AlexanderLanin
AlexanderLanin requested a balanced review from Copilot September 18, 2026 14:50
@antonkri
antonkri merged commit e72a76e into main Sep 18, 2026
26 checks passed
@antonkri
antonkri deleted the feature/comp-maturity-attribute branch September 18, 2026 14:53

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟡 Changes recommended

The implementation targets modules while the PR advertises component support, and its optionality conflicts with the linked decision record.

Get a fresh assessment by requesting another Copilot review.

Pull request overview

Adds maturity classification validation to the metamodel and updates regression fixtures.

Changes:

  • Allows preview, experimental, or release maturity values.
  • Adds validation cases and refreshes generated JSON expectations.
File summaries
File Description
src/tests/docs_bzl/scenarios/subdirectory_bundle/producer/_expected/needs_json/needs.json Updates producer snapshot.
src/tests/docs_bzl/scenarios/subdirectory_bundle/consumer/_expected/needs_json/needs.json Updates consumer snapshot.
src/tests/docs_bzl/scenarios/reference_integration/score_platform/_expected/needs_json/needs.json Updates platform snapshot.
src/tests/docs_bzl/scenarios/reference_integration/modern_module/docs/components/unlinked_component/_expected/needs_local.json Updates local modern-module snapshot.
src/tests/docs_bzl/scenarios/reference_integration/modern_module/_expected/needs_json/needs.json Updates modern-module snapshot.
src/tests/docs_bzl/scenarios/reference_integration/legacy_module/docs/components/component/_expected/needs_local.json Updates local legacy-module snapshot.
src/tests/docs_bzl/scenarios/reference_integration/legacy_module/_expected/needs_json/needs.json Updates legacy-module snapshot.
src/tests/docs_bzl/scenarios/reference_integration/_expected/needs_local.json Updates reference snapshot.
src/tests/docs_bzl/scenarios/nested_bundles/_expected/needs_json/needs.json Updates nested-bundle snapshot.
src/tests/docs_bzl/scenarios/data_files_runfiles/_expected/needs_json/needs.json Updates runfiles snapshot.
src/tests/docs_bzl/scenarios/data_files_runfiles/_expected/isolated_source_bundle_needs/needs.json Updates isolated-bundle snapshot.
src/tests/docs_bzl/scenarios/data_files_runfiles/_expected/data_bundle_needs/needs.json Updates data-bundle snapshot.
src/tests/docs_bzl/scenarios/basic_docs/_expected/needs_json/needs.json Updates basic-docs snapshot.
src/extensions/score_metamodel/tests/rst/options/test_options_options.rst Adds valid and invalid maturity cases.
src/extensions/score_metamodel/metamodel.yaml Defines the accepted maturity values.
Review details
  • Files reviewed: 15/15 changed files
  • Comments generated: 1
  • Review effort level: Balanced

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

safety: ^(QM|ASIL_B)$
# req-Id: tool_req__docs_common_attr_status
status: ^(valid|invalid)$
maturity: ^(preview|experimental|release)$
@AlexanderLanin AlexanderLanin changed the title feat: add optional 'maturity' attribute to comp need type feat: add optional 'maturity' attribute to mod need type Sep 18, 2026
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