Error message
In the message, %s marks a value that the engine fills in when it raises the error.
The story
The engine would not start because there are too many builtins for one contract set. Let me explain the arithmetic, because it is the whole story. The execution law is a contract set, and every builtin joins it twice: once with its own contract, and once with its effect contract. So the number of builtins allowed is the set's capacity divided by two. The engine computes that ceiling from the same formula it enforces, so the two numbers can never drift apart. The same goes for the Trinity and effect tables: go past any of those ceilings and you get this same capacity message, naming the ceiling you hit. Why refuse instead of just cutting the list short? Because a truncated list would answer that builtin does not exist about a builtin you plainly declared. That is a lie, and the engine prefers a loud stop. Picture a hotel with a fixed number of room keys: the last guest is not given a fake key, the desk tells them the hotel is full. The message gives you the limit and the builtin where it was reached. To grow, raise W_MAX_CONTRACTS in tungsten, or split the declaration across more than one contract set.
Text from the Rush engine's error catalogue.
