Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions docs/internals/requirements/requirements.rst
Original file line number Diff line number Diff line change
Expand Up @@ -545,6 +545,18 @@ Versioning
.. note::
Certain tool requirements do not have a matching process requirement.

.. tool_req:: Enables needs linking via covers attribute (Requirements to AoU)
:id: tool_req__docs_req_link_covers_aou
:tags: Requirements
:implemented: YES
:version: 1
:satisfies: gd_req__req_linkage_aou
:parent_covered: YES
:status: valid

Docs-as-Code shall support the ``covers`` link type for linking requirements to
Assumptions of Use (AoU) according to :need:`gd_req__req_linkage_aou`.

.. tool_req:: Safety: enforce safe linking
:id: tool_req__docs_common_attr_safety_link_check
:tags: Common Attributes
Expand Down
5 changes: 5 additions & 0 deletions src/extensions/score_metamodel/metamodel.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -955,6 +955,11 @@ needs_extra_links:
incoming: fulfilled by
outgoing: fulfils

# req-Id: gd_req__req_linkage_aou
covers:
incoming: covered by
outgoing: covers

implements:
incoming: implemented by
outgoing: implements
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
..
# *******************************************************************************
# 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
# *******************************************************************************

#CHECK: check_options

.. Tests that `covers` on feat_req and comp_req only allows aou_req as target.
.. req-Id: tool_req__docs_req_link_covers_aou

.. aou_req:: AoU target for covers tests
:id: aou_req__covers__target
:reqtype: Functional
:security: NO
:safety: QM
:status: valid

AoU content used for covers-link validation tests.


.. stkh_req:: Parent stakeholder requirement for covers tests
:id: stkh_req__covers__parent
:reqtype: Functional
:security: NO
:safety: QM
:status: valid
:rationale: Stakeholder parent rationale for covers-link tests.


.. feat_req:: Parent feature requirement for covers tests
:id: feat_req__covers__parent
:reqtype: Functional
:security: NO
:safety: QM
:status: valid
:satisfies: stkh_req__covers__parent

Parent feature requirement used by covers-link tests.


.. Positive Test: feat_req pointing to an aou_req via covers is valid.
#EXPECT-NOT: covers

.. feat_req:: Feature requirement with valid covers link
:id: feat_req__covers__good_1
:reqtype: Functional
:security: NO
:safety: QM
:status: valid
:satisfies: stkh_req__covers__parent
:covers: aou_req__covers__target

Valid feat_req that covers an AoU requirement.


.. Positive Test: comp_req pointing to an aou_req via covers is valid.
#EXPECT-NOT: covers

.. comp_req:: Component requirement with valid covers link
:id: comp_req__covers__good_1
:reqtype: Functional
:security: NO
:safety: QM
:status: valid
:satisfies: feat_req__covers__parent
:belongs_to: comp__covers__parent
:covers: aou_req__covers__target

Valid comp_req that covers an AoU requirement.


.. feat:: Feature for covers tests
:id: feat__covers__parent
:security: NO
:safety: QM
:status: valid
Loading