Error message
In the message, %s marks a value that the engine fills in when it raises the error.
The story
A holder in your script asked for one database engine, but your project chose another. Here is the rule. A project picks exactly one engine for all its databases: either sulfur or sql. It says so in its manifest, with a config line, and if it says nothing, the engine is sulfur. Then every database the project declares rests on that one engine. Why only one? Because a database file should have exactly one writer. If sulfur and a SQL program both wrote to the same data, they could corrupt each other, and sulfur is not SQL, so they cannot be swapped silently. So when a holder says where sql, but the project picked sulfur, rush refuses by name. The message tells you which engine the project picked, and what to do. You have two honest options. Change the holder to ask for the engine the project picked, or change the manifest to pick the other engine, for the whole project. One project, one engine, one writer.
Text from the Rush engine's error catalogue.
