Skip to content

Remove the broken Stainless csharp target so spec PRs stop failing CI#671

Merged
benwgold merged 1 commit into
mainfrom
07-07-remove-broken-stainless-csharp-target
Jul 8, 2026
Merged

Remove the broken Stainless csharp target so spec PRs stop failing CI#671
benwgold merged 1 commit into
mainfrom
07-07-remove-broken-stainless-csharp-target

Conversation

@benwgold

@benwgold benwgold commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Summary

Removes the csharp target from .stainless/stainless.yml so the Build SDKs for pull request / preview check stops failing on every spec-changing PR.

Why every spec PR is red: Stainless's csharp build CI is broken upstream for ANY freshly generated code (content-independent, proven by bisect on #650, breakage window ~Jul 3). The preview check gates on a per-language head-vs-base regression, and with csharp in main's config the base build resolves to a cached pre-breakage csharp success — so every fresh head failure counts as a regression → red.

Why this fixes it: with csharp out of the config on main, base builds have no cached csharp success to regress from — matching outcomes on base and head → "not a regression" → green. Proven end-to-end by probe #659: the exact previously-failing change class (doc-comment-only codegen delta) ran against a csharp-free base and preview passed. Full mechanics: investigation writeup.

No shipping impact: the csharp target is unpublished (production_repo: null, publish.nuget: false). Re-add the block when Stainless fixes their csharp build CI upstream.

Sequencing (for #657 and other open spec PRs)

  1. Merge this PR — its own preview will be red (its base is current main); merge through it (precedent: feat(openapi): add rail + settlement-timing fields to OutgoingTransaction #633, Add idType/identifier to IndividualCustomerCreateRequest (ENG-10686) #637).
  2. Merge/rebase main into open spec PRs (e.g. docs(cards): PAN reveal via POST /cards/{id}/reveal; panEmbedUrl off the Card resource #657) — their next preview run goes green.

Verification


🤖 thundering-graviton-3(#3) | Feedback

Original PR: #663

Stainless's csharp build CI fails on any freshly generated code
(content-independent, proven by bisect on #650), and the preview check
gates on head-vs-base regression per language — so every spec-changing
PR fails 'Build SDKs' while main's config still lists csharp and the
base build resolves to a cached pre-breakage success. With csharp gone
from the config on main, base builds have no csharp success to regress
from and the check passes (proven end-to-end by probe #659, which ran
the exact previously-failing change class against a csharp-free base
and passed).

The target is unpublished (production_repo: null, no NuGet publish), so
nothing ships differently. Re-add the block when Stainless fixes their
csharp build CI upstream.

This PR's own preview check will still be red (its base is current
main) — merge through it; precedent #633, #637.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

akanter commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

This stack of pull requests is managed by Graphite. Learn more about stacking.

@benwgold benwgold marked this pull request as ready for review July 8, 2026 16:57
@github-actions

github-actions Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

✱ Stainless preview builds for grid

This PR will update the grid SDKs with the following commit messages.

cli

chore(internal): regenerate SDK with no functional changes

go

chore(internal): regenerate SDK with no functional changes

kotlin

chore(internal): regenerate SDK with no functional changes

openapi

chore(internal): remove C# code samples from OpenAPI spec

php

chore(internal): regenerate SDK with no functional changes

python

chore(internal): regenerate SDK with no functional changes

ruby

chore(internal): regenerate SDK with no functional changes

typescript

docs(internal): remove C# examples and documentation
⚠️ grid-openapi studio · code

Your SDK build had at least one "warning" diagnostic.
generate ⚠️

grid-ruby studio · code

Your SDK build had at least one "note" diagnostic.
generate ✅build ⏭️lint ✅test ✅

⚠️ grid-go studio · code

Your SDK build had a failure in the lint CI job, which is a regression from the base state.
generate ✅build ⏭️lint ❗test ❗

go get github.com/stainless-sdks/grid-go@a249a8a48b6efbf3da506590397d7ad8ebf4d641
⚠️ grid-kotlin studio · code

Your SDK build had a failure in the test CI job, which is a regression from the base state.
generate ⚠️build ⏭️lint ⏭️test ❗

⚠️ grid-typescript studio · code

Your SDK build had a failure in the lint CI job, which is a regression from the base state.
generate ✅build ✅lint ❗test ✅

npm install https://pkg.stainless.com/s/grid-typescript/b3ce136a2a58f4ddbafe7ee45787684adfc87553/dist.tar.gz
⚠️ grid-python studio · code

Your SDK build had a failure in the test CI job, which is a regression from the base state.
generate ✅build ⏭️lint ⏭️test ❗

grid-php studio · code

Your SDK build had at least one "note" diagnostic.
generate ✅lint ✅test ✅

⚠️ grid-cli studio · code

Your SDK build had a failure in the test CI job, which is a regression from the base state.
generate ⚠️build ⏭️lint ⏭️test ❗


This comment is auto-generated by GitHub Actions and is automatically kept up to date as you push.
If you push custom code to the preview branch, re-run this workflow to update the comment.
Last updated: 2026-07-08 17:25:45 UTC

@ls-bolt

ls-bolt Bot commented Jul 8, 2026

Copy link
Copy Markdown

📌 Bolt Status

2026-07-08 16:57:41 UTC — ⚡ Agent thundering-graviton-6(#6) started


Feedback

@greptile-apps

greptile-apps Bot commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

Removes the csharp target from .stainless/stainless.yml to unblock spec-changing PRs whose CI preview check was always failing due to a Stainless upstream csharp build breakage. The target was already unpublished (production_repo: null, publish.nuget: false), so there is no impact on shipping artifacts.

  • The six-line csharp block is replaced with a single comment documenting why it was omitted, making the intent clear for whoever re-adds it when the upstream issue is resolved.
  • All other targets (typescript, kotlin, python, ruby, go, php, cli) are untouched.

Confidence Score: 5/5

Safe to merge — removes an unpublished, never-shipped target with no downstream consumers.

The change is a single 6-line deletion of an unpublished C# SDK target plus a replacement comment. Nothing published is affected, the remaining targets are untouched, and the PR author has provided end-to-end validation via probe #659 confirming the CI fix works correctly.

No files require special attention.

Important Files Changed

Filename Overview
.stainless/stainless.yml Removes the unpublished csharp target block and replaces it with an explanatory comment; no other targets or settings are touched.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[Spec-changing PR opens] --> B{Run Stainless preview CI}
    B --> C[Build SDKs: head branch]
    B --> D[Build SDKs: base branch main]
    subgraph Before this PR
        C1[head: csharp build FAILS upstream Stainless breakage]
        D1[base: csharp build SUCCESS cached pre-breakage result]
        R1[head failure vs base success = regression detected → RED]
        C1 --> R1
        D1 --> R1
    end
    subgraph After this PR
        C2[head: no csharp target skipped]
        D2[base: no csharp target skipped]
        R2[head skipped vs base skipped = no regression → GREEN]
        C2 --> R2
        D2 --> R2
    end
    B --> C1
    B --> D1
    B --> C2
    B --> D2
Loading
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
flowchart TD
    A[Spec-changing PR opens] --> B{Run Stainless preview CI}
    B --> C[Build SDKs: head branch]
    B --> D[Build SDKs: base branch main]
    subgraph Before this PR
        C1[head: csharp build FAILS upstream Stainless breakage]
        D1[base: csharp build SUCCESS cached pre-breakage result]
        R1[head failure vs base success = regression detected → RED]
        C1 --> R1
        D1 --> R1
    end
    subgraph After this PR
        C2[head: no csharp target skipped]
        D2[base: no csharp target skipped]
        R2[head skipped vs base skipped = no regression → GREEN]
        C2 --> R2
        D2 --> R2
    end
    B --> C1
    B --> D1
    B --> C2
    B --> D2
Loading

Reviews (1): Last reviewed commit: "Remove the broken Stainless csharp targe..." | Re-trigger Greptile

@benwgold benwgold enabled auto-merge (squash) July 8, 2026 17:10
@benwgold benwgold merged commit f7b7ab9 into main Jul 8, 2026
16 checks passed
@benwgold benwgold deleted the 07-07-remove-broken-stainless-csharp-target branch July 8, 2026 17:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants