用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/tomevault-io/skills-registry --skill code-review命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | code-review |
| description | > Use when this capability is needed. |
Use this skill as a "Final Gate" for any PR or significant change. Cross-reference with specialized skills (adaptive-cards-spec-compliance, adaptive-cards-element-registry, dart-public-api-docs, flutter-adaptive-cards-testing) as needed.
flutter, dart) executed via fvm?fvm flutter analyze? (Compliance with very_good_analysis).CHANGELOG.md been updated in the affected packages following Keep a Changelog?release-engineer — all six version: fields match, six changelogs have matching top ## [<version>] sections, and flutter_adaptive_charts_fs and flutter_adaptive_cards_host_fs use flutter_adaptive_cards_fs: ^<version>.dart_format been run on all modified files?/// docs: Do exported API changes in library packages explain why and how to use the API (not implementation steps)? See dart-public-api-docs.flutter_adaptive_cards_fs ChecklistCardTypeRegistry or ActionTypeRegistry?AdaptiveElementWidgetMixin (Widget) and AdaptiveElementMixin + AdaptiveVisibilityMixin (State)?AdaptiveInputMixin? On user change, does it call setDocumentInputValue(...)? Does it sync controllers in onDocumentValueChanged when overlays change (reset)?AdaptiveVisibilityMixin and write via setIsVisible / document notifier (not local-only setState)?AdaptiveTextBlock read display copy from resolvedElementProvider(id) (not only stale adaptiveMap['text'])?isEnabled via AdaptiveActionStateMixin / resolvedActionProvider when host-driven enable/disable matters?setInputValue, setText, setInputError, …) rather than mutating the host JSON map?flutter_adaptive_cards_fs avoid chart-specific (or other optional-package) types, imports, and overlay fields? Optional behavior belongs in extension packages via addedElements / overlayExtensions, not in core.styleResolver (via ProviderScopeMixin) or ProviderScope.containerOf(context).read(styleReferenceResolverProvider) for all colors, font sizes, and spacing?cardTypeRegistry / actionTypeRegistry from ProviderScopeMixin (not from ReferenceResolver)?SeparatorElement?generateAdaptiveWidgetKey(adaptiveMap)?id (e.g., ValueKey(id) or ValueKey('${id}_suffix'))? Crucial for testing stability.Semantics or semanticLabel where appropriate?altText (if provided in JSON) used as a semantic label?lib/flutter_adaptive_cards_fs.dart?lib/flutter_adaptive_cards_extend.dart if intended for customization by consumers?/// docs: Do new or changed exported members explain why the API exists and how callers use it — not implementation steps? See dart-public-api-docs.flutter_adaptive_template_fs Checklist$data, $root, $index, and $when handled correctly during expansion?$data correctly shift the resolution context?flutter_adaptive_cards_host_fs ChecklistAdaptiveCardBackendHandlers shares the same GlobalKey<RawAdaptiveCardState> as RawAdaptiveCard when onSubmit / onExecute / onRefresh need card state.AdaptiveCardInvokeResponse.applyTo.pubspec.yaml declares flutter_adaptive_cards_fs: ^<monorepo-version> (sync on release bump).packages/flutter_adaptive_cards_host_fs/test/ (no goldens); run fvm flutter test from that package directory.docs/backend-host-integration.md and package README.md; exported /// comments follow dart-public-api-docs.See adaptive-cards-backend-host skill for file paths and invoke round-trip patterns.
find.text() or find.byType() calls in tests should be replaced with find.byKey() whenever a key is available.test/samples/ demonstrating the feature/fix?--update-goldens on macOS, then copy each new PNG from test/gold_files/macos/ to test/gold_files/linux/ so CI has a baseline (see adaptive-cards-testing skill and test/gold_files/README.md).linux/ files from CI artifact zips for canonical Linux images.widgetbook changes (sample app)widgetbook/lib/samples/ are listed in widgetbook/pubspec.yaml under flutter: assets: (required for AdaptiveCardsCanvas.asset).@widgetbook.UseCase added or updated in adaptive_cards_use_cases.dart; fvm dart run build_runner build run when use cases change.widgetbook/CHANGELOG.md updated when the demo app changes.docs/widgetbook-overlay-demos.md; package behavior docs tag widgetbook as Example (widgetbook sample) per documentation-scope.md.When performing a review, summarize findings using this format:
### Code Review Summary
- **Package**: [e.g. flutter_adaptive_cards_fs]
- **Hygiene**: [PASS/FAIL] (Analysis, Changelog, Formatting)
- **Compliance**: [PASS/FAIL] (Registry, Spec, Theming)
- **Testing**: [PASS/FAIL] (Keys, Samples, Goldens)
#### Details
- [Specific feedback regarding keys, accessibility, etc.]
Source: freemansoft/Flutter-AdaptiveCards — distributed by TomeVault.