While verifying the behavior of decorated dependent scoped beans on OpenWebBeans, Gurkan mentioned that he observed the same behavior on WELD.  While verifying myself I noticed two behaviors that seem to conflict with the spec.

1) Non-normal scoped beans don't have any restrictions on public fields.  A quick test showed that changes made to public fields directly are not reflected when a call to a getter method that returns that value of the public field is made.  Presumably this is because there is an proxy like object in the middle.

For example

@Inject MyBean myBean;

myBean.number = 7;
myBean.getNumber(); //would return the default value for number and not 7 which it was just set to.

2) Non-normal scoped beans don't require a public no-args constructor.  If the dependent scoped bean instead had a constructor annotated with @Inject (as per 3.1.1), an InstantiationException was thrown.

Are these expected restrictions once that dependent scoped bean is Decorated?

Sincerely,

Joe