CRMAPIGenerator (the repository)

Overview

The primary code-generation tool that emits strongly-typed C# wrapper classes around Dynamics 365 CRM on-premises Web API endpoints. Output is .NET Framework 4.6.2-compatible C# packaged as NuGet packages for downstream solution consumption.

Key attributes

  • Repository: ibrahimkarakira/CRMAPIGenerator on GitHub
  • Language: C# 9, target .NET Framework 4.6.2
  • Build system: MSBuild via dotnet build CLI
  • Test: xUnit + Moq (unit), Testcontainers + mock CRM (integration)
  • CI: GitHub Actions, workflow at .github/workflows/ci.yml
  • Default branch: master
  • Last green commit (post-rollback baseline): 2187a36 as of 2026-04-26

Project layout (high level)

CRMAPIGenerator/
├── Templates/        ← Razor/scriban templates that drive code generation
├── Generators/       ← C# generation logic + code emit
├── Tools/            ← CLI entry point, config parsing, schema introspection
├── Tests/            ← xUnit suite, [Category="Integration"] tagged
└── .github/workflows/ ← CI definitions

Timeline (recent)

  • 2026-04-26 ~16:30master rolled back from 55d6e3f2187a36 after 19 retry-PRs from yellow-banner suggestions were merged with failing CI. Ref: [[Yellow-Banner-Trap]]. 20 contaminated agent branches deleted; 20 issues reset to todo.
  • 2026-04-26 evening — Pipeline cleaned, agents requeued, Engineer agent resumed under .csproj-aware repo-map (kalamos commit bce7113).
  • 2026-04-27 — Kalamos VPS rescue (storage + CPU caps); kalamos remained paused. CRMAPIGenerator branches cleaned, no production work.
  • 2026-04-28 — kalamos-brain Phase 2.0 vault bootstrap. This file authored.

Active issues (status as of 2026-04-28)

20 ARCAA-* tickets requeued post-rollback. 5 redo tickets (ARCAA-94/95/98/112/117) still pending investigation per primer.md. Full list lives in the Plane workspace; mirror in raw/issues/ will be populated as they close (Phase 2.4 wiki.ingest hooks).

Known traps

See concepts (linked):

  • [[CSProj-Duplicate-PackageReference-Trap]]
  • [[NuGet-v3-vs-v6-Resolution]]
  • [[Yellow-Banner-Trap]]
  • [[Builder-MSBuild-Zombie-Reuse]]

Open questions

  • Is the integration test suite still safe to run unfiltered, or has it accumulated tests that would mutate live CRM data?
  • Should Templates/ migrate to SDK-style csproj? Currently legacy format which contributes to package-reference fragility.
  • Are the 5 redo tickets still reproducible after the rollback?
  • [[Microsoft-Xrm-Sdk]] — the dependency
  • ADR-025 + ADR-026 — kalamos-runtime context this project consumes