Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Test/reference control STAGE1-REF-SECURITY-01 ships in the OpenSSF Baseline audit and counts toward results

オープン
#466 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
52/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
python
領域
devtools, testing

調査の方向性

Start with packages/darnit-baseline/src/darnit_baseline/openssf-baseline.toml and implementation.py, then inspect tests/darnit_baseline/test_implementation.py and its stage1-ref handling. Run the documented uv run darnit audit -f openssf-baseline -o json --no-fail <repo> reproduction. Done when an OSPS audit includes only OSPS controls and the relevant tests and parity fixtures pass.

索引モデルが issue の本文から書いたものです。

説明

module-baseline

Summary

STAGE1-REF-SECURITY-01 was added to openssf-baseline.toml as the RFC-0001 Stage 1 acceptance-gate control. It is not an OSPS Baseline control, but every openssf-baseline audit evaluates it as a Level 1 control, includes it in totals, and emits it alongside OSPS ids. Its help URL falls back to a fabricated https://baseline.openssf.org/versions/2025-10-10#STAGE1-REF-SECURITY-01 anchor.

It duplicates OSPS-VM-02.01 (SECURITY.md presence), so a repo missing SECURITY.md is double-counted as a Level 1 failure, and a repo with one gets an extra PASS. Its second pass (llm_extract) is unreachable because the first pass is dispositive on both branches.

Impact

The audit claims to report against OSPS Baseline 2025-10-10 but its result set, counts and any attestation/SARIF derived from it include a non-spec control. Consumers comparing counts with the catalog (65 OSPS controls here) will see 66.

Evidence

Reproduction

Any repo with a SECURITY.md:

uv run darnit audit -f openssf-baseline -o json --no-fail <repo>

Actual: summary.total is 66; results contains {"id": "STAGE1-REF-SECURITY-01", "status": "PASS", "level": 1, "details": "Required file found: SECURITY.md"}. Text output header: Total: 66 | ....
Expected: only OSPS controls in an OSPS audit.

Also noted (minor)

OSPS-SA-03.01 declares manual before pattern, opposite to the convention in framework-design.md 3.1. manual returns INCONCLUSIVE so the verdict is unaffected today, but it will matter if manual gains any conclusive behavior. https://github.com/darnitdevorg/darnit/blob/032493b8bc9d6ef810ecd639e515042371465c37/packages/darnit-baseline/src/darnit_baseline/openssf-baseline.toml#L4264-L4276

Suggested direction

Move the reference control to a test fixture framework (or darnit-testchecks) and point the Stage 1 acceptance tests and parity fixtures at it. If it must stay in the package, exclude stage1-ref-tagged controls from get_all_controls()/audits unless explicitly requested. Reorder SA-03.01.

主要言語
Python
スター
22
フォーク
27
平均マージ
2日 28分
マージ済み PR(30日)
40

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

darnitdevorg/darnit のほかの issue

darnitdevorg/darnit の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。