مستندات دارا
مرجع فنی
این صفحه فقط به انگلیسی موجود است.

Traceability matrix

Each PRD requirement (product/PRD.md) → where it is implemented → what proves it. Tests named here run in make test (Go, against PostgreSQL and local Stellar) or make web-check; the demo is make demo (82 checks); alerts are make observability-check. Status: Done, Partial (what is missing is named) or Open.

IDRequirement (short)ImplementationEvidenceStatus
FR-01Generic asset definitionassets.Create, admin Assets pageTestPlatformLifecycle, demo step 1Done
FR-02Tradable only after on-chain identity, issuer layout, Treasury trustlines, SEP-1 verifiedassets.RegisterIssuer, Activate, ChainVerifierTestPlatformLifecycle (wrong account refused, activation order), TestClawback (stellar.toml parsed with the SDK type)Done (SEP-1 fetch not yet run against a real domain)
FR-03Suspend / resume per assetassets.SetTrading, emergency pauseTestHTTPSecurity (role checks), consoleDone
FR-04Backing only through ReserveCapacityProviderreserve.CapacityProvider, ManualReserveProviderTestPlatformLifecycleDone
FR-05Four-eyes backing with attestationreserve.Propose/DecideTestPlatformLifecycle, demo step 2Done
FR-06Issuance within backing, to COLD, human multisigissuance, txmanager multisigTestPlatformLifecycle, demo step 3Done
FR-07Burn from COLDissuance BURNTestPlatformLifecycleDone
FR-08Refill four-eyes + multisig; automatic sweepissuance REFILL / SWEEPTestPlatformLifecycle, demo step 4Done
FR-09Registration, server-side sessionsidentity, customers.RegisterTestStaffLoginOnCustomerListenerRevealsNothing, TestHTTPSecurityDone
FR-10KYC → sponsored account with authorized trustlinescustomers.ApproveKYC, custodydemo step 6, TestIssueOnboardAndConcurrentSettlementDone
FR-11Freeze / four-eyes unfreeze on-chaincustomers.Freeze, RequestUnfreeze, DecideUnfreezeTestPlatformLifecycle, demo step 13Done
FR-12Wallet balances, account, orders, historywallet app, portfoliodemo, Chrome check (part 8 evidence)Done
FR-13Maker-checker cashcashTestPlatformLifecycle, demoDone
FR-14Manual price, second approver above max movepricing.SetPrice/DecidePriceTestHTTPSecurity (50% move needs approval)Done
FR-15Firm quotespricing.CreateQuotedemo steps 7, 11Done
FR-16Quote refusals (stale price, not tradable, bounds, eligibility, gate)pricingTestOutageClosesTradingAndIndexerCatchesUp, stale price in the Chrome checkDone
FR-17BUY reserves cash and HOT inventory atomicallytrading.PlaceOrderTestConcurrentBuysNeverOversellTheHotFloat, demo step 7Done
FR-18SELLtradingdemo step 11Done
FR-19TRANSFER between active customerstrading.Transferdemo step 10Done
FR-20COMPLETED at a closed ledger; holds released on failuretrading handlersTestPlatformLifecycle (failure releases holds)Done
FR-21Trading gate conditionsgateTestOutageClosesTradingAndIndexerCatchesUp, alert testsDone
FR-22User limits: per trade, daily buy/sell/transferassets bounds, trading.checkTransferLimits, daily buy/sell limitssee section belowDone (see below)
FR-23Intent + attempts lifecycletxmanagertxmanager integration testsDone
FR-24Sequences only from the channel pooltxmanager channelsTestForeignChannelUseIsQuarantined, concurrency testDone
FR-25Upper time bound and MEMO_HASH on every transactionstellar builderTestEnvelopeGuardsDone
FR-26Routing across own nodes; identical resubmissionstellar.GatewayTestReadFailsOverToNextNode, TestFailoverPastADeadNode, TestAllNodesDownThenRecoverDone
FR-27Startup refuses mismatched configurationapp.VerifyAccounts, config, signer guardssmoke run, TestDerivedRefusesMainnetAndProduction, TestDevsignersOnlyLocalDone
FR-28Self-hosted indexer, CRITICAL on anything unexplainedindexeroutsider scenarios in TestPlatformLifecycle, TestBackendSourcePreparesBeforeReadingDone (data-lake backfill not yet run against a real lake)
FR-29Public scannerscanapi, apps/scanTestScanRoleCannotReadCoreTables, TestClawback scan checks, demo step 17Done
FR-30Landing siteapps/landingcontent tests, RTL checkDone
FR-31Admin console incl. signing and clawbackapps/adminpart 8 Chrome check, web checksDone
FR-32Reconciliationreconciliationevery e2e test, demo step 15Done
FR-33Append-only auditauditTestClawback (audit trail), DB triggersDone
FR-34Idempotency-Keyhttpapi idempotencyTestHTTPSecurity (byte-exact replay)Done
NFR-12No hosted Stellar serviceconfig (STELLAR_RPC_NODES our nodes)infrastructure/EXTERNAL_DEPENDENCIES.mdDone
INV-01…10Financial invariantsfinance/INVARIANTS.mdas listed thereDone

Open items that block a Mainnet launch

Decided on 2026-10-31 and implemented: one human signer, Vault Transit, ~1 order/s sizing, GOLD, our own data lake (decisions/OWNER_DECISIONS_20261031.md).

ItemWhy it blocksNeeds
Home domainActivation on Mainnet fetches the issuer's stellar.toml from itThe domain (Q-13; GOLD decided)
Mainnet ceremonyCreates the accounts with the signer's key and the Vault keysThe signer present, Vault and the RPC nodes deployed (deployment/MAINNET_CANARY.md)
Alert receiversNobody is paged yetWho and which channel

در این صفحه