Hello Supra Community,
There has been some confusion regarding the token release process and why certain individuals can claim tokens from contracts despite the shift to a quarterly schedule. Originally, the contracts were not designed to support modifications to the release schedule. Below, we clarify when this change occurred, detail the adjustments made to specific fields and parameters to accommodate it, and explain why some users may receive tokens earlier than expected.
Understanding the Vesting Schedule Update
Recently, changes were made to how the vesting contract calculates periods and fractions. This update was necessary to move from monthly vesting to quarterly vesting, while still keeping the overall outflow of tokens fair and consistent. Here’s what actually happened and what it means for you.
How the Vesting Contract Works
- The contract tracks three important parameters:
period_duration– the length of one vesting period, stored in seconds.vesting_fraction– how much of the allocation vests per period.last_vested_period– a counter that records how many vesting periods had elapsed when a user last claimed.
For example, under monthly vesting, a user’s last claim after 8 months would mean their last_vested_period = 8.
The Change from Monthly to Quarterly
When the team moved vesting from 1-month periods to 3-month periods after our community vote, two things had to change:
period_durationwas increased (1 month → 3 months).vesting_fractionwas increased to match (e.g., 5% per month → 15% per quarter), so that the total outflow stayed the same.
But there was also a side effect:
- To stay consistent, the contract divided
last_vested_periodby 3. - Example: A user who last claimed at the 8th month (so
last_vested_period = 8) would now havelast_vested_period = 2, to indicate that2quarters had passed at the time of user’s last claim. - The issue: This “integer division” caused the contract to incorrectly track that the last claim was at 6th month instead of at 7th/8th month since 7/8th month do not align with quarters.
The Temporary Side Effect
Because of that, for the first quarter after the change, some users were able to claim slightly more tokens than expected:
- If you claimed at the 7th or 8th month but didn’t claim at the 9th, the contract treated your last claim as if it happened at the 6th month.
- So when quarterly vesting kicked in, you could claim 3 months’ worth of tokens again — even though you had already partially claimed in month 7 or 8.
This early outflow only happened once and only for those specific users. After that, the vesting flows normally. In other words, at every quarter successful vesting would happen only once and payout for a user would be a minimum of (i) one quarter worth of token as per schedule or (ii) whatever is remaining to be vested from their total allocation.
Important: The contract never lets anyone receive more tokens than their total allocation (init_amount). The contract accurately tracks left_amount for every user and every payout is subtracted from this field. Therefore, any temporary higher outflow earlier simply means the last vesting chunk will be smaller, balancing things out.
What Happens After 20th November 2025?
Here’s how things look for different groups of users by November 20th:
Users who claimed at 7/8 months and again after 21st August 2025:
→ They already had the “increased outflow” earlier, so in November they’ll get 3 months’ worth of tokens as expected.
Users who claimed at the 9th month (August) before the change:
→ They will get exactly 3 months’ worth of tokens in November.
Final Note
If your contract is linked to staking, none of this applies. Those unlocking schedules have not changed at all, because staking contracts work differently and were unaffected by this adjustment.
In short: The only noticeable effect of this change was for users who claimed in the 7th/8th month but skipped the 9th month. They got a slightly larger payout earlier, but their overall allocation remains capped. From November onward, vesting flows normally for everyone.