fn hook_trigger_names(dir: &Path, declared: Option<&Value>) -> Vec<String>
Hook trigger names over the default hooks/hooks.json plus whatever the manifest declares; a declaration adds sources, it never suppresses the default.