Season Facet
Note that this page has not been updated to reflect the current state of Beanstalk, but is left here as a reference.
The Season Facet contains the gm
function and handles all logic for Season changes.
Call Functions
function sunrise() external payable returns (uint256);
Advances Beanstalk to the next Season, sending reward Beans to the caller's Circulating balance.
uint256
The number of Beans minted to the caller.
function gm(
address account,
LibTransfer.To mode
) public payable returns (uint256);
Advances Beanstalk to the next Season, sending reward Beans to a specified address and balance.
account
address
Indicates to which address reward Beans should be sent.
mode
To
uint256
The number of Beans minted to the caller.
View Functions
function season() public view returns (uint32);
Returns the current Season number.
uint32
The current Season number.
function paused() public view returns (bool);
Returns whether Beanstalk is Paused. When Paused, sunrise
cannot be called.
bool
Whether Beanstalk is Paused.
function time() external view returns (Storage.Season memory);
Returns the Season struct.
Season
function abovePeg() external view returns (bool);
Returns whether Beanstalk started this Season above or below peg.
bool
Whether Beanstalk started this Season above or below peg.
function sunriseBlock() external view returns (uint32);
Returns the block during which the current Season started.
uint32
The block during which the current Season started.
function seasonTime() public view virtual returns (uint32);
Returns the expected Season number given the current block timestamp. The sunrise
function can be called when seasonTime() > season()
.
uint32
The expected Season number given the current block timestamp.
function weather() public view returns (Storage.Weather memory);
Returns the Weather struct.
Weather
function rain() public view returns (Storage.Rain memory);
Returns the Rain struct.
Rain
function plentyPerRoot(uint32 season) external view returns (uint256);
Returns the Season of Plenty (SOP) rewards per Root for the given Season.
season
uint32
The Season to fetch SOP rewards per Root for.
uint256
The SOP rewards for the given Season.
function totalDeltaB() external view returns (int256 deltaB);
Returns the cumulative deltaB across all pools on the Oracle Whitelist.
deltaB
int256
The cumulative deltaB.
function poolDeltaB(address pool) external view returns (int256);
Returns the deltaB for a given pool.
pool
address
The address of the pool .
int256
The deltaB for the given pool.
function wellOracleSnapshot(address well) external view returns (bytes memory snapshot);
Returns the last Well oracle snapshot for a given Well.
well
address
The address of the pool to get the snapshot for.
int256
function curveOracle() external view returns (Storage.CurveMetapoolOracle memory co);
Returns the last Curve oracle data snapshot for the BEAN:3CRV pool.
co
Storage.CurveMetapoolOracle
Last Curve oracle data snapshot.
Events
event Sunrise(uint256 indexed season);
Emitted when the Season changes.
season
uint256
The new Season number.
event Incentivization(address indexed account, uint256 beans);
Emitted when Beanstalk pays Beans to the sunrise
caller.
account
address
The address to which the reward Beans were sent.
beans
uint256
The amount of Beans paid as a reward.
event Reward(uint32 indexed season, uint256 toField, uint256 toSilo, uint256 toFertilizer);
Emitted during Sunrise when Beans are distributed to the Field, the Silo, and Fertilizer.
season
uint32
The Season in which Beans were distributed.
toField
uint256
The number of Beans distributed to the Field.
toSilo
uint256
The number of Beans distributed to the Silo.
toFertilizer
uint256
The number of Beans distributed to Fertilizer holders.
event Soil(uint32 indexed season, uint256 soil);
Emitted during Sunrise when Beanstalk adjusts the amount of available Soil.
season
uint32
The Season in which Soil was adjusted.
soil
uint256
The new amount of Soil available.
event WeatherChange(uint256 indexed season, uint256 caseId, int8 change);
Emitted when the Weather (now Temperature) changes.
season
uint256
The current Season.
caseId
uint256
change
int8
The change in Temperature from the previous value.
event SeasonOfPlenty(
uint256 indexed season,
uint256 amount,
uint256 toField
);
Emitted when Beans are minted during the Season of Plenty.
season
uint256
The Season in which Beans were minted for distribution.
amount
uint256
The amount of 3CRV which was received for swapping Beans.
toField
uint256
The amount of Beans which were distributed to remaining Pods in the Field.
Last updated