To solve the problem of different features being intended for different consumers, rad defines two commitment levels: private, and committed. All API components: derived types, interfaces and the various interface sub-components (method, attribute, and event) define their commitment level independently.
Commitment levels provide hints to API consumers about the anticipated use and expected stability of a feature. A feature with a commitment of committed can be used reliably. The private features, are likely to be subject to change and represent implementation details not intended for public consumption.