BaseModel is a data infrastructure project. Changes should improve the quality, correctness, reproducibility, or usability of the published datasets.
- Use Node.js 20 or newer.
- Use pnpm 9 or newer.
- Read the docs in
docs/before changing behavior.
pnpm install
pnpm buildpnpm lint- Check formatting and static issues.pnpm typecheck- Run TypeScript checks across the workspace.pnpm test- Run the workspace test suite.pnpm generate- Regenerate the published datasets indist/.
- Update the relevant schemas in
packages/schemawhen data shape changes. - Update registry merge or validation logic in
packages/registrywhen record handling changes. - Update collectors in
packages/collectorswhen provider or gateway inputs change. - Update
packages/publisherwhen dataset outputs change. - Update the docs that describe the changed behavior.
- Keep PRs small and focused.
- Add or update tests for behavior changes.
- Do not introduce undocumented fields or outputs.
- Keep examples in sync with current commands and repository paths.
New providers or gateways must follow the existing schema contracts.
- Add the collector or gateway under
packages/collectors/src/. - Add the required secret names to
packages/collectors/src/core/gateway-secrets.ts. - Add tests for the happy path and the failure path.
- Update
docs/07_Developer_Access.mdanddocs/08_Gateway_Plugin_Security.mdwhen the integration surface changes.
Be respectful, precise, and constructive.