Skip to content

docs(structural): convert patterns.md to thin index#31

Merged
mghabin merged 1 commit into
mainfrom
struct/patterns-index
Apr 30, 2026
Merged

docs(structural): convert patterns.md to thin index#31
mghabin merged 1 commit into
mainfrom
struct/patterns-index

Conversation

@mghabin

@mghabin mghabin commented Apr 30, 2026

Copy link
Copy Markdown
Owner

Converts patterns/patterns.md from a doctrine document into a thin index.

Each named pattern now gets a ≤3-sentence summary plus a required link to the owning chapter section. Decision-bearing prose lives in the chapters.

Ownership mapping applied

  • Outbox → docs/03-data.md §6 (Cross-system consistency → Outbox)
  • CQRS → docs/03-data.md §12 (CQRS-lite)
  • Repository / Specification → docs/03-data.md §11
  • Unit of Work = DbContextdocs/03-data.md §6
  • ProblemDetails / IExceptionHandler → docs/02-aspnetcore.md §3
  • Resilience pipeline → docs/02-aspnetcore.md §7 + docs/06-cloud-native.md §6
  • Caching matrix → docs/03-data.md §14 + docs/02-aspnetcore.md §9 (OutputCache)
  • WebApplicationFactory → docs/04-testing.md §5
  • TimeProvider / FakeTimeProvider → docs/01-foundations.md §5 (prod) + docs/04-testing.md §14 (test)
  • Health checks → docs/06-cloud-native.md §10
  • Aspire ServiceDefaults → docs/06-cloud-native.md §1
  • BackgroundService + Channel → docs/02-aspnetcore.md §12
  • DI keyed services → docs/01-foundations.md §5

Kept here as cross-cutting (no single chapter owner)

  • Vertical-slice vs Clean Architecture (architectural axis choice)
  • Bounded contexts / monorepo strategy (links to monorepo.md)
  • Domain events vs integration events (failure-mode contrast)

Anti-patterns section continues to point at patterns/anti-patterns.md.

GoF refresher reduced to a one-line-per-pattern vocabulary cheat-sheet pointing at the BCL primitive that replaces the hand-roll.

Markdownlint passes locally with the repo's .markdownlint.yaml.

Replace decision-bearing prose (Outbox, CQRS, Repository/UoW,
ProblemDetails, WebApplicationFactory, TimeProvider, resilience,
caching, health checks, Aspire ServiceDefaults, BackgroundService,
keyed DI, etc.) with one-paragraph summaries that link to the owning
chapter section.

Cross-cutting topics without a clear chapter owner (vertical-slice
vs Clean Architecture, bounded contexts / monorepo, domain vs
integration events) stay here, clearly labelled.

GoF refresher trimmed to a one-line-per-pattern vocabulary cheat-sheet
that points to the BCL primitive replacing the hand-roll.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@mghabin mghabin merged commit 1324447 into main Apr 30, 2026
3 checks passed
@mghabin mghabin deleted the struct/patterns-index branch April 30, 2026 15:10
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