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

Đang mở
#1,030 1 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
48/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
python
Lĩnh vực
documentation, testing

Hướng nghiên cứu

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.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

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.

Ngôn ngữ chính
Python
Star
11
Fork
39
Merge trung bình
1 ngày 13 giờ
Pull request đã merge (30 ngày)
46

Chuẩn bị môi trường

Mở trong Codespaces

Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.

  • Không có Dockerfile hay tệp Docker Compose
  • Có mẫu pull request
  • Không có hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của eclipse-score/docs-as-code

Tất cả issue của eclipse-score/docs-as-code

Issue tương tự

Thêm issue về Python

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.