.project/ files written by darnit do not conform to the upstream CNCF dot-project schema
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ó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 38/100
Hướng nghiên cứu
Start with packages/darnit/src/darnit/context/dot_project.py, packages/darnit/src/darnit/config/context_storage.py, and the OSPS-DO-02.01 entry in packages/darnit-baseline/src/darnit_baseline/openssf-baseline.toml; compare their behavior with the referenced upstream SCHEMA.md and validator. The issue lists five compatibility gaps and proposed directions; check related issues #468, #469, and #463 before defining a bounded change. Done means the agreed changes are covered by tests and written fixtures validate against the upstream schema.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Summary
.project/ is darnit's primary mechanism for project metadata, but the files darnit writes do not conform to the upstream CNCF dot-project schema (cncf/automation utilities/dot-project, SCHEMA.md version 1.0.0 at commit fb391624922b, 2026-09-24):
- Schema version. New
project.yamlfiles are seeded withschema_version: "1.4.0"(https://github.com/darnitdevorg/darnit/blob/032493b8bc9d6ef810ecd639e515042371465c37/packages/darnit/src/darnit/context/dot_project.py#L65, used at #L998). The upstream validator'sSupportedSchemaVersionsis["1.0.0"]. security.contactshape. Upstream definessecurity.contactas an object (email/advisory_url). darnit writes a bare string there (https://github.com/darnitdevorg/darnit/blob/032493b8bc9d6ef810ecd639e515042371465c37/packages/darnit/src/darnit/config/context_storage.py#L381-L386).- Unknown and relocated fields. The upstream decoder rejects unknown fields and the
Projectstruct has no extension field; some upstream fields (e.g.slug,project_lead,package_managers,landscape) are read into or written from.project/darnit.yamlinstead ofproject.yaml. - Wrong locator. OSPS-DO-02.01 ("Document bug reporting process") uses
project_path = "security.policy"(https://github.com/darnitdevorg/darnit/blob/032493b8bc9d6ef810ecd639e515042371465c37/packages/darnit-baseline/src/darnit_baseline/openssf-baseline.toml#L1421), so remediation and lookup treat the security policy as the bug-reporting process. - Non-CNCF projects.
maturity_logis required upstream and CNCF-specific, so a project outside the CNCF cannot produce a validproject.yaml.
Impact
Files darnit creates or edits may fail upstream validation and CNCF tooling, and values can be read back with the wrong meaning. Since .project/ is the primary store, darnit should round-trip it faithfully.
Suggested direction
- Pin darnit to the upstream schema version it actually implements, and add a CI check that validates darnit-written fixtures with the upstream validator.
- Write
security.contactin the upstream object form and read both forms. - Keep upstream fields in
project.yaml; limitdarnit.yamlto darnit-specific keys. - Fix the DO-02.01 locator.
- Propose upstream changes where
.project/cannot express what non-CNCF projects need (making CNCF-only required fields optional, a sanctioned extension mechanism), rather than diverging locally.
Related: #468, #469, #463.
- Ngôn ngữ chính
- Python
- Star
- 22
- Fork
- 27
- Merge trung bình
- 2 ngày 28 phút
- Pull request đã merge (30 ngày)
- 40
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- 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.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của darnitdevorg/darnit
-
needs triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
darnitdevorg/darnit#589 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
needs triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 83/100
darnitdevorg/darnit#587 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
needs triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
darnitdevorg/darnit#585 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
quality
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 66/100
darnitdevorg/darnit#523 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
documentation good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
darnitdevorg/darnit#516 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của darnitdevorg/darnit
Issue tương tự
-
SSM GetParameter throttling during concurrent workflow launchesCó thể đã có người làm @alexiswl đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 80/100
-
[Bug] Dev image build fails: `npm install` in the root Dockerfile runs out of memory (exit 134)Có thể đã có người làm @andest01 đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Rename FunctionalRole BOT_DEV to DEV_STAFFCó thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mởenhancement good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 79/100
pesu-dev/discord_bot#97 ·
-
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 88/100
gradio-app/gradio#13964 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 93/100
BSData/horus-heresy-3rd-edition#3232 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày