Files
Ekklesia/CONTRIBUTING.md
T
ekklesia 831a48187c
CI / verify (pull_request) Successful in 19s
CI / infrastructure-smoke (pull_request) Successful in 21s
CI / migration-smoke (pull_request) Failing after 16s
test: add PostgreSQL migration integration coverage
2026-07-21 09:37:15 -05:00

1.6 KiB

Contributing

Ekklesia is being built in verified, reviewable phases. Changes should preserve the dependency boundaries described in repository-boundaries.md.

Before opening a change, run:

pnpm verify

Migration-runner changes also require the disposable live PostgreSQL suite:

pnpm test:migrations:integration

See the testing guide for the distinction between unit and live evidence and for credential-safe troubleshooting.

When adding or changing a module manifest, also run pnpm modules:validate directly for focused, path-aware discovery errors. It is included in pnpm verify.

If Docker is available, also validate the development infrastructure:

pnpm infrastructure:config

Package rules

  • Use strict TypeScript for production packages.
  • Expose supported entry points through package exports; do not import another package's private source paths.
  • Use workspace: ranges for internal package dependencies.
  • Keep modules backend-only. Module packages cannot contain React, mobile, stylesheet, or other UI source files.
  • Put rendering, layout, navigation, accessibility, and all other presentation concerns in a surface.
  • Add or update tests when changing a contract or architectural rule.
  • Record major architectural changes in an ADR rather than burying them in an implementation.

Runtime registries and aggregate schemas will be produced by later phases. Do not add a manually maintained feature-module registry; discovery starts from validated ekklesia.module.json files.