feat: add remove method to SettlementRepository#199
Open
Agencybuilds wants to merge 1 commit into
Open
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 #163
Description
This PR introduces the
remove(id: number): booleanmethod to theSettlementRepository. Prior to this change,SettlementRepositoryonly supportedcreateandsave, leaving no way to completely remove a settlement record.This brings it into parity with the
removemethod already present inAnchorRepositoryandLiquidityRepository. This is a repository-layer primitive only and is not wired to any public route to maintain security.Changes Made
src/repositories/settlementRepository.ts: Added theremovemethod. It deletes the record from the in-memory store and effectively manages theanchorIndexmapping to avoid leaving stale index entries.src/repositories/settlementRepository.test.ts: Added unit tests to ensure that:true, and correctly updates the repo count, list, and the anchor mapping index.falseand doesn't affect the repository.Acceptance Criteria
SettlementRepository.remove(id)removes the settlement and returns true; returns false for an unknown id.count()andall()correctly reflect removal.Security Notes
The
removefunction acts solely as an underlying repository primitive to allow for test fixture cleanup or administrative overrides. By design, no API endpoint was added to expose this functionality, meaning the usualcancelandexecuteprocess remains the standard operational flow.