Skip to content

fixed issue 544,556,557,558#562

Merged
Chucks1093 merged 1 commit into
accesslayerorg:mainfrom
victorEdeh:feat/fix
Jun 28, 2026
Merged

fixed issue 544,556,557,558#562
Chucks1093 merged 1 commit into
accesslayerorg:mainfrom
victorEdeh:feat/fix

Conversation

@victorEdeh

Copy link
Copy Markdown

closes #544
closes #556
closes #557
closes #558

Summary

#544:

  1. Modified attemptDelivery function in src/modules/webhooks/webhook.service.ts:124-134 - Added start and end timestamps to measure response time
  2. Added structured info log at src/modules/webhooks/webhook.service.ts:143-153 that logs all required fields when a 2xx response is received
  3. No errors reported by GetDiagnostics!
    The log includes all six required fields: webhook_id , creator_id , event_type , response_status , response_time_ms , and delivered_at

#556:

  • Added truncateToBytes function to string-truncate.utils.ts:22-50
  • Added unit tests for truncateToBytes in string-truncate.utils.test.ts:23-56
  • All tests pass and GetDiagnostics reports no errors!

#557:

  1. Added pagination support to wallet holdings endpoint :

    • Updated wallet-holdings.schemas.ts to add WalletHoldingsQuerySchema that accepts limit/offset
    • Modified wallet-holdings.service.ts to accept query params and apply pagination
    • Updated wallet-holdings.controllers.ts to parse query params and use buildOffsetPaginationMeta
    • Updated existing tests to expect meta instead of total in the response
  2. Created integration test : Added wallet-holdings-pagination.integration.test.ts that verifies:

    • Pagination works across multiple pages
    • No duplicates between pages
    • All items are present across all pages
    • Final page returns hasMore: false
      All changes follow existing patterns in the codebase (like creator list and creator holders endpoints), and GetDiagnostics reports no errors!

#558:

  • Modified attemptDelivery in webhook.service.ts to measure response time and log a structured info message on successful delivery with webhook_id , creator_id , event_type , response_status , response_time_ms , and delivered_at !
    Then, for the string truncate to byte length:

  • Added truncateToBytes function to string-truncate.utils.ts !

  • Added unit tests for truncateToBytes !
    Next, for wallet holdings pagination:

  • Updated wallet-holdings.schemas.ts to add a query schema with limit/offset!

  • Modified wallet-holdings.service.ts to take pagination params and slice the results!

  • Updated wallet-holdings.controllers.ts to parse query params and include pagination metadata!

  • Created wallet-holdings-pagination.integration.test.ts to test pagination!

  • Updated existing unit tests!
    Finally, for database connection pool exhaustion logs:

  • Added env vars DB_POOL_WAIT_WARN_MS and DB_POOL_WAIT_ERROR_MS to config.schema.ts !

  • Updated prisma.utils.ts to track active queries, measure wait time, and emit structured warnings/errors when wait thresholds are exceeded!

@drips-wave

drips-wave Bot commented Jun 28, 2026

Copy link
Copy Markdown

@victorEdeh 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

@Chucks1093 Chucks1093 merged commit 9e5779c into accesslayerorg:main Jun 28, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment