Skip to content

chore: add CONTRIBUTING.md#3622

Merged
TaprootFreak merged 1 commit intodevelopfrom
chore/add-contributing-md
Apr 23, 2026
Merged

chore: add CONTRIBUTING.md#3622
TaprootFreak merged 1 commit intodevelopfrom
chore/add-contributing-md

Conversation

@TaprootFreak
Copy link
Copy Markdown
Collaborator

Summary

Adds a repo-scoped CONTRIBUTING.md with the rules that have been biting contributors and AI assistants:

  • Migrations: always generate via `npm run migration`, never hand-write schema migrations. Motivated by PR fix: MROS migration #3613 (hand-written constraint names drifted from TypeORM) and PR ci: block modifications to existing migration files #3614 (migration immutability CI check).
  • Exception: data-only migrations (UPDATE/INSERT/DELETE) may be hand-written.
  • Canonical JSON-column pattern with typed getter/setter (see `buy-crypto.entity.ts`).
  • Create vs Update DTO conventions (`IsOptional` vs `IsOptionalButNotNull`).
  • Service update pattern (`Object.assign` + typed setters).
  • Module/subdomain structure.
  • Git workflow (branch naming, squash-merge, auto release PR).

Filename CONTRIBUTING.md is tool-neutral — doesn't auto-load into Claude Code like CLAUDE.md would, but works as standard contributor documentation and can still be referenced explicitly.

Test plan

  • New contributor reads it and doesn't produce the same migration mistakes again

Documents the repo-specific rules that keep biting contributors and
AI assistants:

- Migrations must be generated via 'npm run migration', not hand-
  written (constraint-name drift, see PR #3613 / #3614).
- Migrations are immutable once merged — CI enforces it.
- Canonical JSON-column pattern (getter/setter) from
  buy-crypto.entity.ts.
- Create vs Update DTO conventions (IsOptional vs
  IsOptionalButNotNull).
- Service update pattern with Object.assign + typed setters.
- Branch / commit / release-PR workflow.
@TaprootFreak TaprootFreak force-pushed the chore/add-contributing-md branch from 353057a to abf7576 Compare April 23, 2026 15:59
@TaprootFreak TaprootFreak merged commit 4b1c823 into develop Apr 23, 2026
6 checks passed
@TaprootFreak TaprootFreak deleted the chore/add-contributing-md branch April 23, 2026 16:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant