feat(contracts): implement upsert profile#1
Closed
chidii wants to merge 89 commits into
Closed
Conversation
…nts, Quid-proquo#175 Milestone escrow error enum
fix: resolved all issues in one: Quid-proquo#176 Milestone escrow events, Quid-proquo#175 M…
… borrowing from the token transfer call.
- Scaffold quid-reputation crate with soroban-sdk dependency - Add Profile struct and DataKey enum (Admin, Profile(Address)) - Add ReputationError (AdminNotSet, NotAdmin, ProfileNotFound) - Implement set_admin / get_admin for admin bootstrap and getter - Implement public get_profile returning ProfileNotFound when missing - Add internal require_admin helper for mutation path auth checks - Add internal store_profile helper with TTL extension - Add internal load_or_default helper returning zeroed profile - Add unit tests covering all public and internal paths
…gram-program-read-helpers Contracts: implement create program and add program read helpers
- Add quid-reputation contract package (Cargo.toml, error.rs, types.rs, lib.rs) - Add src/test.rs with 18 tests covering: - Admin bootstrap: set_admin and get_admin flows - Profile upsert: create, overwrite, owner assertion, auth guard - increment_success: single, multiple, missing profile, auth guard - record_rejection: single, multiple, missing profile, auth guard - Combined: full lifecycle and independent profile isolation Closes Quid-proquo#199
scaffold reputation
- Add record_rejection entrypoint to QuidReputationContract - Require admin auth before profile mutation - Load or default ContributorProfile for subject - Increment rejected_submissions and stamp updated_at - Persist profile with extended TTL - Publish ProfileUpdatedEvent on success - Add tests: increment, accumulation, updated_at, event emission Closes Quid-proquo#195
scafolded reputation
milestone escrow authorization and refund tests
…estone-read-helper-add-milestone Implement milestone creation and read path for escrow contract
…tion-error-enum feat(contracts): add reputation errors
…-read-and-count feat(contracts): add attestation read helpers
…attestation feat(contracts): implement issue attestation
…jection feat(contracts): implement record rejection
fix: resolved all issues in one: Quid-proquo#176 Milestone escrow events, Quid-proquo#175 Milestone escrow error enum
…tion-events feat(contracts): add reputation events
…s/reputation-profile-tests test(contracts): add reputation profile tests
feat(contracts): implement increment success
Revoke attestation authorization flow
Owner
Author
|
@Kaylahray Clean PR — 4 files only, rebased on main, no conflicts. upsert_profile fully implemented per issue Quid-proquo#193. Ready for review! |
508768c to
4723c1d
Compare
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.
Closes Quid-proquo#193
Implements the admin-only upsert_profile entrypoint for the Quid reputation contract.
Replaces Quid-proquo#210 and Quid-proquo#221.