Skip to content

v1.0.0-alpha-317

@ignis-celestis ignis-celestis tagged this 27 Jul 11:25
DebugContainerPass snapshotted $container->getDefinitions() at BEFORE_OPTIMIZATION
priority 60 — ahead of every negative-priority pass and every removal pass — and baked
that into vortos:debug:container. The command therefore described a container that never
existed at runtime:

  * listed InMemoryAlertStateStore, which DurableAlertStorePass supersedes and removal
    then deletes;
  * omitted AlertAuditRecorder and DbalAlertStateStore, registered by passes at -17/-15;
  * showed 19 services carrying vortos.deploy.preflight_check where 25 carry it, missing
    exactly the six added by TagPreflightChecksPass at -48.

A debug command that reports services which do not exist and hides ones that do is worse
than no debug command. Its output was twice read as evidence that a fix had not worked,
when the fix was correct and the reporting was wrong.

The pass now runs in AFTER_REMOVING. The old placement was justified as 'must run before
ResolveNamedArgumentsPass converts $name → positional index', but that constraint only
ever applied to this pass setting its OWN arguments by name; those are positional now.
Argument names for every other service are recovered by reflecting the constructor, so
the --service detail view still reads $connection rather than 0.

Two phpstan-baseline entries for summarizeArgs are dropped: the added @param/@return
annotations fix the errors they recorded, so they were unmatched.

811 tests pass in the runtime image; PHPStan back to the pre-existing 123.

Split from f542e71b017bd2886ab9ad747a787684995d9550
Assets 2
Loading