Open Issues Need Help
View All on GitHub Add a docs/INTEGRATION.md section listing exact error codes and suggested user-facing messages about 3 hours ago
good first issue section-1 examples
Add a 'first contribution' walkthrough to CONTRIBUTING.md about 3 hours ago
good first issue section-1 examples
Add a docs/GLOSSARY.md defining Soroban-specific terms for newcomers about 3 hours ago
good first issue section-1 examples
Add a diagram showing how identity-registry fits between backend and Stellar network about 3 hours ago
good first issue section-1 examples
Add a docs/FAQ.md answering common contributor questions about 3 hours ago
good first issue section-1 examples
Add a troubleshooting section for 'storage entry has expired' errors about 3 hours ago
good first issue section-1 examples
Add a troubleshooting section for 'transaction simulation failed' errors about 3 hours ago
good first issue section-1 examples
Add a worked example walking through the recovery flow on testnet about 3 hours ago
good first issue section-1 examples
good first issue section-1 examples
Add a docs/INTEGRATION.md section on subscribing to contract events via Soroban RPC about 3 hours ago
good first issue section-1 examples
Add a docs/INTEGRATION.md section on computing a phone_hash off-chain about 3 hours ago
good first issue section-1 examples
Add an example stellar contract invoke command for unregister about 3 hours ago
good first issue section-1 examples
Add an example stellar contract invoke command for update about 3 hours ago
good first issue section-1 examples
Add an example stellar contract invoke command for resolve about 3 hours ago
good first issue section-1 examples
Add an example stellar contract invoke command for register about 3 hours ago
good first issue section-1 examples
Add examples/README.md explaining how to invoke identity-registry with the Stellar CLI about 3 hours ago
good first issue section-1 examples
Add a regression test summary doc: docs/TESTING.md about 3 hours ago
good first issue section-1 testing
good first issue section-1 testing
good first issue section-1 testing
Add a benchmark-style test measuring instruction count for resolve() about 3 hours ago
good first issue section-1 testing
Add a benchmark-style test measuring instruction count for register() about 3 hours ago
good first issue section-1 testing
good first issue section-1 testing
Test: resolve() and resolve_reverse() stay consistent through a scripted register/update/unregister scenario about 3 hours ago
good first issue section-1 testing
Add a test helper function generating a random phone hash about 3 hours ago
good first issue section-1 testing
Test: double-request_recovery for the same phone hash overwrites the pending recovery cleanly about 3 hours ago
good first issue section-1 testing
Test: double-unregister fails on the second call about 3 hours ago
good first issue section-1 testing
Test: calling any entrypoint before initialize() behaves correctly about 3 hours ago
good first issue section-1 testing
good first issue section-1 testing
Add a proptest-based test that unregister-then-resolve always fails about 3 hours ago
good first issue section-1 testing
Add a proptest-based test that register-then-resolve round-trips for arbitrary 32-byte inputs about 3 hours ago
good first issue section-1 testing
Add proptest dev-dependency to contracts/identity-registry/Cargo.toml about 3 hours ago
good first issue section-1 testing
Test: unregister() emits exactly one Unregistered event with the correct phone hash about 3 hours ago
good first issue section-1 testing
good first issue section-1 testing
Test: register() emits exactly one Registered event with the correct topic and payload about 3 hours ago
good first issue section-1 testing
Test: unregister() followed immediately by register() with the same phone hash and owner succeeds about 3 hours ago
good first issue section-1 testing
good first issue section-1 testing
good first issue section-1 testing
Test: resolve() on a hash that was registered then unregistered fails about 3 hours ago
good first issue section-1 testing
Test: register() with an all-0xFF BytesN<32> phone hash succeeds about 3 hours ago
good first issue section-1 testing
Test: register() with an all-zero BytesN<32> phone hash succeeds about 3 hours ago
good first issue section-1 testing
Test: unregister() without the current owner's authorization fails about 3 hours ago
good first issue section-1 testing
Test: update() without the current owner's authorization fails about 3 hours ago
good first issue section-1 testing
Test: register() without the owner's authorization fails about 3 hours ago
good first issue section-1 testing
Test: initialize() can only be called once, even with a different admin the second time about 3 hours ago
good first issue section-1 testing
Test: a phone hash can only ever resolve to one owner at a time about 3 hours ago
good first issue section-1 testing
Test: registering the same owner to two different phone hashes both succeed independently about 3 hours ago
good first issue section-1 testing
Test: contract storage survives an upgrade about 3 hours ago
good first issue section-1 upgradability
good first issue section-1 upgradability
Add a scripts/upgrade-testnet.sh helper script about 3 hours ago
good first issue section-1 upgradability
good first issue section-1 upgradability
Write docs/UPGRADES.md describing the upgrade process step by step about 3 hours ago
good first issue section-1 upgradability
Add a doc comment on upgrade() explaining it is immediate and irreversible without a second upgrade about 3 hours ago
good first issue section-1 upgradability
Test: upgrade() called by the admin succeeds against a second dummy WASM about 3 hours ago
good first issue section-1 upgradability
Test: upgrade() called by a non-admin fails with Unauthorized about 3 hours ago
good first issue section-1 upgradability
Add an UPGRADED event topic and publish it from upgrade() about 3 hours ago
good first issue section-1 upgradability
Add an admin-only upgrade(new_wasm_hash) entrypoint about 3 hours ago
good first issue section-1 upgradability
Add a CHANGELOG.md entry documenting the TTL entrypoints once merged about 3 hours ago
good first issue section-1 ttl
good first issue section-1 ttl
Add a docs/INTEGRATION.md section describing a recommended TTL-bumping cron cadence about 3 hours ago
good first issue section-1 ttl
good first issue section-1 ttl
good first issue section-1 ttl
Add a helper function that reads an entry's current TTL for use in tests about 3 hours ago
good first issue section-1 ttl
Test: bump_owner_ttl on a nonexistent phone_hash fails about 3 hours ago
good first issue section-1 ttl
good first issue section-1 ttl
Test: bump_owner_ttl extends the persistent entry's live_until ledger about 3 hours ago
good first issue section-1 ttl
good first issue section-1 ttl
Add bump_identity_ttl(owner, extend_to) entrypoint about 3 hours ago
good first issue section-1 ttl
Add bump_owner_ttl(phone_hash, extend_to) entrypoint about 3 hours ago
good first issue section-1 ttl
Document the recovery flow end-to-end in README about 3 hours ago
good first issue section-1 recovery-flow
Test: confirm_recovery clears the old owner's reverse-lookup entry about 3 hours ago
good first issue section-1 recovery-flow
Test: request_recovery on an unregistered phone_hash fails about 3 hours ago
good first issue section-1 recovery-flow
Test: cancel_recovery removes the pending recovery about 3 hours ago
good first issue section-1 recovery-flow
Test: confirm_recovery after the timelock elapses rebinds correctly about 3 hours ago
good first issue section-1 recovery-flow
Test: confirm_recovery before the timelock elapses fails about 3 hours ago
good first issue section-1 recovery-flow
Test: request_recovery by non-admin fails with Unauthorized about 3 hours ago
good first issue section-1 recovery-flow
Add RECOVERY_CANCELLED event topic and publish it from cancel_recovery about 3 hours ago
good first issue section-1 recovery-flow
Add RECOVERY_CONFIRMED event topic and publish it from confirm_recovery about 3 hours ago
good first issue section-1 recovery-flow
Add RECOVERY_REQUESTED event topic and publish it from request_recovery about 3 hours ago
good first issue section-1 recovery-flow
Implement cancel_recovery(phone_hash) admin-gated entrypoint about 3 hours ago
good first issue section-1 recovery-flow
good first issue section-1 recovery-flow
Implement request_recovery(phone_hash, new_owner) admin-gated entrypoint about 3 hours ago
good first issue section-1 recovery-flow
Add a RECOVERY_TIMELOCK_LEDGERS constant with a doc comment explaining the chosen value about 3 hours ago
good first issue section-1 recovery-flow
Add a PendingRecovery struct storing new_owner and the confirmable ledger sequence about 3 hours ago
good first issue section-1 recovery-flow
Add DataKey::PendingRecovery(BytesN<32>) storage key variant about 3 hours ago
good first issue section-1 recovery-flow
Add RecoveryTimelockNotElapsed error variant to Error enum about 3 hours ago
good first issue section-1 recovery-flow
Add RecoveryAlreadyPending error variant to Error enum about 3 hours ago
good first issue section-1 recovery-flow
Add RecoveryNotFound error variant to Error enum about 3 hours ago
good first issue section-1 recovery-flow
Write an ADR proposing the admin-mediated recovery design about 3 hours ago
good first issue section-1 recovery-flow
Add table of contents to README about 3 hours ago
good first issue section-1 docs
Document the admin key custody model in README about 3 hours ago
good first issue section-1 docs
Add a glossary section to README defining phone_hash, owner, admin about 3 hours ago
good first issue section-1 docs
Add a 'Common errors' troubleshooting section to README about 3 hours ago
good first issue section-1 docs
good first issue section-1 docs
Write docs/INTEGRATION.md describing how the backend should call this contract over Soroban RPC about 3 hours ago
good first issue section-1 docs
good first issue section-1 docs
Add a mermaid sequence diagram of the register -> resolve flow to README about 3 hours ago
good first issue section-1 docs
good first issue section-1 docs
Document the DataKey enum variants with doc comments about 3 hours ago
good first issue section-1 docs
Add rustdoc examples to the unregister() function about 3 hours ago
good first issue section-1 docs
Add rustdoc examples to the update() function about 3 hours ago
good first issue section-1 docs