Skip to content

feat(dotnet): first-class .NET/C# stack - #29

Merged
CMaintz merged 2 commits into
mainfrom
feat/dotnet-variant
Sep 28, 2026
Merged

CMaintz merged 2 commits into
mainfrom
feat/dotnet-variant

Conversation

@CMaintz

@CMaintz CMaintz commented Sep 27, 2026

Copy link
Copy Markdown
Owner

Adds .NET/C# as a full facade stack — uses: gate.yml@v2 with { stack: dotnet }.

  • _dotnet.yml (new internal per-stack gate): dotnet format (lint) · dotnet build -warnaserror (typecheck — Roslyn analyzers as errors) · dotnet test · dotnet list package --vulnerable (audit), decomposed one-per-step with fix guidance. Habits job is Node-free (pure-Python line-count).
  • gate.yml facade gains a dotnet dispatch job + gate-ok includes it.
  • foundry-init promotes dotnet from inline-gate to the facade (stack: dotnet, habit-hooks-generic, gets a bootstrap workflow).
  • dotnet habit-hooks preset disables jscpd by default (keeps habits Node-free; real C# structural checks are Roslyn via -warnaserror). Enable jscpd + copy .jscpd.json for duplication detection.
  • mise/dotnet.toml already had the six verbs; README + FEATURES updated.

Backward-compatible (new stack, no interface change) → release-please should minor-bump (v2.1.0). actionlint validates the workflow here.

Adds _dotnet.yml (the internal per-stack gate: dotnet format/build -warnaserror/test/
list-package--vulnerable, one verb per step + fix guidance, and a Node-free habits job)
and wires stack: dotnet into the gate.yml facade + gate-ok. foundry-init promotes dotnet
from inline-gate to the facade (stack=dotnet, habit-hooks-generic plugin, bootstrap). The
dotnet habit-hooks preset disables jscpd by default (Node-free line-count; Roslyn
-warnaserror covers real C# structural analysis). mise/dotnet.toml already had the six
verbs. README + FEATURES list dotnet.
Pre-existing slip surfaced by the repo-wide typos check on this PR.
@CMaintz
CMaintz merged commit 9a9f41d into main Sep 28, 2026
4 checks passed
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