Skip to content

Latest commit

 

History

History
29 lines (19 loc) · 1.38 KB

File metadata and controls

29 lines (19 loc) · 1.38 KB

Contributing

Testing

  • make test runs the Go suite with -race -count=1.
  • make test-frontend runs the vitest suite in web/. Tests are colocated as *.test.ts(x) under web/src/.
  • For iterative local work: cd web && pnpm test:watch.
  • For a coverage report: cd web && pnpm test:coverage.
  • CI runs both make test and make test-frontend on every PR.
  • Frontend changes should ship with vitest specs. Behavior jsdom can't render — virtualization, drag-and-drop, scroll — needs a manual smoke (a passing suite isn't full coverage).

See AGENTS.md and web/AGENTS.md for agent-specific conventions.

Database Migrations

Database schema changes must include:

  • a SQLite migration under internal/database/migrations
  • a Postgres migration under internal/database/postgres_migrations
  • matching model/store updates in the same PR so schema and code stay in sync

For an open PR, keep schema work consolidated to at most one new migration file per driver:

  • one file under internal/database/migrations
  • one file under internal/database/postgres_migrations

If a PR needs more schema changes before merge, update the draft migration files for that PR instead of adding more migration files. Consolidate before merge.

Do not land schema-only changes. The corresponding model/store files touched by the schema change must be updated in the same PR.