-
New Feature
-
Resolution: Done
-
Medium
-
None
-
None
-
S15 SIMPLY Jul12-Jul25
The current library registry design treats readiness for production as a decision to be made by the registry admin. The circulation manager design treats readiness for production as a decision to be made by the library admin. In real life, readiness for production requires buy-in from both the library admin and the registry admin.
I propose changing the library registry to get rid of Library.stage, replacing it with two fields: Library.library_stage and Library.registry_stage. Both stages can take on the same three values: "testing", "production", and "cancelled". library_stage is set when the registry processes a registration request from a circulation manager; registry_stage is set by the registry's administrative interface.
If both stages are "production", a library will show up in both testing and production feeds.
If either stage is "cancelled", a library will not show up in either testing or production feeds.
For all other combinations, a library will show up in testing feeds but not production feeds.
When the circulation manager registers a library, it can specify any of the three stages. However, once a library starts showing up in production feeds (i.e. both stage fields are "production"), the library cannot take it out of the "production" stage – only the registry can do this.