Skip to content
Back to skills

Framework Upgrade

ASecurity

Generic framework upgrade orchestrator (audit|plan|migrate|validate) with pluggable packs. Use when upgrading a framework version or invoking /framework-upgrade.

  • 6 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 25, 2026
ai-agentsshellangularrailscode-review

Security analysis

A100/100

Pro scans all 20 files and shows the line behind each finding

Scanned October 4, 2026

npx -y skills add tibursocampos/agent-dev-toolkit --skill framework-upgrade --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Framework Upgrade?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Framework Upgrade
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/tibursocampos-framework-upgrade/badge)](https://www.skillsdirectory.com/skills/tibursocampos-framework-upgrade)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: framework-upgrade
description: Generic framework upgrade orchestrator (audit|plan|migrate|validate) with pluggable packs. Use when upgrading a framework version or invoking /framework-upgrade.
---

## STOP - Read before ANY tool call

1. Read `{{GUARDRAILS_PATH}}`
2. Read `_shared/sdd-artifacts/SESSION.md`; load session-state for `$Cwd`
3. If the relevant gate is not approved: **STOP** - ask user **(pt-BR)** - do **NOT** Write/Shell
4. After **ONE** upgrade session outcome (or explicit stop): **STOP** - handoff only; do not chain unrelated skills
5. This skill body is **English**; user-facing prompts may be **(pt-BR)**

### Step -1 - Gate check (report in chat before continuing)

```
Gate check:
[ ] guardrails.mdc read
[ ] SESSION.md read; session-state loaded
[ ] Skip D policy loaded (references/skip-policy.md) — ADO mutate / JARVIS_* / Athena brand / duration estimates forbidden
[ ] User confirmed current action (sim) — silence ≠ approval for migrate
-> If any unchecked: STOP
```

---

# Skill: framework-upgrade

## Identity (stable)

| Field | Value |
|-------|--------|
| **Skill id** | `framework-upgrade` |
| **Slash** | `/framework-upgrade` |
| **Major pin** | **Forbidden** — never rename to `dotnet10-upgrade`, `angular-v*-upgrade`, or `framework-upgrade-vN` |

Version targets are **parameters** of the resolved pack (`currentVersion` → `targetVersion`), not part of this skill id.

## Trigger

Invoke when the user asks for: `/framework-upgrade`, `framework upgrade`, `upgrade Angular/.NET/…`, or an explicit mode (`audit` / `plan` / `migrate` / `validate`).

## Outcome

1. Resolve `framework_id` via `references/detect.md` (TE03: 0 or >1 candidates → ask; packs own signals in `PACK.md`).
2. Load **one** mode contract from `references/modes.md` (`audit` \| `plan` \| `validate` \| `migrate`).
3. Validate versions / `supported_range` (`version-policy.md`); out of range → `research-protocol.md` (TE04 — no inventing local deltas).
4. Progressive-load shared + pack refs (never wholesale dump).
5. Record decisions in the decision register when planning or migrating.
6. Apply evidence gates before claiming migrate/validate done.
7. Honor Skip **D** and **silence ≠ approval** for migrate (RN02 / TE05).

**Packs** live under `packs/` (`REGISTRY.md` + `packs/<id>/PACK.md`). Must packs `angular` and `dotnet` are on-disk. This skill orchestrates; packs supply detect, `supported_range`, and curated deltas.

## Required input

| Input | Rule |
|-------|------|
| Mode | Explicit or ask once: `audit` \| `plan` \| `migrate` \| `validate` — default ask; never silent `migrate` |
| `framework_id` | `references/detect.md` — detect or ask if 0 / >1 candidates (TE03); pack signals in `PACK.md` |
| `currentVersion` / `targetVersion` | Semantic per pack; `target > current`; outside `supported_range` → research (TE04) |
| Operator **sim** | **Required** before any file-mutating migrate step; silence ≠ approval (TE05) |

## Lazy-load (only when needed)

| When | Path (after syncing the active adapter) |
|------|----------------------------------------|
| Command playbook (after gates) | `{{TOOLKIT_ROOT}}/skills/framework-upgrade/references/command.md` |
| Modes contract | `{{TOOLKIT_ROOT}}/skills/framework-upgrade/references/modes.md` |
| Progressive load / SR-NO-FULL-DUMP | `{{TOOLKIT_ROOT}}/skills/framework-upgrade/references/progressive-load.md` |
| Decision register | `{{TOOLKIT_ROOT}}/skills/framework-upgrade/references/decision-register.md` |
| Evidence gates | `{{TOOLKIT_ROOT}}/skills/framework-upgrade/references/evidence.md` |
| Detect / `framework_id` (TE03) | `{{TOOLKIT_ROOT}}/skills/framework-upgrade/references/detect.md` |
| Version policy | `{{TOOLKIT_ROOT}}/skills/framework-upgrade/references/version-policy.md` |
| Research protocol (out of range / TE04) | `{{TOOLKIT_ROOT}}/skills/framework-upgrade/references/research-protocol.md` |
| Sources catalog (normative vs auxiliary; RN08) | `{{TOOLKIT_ROOT}}/skills/framework-upgrade/references/sources-catalog.md` |
| Skip D (OOS brands / duration) | `{{TOOLKIT_ROOT}}/skills/framework-upgrade/references/skip-policy.md` |
| Selective retrieval companion | `{{TOOLKIT_ROOT}}/skills/_shared/sdd-artifacts/SELECTIVE-RETRIEVAL.md` |
| Pack registry (when present) | `{{TOOLKIT_ROOT}}/skills/framework-upgrade/packs/REGISTRY.md` |
| Pack body (when resolved) | `{{TOOLKIT_ROOT}}/skills/framework-upgrade/packs/<id>/PACK.md` + **one** pack `references/<section>.md` |
| Caveman Mode (if active) | `{{TOOLKIT_ROOT}}/skills/_shared/caveman/CAVEMAN.md` - **Full cap** |
| Reference index (routing only) | `{{TOOLKIT_ROOT}}/skills/framework-upgrade/reference.md` |

**Never by default:** do not preload all `references/*.md`, all pack corpora, or `_shared/*-guidelines` wholesale. Load **one** section file per Process step (`SKILL-REFERENCE-RETRIEVAL.md` / `SR-NO-FULL-DUMP`).

## Reference routing

| Situation | Path |
|-----------|------|
| Step discovery after gates | `references/command.md` |
| Mode selection / contracts | `references/modes.md` |
| What to load next | `references/progressive-load.md` |
| Record / show decisions | `references/decision-register.md` |
| Before claiming done | `references/evidence.md` |
| Detect / ambiguous framework (TE03) | `references/detect.md` |
| Version pair / range | `references/version-policy.md` |
| Target outside `supported_range` (TE04) | `references/research-protocol.md` |
| Official vs auxiliary sources (RN08) | `references/sources-catalog.md` |
| OOS / Skip D / duration ban | `references/skip-policy.md` |
| Pack resolve | `packs/REGISTRY.md` → `packs/<id>/PACK.md` |

## Process

After gates: **Read `references/command.md`**. Then load **one** `references/<section>.md` for the current step — never dump all refs.

### Step -1b - Caveman Mode (Full cap)

Apply Full caveman prefs when active.

### 1. Resolve mode

Load `references/modes.md`. If mode omitted: ask once. If caller implies implement/migrate without **sim**: stay in `audit` or `plan` (TE05).

### 2. Resolve pack + versions

1. Load `references/detect.md` — resolve `framework_id` (TE03: ask if 0 or >1 candidates; no silent default).
2. Load `references/version-policy.md` — validate `target > current` when versions apply.
3. If outside pack `supported_range` → `references/research-protocol.md` (reuses `sources-catalog.md` official first; TE04 STOP — do not invent local deltas).

### 3. Progressive load

Load `references/progressive-load.md`. Pull only the shared + pack sections needed for the active mode.

### 4. Execute mode

| Mode | Behavior |
|------|----------|
| `audit` | Inventory / gaps; no mutating writes |
| `plan` | Ordered baby steps + decision register; no mutate unless operator later says migrate + **sim** |
| `migrate` | Apply plan steps **only after explicit sim**; register each decision; evidence before next hop |
| `validate` | Build/test/gates per pack; evidence matrix; no silent promote to migrate |

### 5. Evidence + register

Load `references/evidence.md` and `references/decision-register.md` when claiming plan/migrate/validate outcomes.

### 6. Report

Summarize mode, pack, versions, decisions, evidence level, and next mode or stop. Offer `/commit` when files changed — do not auto-commit.

## Must not

- Rename skill id to a major-pinned id (`dotnet10-upgrade`, `angular-v*-upgrade`, `framework-upgrade-vN`)
- Enter `migrate` on silence, implied consent, or plan-only chat (RN02 / TE05)
- ADO work-item mutate, `JARVIS_*` contracts, Athena (or other external product) brand in this skill/packs (Skip **D** / RN05)
- Duration / effort / story-point checkpoints (RN04 / REQ-015)
- Dump wholesale Supply / pack / guideline corpora into context (RNF-004 / SR-NO-FULL-DUMP)
- Invent pack deltas for majors outside `supported_range` (TE04) — research protocol + pack PR only; no in-session invented support
- Assume `framework_id` when 0 or >1 detect candidates (TE03)
- Treat blogs/gists or offline snapshots as SoT when they conflict with official docs (RN08 — official wins; see `sources-catalog.md` + research checklist)
- Create sibling skills per framework — new frameworks = new **packs** only (RN09)

## Handoff

| Situation | Next |
|-----------|------|
| Pack missing | Wait for `packs/<id>/` (registry) — orchestrator stays generic |
| Out of range | Research protocol → extend pack PR; no new skill id |
| Migrate done | `validate` mode or `/commit` |
| Review | `/code-review` when operator requests |

Files in this skill

  • SKILL.md8.3 KB
  • packs/REGISTRY.md2.7 KB
  • packs/angular/PACK.md3.4 KB
  • packs/angular/references/cascade.md1.1 KB
  • packs/angular/references/index.md651 B
  • packs/angular/references/knowledge-index.md2.5 KB
  • packs/dotnet/PACK.md4.5 KB
  • packs/dotnet/references/compatibility.md1.4 KB
  • packs/dotnet/references/index.md862 B
  • packs/dotnet/references/knowledge-index.md3.2 KB
  • packs/dotnet/references/plan-contract.md1.4 KB
  • packs/dotnet/references/validation.md1.1 KB
  • reference.md784 B
  • references/command.md1.3 KB
  • references/decision-register.md1.2 KB
  • references/detect.md2.8 KB
  • references/evidence.md1.3 KB
  • references/modes.md1.7 KB
  • references/progressive-load.md1.3 KB
  • references/research-protocol.md3.8 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…