pub async fn write_facts(uri: &str, facts: &[FileFacts]) -> Result<(), Error>
Persist per-file parse facts (JSON per file) so incremental runs can re-resolve everything.