Commit Graph

34 Commits

Author SHA1 Message Date
renovate[bot]
293186421c chore(deps): update github/codeql-action action (v4.31.9 → v4.31.11)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-26 01:07:10 +00:00
renovate[bot]
7fe55b86f8 chore(deps): update ivuorinen/actions action (v2026.01.06 → v2026.01.13) (#74)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-15 21:33:45 +02:00
renovate[bot]
497353f4f3 chore(deps)!: update ivuorinen/actions (v2025.12.21 → v2026.01.06) (#71)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-07 15:49:08 +02:00
8866daaf33 feat: add advanced architecture, documentation, and coverage improvements (#65)
* fix(style): resolve PHPCS line-length warnings in source files

* fix(style): resolve PHPCS line-length warnings in test files

* feat(audit): add structured audit logging with ErrorContext and AuditContext

- ErrorContext: standardized error information with sensitive data sanitization
- AuditContext: structured context for audit entries with operation types
- StructuredAuditLogger: enhanced audit logger wrapper with timing support

* feat(recovery): add recovery mechanism for failed masking operations

- FailureMode enum: FAIL_OPEN, FAIL_CLOSED, FAIL_SAFE modes
- RecoveryStrategy interface and RecoveryResult value object
- RetryStrategy: exponential backoff with configurable attempts
- FallbackMaskStrategy: type-aware fallback values

* feat(strategies): add CallbackMaskingStrategy for custom masking logic

- Wraps custom callbacks as MaskingStrategy implementations
- Factory methods: constant(), hash(), partial() for common use cases
- Supports exact match and prefix match for field paths

* docs: add framework integration guides and examples

- symfony-integration.md: Symfony service configuration and Monolog setup
- psr3-decorator.md: PSR-3 logger decorator pattern implementation
- framework-examples.md: CakePHP, CodeIgniter 4, Laminas, Yii2, PSR-15
- docker-development.md: Docker development environment guide

* chore(docker): add Docker development environment

- Dockerfile: PHP 8.2-cli-alpine with Xdebug for coverage
- docker-compose.yml: development services with volume mounts

* feat(demo): add interactive GDPR pattern tester playground

- PatternTester.php: pattern testing utility with strategy support
- index.php: web API endpoint with JSON response handling
- playground.html: interactive web interface for testing patterns

* docs(todo): update with completed medium priority items

- Mark all PHPCS warnings as fixed (81 → 0)
- Document new Audit and Recovery features
- Update test count to 1,068 tests with 2,953 assertions
- Move remaining items to low priority

* feat: add advanced architecture, documentation, and coverage improvements

- Add architecture improvements:
  - ArrayAccessorInterface and DotArrayAccessor for decoupled array access
  - MaskingOrchestrator for single-responsibility masking coordination
  - GdprProcessorBuilder for fluent configuration
  - MaskingPluginInterface and AbstractMaskingPlugin for plugin architecture
  - PluginAwareProcessor for plugin hook execution
  - AuditLoggerFactory for instance-based audit logger creation

- Add advanced features:
  - SerializedDataProcessor for handling print_r/var_export/serialize output
  - KAnonymizer with GeneralizationStrategy for GDPR k-anonymity
  - RetentionPolicy for configurable data retention periods
  - StreamingProcessor for memory-efficient large log processing

- Add comprehensive documentation:
  - docs/performance-tuning.md - benchmarking, optimization, caching
  - docs/troubleshooting.md - common issues and solutions
  - docs/logging-integrations.md - ELK, Graylog, Datadog, etc.
  - docs/plugin-development.md - complete plugin development guide

- Improve test coverage (84.41% → 85.07%):
  - ConditionalRuleFactoryInstanceTest (100% coverage)
  - GdprProcessorBuilderEdgeCasesTest (100% coverage)
  - StrategyEdgeCasesTest for ReDoS detection and type parsing
  - 78 new tests, 119 new assertions

- Update TODO.md with current statistics:
  - 141 PHP files, 1,346 tests, 85.07% line coverage

* chore: tests, update actions, sonarcloud issues

* chore: rector

* fix: more sonarcloud fixes

* chore: more fixes

* refactor: copilot review fix

* chore: rector
2025-12-22 13:38:18 +02:00
renovate[bot]
170cfb2fc9 chore(deps)!: update actions/cache (v4.3.0 → v5.0.1) (#60)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-17 23:01:36 +02:00
renovate[bot]
6307a37e4d chore(deps): update codecov/codecov-action action (v5.5.1 → v5.5.2) (#62)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-16 10:09:39 +00:00
renovate[bot]
1967ee722b chore(deps)!: update actions/upload-artifact (v5.0.0 → v6.0.0) (#61)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-16 12:03:41 +02:00
renovate[bot]
03d24479c0 chore(deps): update github/codeql-action action (v4.31.7 → v4.31.8) (#63)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-16 09:49:32 +02:00
renovate[bot]
10923e99e9 chore(deps): update ivuorinen/actions action (v2025.11.30 → v2025.12.07) (#30) 2025-12-08 15:04:18 +02:00
renovate[bot]
7a48d493c4 chore(deps): update actions/checkout action (v6.0.0 → v6.0.1) (#50) 2025-12-08 07:40:16 +02:00
renovate[bot]
ad11859b46 chore(deps): update github/codeql-action action (v4.31.5 → v4.31.7) (#57) 2025-12-08 07:17:22 +02:00
c3d6b8b1c6 chore: workflow and package updates, linting (#59)
* chore(deps): update composer packages

* chore(ci): update workflows

* chore(lint): fix codeql language, composer lint:fix

* chore: set php version 8.2, update pre-commit hooks, linting
2025-12-01 11:18:44 +02:00
e293587296 fix(ci): actions not workflows 2025-11-11 22:55:15 +02:00
ac4559ae48 fix(ci): add workflows write to pr-lint 2025-11-11 22:45:13 +02:00
c30c136a92 chore(ci): add content write permission to pr-lint 2025-11-11 22:38:13 +02:00
renovate[bot]
ddfa3151ea chore(deps): update actions/cache action (v4.2.3 → v4.3.0) (#42)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-11-07 20:35:08 +02:00
renovate[bot]
e37bbbedcd chore(deps)!: update actions/checkout (v4.2.2 → v5.0.0) (#39) 2025-11-04 22:27:58 +02:00
renovate[bot]
294e5e5f3c chore(deps): update codecov/codecov-action action (v5.4.3 → v5.5.1) (#43)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-11-04 07:47:44 +02:00
renovate[bot]
0ba827a9fb chore(deps)!: update actions/upload-artifact (v4.6.2 → v5.0.0) (#29) 2025-10-31 17:03:21 +02:00
dependabot[bot]
5bf81ef083 ci(deps): bump shivammathur/setup-php from 2.35.2 to 2.35.5 (#37)
Bumps [shivammathur/setup-php](https://github.com/shivammathur/setup-php) from 2.35.2 to 2.35.5.
- [Release notes](https://github.com/shivammathur/setup-php/releases)
- [Commits](https://github.com/shivammathur/setup-php/compare/2.35.2...bf6b4fbd49ca58e4608c9c89fba0b8d90bd2a39f)

---
updated-dependencies:
- dependency-name: shivammathur/setup-php
  dependency-version: 2.35.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-31 14:07:04 +02:00
renovate[bot]
5166e41fbc chore(deps): update github/codeql-action action (v4.30.9 → v4.31.2) (#32)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-31 14:03:42 +02:00
00c6f76c97 feat: performance, integrations, advanced features (#2)
* feat: performance, integrations, advanced features

* chore: fix linting problems

* chore: suppressions and linting

* chore(lint): pre-commit linting, fixes

* feat: comprehensive input validation, security hardening, and regression testing

- Add extensive input validation throughout codebase with proper error handling
- Implement comprehensive security hardening with ReDoS protection and bounds checking
- Add 3 new regression test suites covering critical bugs, security, and validation scenarios
- Enhance rate limiting with memory management and configurable cleanup intervals
- Update configuration security settings and improve Laravel integration
- Fix TODO.md timestamps to reflect actual development timeline
- Strengthen static analysis configuration and improve code quality standards

* feat: configure static analysis tools and enhance development workflow

- Complete configuration of Psalm, PHPStan, and Rector for harmonious static analysis.
- Fix invalid configurations and tool conflicts that prevented proper code quality analysis.
- Add comprehensive safe analysis script with interactive workflow, backup/restore
  capabilities, and dry-run modes. Update documentation with linting policy
  requiring issue resolution over suppression.
- Clean completed items from TODO to focus on actionable improvements.
- All static analysis tools now work together seamlessly to provide
  code quality insights without breaking existing functionality.

* fix(test): update Invalid regex pattern expectation

* chore: phpstan, psalm fixes

* chore: phpstan, psalm fixes, more tests

* chore: tooling tweaks, cleanup

* chore: tweaks to get the tests pass

* fix(lint): rector config tweaks and successful run

* feat: refactoring, more tests, fixes, cleanup

* chore: deduplication, use constants

* chore: psalm fixes

* chore: ignore phpstan deliberate errors in tests

* chore: improve codebase, deduplicate code

* fix: lint

* chore: deduplication, codebase simplification, sonarqube fixes

* fix: resolve SonarQube reliability rating issues

Fix useless object instantiation warnings in test files by assigning
instantiated objects to variables. This resolves the SonarQube reliability
rating issue (was C, now targeting A).

Changes:
- tests/Strategies/MaskingStrategiesTest.php: Fix 3 instances
- tests/Strategies/FieldPathMaskingStrategyTest.php: Fix 1 instance

The tests use expectException() to verify that constructors throw
exceptions for invalid input. SonarQube flagged standalone `new`
statements as useless. Fixed by assigning to variables with explicit
unset() and fail() calls.

All tests pass (623/623) and static analysis tools pass.

* fix: resolve more SonarQube detected issues

* fix: resolve psalm detected issues

* fix: resolve more SonarQube detected issues

* fix: resolve psalm detected issues

* fix: duplications

* fix: resolve SonarQube reliability rating issues

* fix: resolve psalm and phpstan detected issues
2025-10-31 13:59:01 +02:00
renovate[bot]
da4cf50c95 chore(deps): update github/codeql-action action (v4.30.8 → v4.30.9) (#27)
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-21 17:04:41 +03:00
renovate[bot]
3cf7e7b222 chore(deps)!: update github/codeql-action (v3.30.3 → v4.30.8) (#21) 2025-10-15 23:30:43 +03:00
renovate[bot]
6fa57dee2d chore(deps): update shivammathur/setup-php action (2.35.4 → 2.35.5) (#20) 2025-09-24 18:09:46 +03:00
renovate[bot]
a5a285d527 chore(deps): update ivuorinen/actions action (25.9.19 → 25.9.21) (#19) 2025-09-24 18:06:31 +03:00
renovate[bot]
bc78843e94 chore(deps)!: update actions/checkout (v4.3.0 → v5.0.0) (#13) 2025-09-22 01:18:50 +03:00
renovate[bot]
cc70f1b331 chore(deps): update ivuorinen/actions action (25.7.21 → 25.9.19) (#12) 2025-09-21 21:28:16 +03:00
renovate[bot]
275f2231cc chore(deps): update shivammathur/setup-php action (2.35.0 → 2.35.4) (#6) 2025-09-18 19:35:24 +03:00
renovate[bot]
74ff852b34 chore(deps): update actions/checkout action (v4.2.2 → v4.3.0) (#7) 2025-09-18 16:08:48 +03:00
renovate[bot]
3bcc0fe551 chore(deps): update saschanowak/clovercodecoveragesummary action (1.1.0 → 1.1.1) (#5) 2025-09-18 16:07:42 +03:00
renovate[bot]
0d45cacdc1 chore(deps): update github/codeql-action action (v3.29.4 → v3.30.3) (#8) 2025-09-18 11:47:44 +03:00
0fdb31cb75 chore: cleanup, update workflows, codestyle 2025-07-28 15:14:59 +03:00
8c67190431 feat: initial commit 2025-07-28 15:05:34 +03:00