I am thinking about trying to structure a problem as a Solr plugin. The nature of the plugin is that it would need to read and write the lucene index to do its work. It could not be cleanly split into URP 'over here' and a Search Component 'over there'.
Are there invariants of Solr that would preclude this, like assumptions in the implementation of the cache?