Skip to content

[BUG] Trezu - Request Details: Historical Requests use live Market Price instead of Historical Execution Price #838

Description

@rknearn-qa

Summary

Request Details display the current market price of a token instead of the token price at the moment the request was executed.

As a result, historical requests show changing USD conversion rates over time, causing inaccurate financial records and inconsistencies between the original transaction value and the value currently displayed in Trezu.

Preconditions:

Steps To Reproduce

  1. Execute a Payment or Exchange request
  2. Wait until the token market price changes
  3. Open the executed request in Request Details
  4. Observe the displayed token price / USD conversion rate
  5. Compare it with the market price at the time the request was executed

Actual Result:

  • Request Details show the current market price
  • Historical requests display different USD values over time
  • Financial information changes despite the transaction being completed

Example:

Request executed:
1 NEAR = $1.60

Current market price:
1 NEAR = $3.00

Request Details display:
1 NEAR = $3.00
Image Image

Expected Result:

  • Request Details should display the token price that existed when the request was executed
  • Historical requests should remain immutable
  • USD values should not change after execution

Example:

Request executed:
1 NEAR = $1.60

Current market price:
1 NEAR = $3.00

Request Details should display:
1 NEAR = $1.60

Special Notes:

Possible Root Cause:

* Request Details fetch current token prices from the pricing service
* Historical execution price is not stored with the transaction
* UI recalculates USD values using live market data
* Request metadata lacks a snapshot of execution-time exchange rates
* Same issue may affect PDF receipts and exported reports

Workarounds:

  • Use external historical price providers to determine the asset price at the execution timestamp

Repro Rate:

Always (10/10)

Setup - OS - Browser - Environment

  • OS / Devices: Windows 11 (x64), Motorola G23 (Android 14), Iphone XR (iOs 18.7.6)
  • Screen resolution(s): 1366 x 768, 1600 x 720, 1792×828
  • Browser(s) + version(s): Chrome (149.0.7827.54), Mozilla Firefox (151.0.3), Brave (1.91.168), Safari (18.7.4), Edge (149.0.4022.52)
  • Wallet: Meteor
  • App environment: Staging (trezu.app)
  • Near Network: Mainnet

Resources & Additional Notes

Relates to #789

Impact:

User Impact:

  • Historical transaction values appear to change over time
  • Users cannot reliably verify the value of completed requests
  • Creates confusion during accounting and auditing

System Impact:

  • Request Details become dependent on live market data
  • Historical transaction records are no longer immutable
  • Displayed values may differ from values used during execution

Business / Release Risk:

  • High risk for financial reporting accuracy
  • May cause discrepancies during audits and treasury reviews
  • Reduces trust in transaction history and accounting data
  • Can lead to inconsistencies between Request Details, receipts, exports, and actual execution values

Priority

🟠 P1 : High

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions