pub fn check_discovered_files(
trees: &[(PathBuf, PathBuf)],
file_lists: &[Vec<PathBuf>],
errors: &mut ErrorSink,
) -> Result<(), ()>Expand description
The checks every tree’s file list must pass regardless of where it came
from — a real disk walk (phase_discovery) or a caller-supplied
discovered/CompileOptions.sources list (#1077/#1081 review). An empty
project (bynk.project.no_sources) signals a bail via Err(()); a
file/directory name conflict is a non-fatal diagnostic.