this is intentional and will not change back. At last Weld servlet container integration follows the spec. See also my blog post - Weld 2.2.5 - servlet container integration done correctly, and Weld documentation - Bean Archive Isolation.
The behavior changes caused the @Alternative broke, I have a jar that contain the @Producer methods, and in arquillian test, I have to use @Alternative to provide different implementation, the @Alternative sit in different jar, then when I run the arquillian test, it broken, basiclly the @Alternative is never alternative, it still try to use the original @Producer methods. is there any work around of that other than flat deployment?
Never mind, I figured, so I have to @Priority to @Alternative, @Interceptor to enable the global.