Skip to content

IntegrationEngine v8.0.0

Choose a tag to compare

@CarlosGude CarlosGude released this 22 Sep 16:03
· 42 commits to main since this release

IntegrationEngine v8.0.0

A major release with breaking API changes that improve security, simplify configuration, and enhance type safety.

πŸ” Security Improvements

  • Scalar-only lifecycle events β€” Events no longer carry response objects or exceptions, preventing accidental secret leaks in logs
  • Built-in SSRF protection β€” Declarative host allowlists with optional private network blocking
  • Safe observability β€” All events contain only primitives (strings, numbers), never secrets

βš™οΈ Simplified Configuration

  • Webhook definitions in YAML β€” Centralized, contract-first webhook configuration
  • Declarative retries & timeouts β€” Configuration-driven retry policies with Retry-After support
  • Form encoding support β€” encoding: form in action YAML for form-encoded requests

🎯 Type Safety

  • Optional PHPStan rules β€” Validate mapper/action pairing, response class modifiers, facade return types
  • Connection resolvers β€” Multi-connection integrations with per-connection auth namespacing
  • Request middleware β€” Extensible request signing (OAuth 1.0a, etc.) for the fully-built request

πŸš€ What's New

  • Framework-independent error classification
  • debug:integration command for inspecting configurations
  • Batch token refresh with shared auth
  • Concurrent batch dispatch with encoding preservation
  • Request middleware for custom request signing

⚠️ Breaking Changes

  1. Lifecycle events β€” ActionStarted, ActionCompleted, ActionFailed β†’ RequestSent, ResponseMapped, RequestFailed (scalar-only)
  2. Webhooks β€” Move to YAML configuration; mappers still extend AbstractWebhookMapper
  3. Idempotency β€” Legacy webhook idempotency services removed; applications must implement their own

πŸ“š Migration

See UPGRADE-8.0.md for a comprehensive migration guide covering:

  • Lifecycle events β†’ scalar-only observability (30 min/integration)
  • Webhook YAML definitions (45 min/webhook)
  • Configuration changes (20 min)
  • Estimated total: 2-4 hours per integration

πŸ“‹ Changelog

See CHANGELOG.md [8.0.0] for detailed features and fixes.

βœ… Quality

  • 880/880 tests passing (100%)
  • 0 phpstan errors (max level)
  • 0 architecture violations (deptrac)
  • Complete documentation and migration guide

πŸ”— Links


PHP: β‰₯ 8.2 | Symfony: 6.4, 7.x | Stability: Stable