Skip to main content

dependency-update

Guide for safely updating project dependencies. Use when asked to update packages, upgrade dependencies, or check for outdated libraries.

Source facts

Repository
microsoft/haste
Last source activity
June 17, 2026 at 22:19
Detected SKILL.md language
English
Stars
109
Forks
19

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
dependency-update
description
Guide for safely updating project dependencies. Use when asked to update packages, upgrade dependencies, or check for outdated libraries.
source
Internal engineering practices
domain
maintenance
level
foundational
agents
["backend-dev","security","security-validation"]
created_date
2026-04-27
last_validated
validated_by
status
draft
allowed-tools
shell
# Dependency Update ## Overview A structured process for safely updating project dependencies. Updates are categorized by risk level and applied in controlled batches with verification at each step. ## Key Concepts ### Semantic Versioning Risk Tiers - **Patch** (x.x.X): Bug fixes only. Safe to batch. - **Minor** (x.X.0): New features, backward compatible. Update in small batches. - **Major** (X.0.0): Breaking changes. Update one at a time. Read the changelog. ## Patterns & Techniques ### Safe Update Process **Step 1: Audit** ```bash # Python pip list --outdated # JavaScript npm outdated ``` **Step 2: Categorize** — Group by risk tier (patch, minor, major). **Step 3: Update per batch** 1. Update the dependency 2. `cd hastelib && hatch build -t wheel` — check build 3. `cd hastelib && hatch run test:pytest` — check behavior 4. `cd ui && npm run lint` — check for new warnings 5. If tests fail, investigate and fix or revert **Step 4: Security check** — Scan for known vulnerabilities. **Step 5: Commit** — One commit per logical group: ``` chore(deps): update [package] from vX to vY ``` ## Decision Framework | Update Type | Risk | Strategy | |------------|------|----------| | Patch | Low | Batch all, update together | | Minor (well-known pkg) | Low-Med | Small batches of 3-5 | | Minor (niche pkg) | Medium | One at a time, check changelog | | Major | High | One at a time, read migration guide | | Security fix | Critical | Update immediately, regardless of type | ## Common Pitfalls - **Updating everything at once** — If tests fail, you can't tell which update caused it - **Skipping the changelog** — Major updates often require code changes - **Ignoring transitive dependencies** — A safe direct dep can pull in a vulnerable transitive dep
View on GitHub