Context
Regressions in invoice → marketplace → invest → verify → settle are expensive. An automated E2E API test (Supertest) with mocked Stellar, IPFS, and email proves the core product path stays intact as features land.
Complexity & points
High — 200 points
Prerequisites (must be merged or satisfied first)
Unblocks (downstream)
- Safe refactors across invoice, marketplace, Stellar, and settlement code with CI signal.
Goals
- One (or a small suite of) E2E test file(s) under
tests/e2e/ that:
- Bootstraps the app with test DB or sqlite if project standard allows—prefer PostgreSQL test container or documented local test DB consistent with TypeORM.
- Mocks external IO: Stellar Horizon, Pinata/IPFS.
- Flow: register/auth user(s) → seller creates + publishes invoice → investor lists marketplace → invests → verification marks confirmed → settlement completes.
- CI:
npm test runs E2E in CI or a documented npm run test:e2e gated by env (README update).
Out of scope
- Browser/UI tests.
- Mainnet transactions.
Contributor workflow
- Apply on Drips before opening a PR: Claim this issue through the Drips platform before you open a pull request. Unsolicited PRs from unassigned contributors may be closed without review.
- ETA required: Your application must include an ETA for when you will open the first draft PR.
- Draft PR within 24 hours: If a draft PR is not linked on this issue within 24 hours of assignment, maintainers may unassign you so someone else can take the issue.
Acceptance criteria
PR submission requirements
Context
Regressions in invoice → marketplace → invest → verify → settle are expensive. An automated E2E API test (Supertest) with mocked Stellar, IPFS, and email proves the core product path stays intact as features land.
Complexity & points
High — 200 points
Prerequisites (must be merged or satisfied first)
Unblocks (downstream)
Goals
tests/e2e/that:npm testruns E2E in CI or a documentednpm run test:e2egated by env (README update).Out of scope
Contributor workflow
Acceptance criteria
PR submission requirements
Closes #18(adjust if needed).main, state base branch and merge plan.