if (commandKey != 'debug_adapter') {Should we consider making `debug_adapter` an alias for `debug-adapter` (https://pub.dev/documentation/args/latest/command_runner/Command/aliases.html)?
command.subcommands.forEach((String subKey, Command<int> subCommand) {Nit: wouldn't this work?
```dart
command.subcommands.forEach(validateCommand);
```
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
if (commandKey != 'debug_adapter') {Should we consider making `debug_adapter` an alias for `debug-adapter` (https://pub.dev/documentation/args/latest/command_runner/Command/aliases.html)?
Done
command.subcommands.forEach((String subKey, Command<int> subCommand) {Nit: wouldn't this work?
```dart
command.subcommands.forEach(validateCommand);
```
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
[dartdev] Validate command names and check subcommands recursively
Enhances command formatting tests to enforce consistent naming styles and recursively validate subcommand descriptions and formats.
- Recursively checks all subcommand names and descriptions under DartdevRunner.
- Excludes commands that are not subclasses of DartdevCommand (such as package:pub or package:dart_style) to avoid enforcing custom conventions on foreign package integrations.
- Enforces kebab-case formatting on command names, maintaining `debug_adapter` as an explicit legacy exception.
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |