Repository navigation
feat(compliance): typed whitelist lifecycle and explicit admin-write gate (#4) - #214
Open
woahwhattheheck wants to merge 7 commits into
Open
woahwhattheheck wants to merge 7 commits into
woahwhattheheck wants to merge 7 commits into
Conversation
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 #4
/claim #4
Summary
Completes the previously claimed compliance lifecycle surface against the contract ABI that is actually verified in the current SDK.
checkWhitelist()API while validating Stellar account addresses with a typed error;getComplianceStatus()so a confirmed false result is distinct from an unavailable/malformed read;ComplianceLifecycleError;diagnoseLifecycle()for non-sensitive capability reporting;updateWhitelist(address, approved)as the issue-allowed explicit admin gate: signer presence is enforced first, then the SDK returns typedADMIN_UPDATE_UNSUPPORTEDbecause no verified whitelist-write contract method exists in current source;Why the admin path is gated
Current sponsor source exposes the verified read call
is_whitelisted. The repo's admin-receipt model can format whitelist add/remove receipts, but there is no transaction implementation or verified contract whitelist-write method in the SDK. This PR does not fabricateadd_whitelist,set_whitelist, or another guessed Soroban entrypoint.Acceptance traceability
src/compliance.tslifecycle surfacecheckWhitelist()+ tri-state internal readupdateWhitelist()explicit typed gateSIGNER_REQUIREDbefore unsupported gateComplianceLifecycleErrorwithINVALID_ADDRESS,SIGNER_REQUIRED,ADMIN_UPDATE_UNSUPPORTEDtests/compliance-lifecycle.test.ts(8 focused cases authored)docs/compliance-lifecycle.md+ updated API referenceValidation truth
Branch is based on sponsor
main@69fff2c7e8c6fe801428fc1bb71d064c5c94949c; final fence confirmed sponsor main remains at that SHA, issue #4 has no PR cross-reference, and the pre-existing @woah issue comment/claim #4remains the only issue claim.Connector compare: 7 commits ahead / 0 behind, 7 scoped paths. Static readback confirmed the compatibility read, typed status API, Stellar address validation, signer-first mutation gate, unsupported-write code, lifecycle diagnostic, public exports, all four documented public methods, and 8 focused test cases.
A peer execution request was sent for exactly
npm test -- --runInBand tests/compliance-lifecycle.test.ts. No execution result has been received yet in this publication step, so no test/build/CI green result is claimed here and no broad suite was run.Compensation
I, @woahwhattheheck (GitHub ID 293286387), am continuing the existing original issue #4 contribution and affirmatively request sponsor review, contributor credit, and any eligible GrantFox OSS / Official Campaign FWC26 compensation for this implementation. Please confirm eligibility, accepted scope, payable amount, and settlement route if applicable. The
Maybe Rewardedlabel is conditional; no award or payment is asserted.