fm-delta

Re-migrates only changed legacy Angular surface via delta plans while preserving accumulated fixes.

1|Updated Feb 19, 2026
One-click install
npx skills add https://github.com/ohmyhotelco/hare-cc-plugins --skill fm-delta-ohmyhotelco
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: fm-delta
Source: https://github.com/ohmyhotelco/hare-cc-plugins/tree/main/frontend-migration-plugin/skills/fm-delta
Command: npx skills add https://github.com/ohmyhotelco/hare-cc-plugins --skill fm-delta-ohmyhotelco

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? When the legacy Angular source of an already-migrated page drifts, regenerating the whole page discards the fixes accumulated through earlier gate loops. This Skill re-migrates only the changed surface, keeping prior repairs intact. ## Core Features & Use Cases - Delta planning: Diffs the current legacy source against the recorded analysis and migration-plan baseline, producing a delta plan of added, modified, and removed operations. - Incremental vs full choice: Recommends full regeneration when the delta touches more than 60% of the page's files, otherwise applies incremental ops in cascade order via a delta-modifier agent. - State safety: Uses page locks, staged baseline promotion, and gate-evidence clearing so aborted runs never leave route-authorized pages over stale code. - Use Case: A hotel booking page already passed parity gates, but the legacy team changed its markup. Run this Skill to apply only the drifted changes, then re-enter the verify, e2e, and parity gates. ## Quick Start Run /frontend-migration-plugin:fm-delta my-page --app pc to re-migrate only the drifted parts of the page.

Frequently Asked Questions about fm-delta

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I re-migrate a page after the legacy Angular source changes?▼

Run the fm-delta skill with the page name and app flag. It diffs the current legacy source against the recorded baseline, builds a delta plan of added, modified, and removed operations, and applies only those changes while preserving prior fixes.

When should I choose full regeneration instead of an incremental delta?▼

Choose full regeneration when the delta touches more than 60% of the page's files, measured against the sourcePaths recorded in the tracker. The skill recommends this automatically and points you to re-run fm-analyze, fm-plan, and fm-gen --force.

Can I run a delta migration on a flipped or done page?▼

No. Flipped pages must first be rolled back with fm-route --revert so the legacy source is diffable and the page leaves live traffic. Done pages have no legacy source left and require manual intervention.

Why does fm-delta refuse to run when the page status is fixing or escalated?▼

A fix loop is in progress or awaiting manual intervention, and the delta flow resets the page to generated, which would discard accumulated repairs and the previousStatus the fix loop needs. Complete fm-fix first, then run the delta.

What happens to prior gate results after a delta is applied?▼

The tracker status resets to generated and gateEvidence plus verifiedAt, e2ePassedAt, and parityPassedAt are cleared, because prior passes rest on superseded code. The page must re-pass fm-verify, fm-e2e, and fm-parity before routing.