Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

RFC: Never remove detection of outdated config keys (Config Lifecycle Management)

Đang mở
#10,045 3 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ó
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
25/100
Loại issue
Tính năng
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Sôi nổi
Công nghệ
javascript, nodejs
Lĩnh vực
cli

Hướng nghiên cứu

No repository files or tests are named. Start by locating npm's existing unknown-config-key warning and reviewing the proposed protocol and reference library; done would require an agreed catalog schema, lifecycle behavior, warning semantics, and a maintainer-approved implementation plan.

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

Mô tả

npm currently warns about unknown user config keys and says that support will stop in a future major version. That path ends with silent mystery debt: old projects keep the key, future npm stops mentioning it, and people copy unexplained lines into new files.

Please treat outdated config keys as a forever-detectable catalog problem—not something to delete from recognition.

Proposal: Config Lifecycle Management

Keep a shipped, machine-readable key index for every config key npm has ever recognized. Keys move through statuses; they are never removed from the index:

Status Behavior
active Accept and document
deprecated Accept; always warn with successor + timeline
expired Do not apply the value; always detect and alert: expired after version X; ignored; migration path
unknown Present in a scanned file but absent from the catalog — warn (typo / foreign tool / catalog gap)

Non-negotiable: expired ≠ forgotten. Stopping detection after a major version is the failure mode.

Why this matters

  1. Old .npmrc / project config keeps outdated keys for years (archives, corporate templates, copied gists).
  2. If npm stops warning, the key becomes unexplained folklore.
  3. Humans and AI agents then have to archaeology the meaning; careful users research, others copy blindly.
  4. npm already pays the cost of scanning config; preserving catalog rows is cheap compared to ecosystem confusion.

Concrete ask

  1. Never remove a known key from npm’s recognition/alert path. Change status instead.
  2. Ship a versioned config-keys index (JSON is fine) with releases and docs.
  3. Alerts must distinguish deprecated vs expired vs unknown, and for expired keys name the version boundary (e.g. expired after [email protected]; value ignored).
  4. Prefer one internal module for classify → match → alert so warnings stay consistent.

Prior art / reference

OpenShellOrg drafted this as a CLI config lifecycle protocol and a small reference library:

Happy to refine the index schema with maintainers. The goal is explainability that outlives any single major version.

Originally filed under the name Config Key Sanitation; renamed to Config Lifecycle Management on 2026-09-26. Old links redirect.

Ngôn ngữ chính
JavaScript
Star
10.1k
Fork
4.7k
Merge trung bình
3 ngày 9 giờ
Pull request đã merge (30 ngày)
9

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

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 npm/cli

Tất cả issue của npm/cli

Issue tương tự

Thêm issue về JavaScript

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.