Skip to content

Release v1.282.0#791

Merged
cyber-pc merged 37 commits intomainfrom
develop
Mar 11, 2026
Merged

Release v1.282.0#791
cyber-pc merged 37 commits intomainfrom
develop

Conversation

@cyber-pc
Copy link
Copy Markdown
Collaborator

  • Implement oracle subscriptions
  • Automatic SC state change detection
  • Speed up addition score and increase ADDITION_NUMBER_OF_MUTATIONS to 300
  • Add new revenue formula computation in shadow mode without impacting current revenue
  • QVAULT SC v2.0 update (if proposal accepted)

philippwerner and others added 30 commits March 2, 2026 17:12
The iterative variant massively reduces risk of stack overflows and is
probably faster as well.
Move redundant code to functions.
This makes sure that fee reserve of the test contracts is only set when
starting from scratch, not after loading a snapshot.
Ensures that notifications are in order of querying
* Add automatic state change detection with ContractState wrapper

- Wrap contract state access in ContractState<T, idx> template with .get() (const) and .mut() (marks dirty) accessors
- Move all contract state fields into nested struct StateData for each contract
- Add needsCleanup() const method to containers
- Add using declaration to unhide const operator() overload in QpiContextProcedureCall
- Use .get() instead of .mut() for const proposal method calls
- Update contracts.md: describe StateData, state.get()/state.mut() accessors,
  and dirty state digest recomputation at end of tick
- Update contracts_proposals.md: update all code examples to use
  state.get().proposals / state.mut().proposals
- Update README.md: mention StateData and accessor pattern
- Update EmptyTemplate.h: add empty StateData with usage comments
…00. (#785)

* Speed up addition score.

* Increase the ADDITION_NUMBER_OF_MUTATIONS to 300
philippwerner and others added 7 commits March 10, 2026 07:59
* fix: updated QVAULT SC

* feat: added getData functions

* fix: fixed some bugs in submitProposal procedures

* fix: voteInProposal

* fix: fixed type of index in for loop

* fix: fixed revenue distribution

* fix: fixed type of variable in for loop

* fix: fixed contract_qvault.cpp

* Add burning of asset shares

Extend transferShareOwnershipAndPossession() to support burning of asset
shares by transferring to NULL_ID. Burning contract shares is forbidden.

* final update for burning the Qcap

* feat: added new functions for fetching the data

* fix: fixed type convert errors

* feat: added test functions

* fix: fixed some errors according to gtest

* Always reserve contract stack for system procedures

Even if the contract stack is not needed for storing locals, inputs, or
outputs directly when starting a system procedure, it may be needed by
nested calls of QPI / procedures / functions. So we always need to
reserve a contract stack.

* updated the SC finally

* fix: removed unnecessary state

* fix: fixed some data type

* feat: added cancelMuslimId procedure

* fix: fixed for Phil's review

* fix: some ambiguous

* fix: cut duplicated votes

* fix: updated the QCP & AlloP & MKTP

* added the url for proposal and changed team fee end date

* fix: added cleanupIfNeeded() function for HashMap

* fix: removed Muslim features

* fix: removed a variable for muslim feature

* fix: removed a struct for muslim feature

* fix: fixed payment structure

* fix: fixed some order for initialization

* fix: removed reinvestingAddress

* fix: excepted SELF address in calc the number of qcap holders

* fix: fixed some distribution issues

* fix: fixed the circulating supply

* feat: added the revenue to send manually

* Revert "fix: added cleanupIfNeeded() function for HashMap"

This reverts commit 579f8be.

* Reapply "fix: added cleanupIfNeeded() function for HashMap"

This reverts commit ed47ca1.

* Update init of QX fees to fix gtest

* fix: fixed node breaking & getting the revenue from standard tx & output issue

* fix: counts staked amount in getNumberOfHolderAndAvgAm

* fix: fixed the initial result status of proposals

* fix: change the decision in vote

* fix: 1 Qcap buy issue

* fix: resolved change vote issue

* fix: fixed the getAmountForQearnInUpcomingEpoch

* added comments for all the functions and profedures

* fix: removed :: which it is restricted in development of qubic smart contract

* fix: removed QPI::QpiContext

* fix: fixed some parts by audit

* fix: second commit for audit

* fix: update for the rev2 audit

* fix: Qearn revenue issue

* fix: fixed the values for the initialize variables

* fix: fixed the bug in the voteInProposal precedure

* fix: fixed the bug for the ipo proposal voting

* qcapSoldAmount updated

* fixes

* fix: updated the Qvault V2 with the updated qpi

---------

Co-authored-by: Philipp Werner <22914157+philippwerner@users.noreply.github.com>
Co-authored-by: baoLuck <vitalymayer1706@gmail.com>
@cyber-pc cyber-pc merged commit f08f172 into main Mar 11, 2026
3 checks passed
Copy link
Copy Markdown
Contributor

@fnordspace fnordspace left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants