The current version of Drupal Coder (8.3.9) has an incorrect composer definition in it (see https://www.drupal.org/project/coder/issues/3134853) and as a result, it isn't working properly when running. As a result, BLT will throw an error that:
ERROR: Referenced sniff "Drupal" does not exist
The full error output might look something like:
blt validate > tests:composer:validate Validating composer.json and composer.lock... [ExecStack] composer validate --no-check-all --ansi [ExecStack] Running composer validate --no-check-all --ansi in /Users/mike.madison/git/d4g/drupal4gov.us ./composer.json is valid, but with a few warnings See https://getcomposer.org/doc/04-schema.md for details on the schema No license specified, it is recommended to do so. For closed-source software you may use "proprietary" as license. [ExecStack] Done in 0.866s > tests:php:lint Linting PHP files... Iterating over fileset files.php.custom.modules... > tests:phpcs:sniff:all [ExecStack] '/Users/mike.madison/git/d4g/drupal4gov.us/vendor/bin/phpcs' ERROR: Referenced sniff "Drupal" does not exist Run "phpcs --help" for usage information [ExecStack] Exit code 3
The suggested resolution (as of 5/12/2020) is to manually pin your composer file to version 8.3.8 of drupal/coder to work around this issue. The resolution will continue to evolve as the drupal/coder project addresses this.
Cause (this is optional)
This is caused by an upstream change in drupal/coder and not caused by BLT or other Acquia products.