Skip to content

[2026 Testing] Enforce per-file coverage thresholds for critical Stellar and signing modules #1003

Description

@Nanle-code

Objective

Guarantee high test coverage where bugs lose funds or break signing.

Target area

vitest config, scripts/check-coverage.mjs

Context

Global coverage thresholds can hide low coverage in critical files. Stellar SDK wrappers, the transaction builder, fee math, address parsing and signing flows need a higher bar than UI code.

Acceptance criteria

  • Per-file thresholds of ≥90% lines/branches for src/lib/stellar*, transactionBuilder.ts, stroop/amount utilities, src/lib/wallet/** and multisig*.
  • check-coverage.mjs reports per-file failures clearly in the CI summary.
  • Tests are added to meet the thresholds, focused on branches and failure paths.
  • Thresholds are documented in contributor docs.
  • Automated tests cover the primary flow, at least one boundary case, and at least one failure case.
  • User-facing documentation or developer guidance is updated, including compatibility, security, or migration notes where applicable.

Pull request requirements

  • All continuous integration checks must pass before a pull request may be merged.
  • The branch must be free of merge conflicts with the target branch at the time of merge.
  • Do not request merge with failing workflows, skipped required checks, or unresolved conflicts.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    qualitysecurityWallet, auth, or crypto paths; needs a CODEOWNERS review and is never a starter issuetesting

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions