Find every Mono-dependent construct before Unity 6.8 removes Mono - including inside compiled DLLs you have no source for.Unity is removing Mono in 6.8.Unity calls the move to CoreCLR the most significant change to its C# layer in over a decade. Every commercial project has to audit for it, there is a hard deadline, and the official migration guidance is a forum thread. This is that audit, as a tool you run in the editor and in CI.WHAT IT DOESScans every C# file and reflects over every compiled assembly in your project against a 22-rule corpus covering the five categories that break: serialization, threading, assembly loading, reflection and P/Invoke. Each finding tells you why CoreCLR breaks it and what to do about it - the part you cannot get from a grep.THE COMPILED-ASSEMBLY HALF IS THE REASON TO BUY ITA text search finds what you wrote. Your real exposure is usually in the plugins you bought, shipped as DLLs, whose vendors may be long gone. There is no source to search, so a source-only audit reports a clean project and you find out at runtime.This detects platform-invoke methods in compiled assemblies using the CLR's own MethodAttributes.PinvokeImpl metadata flag. That is certainty rather than pattern matching, and it works whether or not the source exists anywhere on earth. Those findings are tagged [compiled assembly].TRACK THE BURNDOWNSave a baseline, and every later scan shows the delta against it. "-3 since baseline" is the number a producer reports upward. A cancelled scan is marked cancelled everywhere, because a partial scan finds fewer problems than a complete one and would otherwise read as progress.CONTINUOUS INTEGRATIONRun it headless with -executeMethod CSAF.CoreCLRScanner.BatchMode.Run. It writes JSON and Markdown, fails the build on a breaking-count budget, and refuses to report a pass on an incomplete scan. Commit the JSON - the diff between two reports is the burndown.WHAT IT DELIBERATELY DOES NOT DOUnity ships Project Auditor free and bundled from 6.4 onward, covering domain-reload static state and, since 2.0.0, obsolete API. This does not reimplement either. Run both; they do not overlap. The included readme states the scope limits in full, including the known false negatives - a line-oriented rule carries no type information, and the assembly half reads metadata rather than method bodies.VERIFIEDUnity 6000.5.7f1. Batch-mode compile with -warnaserror: 0 errors, 0 warnings. 52/52 EditMode tests green, run against a fresh install of the shipped package.THIRD-PARTY NOTICESThis package contains no third-party assets: no fonts, images, audio, libraries or copied code. Each rule links to the vendor's own documentation (Microsoft Learn, Unity Discussions) for reference only, and those pages are not included. See Third-Party Notices.txt in the package for the full list.Scans C# source AND compiled assemblies. Finds P/Invoke inside third-party DLLs you have no source for, using the CLR's own MethodAttributes.PinvokeImpl metadata flag.22-rule corpus across the five categories CoreCLR breaks: serialization, threading, assembly loading, reflection and P/Invoke.Every finding explains why CoreCLR breaks it and what to change, not just a file and a line number.Baseline and burndown. Save a baseline and every later scan shows the delta a producer can report upward.CI entry point with a breaking-count budget that fails the build, and refuses to report a pass on an incomplete scan.The rule corpus ships as plain JSON. Edit it, extend it, or supply your own.Raw readable C# under an Editor-platform assembly definition. No Resources folder, no dependencies, nothing added to your runtime build.Demo scene with deliberately non-compliant samples, so you get real findings on the first run.Complements Unity's free Project Auditor rather than duplicating it. Domain reload and obsolete API are deliberately left to Unity.This package was authored with generative AI. An AI coding agent (Anthropic Claude), working under human direction, wrote the C# editor source, the JSON rule corpus, the EditMode test suite, the demo scene samples, the documentation and this store copy.Everything was then machine-verified rather than taken on trust: a batch-mode compile on Unity 6000.5.7f1 with -warnaserror reported 0 errors and 0 warnings, and 41 of 41 EditMode tests pass, including a test that detects P/Invoke inside a precompiled third-party DLL.Store imagery: the screenshots are real captures of the tool running in the Unity Editor, composited programmatically for legibility. The key image is AI-generated illustration. No audio ships with this package, and no third-party code is included.




