Skip to content

feat: keeper runbook, storage report, API pagination, and simulator OpenAPI schema#582

Merged
edehvictor merged 1 commit into
edehvictor:mainfrom
ijeoma270:feat/issues-546-550-556-560
May 27, 2026
Merged

feat: keeper runbook, storage report, API pagination, and simulator OpenAPI schema#582
edehvictor merged 1 commit into
edehvictor:mainfrom
ijeoma270:feat/issues-546-550-556-560

Conversation

@ijeoma270
Copy link
Copy Markdown
Contributor

Closes #546
Closes #550
Closes #556
Closes #560

What changed

  • Add Keeper Bot Runbook Documentation #546 — Keeper Bot Runbook (backend/keepers/README.md): Full operational runbook covering keeper responsibilities (liquidation queue, compound queue), all environment variables with types and defaults, safe local test commands, monitoring log-field reference, restart instructions, and a troubleshooting section for Redis, signer/keypair, queue stalls, repeated job failures, and VaultMonitor scan issues.

  • Add Soroban Contract Storage Usage Report #550 — Storage Usage Report (docs/contracts/storage-report.md): Per-contract audit of every DataKey, storage class (instance / persistent / temporary), intended lifetime, TTL extension requirements, and cleanup responsibilities for yield_vault, stablecoin_manager, ve_tokenomics, and options. Includes a general TTL policy table and a cleanup summary.

  • Add API Pagination Contract for Large Lists #556 — API Pagination Contract (server/src/types/pagination.ts, server/src/routes/incidents.ts, server/src/services/incidentService.ts, server/src/__tests__/incidentsPagination.test.ts): Defines a shared cursor-based PaginatedResponse<T> type with nextCursor, hasMore, and limit fields. Applied to GET /api/incidents (now accepts ?cursor=&limit= and returns the paginated shape). Added getIncidentsPaginated to IncidentService. Includes 7 passing tests covering first page, second page, empty page, custom limit, limit clamping, invalid limit fallback, and response shape validation.

  • Add Deposit Simulation API OpenAPI Schema #560 — Deposit Simulation OpenAPI Schema (server/openapi.yaml): Documents POST /api/simulator/deposit with full request schema (strategyId, token, amount), response schema (isSimulationOnly, allocations, expectedShares, fees, postDepositExposure, warnings), named component schemas (DepositSimulationRequest, DepositSimulationResponse, SimulationAllocation, SimulationFee, SimulationError), error response examples for 400 and 500, and a Simulator tag. YAML formatting validated.

How to test

  • Keeper runbook: Review backend/keepers/README.md — all env var names match backend/keepers/src/config/index.ts.
  • Storage report: Review docs/contracts/storage-report.mdDataKey variants verified against source files.
  • Pagination: cd server && npm test -- --testPathPatterns=incidentsPagination — all 7 tests pass.
  • OpenAPI: YAML parses without errors; review the new Simulator section in server/openapi.yaml.

@vercel
Copy link
Copy Markdown

vercel Bot commented May 27, 2026

@ijeoma270 is attempting to deploy a commit to the Edeh Victor's projects Team on Vercel.

A member of the Team first needs to authorize it.

@drips-wave
Copy link
Copy Markdown

drips-wave Bot commented May 27, 2026

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

@edehvictor edehvictor merged commit b164cd7 into edehvictor:main May 27, 2026
6 of 9 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