Repository navigation
Add on-chain NAV-per-share feed contract with staleness verdict - #359
Merged
techisigu merged 6 commits intoOct 24, 2026
Merged
Conversation
…for Third-Party C Closes Zenith-options#277
…erkle Commitments Closes Zenith-options#278
…n the Vault and P Closes Zenith-options#279
…ry With Different Closes Zenith-options#280
|
@kerenaugustine79 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
- src/lib/api/vaults.ts: merged [markers] — model resolved the conflict markers - src/lib/pricing.ts: merged [markers] — model resolved the conflict markers Co-authored-by: Simple Agent <agent@simple.dev>
- src/lib/api/vaults.ts: merged [markers] — model resolved the conflict markers Co-authored-by: Simple Agent <agent@simple.dev>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add on-chain NAV-per-share feed contract with staleness verdict
What was solved
#277 — Publish an On-Chain NAV and Share-Price Feed for Third-Party Composability
Add a thin, versioned on-chain NAV/share-price feed contract that stores each vault's latest committed NAV per share with epoch and update ledger time, exposes a staleness verdict, and is writable only through the vault epoch settlement path. Wire the settlement publish call, surface feed values in vault observability/reconciliation, and document the consumer contract (staleness semantics, precision/decimals, denomination, versioning).
Addressed:
#278 — Implement Epoch Share-Balance Snapshots and Merkle Commitments for Provable Redemptions
Add on-chain Merkle commitments of epoch share balances so depositors can prove historical balances and third parties can verify redemption claims without trusting the backend. The work spans the Soroban contracts (commitment storage + verifier), the indexer/registry service that builds trees and serves proofs, the
/vaultsAPI surface, and the epoch ledger UI, with a published canonical tree spec and cross-language hash vectors.Addressed:
#279 — Surface Vault-Written Position Risk Metrics in the Vault and Portfolio Surfaces
Add a per-vault risk panel that surfaces modelled risk metrics (assignment probability, max loss, breakevens, aggregate Greeks) for the vault's open written positions, computed via the existing Black-Scholes/payoff modules through a single shared aggregation helper, and fold vault-written exposure into the portfolio surface's total risk. Inputs come from existing sources; missing/stale inputs degrade to "unavailable"; methodology is documented and linked, figures labelled as estimates. Out of scope: performance analytics (NAV/APY/attribution) and the what-if simulator.
Addressed:
#280 — Implement a Shared NAV/Share-Price Math Library With Differential Conformance Tests
Create a canonical, integer-only NAV/share-price math library with a written spec, matching Rust (contracts/) and TypeScript (frontend/backend) reference implementations, a versioned JSON golden-vector fixture, and differential conformance tests proving byte-identical results including adversarial rounding cases.
Addressed:
Changes
src/lib/pricing.ts(modify)docs/LEDGER.md(modify)README.md(modify)src/lib/api/vaults.ts(modify)src/lib/payoff.ts(create)Approach
Issues
Closes #277
Closes #278
Closes #279
Closes #280