Right now inner ring nodes split all available containers to perform audit autonomously by getting giant container list from container contract (see #29). Later if audit contract will store audit complexity values per container, inner ring node will do more work asking one more contract to split the tasks.
Instead we can offload it to audit contract. Let it iterate through all containers and pick suitable ones for inner ring node. To do so we need:
add endpoint to container contract that returns storage.Context,
calculate position of inner ring node inside inner ring list in audit contract,
go through storage context with storage.Find in audit contract and return suitable containers.
It should be useful in multiimplementation environment, where it's hard synchronize new audit selection policy. It will be easier to update contract than update multiple Inner Ring implementations.
Right now inner ring nodes split all available containers to perform audit autonomously by getting giant container list from container contract (see #29). Later if audit contract will store audit complexity values per container, inner ring node will do more work asking one more contract to split the tasks.
Instead we can offload it to audit contract. Let it iterate through all containers and pick suitable ones for inner ring node. To do so we need:
storage.Context
,storage.Find
in audit contract and return suitable containers.