What are the two modes for Silverscript covenant declarations?
Silverscript covenant declarations can run in either Verification mode or Transition mode. Verification mode is the default: it automatically reads the current transaction state using built-in introspection opcodes, so the developer only needs to write the validation logic. Transition mode gives the script explicit control over computing new states and accepts extra call arguments for cases where the new state depends on caller-provided data. Choosing the right mode matters because Verification mode is simpler and covers most use cases, while Transition mode unlocks more complex state logic that verification alone cannot express.