fetch tags and guard promote when --skip-cd is used
accept base as a valid language in validate-inputs
Non-language projects (e.g. vergil-claude-plugin) pass base as the language identifier from cd-release.yml. The validator now recognizes non-language project types and skips ecosystem-specific checks while still rejecting incompatible flags like --registry-publish and --container-tag. Ref #1266