1.1 KiB
1.1 KiB
ConsoleContracts Milestones
This document defines the implementation milestones for the getphred/console-contracts package.
1. Project Infrastructure
- Initialize repository and
composer.jsonwith zero runtime dependencies. - Configure PHPUnit and static analysis (PHPStan).
- Set up GitHub Actions for continuous integration.
2. Core Interfaces
- Implement
CommandInterfaceand metadata methods. - Implement
InputInterfacefor argument and option access. - Implement
OutputInterfacewith verbosity and semantic methods. - Implement
ConsoleMiddlewareInterfacefor execution wrapping. - Implement
ConsoleExceptionInterfacefor standardized errors.
3. Standardized Constants
- Implement
Verbositylevel constants. - Implement
ExitCodesemantic constants (sysexits.h).
4. Helper & DX Contracts
- Implement
InteractionInterfacefor portable interactivity. - Implement
ProgressBarInterface,TableInterface, andMarkdownConverterInterface. - Implement PHP 8 Attributes (
#[Cmd],#[Arg],#[Opt]). - Implement
HasAttributestrait for attribute-to-interface bridging.