OU
test: cover template page hydration
outerbase/starbasedb#204

/claim #71

Fixes #71.

Summary

  • Add focused Vitest coverage for the interface template page entrypoint.
  • Cover the no-root guard so the module does not hydrate when #root[data-client="template"] is absent.
  • Cover the positive hydration path and assert hydrateRoot receives the server root.
  • Add a non-overlapping interface primitive coverage slice for Avatar fallback/image states, Card anchor/div variants, Label required validation messaging, Loader sizing, Toggle size/selected classes, and Input prefix/suffix, invalid state, sizing, and custom class handling.
  • Add public package entrypoint coverage for the root runtime API (StarbaseDB, StarbaseDBDurableObject) and documented plugin barrel exports.
  • Add JSON import route coverage for malformed application/json payload shapes, invalid uploaded JSON files, column mapping inserts, and valid multipart JSON file imports.
  • Assert malformed JSON import requests return the existing 400 validation response without calling executeOperation.

Validation

  • pnpm exec vitest --run src/import/json.test.ts src/public-entrypoints.test.ts plugins/interface/pages/template/index.test.tsx plugins/interface/components/primitives.test.tsx -> 22 tests passed
  • pnpm exec prettier --check src/import/json.test.ts src/public-entrypoints.test.ts plugins/interface/pages/template/index.test.tsx plugins/interface/components/primitives.test.tsx -> passed
  • git diff --check -> passed

Note: I also ran the current full coverage command, pnpm exec vitest --run --coverage.enabled true --coverage.reporter=text; the baseline currently fails in existing src/rls/index.test.ts assertions before this change. This PR’s focused tests pass locally.

Claim

Total prize pool $250
Total paid $0
Status Pending
Submitted May 13, 2026
Last updated May 13, 2026

Contributors

TA

Taher Dhanerawala

@taherdhanera

100%

Sponsors

OU

Outerbase (YC W23)

@outerbase

$250