0.3.0
New Features
-
HashUtility: Centralized hashing utility for consistent xxh3 hashing across plugin (#6)
- Single source of truth for hash algorithm
- Cleaner API with
HashUtility::hash()andHashUtility::hashFile() - Full test coverage (10 tests)
-
Cache Validation: New cache integrity validation system (#5)
AttributeCacheValidatorservice validates cached attribute filesAttributeCacheValidationResultvalue object for validation results--validateoption in cache command to verify cache integrity- File existence and hash mismatch detection
Improvements
-
Commands Refactored (#5):
- Renamed to plural forms:
attributes:cache,attributes:inspect,attributes:list - Former
attribute:discoveris nowattributes:cache - Added
--no-clearand--clear-onlyoptions to cache command
- Renamed to plural forms:
-
PathResolver Simplification:
- Now accepts
PluginLocatordirectly instead of Closure callback - Cleaner API, easier to understand
- Lazy loading behavior preserved
- Now accepts
-
Internal Improvements:
- Simplified cache key constant (
CACHE_KEYvsREGISTRY_CACHE_KEY_ALL) - Refactored test helpers to
AttributeRegistryTestTrait - Updated PathResolver test names for clarity
- Improved code coverage across all components
- Simplified cache key constant (