From 3a04774a1ef12fe84439c4c6b8f9586009c7cff4 Mon Sep 17 00:00:00 2001 From: biancabuzea200 Date: Thu, 12 Feb 2026 15:56:18 +0100 Subject: [PATCH] Update scribeOp --- docs/Intro/Scribe/scribe.md | 4 +--- docs/Resources/FAQ/Oracles.md | 8 +++++++- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/docs/Intro/Scribe/scribe.md b/docs/Intro/Scribe/scribe.md index 69a5a5d..1395a61 100644 --- a/docs/Intro/Scribe/scribe.md +++ b/docs/Intro/Scribe/scribe.md @@ -56,9 +56,7 @@ This ultimately meant those looking to utilize oracles had to consider the pros ### Enter Scribe -The goal with Scribe was to eliminate this tradeoff. Creating the first Oracle that could support a huge number of validators and post updated data on-chain at a low cost. - -The result is an Oracle that can have unlimited validators and costs 6x less to update than Chainlink, and 3.5x less than Pyth (on L1 & L2), making it the most secure, decentralized, and cost-efficient option available. +The goal with Scribe was to eliminate this tradeoff. Creating the first Oracle that could supports a huge number of validators and post updated data onchain at a low cost. To read more on Scribe, please see the links below diff --git a/docs/Resources/FAQ/Oracles.md b/docs/Resources/FAQ/Oracles.md index 0a8561d..efc42c5 100644 --- a/docs/Resources/FAQ/Oracles.md +++ b/docs/Resources/FAQ/Oracles.md @@ -102,4 +102,10 @@ While all of these functions can be used to read data from the oracle, they diff We recommend using the tryXXX functions (e.g., tryRead()) because they are safer to use since they never revert. -For full specifications for each of the functions, please check the [Scribe contract](https://github.com/chronicleprotocol/scribe/blob/main/src/Scribe.sol). \ No newline at end of file +For full specifications for each of the functions, please check the [Scribe contract](https://github.com/chronicleprotocol/scribe/blob/main/src/Scribe.sol). + +## What is the difference between `poke` / `poke_optimized` and `opPoke` / `opPoke_optimized`? + +`Poke` and `poke_optimized` are functionally identical, as are `opPoke` and `opPoke_optimized`. The only difference between the standard and _optimized versions is that the `_optimized` functions are designed with selectors that contain more zero bytes. Since zero bytes are cheaper in calldata, these functions consume slightly less gas when called. The difference in gas is small, but beneficial for frequently executed transactions. + +`opPoke` is intended for use on Ethereum mainnet and follows an optimistic update mechanism that includes a challenge period. However, if the asset price becomes too volatile and moves out of the acceptable spread while the `opPoke` call is still within its challenge window, the update can be overridden by submitting a regular poke, which applies immediately without delay. \ No newline at end of file