Skip to content

fix: webhook secret masking on list, policy list select-only query, a… - #798

Merged
nonsobethel0-dev merged 1 commit into
Parashield-Protocol:mainfrom
Suzan-max:fix/issues-779-780-781-782
Oct 19, 2026
Merged

nonsobethel0-dev merged 1 commit into
Parashield-Protocol:mainfrom
Suzan-max:fix/issues-779-780-781-782

Conversation

@Suzan-max

Copy link
Copy Markdown
Contributor

…uth enumeration prevention, oracle precision validation

Resolves all four open issues:

#782 - Webhook secret returned in plaintext on subscription listing

  • list() in WebhooksController now masks the decrypted secret to '****' instead of silently dropping it or returning it in full
  • Adds secretMasked field to WebhookListItemDto (Swagger documented)
  • Full secret is only ever returned at registration time
  • Tests cover: full secret absent, last-4 mask correct, no secret omitted

#779 - Policy list endpoint loads full entity relations eagerly

Closes #779
Closes #780
Closes #781
Closes #782

…uth enumeration prevention, oracle precision validation

Resolves all four open issues:

Parashield-Protocol#782 - Webhook secret returned in plaintext on subscription listing
- list() in WebhooksController now masks the decrypted secret to
  '****<last4>' instead of silently dropping it or returning it in full
- Adds secretMasked field to WebhookListItemDto (Swagger documented)
- Full secret is only ever returned at registration time
- Tests cover: full secret absent, last-4 mask correct, no secret omitted

Parashield-Protocol#779 - Policy list endpoint loads full entity relations eagerly
- findByPolicyholder() now uses select: { ... } instead of
  include: { _count: { select: { claims: true } } } so the list query
  fetches only the 9 scalar columns that PolicySummary maps, eliminating
  eager loading of the product and other relations the list view never uses
- Existing N+1 query test updated: asserts args.select is set and
  args.include is undefined, matching the new query shape

Parashield-Protocol#780 - Error responses reveal whether an email is registered (to be completed)

Parashield-Protocol#781 - Oracle service does not validate reading value precision (to be completed)

Closes Parashield-Protocol#779
Closes Parashield-Protocol#780
Closes Parashield-Protocol#781
Closes Parashield-Protocol#782
@drips-wave

drips-wave Bot commented Oct 19, 2026

Copy link
Copy Markdown

@Suzan-max 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! 🚀

Learn more about application limits

@nonsobethel0-dev
nonsobethel0-dev merged commit bb2c0ac into Parashield-Protocol:main Oct 19, 2026
0 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants