pyth-crosschain/wormhole_attester/sdk/rust/src
Stanisław Drozd d52f4d406e
wormhole_attester: per-symbol PDAs for attestation state (#567)
* wormhole-attester: Add a last trading publish timestamp field

This change bumps price batch format to v3.1 with a new backwards
compatible field - last attested trading publish time. This is the last time we've
successfully attested a trading price. If no prior record exists, the
current publish time is used.

The new field is backed by a new PDA kind for the attester contract, called
'attestation state'. In these PDAs, we store metadata for every price, seeded by its pubkey. Currently, the metadata stores just the
last tradind timestamp for use with the new field.

* wormhole-attester: Use publish_time instead of attestation_time

* wormhole_attester: use prev_publish_time for non-trading prices

* wormhole_attester: per-symbol state PDAs, stop using prod accounts

* attester: Use Option to detect if previous state exists

Using Option<> for this makes fallback to latest value more convenient

* wormhole_attester: client AccountMeta typo

* wormhole_attester: fix mutability error

* wormhole_attester: stop using Option<> for on-chain state

* wormhole_attester: remove unused realloc logic for attestation state
2023-02-08 17:04:55 +01:00
..
lib.rs wormhole_attester: per-symbol PDAs for attestation state (#567) 2023-02-08 17:04:55 +01:00