Skip to content

Extract runtime state into a dedicated Context - #66

Merged
kettasoft merged 2 commits into
masterfrom
refactor/extract-runtime-context
Sep 7, 2026
Merged

Extract runtime state into a dedicated Context#66
kettasoft merged 2 commits into
masterfrom
refactor/extract-runtime-context

Conversation

@kettasoft

Copy link
Copy Markdown
Owner

Summary

Extract transient Filterable state into a dedicated runtime Context while preserving the existing public API and behavior.

Changes

  • Add a dedicated final Runtime\Context class
  • Move builder, request data, applied payloads, skipped payloads, and cache key generator state into Context
  • Delegate existing Filterable state methods to the runtime Context
  • Preserve applied and skipped Payload snapshots
  • Keep validation and cache generation based on complete runtime data
  • Synchronize Context with builders returned by initially() and finally()
  • Throw MissingBuilderException when no builder is available
  • Isolate runtime state between cloned Filterable instances
  • Clone and rebind Engines when cloning filters
  • Update fluent builder forwarding to use the Context-backed builder
  • Add regression tests for Context state, cloning, caching, validation, and builder lifecycle

@kettasoft kettasoft self-assigned this Sep 7, 2026
@kettasoft kettasoft added the enhancement New feature or request label Sep 7, 2026
@kettasoft
kettasoft merged commit 657be76 into master Sep 7, 2026
1 check passed
@kettasoft
kettasoft deleted the refactor/extract-runtime-context branch September 7, 2026 04:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant