Commit Graph

6 Commits

Author SHA1 Message Date
760e1e752a Add update-check endpoint support (v0.2.1)
Implement /update-check endpoint aligned with remote OpenAPI spec:
- Add checkForUpdates() method to LicenseClientInterface
- Add UpdateInfo DTO for update check responses
- Add ProductNotFoundException for product_not_found error
- Update local openapi.json to v0.4.0

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-27 20:52:12 +01:00
c2cb1814de Add comprehensive client implementation documentation
- Create docs/client-implementation.md with full integration guide
- Document all classes: clients, DTOs, exceptions, security classes
- Add integration examples for WordPress, Laravel, Symfony
- Include best practices and troubleshooting sections
- Update README with documentation links

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-23 16:33:10 +01:00
e87a60926b Add security layer with response signature verification
Security classes:
- ResponseSignature: HMAC-SHA256 signing and verification
- StringEncoder: XOR-based string obfuscation for source code
- IntegrityChecker: Source file hash verification
- SignatureException, IntegrityException for error handling

SecureLicenseClient:
- Verifies server response signatures
- Prevents response tampering and replay attacks
- Per-license derived signing keys
- Optional code integrity checking

Documentation:
- docs/server-implementation.md with complete WordPress/WooCommerce
  integration guide for signing responses

Tests:
- 34 new security tests (66 total, all passing)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 16:16:59 +01:00
af735df260 Add PHPUnit test suite
- Add PHPUnit 11.0 as dev dependency
- Add phpunit.xml configuration
- Add DTO tests (LicenseInfo, LicenseStatus, ActivationResult)
- Add Exception tests (factory method, all exception types)
- Add LicenseClient tests with mocked HTTP responses
- Update README with testing instructions
- Update CHANGELOG

32 tests, 93 assertions

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 16:05:28 +01:00
9e0cf0825f Add object-oriented license client library (v0.0.2)
- Add LicenseClient with PSR-3 logging and PSR-6 caching support
- Add DTO classes: LicenseInfo, LicenseStatus, ActivationResult
- Add LicenseState enum for license status values
- Add comprehensive exception hierarchy for error handling
- Add PSR dependencies (psr/log, psr/cache, psr/http-client)
- Update README with usage examples
- Update CHANGELOG for v0.0.2

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 15:51:05 +01:00
1fdedd16ad Initialize composer project for WooCommerce Licensed Product Client
- Set up composer.json with package metadata and PSR-4 autoloading
- Add symfony/http-client ^7.0 as HTTP client dependency
- Create project structure (src/, tests/, tmp/)
- Add README.md with project overview
- Add CHANGELOG.md to track version history
- Add .gitignore for vendor and cache files
- Include OpenAPI specification in tmp/openapi.json

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 15:37:20 +01:00