Registry release installs an unpinned nf CLI in the job that holds the registry key
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ó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 65/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- github-actions, typescript
Hướng nghiên cứu
Đọc .github/workflows/nf-registry-release.yml quanh dòng 80–87 và so sánh cách cài đặt CLI với cách workflow ghim phiên bản các action của bên thứ ba. Chọn và triển khai một trong các phương án đã nêu: dùng phiên bản CLI chính xác với lộ trình cập nhật dễ bảo trì, hoặc gọi phiên bản đã khóa của kho consumer. Hoàn tất khi các bản phát hành registry không còn cài CLI latest chưa được ghim phiên bản và các lệnh đăng nhập, phát hành của workflow vẫn dùng phiên bản dự kiến.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Issue description
The registry release job installs the CLI with no version (.github/workflows/nf-registry-release.yml#L80-L87):
- name: Install the nf CLI
run: pnpm install -g @nanoforge-dev/cli
- name: Log in to the NanoForge registry
run: nf login -k "$NF_REGISTRY_KEY"
Every registry release in every consumer repo therefore runs whatever latest is at that moment. It runs in a job with contents: write, and it receives NF_REGISTRY_KEY. The consequences (traced, not run):
- a broken or compromised CLI release reaches every registry release at once;
- a breaking major (cli 3.0.0 shipped this month) that changes
nf publish -dornf login -kbreaks them all; - nothing records which CLI version a release used.
Third-party actions in this repo are pinned by commit SHA; this npm install is not pinned at all.
Expected: the CLI version is pinned (e.g. an input with an exact default, kept current by Dependabot), or taken from the consumer's lockfile (pnpm exec nf) when the repo already depends on it.
Found by a read-only audit of main at 435a16b (first done at 046494f; this file didn't change in between), report audits/actions-2026-11-11.md in the workspace repo.
Code sample
No response
Versions
- @nanoforge-dev/actions 3.3.0 (
mainat 435a16b)
Issue priority
High (immediate attention needed)
I have tested this issue on a development release
435a16b
- Ngôn ngữ chính
- TypeScript
- Star
- 0
- Fork
- 0
- Merge trung bình
- 15 giờ 51 phút
- Pull request đã merge (30 ngày)
- 21
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 NanoForge-dev/actions
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 73/100
NanoForge-dev/actions#136 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Registry release silently skips manifests with no name and does not name invalid JSON manifestsĐang mởbug good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
NanoForge-dev/actions#135 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
NanoForge-dev/actions#134 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
NanoForge-dev/actions#131 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
NanoForge-dev/actions#119 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của NanoForge-dev/actions
Issue tương tự
-
Mend: dependency security vulnerability
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 65/100
fdm-monster/fdm-monster#5563 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
be-BOP-io-SA/be-BOP#2849 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 79/100
Maintainer thường phản hồi trong vòng 1 ngày
-
1️⃣ phase/under-investigation flaky/confirmed flaky/needs-decision type/bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
growilabs/growi#12246 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
🐛 The Rulekeeper - An index run that gives up on the lock ends SucceededCó thể đã có người làm @github-actions đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
SSWConsulting/SSW.Rules#2809 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày