Expose `IBuildMiddleware` as a public extension point. Maps to surface 1 in [RFC #2](https://github.com/ChrisonSimtian/Fallout/issues/98). ## Scope - Make `IBuildMiddleware` and its phases public (Initializing / DiscoveringTargets / Planning / Executing / Reporting). - Registration via `IServiceCollection.AddFalloutMiddleware<T>(phase, priority)` or similar. - The v11 internal pipeline (#93, #94) is the host-side implementation; v12 promotes the contract. - Validate priority/phase contract in conflict resolution (SDK-4). ## Depends on v11: #93, #94. v12: SDK-1.
Expose
IBuildMiddlewareas a public extension point. Maps to surface 1 in RFC #2.Scope
IBuildMiddlewareand its phases public (Initializing / DiscoveringTargets / Planning / Executing / Reporting).IServiceCollection.AddFalloutMiddleware<T>(phase, priority)or similar.Depends on
v11: #93, #94. v12: SDK-1.