Priority: High
Type: Technical Debt / Bug Fix
Part of Epic: #208 (Deployment Architecture Refactor)
Depends On: #211 (Phase 3 - Build Testing Infrastructure)
Background
In PR #239, we temporarily downgraded WolverineFx from 5.9.0 to 5.8.0 to fix E2E test failures that were blocking deployment (deployment run #20360658509). The root cause was identified as WolverineFx 5.9.0 changing log message formats that the ExecutableRunner's infrastructure log filtering logic couldn't handle properly.
This is a temporary fix to unblock deployments. This issue tracks the proper investigation and upgrade back to WolverineFx 5.9.0.
Problem
When WolverineFx was upgraded from 5.8.0 to 5.9.0 (PR #236), 20 E2E tests failed in the deployment workflow. The tests are in tests/Morphir.E2E.Tests/ and validate CLI command execution through the ExecutableRunner infrastructure.
The ExecutableRunner (located at tests/Morphir.E2E.Tests/Infrastructure/ExecutableRunner.cs) filters infrastructure log messages to prevent them from contaminating test assertions. The filtering logic in the IsInfrastructureLogMessage method is based on string patterns that match WolverineFx 5.8.0 log output formats.
Tasks
Investigation Phase
Implementation Phase
Validation Phase
Files to Modify
-
tests/Morphir.E2E.Tests/Infrastructure/ExecutableRunner.cs
- Update
IsInfrastructureLogMessage method with new log patterns
- Consider making the filtering more robust/flexible
-
Directory.Packages.props
- Change
WolverineFx version from 5.8.0 to 5.9.0
-
tests/Morphir.E2E.Tests/ (potentially)
- Add unit tests for log filtering if they don't exist
- Update any E2E tests that make assumptions about log output
Expected Log Patterns to Handle
Based on existing filtering in ExecutableRunner.cs, ensure these patterns still work:
- Wolverine extension scanning messages
- Application startup/shutdown messages
- Hosting environment messages
- Open Telemetry metrics messages
- Code generation mode messages
- Assembly searching messages
And identify any new patterns introduced in 5.9.0.
Definition of Done
Testing Strategy
-
Local Testing
./build.sh Compile
./build.sh PublishSingleFile --rid linux-x64
./build.sh TestE2E --executable-type trimmed
-
CI Testing
- Trigger deployment workflow manually
- Verify all matrix builds pass (linux-x64, linux-arm64, osx-arm64, win-x64)
- Confirm E2E tests pass on all platforms
References
Notes
Priority: High
Type: Technical Debt / Bug Fix
Part of Epic: #208 (Deployment Architecture Refactor)
Depends On: #211 (Phase 3 - Build Testing Infrastructure)
Background
In PR #239, we temporarily downgraded WolverineFx from 5.9.0 to 5.8.0 to fix E2E test failures that were blocking deployment (deployment run #20360658509). The root cause was identified as WolverineFx 5.9.0 changing log message formats that the ExecutableRunner's infrastructure log filtering logic couldn't handle properly.
This is a temporary fix to unblock deployments. This issue tracks the proper investigation and upgrade back to WolverineFx 5.9.0.
Problem
When WolverineFx was upgraded from 5.8.0 to 5.9.0 (PR #236), 20 E2E tests failed in the deployment workflow. The tests are in
tests/Morphir.E2E.Tests/and validate CLI command execution through the ExecutableRunner infrastructure.The ExecutableRunner (located at
tests/Morphir.E2E.Tests/Infrastructure/ExecutableRunner.cs) filters infrastructure log messages to prevent them from contaminating test assertions. The filtering logic in theIsInfrastructureLogMessagemethod is based on string patterns that match WolverineFx 5.8.0 log output formats.Tasks
Investigation Phase
Implementation Phase
IsInfrastructureLogMessagein ExecutableRunner.cs to handle 5.9.0 patternsValidation Phase
Files to Modify
tests/Morphir.E2E.Tests/Infrastructure/ExecutableRunner.cs
IsInfrastructureLogMessagemethod with new log patternsDirectory.Packages.props
WolverineFxversion from 5.8.0 to 5.9.0tests/Morphir.E2E.Tests/ (potentially)
Expected Log Patterns to Handle
Based on existing filtering in ExecutableRunner.cs, ensure these patterns still work:
And identify any new patterns introduced in 5.9.0.
Definition of Done
Testing Strategy
Local Testing
CI Testing
References
Notes