keep-starknet-strange/snos

Track #1: Hint Processor

Closed this issue · 1 comments

Utilize the cairo-vm custom hint processor to implement and execute the Starknet OS hints.

General Guidelines:

  • use types from the cairo-vm/starknet-api where possible
  • adhere as closely to the pythonic hint as possible
  • note that vm_exit_scope() is implemented by the cairo-vm

Steps for implementing a new hint:

  • check the hint has not been added to hints_raw.rs
  • if not copy the text string from the compiled os and post in hints raw
  • implement the hint functions in hints/mod.rs
  • link the hint definition to the hint function in the sn_hint_processor

Testing hint:

  • run the test script from the project root ./scripts/setup-tests.sh
  • you will see the file build/os_debug.json for debugging the os hint run
  • implement a unit test where applicable

moving away from large tickets