1. A system for providing stable add-on applications to a released software environment, comprising: an electronic storage medium configured to store an add-on application; an electronic processor in communication with the electronic storage medium; wherein the released software environment includes released objects designed for access by outside programs and internal objects designed for use by only the released software environment and an adaptation component; wherein the add-on application includes the adaptation component and an application component, both configured to execute on the electronic processor; wherein the application component is configured to call only released objects and the adaptation component is configured to call internal objects; wherein the released software environment includes an interface that includes all objects accessed by the add-on application; wherein the interface includes an object freeze function that operates on all the objects accessed by the add-on application; wherein the interface includes an automatic test function to detect changes in behavior of the objects accessed by the add-on application; and wherein the electronic processor is configured to, freeze all objects in the interface, so that no changes can be made without sending a change indication; invoke the automatic test function to detect changes to the interface; responsive to the indication by the automatic test function, compile a new interface version and a new adaptation component version; refreeze any newly changed components of the interface within the new interface version or new adoption component version; and update the automatic test function to a new version for detecting future changes; wherein the indication from the automatic test function is transmitted to the developer upon detection of a change in one or more of the objects accessed by the add-on application.