Skip to content

[703] Add upstream error boundary middleware for upstream dependency failures - #1

Merged
kingeligma merged 237 commits into
mainfrom
fix/703-add-typed-error-boundary-middleware-for-upstream-dependency-failures
Jul 25, 2026
Merged

[703] Add upstream error boundary middleware for upstream dependency failures#1
kingeligma merged 237 commits into
mainfrom
fix/703-add-typed-error-boundary-middleware-for-upstream-dependency-failures

Conversation

@kingeligma

Copy link
Copy Markdown
Owner

Closes 703

Summary:

  • Add typed upstream error boundary middleware for dependency failures
  • Harden webhook verification with signed timestamped envelopes and replay protection
  • Update roadmap milestones in the README

Validation:

  • cd backend && npm run build
  • cd backend && npm test -- --runInBand src/__tests__/webhookVerification.test.ts
  • cd backend && npm test -- --runInBand (repo still has 2 unrelated failing tests outside this change)

Mosas2000 and others added 30 commits April 25, 2026 15:51
Co-authored-by: Cursor <cursoragent@cursor.com>
Add keyboard shortcut palette for core actions
- Create CONTRACTS_ARCHITECTURE.md (1,200+ lines, 12 sections)
- Document 6 contract modules with full responsibilities
- Document 50+ functions, 30+ storage keys, 5 event types
- Document 8 VaultError + 11 OracleError codes
- Document 10 cross-contract calls with ASCII diagrams
- Add data flow for main user journeys
- Add storage architecture, security model, developer guide
- Update README.md with architecture section and module table
- Add 100% RustDoc coverage across all public items
- Fix 6 missing oracle functions, 3 storage keys, 4 unused imports
- Zero build warnings

Closes Junirezz#577
- Create WEBHOOK_INTEGRATION.md (1,500+ lines, 46KB)
- Document all 5 emitted events with topic and payload structure
- Add TypeScript consumer example (500 lines, cursor pagination)
- Add Python consumer example (450 lines, SHA-256 replay detection)
- Add signature verification and replay detection examples
- Document exponential backoff retry strategy (1s→2s→4s→8s→16s→30s)
- Document cursor-based pagination and idempotency patterns
- Document error handling for 5+ failure scenarios
- Add security best practices and anomaly detection
- Add testnet vs mainnet configuration guide
- Update CONTRACTS_ARCHITECTURE.md with Events & Webhooks section
- Update README.md with webhook integration quick start
- Zero build warnings, no contract logic changed

Closes Junirezz#573
TheDEV111 and others added 27 commits June 2, 2026 11:56
…tion (Junirezz#438)

Wires submitVaultOperation (from sorobanClient.ts) into the vault deposit and
withdrawal endpoints, replacing the sleep+fake-hash stub. The real call:
  - loads the signing keypair from STELLAR_SECRET_KEY (never hard-coded)
  - resolves the vault contract ID from VAULT_CONTRACT_ID or the deployments file
  - simulates the transaction via the Soroban RPC, injects the resource footprint
    via assembleTransaction, signs, and submits
  - throws SorobanSimulationError on simulation failure, RPC rejection, or
    unexpected status — surfaced as structured 502/422/503 responses in the
    vault endpoints handler
  - fixes two bugs in the original sorobanClient: missing transaction.sign()
    call before submission, and string instead of BigInt for i128 amount arg
  - corrects the stellar-sdk-shim to declare the real `rpc` namespace
    (sdk.rpc.* at runtime) rather than the non-existent SorobanRpc namespace
  - adds a Jest moduleNameMapper entry and mock so all existing integration
    tests continue to pass without a live Stellar RPC
Resolves merge conflict in CONTRACT_UPGRADE_PLAYBOOK.md committed to main.
Merges both versions into a single comprehensive runbook covering:
- Pre-upgrade checks (operational, build, storage layout, rollback artifacts)
- Pause → upgrade → migrate → verify → resume steps with CLI examples
- Rollback Option A (revert WASM hash) and Option B (redeploy fallback)
- Post-upgrade verification checklist and smoke tests
- Deployment artifact tracking and stakeholder handoff

Closes Junirezz#578
Replace the mock referral yield calculation
…ng-layer

feat(Junirezz#197): add caching layer for expensive read endpoints
…integration

feat(rpc): replace Soroban stub with real stellar-sdk contract invocation (Junirezz#438)
…ration-playbook

docs: add contract upgrade and migration playbook
…up-job

feat(backup): add automated daily database backup job with S3 off-sit…
- Add usePendingTransactionCount hook to derive pending/failed count from React Query cache
- Add Transactions nav link to desktop, mobile, and dropdown menus
- Show pill badge with pending/failed count on the nav link
- Add i18n keys for nav.transactions in en and es locales

Closes Junirezz#248
…badge

feat: add notification badge for pending/failed transactions
…ty-states

feat: add reusable empty state components
…-scheduler

Add periodic APY snapshot scheduler with job governance registration …
…tream

feat: add copy-to-clipboard for contract addresses and tx hashes
…awal-dispute-window

feat: implement emergency dispute window functionality and related tests
Copilot AI review requested due to automatic review settings July 25, 2026 17:58

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot wasn't able to review this pull request because it exceeds the maximum number of files (300). Try reducing the number of changed files and requesting a review from Copilot again.

@kingeligma
kingeligma merged commit 3c03bb4 into main Jul 25, 2026
8 of 17 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

Development

Successfully merging this pull request may close these issues.