Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: migrate the contract account data structure to kakarot-ssj #158

Closed
5 tasks
Eikix opened this issue Aug 22, 2023 · 4 comments
Closed
5 tasks

feat: migrate the contract account data structure to kakarot-ssj #158

Eikix opened this issue Aug 22, 2023 · 4 comments
Labels
enhancement New feature or request smart-contract-logic A specific type of opcode that requires smart contract logic as opposed to pure cairo timebox-1day 1 day exploration - tinkering

Comments

@Eikix
Copy link
Member

Eikix commented Aug 22, 2023

Feature Request

In Kakarot Cairo 0, to mimic the EVM contract accounts (Smart Contracts), we use Starknet contracts.
Source:

Each contract_account needs:

Tasks

Note that for storing its own bytecode we can:
Use storage index: Besides storing 32/16 bytes for each storage, once the hash for the storage location is calculated we can access up to 256 more slots by adding to the index.

Milan made a cool Alexandria storage list lib for this, we can use it here.

Additional Context

If the feature request is approved, would you be willing to submit a PR?
(Help can be provided if you need assistance submitting a PR)

  • Yes
  • No
@Eikix Eikix added enhancement New feature or request timebox-1day 1 day exploration - tinkering smart-contract-logic A specific type of opcode that requires smart contract logic as opposed to pure cairo no-stale labels Aug 22, 2023
@github-project-automation github-project-automation bot moved this to 🆕 Backlog in Kakarot on Starknet Aug 22, 2023
@Eikix
Copy link
Member Author

Eikix commented Aug 22, 2023

Linked to #55 and #134
All three will be closed at the same time

@Eikix Eikix removed the no-stale label Aug 23, 2023
@Eikix Eikix added this to the Kakarot Cairo Migration milestone Aug 29, 2023
@Eikix
Copy link
Member Author

Eikix commented Sep 8, 2023

Important update: we are gathering some bugs in the Kakarot v0 codebase, we need to make sure each issue and each PR in Kakarot-ssj is aware of the lists of known bugs. Look at this link everytime you take an issue and check your issue isn't targeted by a known bug.

@Eikix
Copy link
Member Author

Eikix commented Sep 8, 2023

Important update: we are gathering some bugs in the Kakarot v0 codebase, we need to make sure each issue and each PR in Kakarot-ssj is aware of the lists of known bugs. Look at this tracking issue everytime you take an issue and check your issue isn't targeted by a known bug. Will add this reminder in many places to make sure we keep track of known bugs.

@Eikix
Copy link
Member Author

Eikix commented Oct 10, 2023

Closing this issue for now as Contract Account will not be an individual Starknet smart contract but rather a storage struct inside KakarotCore

@Eikix Eikix closed this as completed Oct 10, 2023
@github-project-automation github-project-automation bot moved this from 🆕 Backlog to ✅ Done in Kakarot on Starknet Oct 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request smart-contract-logic A specific type of opcode that requires smart contract logic as opposed to pure cairo timebox-1day 1 day exploration - tinkering
Projects
No open projects
Archived in project
Development

No branches or pull requests

1 participant