본문으로 건너뛰기
cccskills
무료GitHub에 공개

implement-change

Implement Verdaccio fixes, features, or refactoring after checking whether existing settings or plugins already solve the problem. Place changes in the responsible component, reuse helpers, add tests and release notes, and validate affected packages.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

원문원문 설명 보기

Implement a verdaccio bug fix, feature, or refactor — establish the affected release lines, check whether existing configuration, package-access rules, plugins, or uplink options already solve it, put the change in the layer that owns it, reuse existing helpers, add tests and a changeset, and validate. Use when asked to implement a change in this repository.

설치 방법 보기

이럴 때 유용합니다

  • Implementing a bug fix with a regression test
  • Checking existing settings before adding a feature
  • Refactoring code within a defined change
  • Checking affected release branches and dependent packages

포함된 파일(1)

  • SKILL.md5.3 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Implement a change

Apply AGENTS.md. Keep repository policy there; this skill connects implementation to the testing-changes, review-code, and pull-requests workflows.

Understand the problem before adding code

Establish the intended behaviour and concrete success criteria from the request, the issue, or the reproduction. For a bug, reproduce it first when practical: pnpm build, start a registry (pnpm start, or node packages/verdaccio/bin/verdaccio --config <yaml> --listen 4873), and run the client command from the report against it. A reporter's npm install symptom is a registry route plus a client expectation; find both.

Decide which release lines the work concerns:

  • A feature lands on master only.
  • A bug fix lands on every supported line that has the bug: master first, then a port to 6.x (binary) and/or 8.x (internal modules 6.x consumes). Check whether the code path exists there before promising a port, and say in the PR when it is pending.

Check whether Verdaccio can already do it. Configuration (packages/config/src/conf/default.yaml documents the keys), package-access rules (access/publish/unpublish with groups), uplink options (maxage, timeout, fail_timeout, cache, auth), bundled plugins, middleware and filter plugins, and the web UI settings cover a lot. If an existing capability fully solves the request, the deliverable is an explanation and possibly a documentation change; if it partly solves it, extend the owning feature rather than adding a parallel one. Respect an explicitly requested behaviour that nothing existing provides.

Anything a package manager observes is a contract. Before changing a status code, header, packument field, tarball URL, or auth flow, check what registry.npmjs.org and the npm CLI (npm/cli) do, and remember the e2e matrix runs npm, pnpm, yarn modern (3 and 4), bun, and deno.

Put it in the owning layer

Trace the request through the layers before editing: api/web (routing, status, response shape) → store (local versus uplink merge, filters, stage) → local-storage or the storage plugin (files) and proxy (uplink HTTP); auth for identity and access; config for parsing and defaults; core for pure helpers.

Ask where the behaviour belongs, which abstraction it extends, and what else observes it: a validation added only in an api route leaves the web UI and every plugin exposed; a change in store affects every storage plugin. Changes to interfaces in @verdaccio/types break third-party plugins and are major. Prefer a coherent extension over a local workaround, and keep refactoring bounded to the change.

Reuse before you write

Search packages/core/core/src/*-utils.ts, @verdaccio/config, the store lib helpers, and @verdaccio/test-helper before writing a helper. If the logic exists but is not exported, export or move it and update the callers. Preserve meaningful differences; do not force unrelated behaviour into one generic function because it looks similar. Prefer a maintained package to a hand-rolled parser or escaper, added to the narrowest package that needs it (and older than the workspace's seven-day release-age rule).

Implement and validate

Implement the smallest cohesive change that meets the success criteria. Follow the conventions in AGENTS.md: errorUtils and HTTP_STATUS for errors, the package logger instead of console, streams for tarballs, import.meta.dirname, minimal comments, no swallowed errors.

Add tests that prove the observable contract at the right level: a unit test for a helper, a packages/api integration test for a route, a nocked uplink for store and proxy behaviour, and an e2e scenario only for client wiring. A bug fix ships with a regression test that fails without it.

Add one changeset for the PR, naming every published package it touches (patch for fixes, minor for features, major for breaking config, plugin, or HTTP contract changes), written as a release note without exploit detail. Update docs/migrations-guide.md for breaking changes and docs/warnings.md for a new warning code.

Rebuild the packages you touched, then use testing-changes to run their tests, their dependents' tests, and the client-facing suites the change can affect. Investigate every failure. Then review the complete diff with review-code, fix the verified findings, and rerun the checks the fixes touch.

Report what changed, what existing capability was considered and why it was not enough, the reuse or extraction chosen, the release lines covered and the ports still pending, and exactly what was validated. Commit, push, or open a PR only when the user or the calling workflow authorises it; use pull-requests when taking the change through a PR.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

plugins

무료

Maintain Verdaccio’s bundled plugins and investigate loading failures using checks that identify resolution, export, construction, or interface problems. Review shared plugin interfaces for compatibility, update affected plugins, and validate fixes with plugin and integration tests.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Diagnosing why a plugin fails to load
  • Fixing bundled authentication or storage plugins
  • Checking compatibility when changing plugin interfaces
verdaccio/verdaccio1.8만2026년 10월 19일 업데이트

pr-labels

무료

Select existing labels for Verdaccio pull requests based on the target release line and the substance of the change. Apply them when authorized, or report exact recommendations when reviewing someone else's PR or lacking permission.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Adding labels immediately after creating a PR
  • Reviewing missing or incorrect PR labels
  • Choosing labels for a release-line port
verdaccio/verdaccio1.8만2026년 10월 19일 업데이트

Guide a Verdaccio change through a pull request, from branch preparation and checks to changelog entries, labels, CI results, and review responses. Track separate pull requests when the fix also belongs on other release lines.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Preparing and opening a pull request
  • Investigating failed CI checks after a push
  • Addressing review comments and updating the PR
verdaccio/verdaccio1.8만2026년 10월 19일 업데이트

Review Verdaccio code changes for security, package manager compatibility, performance, and maintainability. Verify concerns against surrounding code and relevant tests, then report actionable issues with their location, trigger, impact, and supporting evidence.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Reviewing local changes before opening a pull request
  • Checking security and package manager compatibility
  • Tracing error handling and performance concerns
verdaccio/verdaccio1.8만2026년 10월 19일 업데이트

review-pr

무료

Assess an existing Verdaccio pull request by checking code changes, automated checks, review feedback, release notes, and supported release branches. Receive a verified report explaining whether it is ready to merge and what needs attention.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Reviewing a pull request before merging
  • Rechecking human and automated review feedback
  • Checking release notes and release branch coverage
verdaccio/verdaccio1.8만2026년 10월 19일 업데이트

Choose and run checks that cover a Verdaccio change, including affected packages, dependent packages, API tests, and relevant client or UI flows. Rebuild first and report coverage limits so passing results reflect the edited code.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Verifying changes before committing or pushing
  • Selecting tests for affected packages and their dependents
  • Checking package manager or UI behavior
verdaccio/verdaccio1.8만2026년 10월 19일 업데이트

verdaccio의 스킬 모두 보기

이 스킬의 문제 신고