SShortSingh.
Back to feed

How a Misplaced Project Reference Can Break CI While Local Tests Pass

0
·1 views

A common but overlooked issue in .NET SDK-style builds occurs when a test project directly references an executable browser application just to access a simple, self-contained logic rule. While tests may pass locally, CI environments that disable web-asset processing can fail at build evaluation before any test even runs, because the browser project brings along complex build targets and workloads. The root cause is architectural: the test depends on the entire application head instead of only the capability it needs. The recommended fix is to move the shared rule into a neutral library that both the application and the test project already reference, eliminating the problematic dependency without adding new graph edges. Any such refactoring decision should be documented, explaining why the original location was invalid and under what future conditions the code placement should be revisited.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

Sekiban Framework Lets Developers Run C# Business Logic as WebAssembly via WasmRuntime

Sekiban, an event sourcing framework for C#, now supports running existing business logic as WebAssembly through its SekibanWasmRuntime component. In this setup, command handlers execute on the API side while state-building projectors and list queries run inside a Wasm environment on the server. Events are stored in PostgreSQL, with the Runtime managing execution and storage separately from the application's business code. Developers can reuse existing C# logic with minimal changes, primarily adding a Wasm entry point, type registration, and remote connection configuration. The current implementation supports C# and Rust natively, with experimental support for Go, TypeScript, MoonBit, and Swift.

0
ProgrammingDEV Community ·

SeenDisJob Chrome Extension Flags Duplicate Job Listings in Real Time

Developer Wisdom Ekwugha has built SeenDisJob, a Chrome extension designed to help job seekers identify duplicate or reposted job listings while browsing. The tool monitors open job listing tabs and alerts users when a current posting closely matches one they have already viewed, displaying when and where the earlier listing was seen. It targets high-volume job seekers who frequently work across multiple job boards and encounter reposted or mirrored roles. SeenDisJob extracts job title and company name from each listing page and compares them against a personal browsing history to detect near-identical matches. The project is open-source under the MIT license and is available via GitHub rather than the Chrome Web Store.

0
ProgrammingDEV Community ·

Claude Code, Codex, or Cursor: A Developer Breaks Down Which AI Tool Saves Time

A full-stack developer has compared three leading AI coding tools — Claude Code, Codex, and Cursor — evaluating them on real-world criteria beyond raw code generation speed. The analysis focuses on how each tool performs across the full development loop, including understanding codebases, catching edge cases, writing tests, and maintaining architectural consistency. Cursor is highlighted as best suited for fast, editor-integrated edits on frontend tasks, while Claude Code is favored for deeper reasoning, backend logic, and planning complex refactors. The developer cautions that tools generating the most code are not always the most time-saving, as poorly guided AI can introduce scattered edits and inconsistent patterns that create cleanup work later. The key takeaway is that the fastest tool is the one that reduces decision fatigue without obscuring the underlying engineering work.

0
ProgrammingDEV Community ·

How to Use SDLC Gates to Catch Bugs in AI-Generated Test Code

AI tools can generate test code rapidly, but without proper checks, these tests may include hallucinated assertions, irrelevant logic, and silent regressions that only appear in production. A proposed framework treats AI-generated tests as untrusted input and routes them through four mandatory quality gates before merging. The four gates cover execution validity, meaningful code coverage, behavioral accuracy via mutation testing, and drift detection using snapshot or approval testing. Each gate is enforced through CI pipelines using tools like GitHub Actions, Jest, Stryker, and coverage utilities. The approach aims to let teams benefit from AI-assisted testing while preventing low-quality or misleading tests from reaching production.