AgentSkillsCN

flutter-deps-upgrade

使用`pub outdated/upgrade`升级Dart/Flutter的包依赖,同时设置确定性的验证门禁,并提供具备迁移意识的报告。

SKILL.md
--- frontmatter
name: flutter-deps-upgrade
description: Upgrade Dart/Flutter package dependencies using `pub outdated/upgrade` with deterministic verification gates and migration-aware reporting.
triggers:
  - "upgrade flutter dependencies"
  - "run pub outdated"
  - "bump dart packages safely"
inputs:
  - "mode flag: --dry-run | --execute | --verify-only"
outputs:
  - "outdated/upgrade report"
  - "pubspec.lock updates in execute mode"
safety:
  - "execute requires clean git tree"
  - "verify format/analyze/test before merge"
commands:
  - "skills/flutter-deps-upgrade/scripts/run.sh --dry-run"
  - "skills/flutter-deps-upgrade/scripts/run.sh --execute --ci"

When to use / when NOT to use

  • Use for package dependency hygiene in Flutter apps/packages.
  • Do not use for SDK channel/version upgrades.

Preconditions (tools, versions, repo state)

  • Flutter/Dart installed.
  • pubspec.yaml present.
  • Clean git state before execute.

Workflow (DISCOVER → PLAN → EXECUTE → VERIFY → REPORT)

  1. DISCOVER: detect Flutter setup and monorepo indicators.
  2. PLAN: inspect outdated graph and major-version risk.
  3. EXECUTE: run flutter pub upgrade.
  4. VERIFY: run pub outdated, format check, analyze, test.
  5. REPORT: summarize package risk and follow-up actions.

Exact commands and expected signals

bash
skills/flutter-deps-upgrade/scripts/run.sh --dry-run
skills/flutter-deps-upgrade/scripts/run.sh --execute --ci
skills/flutter-deps-upgrade/scripts/run.sh --verify-only --ci

Success: outdated inventory and verification outputs available. Failure: missing Flutter project/toolchain or analysis/test breakages.

If it fails (checklist)

  • Validate SDK constraints and lockfile state.
  • Re-run with --verbose to isolate failing package.
  • Use staged upgrades for major packages.

Final report template

  • Current dependency posture (outdated summary).
  • Upgrades applied (if execute).
  • Analyze/test status.
  • Breaking packages and migration notes.
  • Rollback command.