harb/services/ponder/src
openhands e49938bd0a fix: Ponder: add test infrastructure + coverage for helpers (target 95%) (#287)
- Add vitest ^2 + @vitest/coverage-v8 ^2 as devDependencies
- Add `test` and `test:coverage` scripts to package.json
- Create vitest.config.ts with resolve.alias to mock ponder virtual modules
  (ponder:schema, ponder:registry) and point kraiken-lib/version to source
- Add coverage/  to .gitignore
- Add vitest.config.ts to tsconfig.json include so eslint project-aware rules apply
- Create src/tests/__mocks__/ponder-schema.ts and ponder-registry.ts stubs
- Create src/tests/stats.test.ts — 48 tests covering ring buffer logic,
  segment updates, hourly advancement, projections, ETH reserve snapshots,
  all exported async helpers with mock Ponder contexts
- Create src/tests/version.test.ts — 14 tests covering isCompatibleVersion,
  getVersionMismatchError, and validateContractVersion (compatible / mismatch /
  error paths, existing-meta upsert path)
- Create src/tests/abi.test.ts — 6 tests covering validateAbi and
  validateContractAbi

Result: 68 tests pass, 100% line/statement/function coverage on all helpers
(stats.ts, version.ts, abi.ts, logger.ts) — exceeds 95% target.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-25 22:29:57 +00:00
..
api feat(ponder): Add strict ESLint + Prettier with pre-commit hooks (#52) 2025-10-04 15:37:26 +02:00
helpers fix: LiveStats: remove floor price from landing, fix ETH reserve data pipeline, strip browser RPC (#196) 2026-02-23 21:57:13 +00:00
tests fix: Ponder: add test infrastructure + coverage for helpers (target 95%) (#287) 2026-02-25 22:29:57 +00:00
index.ts feat/ponder-lm-indexing (#142) 2026-02-18 00:19:05 +01:00
kraiken.ts fix: LiveStats: remove floor price from landing, fix ETH reserve data pipeline, strip browser RPC (#196) 2026-02-23 21:57:13 +00:00
lm.ts feat: replace tax with holders in ring buffer, add sparkline charts (#170) 2026-02-22 18:56:36 +00:00
stake.ts fix: LiveStats: remove floor price from landing, fix ETH reserve data pipeline, strip browser RPC (#196) 2026-02-23 21:57:13 +00:00