web3wagers / gostarkme

Fund raising project in Starknet ecosystem
http://web3wagers.github.io/gostarkme/
GNU Affero General Public License v3.0
18 stars 74 forks source link

[feat] Add new asserts to set_name #252

Closed EmmanuelAR closed 5 days ago

EmmanuelAR commented 1 week ago

This issue will be part of ODHack10, please apply via Onlydust app

vestor-dev commented 1 week ago

Hi, I'm martin and I'll be working on issue #252.

I estimate this will take 48hrs to complete.

This is how I would tackle this issue:

  1. Locate set_name: Find the method in contracts/src/fund.cairo.
  2. Access Admin Constants: Use VALID_ADDRESS_1 and VALID_ADDRESS_2 from fund_manager_constants.cairo.
  3. Add Admin Check: Add an assert to verify the caller's address matches one of the admin constants.

it will be my first time on this repo

GoSTEAN commented 1 week ago

Can I work on issue #252

Background

I am a smart contract developer with hands-on experience in writing and deploying decentralized applications (dApps). I specialize in using Cairo, the programming language for StarkNet, to develop scalable and efficient smart contracts.

Steps to solve it

  1. Understand the Contributor's Guide

    Read the guide carefully to ensure compliance with project standards for contributions, coding style, and testing requirements.

  2. Locate Relevant Files and Constants Navigate to contracts/src/fund.cairo to find the set_name method. Identify the constants VALID_ADDRESS_1 and VALID_ADDRESS_2 in contracts/src/constants/funds/fund_manager_constants.cairo.
  3. Modify the set_name Method Add an assert statement in the set_name method to check if the caller's address matches either VALID_ADDRESS_1 or VALID_ADDRESS_2. Use Cairo’s syntax for assertions, ensuring it aligns with existing patterns in the codebase.
  4. Write Tests for Validation Implement test cases to verify that the set_name method only allows calls from the valid admin addresses. Include negative tests to ensure unauthorized addresses are blocked.
  5. Submit and Verify Test the changes locally, ensuring compliance with the contributor's guide.
BrunoAmbricca commented 1 week ago

I would like to work on this issue

martinvibes commented 1 week ago

Can I try solving this issue? i would love to work on this issue kindly assign :)

Emmanex01 commented 1 week ago

Could I take over this issue?

GideonBature commented 1 week ago

I’d like to work on this.

My name is Gideon Bature, a Software Engineer with experience building Starknet based smart contracts, using Cairo. If given this issue, I should be able to send my first PR within 48 hrs.

Thank you!

ryzen-xp commented 1 week ago

Hi, I am proficient Blockchain developer expert in Cairo , Rust and Solidity and also in web development. I have contributed many cairo and rust projects like chaineventt etc . please /assign this issue . Thank You

jsanchez556 commented 1 week ago

Hi, my name is José Mario from Costa Rica, a Full stack developer with more than 15 years in development and a focus in TypeScript, JavaScript, Nodejs and React. Open Source projects are something I enjoy, and I am now learning on Rust, and Cairo, I recently contribute to some Rust projects. About my learning and growth in the industry, I started doing ODHacks as early as version 7.0 due to my work with Dojo Coding. I am excited to utilize my wealth of experience and experience to new technologies to meet new challenges and deliver results.

How to tackle this feature: Locate set_name function in contracts/src/fund.cairo and add a new validation to ensure the caller is either VALID_ADDRESS_1 or VALID_ADDRESS_2, then add proper test to verify that set_name works for VALID_ADDRESS_1 or VALID_ADDRESS_2.

petersdt commented 1 week ago

Can I take this issue?

i am a frontend developer with experience in writing and testing smart contract kindly assign me this issue ETA <= 24hrs

ShantelPeters commented 1 week ago

May I try my hand at this?

josephpdf commented 1 week ago

Hi! @EmmanuelAR
I'm Joseph Poveda, I'm a member of the Dojo Coding community. A bit about my background is that I'm just starting out with Only Dust and I want to contribute as much as I can to the project. My knowledge of different programming languages ​​will allow me to better solve problems. To solve this issue I will:

  1. Understand the Requirements:
    • Review the set_namemethod in contracts/src/fund.cairo.
    • Identify where to add the new assert statement.
  2. Locate Admin Constants:
    • Find the admin constants VALID_ADDRESS_1 and VALID_ADDRESS_2 in contracts/src/constants/funds/fund_manager_constants.cairo.
  3. Implement the Assert Statement:
    • Add an assert statement in the set_name method to validate that the caller is one of the admin addresses: assert caller_address == VALID_ADDRESS_1 or caller_address == VALID_ADDRESS_2, "Caller is not an admin"
  4. Test the Changes:
    • Write tests to ensure the assert statement works correctly and only allows admin addresses to call the set_namemethod.
  5. Follow Contribution Guidelines:
    • Read the contributors guide before starting the implementation.
SoarinSkySagar commented 1 week ago

May I work on this issue @EmmanuelAR?

I am an experienced cairo dev and a regular contributor at @keep-starknet-strange.

eta: 3 days

Kom02 commented 1 week ago

Hi, My name is Kevin Obando, a full stack junior developer with 2 years of experience from Costa Rica. I am starting in this community and I want to help in this project.

akintewe commented 1 week ago

Hi, I'm akintewe and I'll be working on issue I have experience in cairo and typescript

I estimate this will take 24hrs to complete.

I would tackle this issue with these steps:

i will first locate set_name: Find the method in contracts/src/fund.cairo. Access Admin Constants: Use VALID_ADDRESS_1 and VALID_ADDRESS_2 from fund_manager_constants.cairo. I will also dd Admin Check: Add an assert to verify the caller's address matches one of the admin constants. I am a new contributor, happy to help :)

Supa-mega commented 1 week ago

Can I be assigned to this?

ikezuby2012 commented 1 week ago

hello, can i be assigned this issue?

my name is nnubia nzube, i'm a software developer with experience in writing smart contract using cairo, my ETA is within 24 hours.

saimeunt commented 1 week ago

Hey, I'm a returning contributor having previously worked on testing gostarkme, I think this can be completed in half a day.

jsanchez556 commented 6 days ago

Hi, @EmmanuelAR:

Please check the PR: https://github.com/web3wagers/gostarkme/pull/260