Closed: Bounty #44 - ICRC-2 and ICRC-3 - Motoko - $6,000

Thank you for the reminder. I appreciate your diligence. I will allocate some time to carefully review the new standards and make the necessary modifications to ensure compliance. Your input is valuable, and I will take it into consideration during the revision process.

@skilesare I saw that this bounty had been stale for some time at the beginning of the week, so I worked on a different implementation that keeps ICRC-1 and ICRC-2 as separate standards, with ICRC-2 making use of the ICRC-1 codebase for code reuse and compatibility.
These changes are compliant with the latest ICRC-2 adjustments for ERC-20 semantics for approvals.

You can see these changes in the PR I created here:

Furthermore, I’m planning to continue work on the ICRC-3 Standard based on the shared Draft.

1 Like

@skilesare I noticed that the Github Workflow to test Push/PR’s is currently failing, so I also submitted a PR to the standards repository that should solve this issue.

Once approved, the submodule reference will need to be updated to point to the latest version of the DFINITY ICRC-1 repository.

1 Like

@skilesare I have published a PR with the additional method required for ICRC-3.
I’ve kept an additional field for the Transfer type that stores the index. This is due to the way the Archive class is set up, and how it checks against duplicate transactions from the work already done by @tomijaga for ICRC-1.
You can find the PR here:

Should there be any questions, please let me know.

@skilesare can a vote be done to assign me to this bounty?

This bounty is currently assigned to @JingJingZhang9 and we are reviewing the submission. If it is declined we can look at reassigned, but it was completed once according to the proposed spec and then updated to the final spec. @tomijaga is currently reviewing.

1 Like

@skilesare any updates on the review process? No changes have been applied to the PR by @JingJingZhang9 since end of April, even after request by @tomijaga to merge changes from main ICRC1 repository.

@skilesare updates on this?

I recently attended the working group meeting and had the opportunity to gather valuable insights about the icrc2 standard.
I understand your concern, but the standard has not yet been finalized. Similarly, the official version of Rust is still under discussion and is not yet final. Thus, at this stage, I have not made any major modifications to the code, but rather am gradually optimizing and improving it. When the standard is determined, I am always ready to respond to any further modifications that may arise.

ICRC2 has passed NNS Vote. It should be finalized now.

1 Like

@skilesare as an update, received a message from @tomijaga that my proposed PR with the complete ICRC2 standard is currently under review.

I’m currently making some modifications and I’ll submit the new version in the next 2 to 3 days.

I have now resubmitted the project code for icrc2,
and here is the GitHub link for the project:GitHub - JingJingZhang9/I2-code
Please do not hesitate to contact me should there be any necessary modifications. I am ready to make immediate changes to ensure the code meets the requirements of the project. Your feedback is greatly appreciated, and I am committed to contributing to this valuable open source initiative.

Since @receronp is closest to finishing this I’m going to split this into ICRC 2 and 3 and assign the 2 to receronp. I think the Pull request is pretty close.

Are these standards going to make easier the integration of third party apps for TAX REPORTS such as KOINLY?

How can it takes 7 months to develop a new icrc standard If it is just adding a new function? What’s the ETA to update Sns icrc1 tokens with icrc2 and icrc3???
Both are extremely important for trading Sns tokens and thus, Defi on ICP!! I can’t understand why the community won’t involve with this issue.

I believe we have ICRC2 dialed and approved and already and implementations are advancing. I think you’ll see it in SNS soonish and hopefully in ICP after that.

ICRC-3 is wrapping up as well.

It takes time because these standards are a public good and no one wants to fund public goods. Almost everyone is convinced they are going to build the next great dapp and that is where their focus is(and the ecosystem suffers as every project builds the same would-be-public functionality over and over and over). Everyone that has been in these working groups has their own project and is typically busy and swamped.

It is a function of lack of attention on the IC and a lack of resources to fund IC initiatives. In more popular ecosystems some of this emerges organically, but we haven’t had enough critical mass to have these things emerge organically. DFINITY has done a really great job of underwriting this activity to date, but for real acceleration to occur it needs to be accelerated by community participation.

I’ve taken some stabs at it with and I think we’ve done some good, but as far as a going-concern-entity that can contribute to the broader ecosystem, the organization is just massively resource constrained. Nothing would make me happier than to hire a full-time person to focus on standards, but we currently only have about $27k in our treasury(locked 8-year neuron) and that produces about $4800 a YEAR in revenue that we could try to do something with(with no reinvestment). If ICP were at $80 like it was when a significant portion of our treasury was donated it would be doable, but the because of the price action, it just isn’t. So in the meantime, we’re doing the best we can.

As far as the specific standards go, you are trying to enshrine something that, if done poorly, could cause massive heartache and loss of value in the future. You have to attempt to predict how to make something that is useful for the community, but that can’t be leveraged by an attacker to degrade the system. That is not easy. We are probably due for a “summit” of some kind where we can get everyone together for a week or two and just power through some things(this takes significant resources to pull off), but in the meantime, most WG are meeting for an hour every two weeks, so progress is slow.


I will take a look. I need to get onboarded into ICRC at some point. I can look into the Motoko side of things.

I have been focusing on other areas so I have not looked into it, but you are right we need to allocate our time for these public goods.

Thanks for doing all that great work with such a limited budget.

1 Like

That would be cool. Getting the minds in a room/hackathon without distraction is prob the best way to go.

Like you said it hasn’t been easy to be in crypto. Hopefully it does get better.

Do you know what is the latest repo with work from ICRC2 ?

Any updates on ICRC-2 going live? So many use cases depend on it…