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

Update FireFly smart contract(s) to be more extensible for the future #846

Closed
awrichar opened this issue May 31, 2022 · 1 comment
Closed
Assignees
Milestone

Comments

@awrichar
Copy link
Contributor

Our current FireFly smart contract (provided for both Ethereum and Fabric) has exactly one method and one event, for recording a batch of FireFly messages.

Points raised in #804 and #820 have made it clear that this needs some expansion in order to cover more types of actions as the project evolves. Some changes have already been incorporated into these PRs, but more thought may be required to ensure the overall design is right for the next release.

This includes versioning the ABI of the contract itself (ie the method, event, and parameter naming), as well as versioning the rules of the network (such as the identity resolution changes in #804). It's possible that the rules should be able to change on the fly (without deploying a new contract), by allowing certain parties to call contract methods that advertise a rule change.

Throughout all of this, it should be noted that firefly-ethconnect (currently) only guarantees in-order delivery upon a single subscription - that is, a single named blockchain event. Therefore, near-term evolution of the contract should probably continue to include only one event (with parameters flexible enough to represent message batches or other network events).

@awrichar awrichar added this to the v1.1.0 milestone May 31, 2022
@awrichar awrichar added this to FireFly May 31, 2022
@awrichar awrichar moved this to Todo in FireFly May 31, 2022
@awrichar awrichar moved this from Todo to In Progress in FireFly Jul 12, 2022
@awrichar awrichar self-assigned this Jul 12, 2022
@awrichar
Copy link
Contributor Author

This is probably good enough for 1.1: #890

@awrichar awrichar moved this from In Progress to Done in FireFly Jul 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

No branches or pull requests

1 participant