Repository navigation
fix(#745,#746,#747,#748): memo validation, cache headers, evidence types, expiration events - #792
Merged
nonsobethel0-dev merged 5 commits intoOct 18, 2026
Conversation
…-byte limit Added validateMemo() that rejects memos exceeding 28 bytes (Stellar limit) with a clear error message. invokeContract now accepts an optional memo parameter, validated before transaction building.
…e API responses Added CacheControlInterceptor that sets no-store, private, max-age=0 with Pragma: no-cache and Expires: 0 headers. Applied to claims and policy controllers to prevent intermediary caching of sensitive data.
…module Added evidence-validation.ts with whitelist of allowed file types (PNG, JPEG, WebP, PDF), magic byte validation to prevent disguised executables, and 10MB size limit. Full validation function combines type check + magic bytes + size.
…ration ClaimsWorker now emits PolicyStatusChange(EXPIRED) via StatusEventsService when a policy expires, so downstream systems are aware of the status change. Previously the transition happened silently.
|
@franciscodes-ops Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
nonsobethel0-dev
merged commit Oct 18, 2026
0476703
into
Parashield-Protocol:main
0 of 3 checks passed
Dove1010
pushed a commit
to Dove1010/parashield-backend
that referenced
this pull request
Oct 21, 2026
…ol#747,Parashield-Protocol#748): memo validation, cache headers, evidence types, expiration events (Parashield-Protocol#792)
Enchanterme
pushed a commit
to Enchanterme/parashield-backend
that referenced
this pull request
Oct 21, 2026
…ol#747,Parashield-Protocol#748): memo validation, cache headers, evidence types, expiration events (Parashield-Protocol#792)
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 #745
Closes #746
Closes #747
Closes #748
What changed
[bug] Stellar service does not validate memo length for transactions #745: Validate memo length against Stellar 28-byte limit.
invokeContractaccepts optional memo, validated with clear error before transaction building.[security] API does not set Cache-Control headers on sensitive responses #746:
CacheControlInterceptorsetsCache-Control: no-store, privateon sensitive responses. Applied to claims and policy controllers.[bug] Claims module does not validate evidence file types #747: Evidence file type validation with whitelist (PNG, JPEG, WebP, PDF), magic byte verification to prevent disguised executables, and 10MB size limit.
[bug] Policy expiration does not trigger status update event #748: ClaimsWorker emits
PolicyStatusChange(EXPIRED)event when a policy expires, so downstream systems are notified.