So let me explain it briefly. We have an annotation processor that reads from a file outside of the the source directory from a non .java file (app-manifest.yaml). It tries to read this file and merge it with the output of information pulled from Java annotations.