Skip to content

#186 - Type the process manager and the process configuration registry on their process-bundle interfaces - #204

Merged
njoubert-cleverage merged 1 commit into
mainfrom
186
Oct 22, 2026
Merged

njoubert-cleverage merged 1 commit into
mainfrom
186

Conversation

@njoubert-cleverage

Copy link
Copy Markdown
Member

Description

Fixes #186.

The five constructors typed on the concrete classes of process-bundle (@final since 5.4, final in v6.0) are typed on the interfaces added by cleverage/process-bundle#312 (5.4), so that an application can decorate or replace these services for the UI:

Class Before After
Controller\ProcessExecuteController ProcessManager ProcessManagerInterface
Message\ProcessExecuteHandler ProcessManager ProcessManagerInterface
Form\Type\LaunchType ProcessConfigurationRegistry ProcessConfigurationRegistryInterface
Manager\ProcessConfigurationsManager ProcessConfigurationRegistry ProcessConfigurationRegistryInterface
Validator\IsValidProcessCodeValidator ProcessConfigurationRegistry ProcessConfigurationRegistryInterface

They only use methods of the interfaces (execute(), getProcessConfiguration(), getProcessConfigurations(), hasProcessConfiguration()). The services are still wired explicitly with @cleverage_process.manager.process / @cleverage_process.registry.process_configuration, unchanged. The tests stub / mock the interfaces instead of the concrete classes.

cleverage/process-bundle: ^5.4 is already required since 3.3: no change in composer.json.

Checked locally with coverage (pcov): 482 tests, no risky test; PHPStan, PHP-CS-Fixer, Rector and Twig-CS-Fixer OK.

Requirements

  • Documentation updates
    • Reference
    • Changelog
  • Unit tests

Breaking changes

None: the constructor parameters are widened (the concrete classes implement the interfaces).

🤖 Generated with Claude Code

…y on their process-bundle interfaces

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@njoubert-cleverage
njoubert-cleverage merged commit a4a760a into main Oct 22, 2026
26 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Type the process manager and the process configuration registry on their process-bundle interfaces

1 participant