Skip to content

refactor: inline OutputConfigurationExtension into Infrastructure#62

Merged
Notorious-Coding merged 1 commit into
developfrom
claude/ecstatic-shockley-50cf9c
Apr 26, 2026
Merged

refactor: inline OutputConfigurationExtension into Infrastructure#62
Notorious-Coding merged 1 commit into
developfrom
claude/ecstatic-shockley-50cf9c

Conversation

@Notorious-Coding
Copy link
Copy Markdown
Owner

What changed

  • Deleted NotoriousTest.Core/Extensions/OutputConfigurationExtension.cs
  • Updated Infrastructure<TOutputConfiguration, TMetadata> to own the configuration list directly

Why

OutputConfigurationExtension<T> was a pure data holder — a List<ConfigurationEntry<T>> plus two AddEntry helpers — registered as an IInfrastructureExtension without implementing any lifecycle hooks (OnBeforeInitialize, etc.). The extension mechanism added indirection with no benefit. The list and methods now live directly in the Infrastructure<TOutputConfiguration, TMetadata> class.

What reviewers should know

  • Public API is unchanged: OutputConfiguration, AddEntry(key, value), and AddEntry(value) are all still present on the same class.
  • The keyless AddEntry(TOutputConfiguration value) overload (previously only on the extension) is now also exposed directly on the class — it was already accessible via the extension before.
  • No callers outside Infrastructure.cs referenced OutputConfigurationExtension directly.
  • All library projects build cleanly (0 errors, 0 warnings).

…cture

Remove the OutputConfigurationExtension<T> wrapper class and store the
configuration list directly in Infrastructure<TOutputConfiguration, TMetadata>.
The extension was a pure data holder with no lifecycle hooks, making the
indirection unnecessary.

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
@Notorious-Coding Notorious-Coding merged commit e990b86 into develop Apr 26, 2026
1 check passed
@Notorious-Coding Notorious-Coding deleted the claude/ecstatic-shockley-50cf9c branch May 6, 2026 10:22
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.

1 participant