mirror of
https://github.com/anthropics/claude-plugins-official.git
synced 2026-07-13 12:46:55 -03:00
/modernize-uplift migrates one representative project end-to-end and writes its lessons to analysis/<system>/PLAYBOOK.md before touching the rest. The remaining projects then fan out through a new uplift-migrate workflow, one uplift-migrator agent per project, in dependency-aware escalating batches behind a per-batch circuit breaker. A recorded per-test baseline (analysis/<system>/BASELINE.md) gates the migration, and the delta catalog reports a test framework whose runner does not support the target as its own highest-blast-radius dependency. The three execution commands (uplift, transform, reimagine) read MODERNIZATION_BRIEF.md and treat their phase's scope and entry and exit criteria as gates, so editing the brief steers execution. For a same-stack uplift the brief requires the delta catalog and applies the same ordering overrides the execution command does. /modernize-preflight opens with a short interview (scope, local build and test, bespoke build infrastructure, prior attempts, what is off limits) without blocking on the answers, reads the CI/build definition for how the system builds, escalates the smoke test to a whole-project restore and build, and adds a scope-boundary check that enumerates inbound and outbound dependencies when the system directory is a slice of a larger repository. Workflow scripts accept args delivered as either a JSON string or an object.
61 lines
2.9 KiB
Markdown
61 lines
2.9 KiB
Markdown
---
|
|
description: Where am I in the modernization workflow — artifact inventory, staleness, secrets hygiene, next step
|
|
argument-hint: <system-dir>
|
|
---
|
|
|
|
Report where the modernization of `$1` stands, in one screen. This is a
|
|
read-only command — inspect, never modify.
|
|
|
|
## 1 — Artifact inventory
|
|
|
|
Check `analysis/$1/` and `modernized/$1*/` and build a table — one row per
|
|
workflow stage, with the artifact's presence and modification time:
|
|
|
|
| Stage | Artifacts |
|
|
|---|---|
|
|
| preflight | `PREFLIGHT.md` (note whether the Check 0 human answers and the Check 6 scope-boundary finding are present) |
|
|
| assess | `ASSESSMENT.md`, `ARCHITECTURE.mmd` |
|
|
| map | `topology.json`, `TOPOLOGY.html`, `*.mmd`, `extract_topology.*` |
|
|
| extract-rules | `BUSINESS_RULES.md`, `DATA_OBJECTS.md` |
|
|
| brief | `MODERNIZATION_BRIEF.md` (note whether the approval block is signed) |
|
|
| harden | `SECURITY_FINDINGS.md`, `security_remediation.patch` |
|
|
| uplift | `DELTA_CATALOG.md`, `BASELINE.md`, `PLAYBOOK.md` (no playbook = the pilot hasn't happened yet — the fan-out must not); `modernized/$1-uplifted/UPLIFT_NOTES.md` (note per-unit: builds on target? baseline reproduced?) |
|
|
| transform | each `modernized/$1/<module>/` dir — note test presence and whether `TRANSFORMATION_NOTES.md` exists |
|
|
| reimagine | `modernized/$1-reimagined/` — note per-service acceptance tests and the `CLAUDE.md` handoff (reimagine's completion markers; it does NOT write `TRANSFORMATION_NOTES.md`) |
|
|
|
|
## 2 — Staleness
|
|
|
|
Flag any artifact older than an upstream artifact it derives from:
|
|
|
|
- `MODERNIZATION_BRIEF.md` older than `ASSESSMENT.md`, `topology.json`,
|
|
or `BUSINESS_RULES.md` → the brief no longer reflects discovery;
|
|
recommend re-running `/modernize-brief`.
|
|
- `MODERNIZATION_BRIEF.md` for a same-stack **uplift** plan that is older
|
|
than `DELTA_CATALOG.md` — or that has no catalog at all — → the phase
|
|
order was decided before (or without) the version deltas that determine
|
|
it; recommend re-running `/modernize-brief`.
|
|
- `TOPOLOGY.html` older than `topology.json` → re-run the injection step
|
|
from `/modernize-map`.
|
|
- Any `TRANSFORMATION_NOTES.md` older than `BUSINESS_RULES.md` → the
|
|
module may not implement the latest rule set; list which.
|
|
|
|
## 3 — Secrets hygiene
|
|
|
|
- Does `analysis/.gitignore` exist and cover `SECRETS.local.md` /
|
|
`*.local.patch`? (`git check-ignore` when in a git repo.)
|
|
- If `SECRETS.local.md` exists: confirm it is NOT tracked
|
|
(`git ls-files --error-unmatch`, expect failure) and has never been
|
|
committed (`git log --all --oneline -- <path>`, expect empty). If
|
|
either check fails, say so prominently and recommend rotation plus
|
|
history scrubbing.
|
|
|
|
## 4 — Verdict
|
|
|
|
End with three lines:
|
|
- **Where you are** — the furthest completed stage and roughly how much
|
|
of the system it covers (e.g. "mapped 100%, 2 of 14 modules
|
|
transformed").
|
|
- **What's stale** — or "nothing".
|
|
- **Next command** — the single most useful next step, with a one-line
|
|
reason.
|