Links from valid needs and test cases to invalid needs are not blocked

Ouverte
#1,030 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
48/100
Type d'issue
Fonctionnalité
Clarté
Plutôt claire
Activité
Active
Stack technique
python

Piste de recherche

Start with check_valid_only_links_to_valid in score_metamodel/checks/graph_checks.py and the testcase definition in metamodel.yaml; trace how needs and verification links are represented. Review the existing graph check tests before deciding how valid targets and safety relevance should be handled. Done means invalid targets from valid needs and test cases are reported at the agreed severity; inline :need: references need a process decision.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

documentation

Observation

The published reference integration documentation shows component requirement
comp_req__kvs__snapshot_max_num with :status: invalid, while it is still referenced
by valid needs and by a test case:

https://eclipse-score.github.io/reference_integration/main/modules/score_persistency/components/kvs/requirements/index.html#comp_req__kvs__snapshot_max_num

Pinned persistency commit 961c0a0 (score/kvs/docs/requirements/index.rst):

  • 4 valid comp_req (snapshot_create_api, snapshot_restore_api, snapshot_remove_api,
    snapshot_slot_free_api) reference it via :need:`comp_req__kvs__snapshot_max_num` .
  • score/kvs/tests/test_cases/tests/test_cit_snapshots.py declares
    partially_verifies=["comp_req__kvs__snapshot_max_num"].

The documentation build passed and the change was merged. (Persistency main has since been
fixed, see #383 / #443 in eclipse-score/persistency.)

Analysis (docs-as-code 8.6.0)

  1. check_valid_only_links_to_valid (score_metamodel/checks/graph_checks.py) logs with
    is_new_check=True, so a valid need linking to an invalid need is only an info and never
    fails the build.
  2. testcase needs have no status option (metamodel.yaml). The check only iterates needs
    with status valid/valid_inspected, so partially_verifies / fully_verifies from test
    cases to invalid requirements are never checked at all.
  3. Inline :need: references are not part of need._links and are not checked. This is
    acceptable from a process point of view, but worth stating explicitly.

Process context

  • tool_req__docs_common_attr_status_invalid: "Findings on a valid need that links to an
    invalid need shall still be reported."
  • gd_req__arch_linkage_safety_trace, gd_req__saf_linkage_status_check and
    gd_req__sec_linkage_status_check require that only valid elements are linked.
  • For safety evidence (ISO 26262, verification of safety requirements) a test verifying an
    invalid requirement is a traceability gap.

Proposal

  1. Promote check_valid_only_links_to_valid from info to warning (at least for safety
    relevant needs, safety != QM), so that -W builds fail.
  2. Include testcase needs in the check: any fully_verifies / partially_verifies target
    must have status valid or valid_inspected.
  3. Decide (process) whether :need: inline references to invalid needs shall be reported.

Prepared with AI support (Claude Code), reviewed by Volker Häussler.

Langage dominant
Python
Étoiles
11
Forks
39
Merge moyen
1 j 13 h
PR mergées (30 j)
46

Préparer son environnement

Ouvrir dans Codespaces

Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.

  • Aucun Dockerfile ni fichier Docker Compose
  • Propose un modèle de pull request
  • Aucun guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de eclipse-score/docs-as-code

Toutes les issues de eclipse-score/docs-as-code

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.