Repo migration#211
Conversation
There was a problem hiding this comment.
Pull request overview
This PR is described as a comprehensive repository migration (CI/CD, docs, scripts, LLM skills). However, the diff content actually visible here is limited to a small subset of the migration: a URL update in one analyzer test to point at the new Ambiguous-Interactive/DxMessaging repo, removal of an in-line <!-- Removed copy ... --> comment from a .csproj, and the addition of several auto-generated C# Dev Kit .lscache files (plus Unity .meta siblings) that should not be checked in.
Changes:
- Update analyzer help-link URL in tests from
wallstop/DxMessagingtoAmbiguous-Interactive/DxMessaging. - Remove a stale XML comment from
WallstopStudios.DxMessaging.SourceGenerators.csproj. - Add auto-generated
*.csproj.lscachecache files (and.metasiblings) for the Analyzer, SourceGenerators, and SourceGenerators.Tests projects.
Reviewed changes
Copilot reviewed 150 out of 154 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| SourceGenerators/.../SourceGenerators.csproj | Drops a stale XML comment. |
| SourceGenerators/.../SourceGenerators.csproj.lscache (+ .meta) | Adds an auto-generated C# Dev Kit cache that should not be tracked. |
| SourceGenerators/.../SourceGenerators.Tests.csproj.lscache (+ .meta) | Adds another auto-generated cache containing machine-specific paths/SDKs. |
| SourceGenerators/.../Analyzer.csproj.lscache (+ .meta) | Adds another auto-generated cache file. |
| SourceGenerators/.../MessageAwareComponentBaseCallAnalyzerTests.cs | Updates the analyzer help-link URL to the new org; assumes master branch. |
| version=1 | ||
|
|
||
| # This file caches language service data to improve the performance of C# Dev Kit. | ||
| # It is not intended for manual editing. It can safely be deleted and will be | ||
| # regenerated automatically. For more information, see https://aka.ms/lscache | ||
| # | ||
| # To control where cache files are stored, use the following VS Code setting: | ||
| # "dotnet.projectsystem.cacheInProjectFolder": true | ||
|
|
||
| [project] | ||
| language=C# | ||
| primary | ||
| lastDtbSucceeded | ||
|
|
||
| [properties] | ||
| AssemblyName=WallstopStudios.DxMessaging.SourceGenerators | ||
| CommandLineArgsForDesignTimeEvaluation=-langversion:latest -define:TRACE | ||
| CompilerGeneratedFilesOutputPath= | ||
| MaxSupportedLangVersion=7.3 | ||
| ProjectAssetsFile=<PATH>obj/project.assets.json | ||
| RootNamespace=WallstopStudios.DxMessaging.SourceGenerators | ||
| RunAnalyzers= | ||
| RunAnalyzersDuringLiveAnalysis= | ||
| SolutionPath=<PATH>../../com.wallstop-studios.dxmessaging.sln | ||
| TargetFrameworkIdentifier=.NETStandard | ||
| TargetPath=<PATH>bin/Debug/netstandard2.0/WallstopStudios.DxMessaging.SourceGenerators.dll | ||
| TargetRefPath= | ||
| TemporaryDependencyNodeTargetIdentifier=netstandard2.0 | ||
|
|
||
| [commandLineArguments] | ||
| /noconfig | ||
| /unsafe- | ||
| /checked- | ||
| /nowarn:1701,1702,1701,1702 | ||
| /fullpaths | ||
| /nostdlib+ | ||
| /errorreport:prompt | ||
| /define:TRACE;DEBUG;NETSTANDARD;NETSTANDARD2_0;NETSTANDARD1_0_OR_GREATER;NETSTANDARD1_1_OR_GREATER;NETSTANDARD1_2_OR_GREATER;NETSTANDARD1_3_OR_GREATER;NETSTANDARD1_4_OR_GREATER;NETSTANDARD1_5_OR_GREATER;NETSTANDARD1_6_OR_GREATER;NETSTANDARD2_0_OR_GREATER | ||
| /highentropyva+ | ||
| /debug+ | ||
| /debug:portable | ||
| /filealign:512 | ||
| /optimize- | ||
| /out:obj\Debug\netstandard2.0\WallstopStudios.DxMessaging.SourceGenerators.dll | ||
| /target:library | ||
| /warnaserror- | ||
| /utf8output | ||
| /deterministic+ | ||
| /langversion:latest | ||
| /warnaserror+:NU1605 | ||
|
|
||
| [sourceFiles] | ||
| DxAutoConstructorGenerator.cs | ||
| DxMessageIdGenerator.cs | ||
| obj/Debug/netstandard2.0/ | ||
| .NETStandard,Version=v2.0.AssemblyAttributes.cs | ||
| WallstopStudios.DxMessaging.SourceGenerators.AssemblyInfo.cs | ||
|
|
||
| [metadataReferences] | ||
| <NUGET>/ | ||
| microsoft.codeanalysis.common/4.2.0/lib/netstandard2.0/Microsoft.CodeAnalysis.dll | ||
| microsoft.codeanalysis.csharp/4.2.0/lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.dll | ||
| netstandard.library/2.0.3/build/netstandard2.0/ref/ | ||
| Microsoft.Win32.Primitives.dll | ||
| mscorlib.dll | ||
| netstandard.dll | ||
| System.AppContext.dll | ||
| System.Collections.Concurrent.dll | ||
| System.Collections.dll | ||
| System.Collections.NonGeneric.dll | ||
| System.Collections.Specialized.dll | ||
| System.ComponentModel.Composition.dll | ||
| System.ComponentModel.dll | ||
| System.ComponentModel.EventBasedAsync.dll | ||
| System.ComponentModel.Primitives.dll | ||
| System.ComponentModel.TypeConverter.dll | ||
| System.Console.dll | ||
| System.Core.dll | ||
| System.Data.Common.dll | ||
| System.Data.dll | ||
| System.Diagnostics.Contracts.dll | ||
| System.Diagnostics.Debug.dll | ||
| System.Diagnostics.FileVersionInfo.dll | ||
| System.Diagnostics.Process.dll | ||
| System.Diagnostics.StackTrace.dll | ||
| System.Diagnostics.TextWriterTraceListener.dll | ||
| System.Diagnostics.Tools.dll | ||
| System.Diagnostics.TraceSource.dll | ||
| System.Diagnostics.Tracing.dll | ||
| System.dll | ||
| System.Drawing.dll | ||
| System.Drawing.Primitives.dll | ||
| System.Dynamic.Runtime.dll | ||
| System.Globalization.Calendars.dll | ||
| System.Globalization.dll | ||
| System.Globalization.Extensions.dll | ||
| System.IO.Compression.dll | ||
| System.IO.Compression.FileSystem.dll | ||
| System.IO.Compression.ZipFile.dll | ||
| System.IO.dll | ||
| System.IO.FileSystem.dll | ||
| System.IO.FileSystem.DriveInfo.dll | ||
| System.IO.FileSystem.Primitives.dll | ||
| System.IO.FileSystem.Watcher.dll | ||
| System.IO.IsolatedStorage.dll | ||
| System.IO.MemoryMappedFiles.dll | ||
| System.IO.Pipes.dll | ||
| System.IO.UnmanagedMemoryStream.dll | ||
| System.Linq.dll | ||
| System.Linq.Expressions.dll | ||
| System.Linq.Parallel.dll | ||
| System.Linq.Queryable.dll | ||
| System.Net.dll | ||
| System.Net.Http.dll | ||
| System.Net.NameResolution.dll | ||
| System.Net.NetworkInformation.dll | ||
| System.Net.Ping.dll | ||
| System.Net.Primitives.dll | ||
| System.Net.Requests.dll | ||
| System.Net.Security.dll | ||
| System.Net.Sockets.dll | ||
| System.Net.WebHeaderCollection.dll | ||
| System.Net.WebSockets.Client.dll | ||
| System.Net.WebSockets.dll | ||
| System.Numerics.dll | ||
| System.ObjectModel.dll | ||
| System.Reflection.dll | ||
| System.Reflection.Extensions.dll | ||
| System.Reflection.Primitives.dll | ||
| System.Resources.Reader.dll | ||
| System.Resources.ResourceManager.dll | ||
| System.Resources.Writer.dll | ||
| System.Runtime.CompilerServices.VisualC.dll | ||
| System.Runtime.dll | ||
| System.Runtime.Extensions.dll | ||
| System.Runtime.Handles.dll | ||
| System.Runtime.InteropServices.dll | ||
| System.Runtime.InteropServices.RuntimeInformation.dll | ||
| System.Runtime.Numerics.dll | ||
| System.Runtime.Serialization.dll | ||
| System.Runtime.Serialization.Formatters.dll | ||
| System.Runtime.Serialization.Json.dll | ||
| System.Runtime.Serialization.Primitives.dll | ||
| System.Runtime.Serialization.Xml.dll | ||
| System.Security.Claims.dll | ||
| System.Security.Cryptography.Algorithms.dll | ||
| System.Security.Cryptography.Csp.dll | ||
| System.Security.Cryptography.Encoding.dll | ||
| System.Security.Cryptography.Primitives.dll | ||
| System.Security.Cryptography.X509Certificates.dll | ||
| System.Security.Principal.dll | ||
| System.Security.SecureString.dll | ||
| System.ServiceModel.Web.dll | ||
| System.Text.Encoding.dll | ||
| System.Text.Encoding.Extensions.dll | ||
| System.Text.RegularExpressions.dll | ||
| System.Threading.dll | ||
| System.Threading.Overlapped.dll | ||
| System.Threading.Tasks.dll | ||
| System.Threading.Tasks.Parallel.dll | ||
| System.Threading.Thread.dll | ||
| System.Threading.ThreadPool.dll | ||
| System.Threading.Timer.dll | ||
| System.Transactions.dll | ||
| System.ValueTuple.dll | ||
| System.Web.dll | ||
| System.Windows.dll | ||
| System.Xml.dll | ||
| System.Xml.Linq.dll | ||
| System.Xml.ReaderWriter.dll | ||
| System.Xml.Serialization.dll | ||
| System.Xml.XDocument.dll | ||
| System.Xml.XmlDocument.dll | ||
| System.Xml.XmlSerializer.dll | ||
| System.Xml.XPath.dll | ||
| System.Xml.XPath.XDocument.dll | ||
| system.buffers/4.5.1/ref/netstandard2.0/System.Buffers.dll | ||
| system.collections.immutable/5.0.0/lib/netstandard2.0/System.Collections.Immutable.dll | ||
| system.memory/4.5.4/lib/netstandard2.0/System.Memory.dll | ||
| system.numerics.vectors/4.4.0/ref/netstandard2.0/System.Numerics.Vectors.dll | ||
| system.reflection.metadata/5.0.0/lib/netstandard2.0/System.Reflection.Metadata.dll | ||
| system.runtime.compilerservices.unsafe/6.0.0/lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll | ||
| system.text.encoding.codepages/6.0.0/lib/netstandard2.0/System.Text.Encoding.CodePages.dll | ||
| system.threading.tasks.extensions/4.5.4/lib/netstandard2.0/System.Threading.Tasks.Extensions.dll | ||
|
|
||
| [analyzerReferences] | ||
| <NUGET>/microsoft.codeanalysis.analyzers/3.3.3/analyzers/dotnet/cs/ | ||
| Microsoft.CodeAnalysis.Analyzers.dll | ||
| Microsoft.CodeAnalysis.CSharp.Analyzers.dll | ||
|
|
||
| [analyzerConfigFiles] | ||
| ../../.editorconfig | ||
| obj/Debug/netstandard2.0/WallstopStudios.DxMessaging.SourceGenerators.GeneratedMSBuildEditorConfig.editorconfig |
| version=1 | ||
|
|
||
| # This file caches language service data to improve the performance of C# Dev Kit. | ||
| # It is not intended for manual editing. It can safely be deleted and will be | ||
| # regenerated automatically. For more information, see https://aka.ms/lscache | ||
| # | ||
| # To control where cache files are stored, use the following VS Code setting: | ||
| # "dotnet.projectsystem.cacheInProjectFolder": true | ||
|
|
||
| [project] | ||
| language=C# | ||
| primary | ||
| lastDtbSucceeded | ||
|
|
||
| [properties] | ||
| AssemblyName=WallstopStudios.DxMessaging.SourceGenerators.Tests | ||
| CommandLineArgsForDesignTimeEvaluation=-langversion:13.0 -define:TRACE | ||
| CompilerGeneratedFilesOutputPath= | ||
| MaxSupportedLangVersion=13.0 | ||
| ProjectAssetsFile=<PATH>obj/project.assets.json | ||
| RootNamespace=WallstopStudios.DxMessaging.SourceGenerators.Tests | ||
| RunAnalyzers= | ||
| RunAnalyzersDuringLiveAnalysis= | ||
| SolutionPath=<PATH>../../com.wallstop-studios.dxmessaging.sln | ||
| TargetFrameworkIdentifier=.NETCoreApp | ||
| TargetPath=<PATH>../../.artifacts/SourceGenerators.Tests/bin/Debug/net9.0/WallstopStudios.DxMessaging.SourceGenerators.Tests.dll | ||
| TargetRefPath=<PATH>../../.artifacts/SourceGenerators.Tests/obj/Debug/net9.0/ref/WallstopStudios.DxMessaging.SourceGenerators.Tests.dll | ||
| TemporaryDependencyNodeTargetIdentifier=net9.0 | ||
|
|
||
| [commandLineArguments] | ||
| /noconfig | ||
| /unsafe- | ||
| /checked- | ||
| /nowarn:1701,1702,1701,1702,8002 | ||
| /fullpaths | ||
| /nostdlib+ | ||
| /errorreport:prompt | ||
| /warn:9 | ||
| /define:TRACE;DEBUG;NET;NET9_0;NETCOREAPP;NET5_0_OR_GREATER;NET6_0_OR_GREATER;NET7_0_OR_GREATER;NET8_0_OR_GREATER;NET9_0_OR_GREATER;NETCOREAPP1_0_OR_GREATER;NETCOREAPP1_1_OR_GREATER;NETCOREAPP2_0_OR_GREATER;NETCOREAPP2_1_OR_GREATER;NETCOREAPP2_2_OR_GREATER;NETCOREAPP3_0_OR_GREATER;NETCOREAPP3_1_OR_GREATER | ||
| /highentropyva+ | ||
| /nullable:enable | ||
| /debug+ | ||
| /debug:portable | ||
| /filealign:512 | ||
| /optimize- | ||
| /out:<PATH>../../.artifacts/SourceGenerators.Tests/obj/Debug/net9.0/WallstopStudios.DxMessaging.SourceGenerators.Tests.dll | ||
| /refout:<PATH>../../.artifacts/SourceGenerators.Tests/obj/Debug/net9.0/refint/WallstopStudios.DxMessaging.SourceGenerators.Tests.dll | ||
| /target:exe | ||
| /warnaserror- | ||
| /utf8output | ||
| /deterministic+ | ||
| /langversion:13.0 | ||
| /warnaserror+:NU1605,SYSLIB0011 | ||
|
|
||
| [sourceFiles] | ||
| ../../.artifacts/SourceGenerators.Tests/obj/Debug/net9.0/ | ||
| .NETCoreApp,Version=v9.0.AssemblyAttributes.cs | ||
| WallstopStudios.DxMessaging.SourceGenerators.Tests.AssemblyInfo.cs | ||
| WallstopStudios.DxMessaging.SourceGenerators.Tests.GlobalUsings.g.cs | ||
| ../../Editor/Analyzers/ | ||
| BaseCallIlInspector.cs | ||
| @folderNames=LinkedFromEditor | ||
| BaseCallLogMessageParser.cs | ||
| @folderNames=LinkedFromEditor | ||
| BaseCallReportAggregator.cs | ||
| @folderNames=LinkedFromEditor | ||
| BaseCallTypeScannerCore.cs | ||
| @folderNames=LinkedFromEditor | ||
| <NUGET>/microsoft.net.test.sdk/18.5.1/build/net8.0/Microsoft.NET.Test.Sdk.Program.cs | ||
| BaseCallIlInspectorTests.cs | ||
| BaseCallLogMessageParserTests.cs | ||
| BaseCallTypeScannerTests.cs | ||
| CompilationMessageHarvestTests.cs | ||
| DocsSnippetCompilationTests.cs | ||
| DxAutoConstructorGeneratorDiagnosticsTests.cs | ||
| DxMessageIdGeneratorDiagnosticsTests.cs | ||
| GeneratorTestUtilities.cs | ||
| MessageAwareComponentBaseCallAnalyzerTests.cs | ||
|
|
||
| [metadataReferences] | ||
| ../ | ||
| WallstopStudios.DxMessaging.Analyzer/bin/Debug/netstandard2.0/WallstopStudios.DxMessaging.Analyzer.dll | ||
| WallstopStudios.DxMessaging.SourceGenerators/bin/Debug/netstandard2.0/WallstopStudios.DxMessaging.SourceGenerators.dll | ||
| <DOTNET>/packs/Microsoft.NETCore.App.Ref/9.0.15/ref/net9.0/ | ||
| Microsoft.CSharp.dll | ||
| Microsoft.VisualBasic.Core.dll | ||
| Microsoft.VisualBasic.dll | ||
| Microsoft.Win32.Primitives.dll | ||
| Microsoft.Win32.Registry.dll | ||
| mscorlib.dll | ||
| netstandard.dll | ||
| System.AppContext.dll | ||
| System.Buffers.dll | ||
| System.Collections.Concurrent.dll | ||
| System.Collections.dll | ||
| System.Collections.Immutable.dll | ||
| System.Collections.NonGeneric.dll | ||
| System.Collections.Specialized.dll | ||
| System.ComponentModel.Annotations.dll | ||
| System.ComponentModel.DataAnnotations.dll | ||
| System.ComponentModel.dll | ||
| System.ComponentModel.EventBasedAsync.dll | ||
| System.ComponentModel.Primitives.dll | ||
| System.ComponentModel.TypeConverter.dll | ||
| System.Configuration.dll | ||
| System.Console.dll | ||
| System.Core.dll | ||
| System.Data.Common.dll | ||
| System.Data.DataSetExtensions.dll | ||
| System.Data.dll | ||
| System.Diagnostics.Contracts.dll | ||
| System.Diagnostics.Debug.dll | ||
| System.Diagnostics.DiagnosticSource.dll | ||
| System.Diagnostics.FileVersionInfo.dll | ||
| System.Diagnostics.Process.dll | ||
| System.Diagnostics.StackTrace.dll | ||
| System.Diagnostics.TextWriterTraceListener.dll | ||
| System.Diagnostics.Tools.dll | ||
| System.Diagnostics.TraceSource.dll | ||
| System.Diagnostics.Tracing.dll | ||
| System.dll | ||
| System.Drawing.dll | ||
| System.Drawing.Primitives.dll | ||
| System.Dynamic.Runtime.dll | ||
| System.Formats.Asn1.dll | ||
| System.Formats.Tar.dll | ||
| System.Globalization.Calendars.dll | ||
| System.Globalization.dll | ||
| System.Globalization.Extensions.dll | ||
| System.IO.Compression.Brotli.dll | ||
| System.IO.Compression.dll | ||
| System.IO.Compression.FileSystem.dll | ||
| System.IO.Compression.ZipFile.dll | ||
| System.IO.dll | ||
| System.IO.FileSystem.AccessControl.dll | ||
| System.IO.FileSystem.dll | ||
| System.IO.FileSystem.DriveInfo.dll | ||
| System.IO.FileSystem.Primitives.dll | ||
| System.IO.FileSystem.Watcher.dll | ||
| System.IO.IsolatedStorage.dll | ||
| System.IO.MemoryMappedFiles.dll | ||
| System.IO.Pipelines.dll | ||
| System.IO.Pipes.AccessControl.dll | ||
| System.IO.Pipes.dll | ||
| System.IO.UnmanagedMemoryStream.dll | ||
| System.Linq.dll | ||
| System.Linq.Expressions.dll | ||
| System.Linq.Parallel.dll | ||
| System.Linq.Queryable.dll | ||
| System.Memory.dll | ||
| System.Net.dll | ||
| System.Net.Http.dll | ||
| System.Net.Http.Json.dll | ||
| System.Net.HttpListener.dll | ||
| System.Net.Mail.dll | ||
| System.Net.NameResolution.dll | ||
| System.Net.NetworkInformation.dll | ||
| System.Net.Ping.dll | ||
| System.Net.Primitives.dll | ||
| System.Net.Quic.dll | ||
| System.Net.Requests.dll | ||
| System.Net.Security.dll | ||
| System.Net.ServicePoint.dll | ||
| System.Net.Sockets.dll | ||
| System.Net.WebClient.dll | ||
| System.Net.WebHeaderCollection.dll | ||
| System.Net.WebProxy.dll | ||
| System.Net.WebSockets.Client.dll | ||
| System.Net.WebSockets.dll | ||
| System.Numerics.dll | ||
| System.Numerics.Vectors.dll | ||
| System.ObjectModel.dll | ||
| System.Reflection.DispatchProxy.dll | ||
| System.Reflection.dll | ||
| System.Reflection.Emit.dll | ||
| System.Reflection.Emit.ILGeneration.dll | ||
| System.Reflection.Emit.Lightweight.dll | ||
| System.Reflection.Extensions.dll | ||
| System.Reflection.Metadata.dll | ||
| System.Reflection.Primitives.dll | ||
| System.Reflection.TypeExtensions.dll | ||
| System.Resources.Reader.dll | ||
| System.Resources.ResourceManager.dll | ||
| System.Resources.Writer.dll | ||
| System.Runtime.CompilerServices.Unsafe.dll | ||
| System.Runtime.CompilerServices.VisualC.dll | ||
| System.Runtime.dll | ||
| System.Runtime.Extensions.dll | ||
| System.Runtime.Handles.dll | ||
| System.Runtime.InteropServices.dll | ||
| System.Runtime.InteropServices.JavaScript.dll | ||
| System.Runtime.InteropServices.RuntimeInformation.dll | ||
| System.Runtime.Intrinsics.dll | ||
| System.Runtime.Loader.dll | ||
| System.Runtime.Numerics.dll | ||
| System.Runtime.Serialization.dll | ||
| System.Runtime.Serialization.Formatters.dll | ||
| System.Runtime.Serialization.Json.dll | ||
| System.Runtime.Serialization.Primitives.dll | ||
| System.Runtime.Serialization.Xml.dll | ||
| System.Security.AccessControl.dll | ||
| System.Security.Claims.dll | ||
| System.Security.Cryptography.Algorithms.dll | ||
| System.Security.Cryptography.Cng.dll | ||
| System.Security.Cryptography.Csp.dll | ||
| System.Security.Cryptography.dll | ||
| System.Security.Cryptography.Encoding.dll | ||
| System.Security.Cryptography.OpenSsl.dll | ||
| System.Security.Cryptography.Primitives.dll | ||
| System.Security.Cryptography.X509Certificates.dll | ||
| System.Security.dll | ||
| System.Security.Principal.dll | ||
| System.Security.Principal.Windows.dll | ||
| System.Security.SecureString.dll | ||
| System.ServiceModel.Web.dll | ||
| System.ServiceProcess.dll | ||
| System.Text.Encoding.CodePages.dll | ||
| System.Text.Encoding.dll | ||
| System.Text.Encoding.Extensions.dll | ||
| System.Text.Encodings.Web.dll | ||
| System.Text.Json.dll | ||
| System.Text.RegularExpressions.dll | ||
| System.Threading.Channels.dll | ||
| System.Threading.dll | ||
| System.Threading.Overlapped.dll | ||
| System.Threading.Tasks.Dataflow.dll | ||
| System.Threading.Tasks.dll | ||
| System.Threading.Tasks.Extensions.dll | ||
| System.Threading.Tasks.Parallel.dll | ||
| System.Threading.Thread.dll | ||
| System.Threading.ThreadPool.dll | ||
| System.Threading.Timer.dll | ||
| System.Transactions.dll | ||
| System.Transactions.Local.dll | ||
| System.ValueTuple.dll | ||
| System.Web.dll | ||
| System.Web.HttpUtility.dll | ||
| System.Windows.dll | ||
| System.Xml.dll | ||
| System.Xml.Linq.dll | ||
| System.Xml.ReaderWriter.dll | ||
| System.Xml.Serialization.dll | ||
| System.Xml.XDocument.dll | ||
| System.Xml.XmlDocument.dll | ||
| System.Xml.XmlSerializer.dll | ||
| System.Xml.XPath.dll | ||
| System.Xml.XPath.XDocument.dll | ||
| WindowsBase.dll | ||
| <NUGET>/ | ||
| microsoft.applicationinsights/2.23.0/lib/netstandard2.0/Microsoft.ApplicationInsights.dll | ||
| microsoft.codeanalysis.common/4.14.0/lib/net9.0/Microsoft.CodeAnalysis.dll | ||
| microsoft.codeanalysis.csharp/4.14.0/lib/net9.0/Microsoft.CodeAnalysis.CSharp.dll | ||
| microsoft.codecoverage/18.5.1/lib/net8.0/Microsoft.VisualStudio.CodeCoverage.Shim.dll | ||
| microsoft.extensions.dependencymodel/8.0.2/lib/net8.0/Microsoft.Extensions.DependencyModel.dll | ||
| microsoft.testing.extensions.telemetry/2.1.0/lib/net9.0/Microsoft.Testing.Extensions.Telemetry.dll | ||
| microsoft.testing.extensions.trxreport.abstractions/2.1.0/lib/net9.0/Microsoft.Testing.Extensions.TrxReport.Abstractions.dll | ||
| microsoft.testing.extensions.vstestbridge/2.1.0/lib/net9.0/Microsoft.Testing.Extensions.VSTestBridge.dll | ||
| microsoft.testing.platform.msbuild/2.1.0/lib/net9.0/Microsoft.Testing.Extensions.MSBuild.dll | ||
| microsoft.testing.platform/2.1.0/lib/net9.0/Microsoft.Testing.Platform.dll | ||
| microsoft.testplatform.testhost/18.5.1/lib/net8.0/ | ||
| Microsoft.TestPlatform.CommunicationUtilities.dll | ||
| Microsoft.TestPlatform.CoreUtilities.dll | ||
| Microsoft.TestPlatform.CrossPlatEngine.dll | ||
| Microsoft.TestPlatform.PlatformAbstractions.dll | ||
| Microsoft.TestPlatform.Utilities.dll | ||
| Microsoft.VisualStudio.TestPlatform.Common.dll | ||
| Microsoft.VisualStudio.TestPlatform.ObjectModel.dll | ||
| testhost.dll | ||
| newtonsoft.json/13.0.3/lib/net6.0/Newtonsoft.Json.dll | ||
| nunit/4.6.0/lib/net8.0/ | ||
| nunit.framework.dll | ||
| nunit.framework.legacy.dll | ||
|
|
||
| [analyzerReferences] | ||
| <DOTNET>/packs/Microsoft.NETCore.App.Ref/9.0.15/analyzers/dotnet/cs/ | ||
| Microsoft.Interop.ComInterfaceGenerator.dll | ||
| Microsoft.Interop.JavaScript.JSImportGenerator.dll | ||
| Microsoft.Interop.LibraryImportGenerator.dll | ||
| Microsoft.Interop.SourceGeneration.dll | ||
| System.Text.Json.SourceGeneration.dll | ||
| System.Text.RegularExpressions.Generator.dll | ||
| <DOTNET>/sdk/10.0.203/Sdks/Microsoft.NET.Sdk/analyzers/ | ||
| Microsoft.CodeAnalysis.CSharp.NetAnalyzers.dll | ||
| Microsoft.CodeAnalysis.NetAnalyzers.dll | ||
| <NUGET>/microsoft.codeanalysis.analyzers/3.11.0/analyzers/dotnet/cs/ | ||
| Microsoft.CodeAnalysis.Analyzers.dll | ||
| Microsoft.CodeAnalysis.CSharp.Analyzers.dll | ||
|
|
||
| [analyzerConfigFiles] | ||
| ../../ | ||
| .artifacts/SourceGenerators.Tests/obj/Debug/net9.0/WallstopStudios.DxMessaging.SourceGenerators.Tests.GeneratedMSBuildEditorConfig.editorconfig | ||
| .editorconfig | ||
| <DOTNET>/sdk/10.0.203/Sdks/Microsoft.NET.Sdk/analyzers/build/config/analysislevel_9_default.globalconfig |
| version=1 | ||
|
|
||
| # This file caches language service data to improve the performance of C# Dev Kit. | ||
| # It is not intended for manual editing. It can safely be deleted and will be | ||
| # regenerated automatically. For more information, see https://aka.ms/lscache | ||
| # | ||
| # To control where cache files are stored, use the following VS Code setting: |
| fileFormatVersion: 2 | ||
| guid: 77ade736dbc6157438dcc59994d0f36e | ||
| DefaultImporter: | ||
| externalObjects: {} | ||
| userData: | ||
| assetBundleName: | ||
| assetBundleVariant: |
| fileFormatVersion: 2 | ||
| guid: 4cc7d058656d7264cb6bc89e63bba002 | ||
| DefaultImporter: | ||
| externalObjects: {} | ||
| userData: | ||
| assetBundleName: | ||
| assetBundleVariant: |
| fileFormatVersion: 2 | ||
| guid: 51ffbc8b2d9b7fc48babc786e29c1289 | ||
| DefaultImporter: | ||
| externalObjects: {} | ||
| userData: | ||
| assetBundleName: | ||
| assetBundleVariant: |
|
|
||
| string expectedLink = | ||
| $"https://github.com/wallstop/DxMessaging/blob/master/docs/reference/analyzers.md#{expectedAnchor}"; | ||
| $"https://github.com/Ambiguous-Interactive/DxMessaging/blob/master/docs/reference/analyzers.md#{expectedAnchor}"; |
| run: | | ||
| set -euo pipefail | ||
| mkdir -p .artifacts/release | ||
| pack_json="$(npm pack --json --provenance=false)" |
| - name: Create or update GitHub Release | ||
| env: | ||
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
| run: | | ||
| set -euo pipefail | ||
| tag="${{ needs.verify-tag.outputs.tag }}" | ||
| if gh release view "${tag}" >/dev/null 2>&1; then | ||
| gh release upload "${tag}" \ | ||
| .artifacts/release/*.tgz \ | ||
| .artifacts/release/*.sha256 \ | ||
| --clobber | ||
| gh release edit "${tag}" \ | ||
| --title "${tag}" \ | ||
| --notes-file .artifacts/release/release-notes.md \ | ||
| --draft=false | ||
| else | ||
| gh release create "${tag}" \ | ||
| .artifacts/release/*.tgz \ | ||
| .artifacts/release/*.sha256 \ | ||
| --title "${tag}" \ | ||
| --notes-file .artifacts/release/release-notes.md \ | ||
| --verify-tag | ||
| fi | ||
|
|
||
| - name: Publish to npm with provenance | ||
| run: | | ||
| set -euo pipefail | ||
| npx --yes --package=npm@^11.5.1 npm --version | ||
| package_file="$(find .artifacts/release -maxdepth 1 -name '*.tgz' -print -quit)" | ||
| if [ -z "${package_file}" ]; then | ||
| echo "::error::Packed npm package artifact is missing." | ||
| exit 1 | ||
| fi | ||
| npx --yes --package=npm@^11.5.1 npm publish "${package_file}" --provenance --access public |
| $content = Remove-SourceComments -Content (Get-Content $file.FullName -Raw) | ||
| if ($file.Extension -eq '.cs') { | ||
| $count += [regex]::Matches($content, '\[(?:UnityTest|Test|TestCase|TestCaseSource|Theory|Fact)\b').Count | ||
| } else { | ||
| $content = Remove-JavaScriptNonCode -Content (Get-Content $file.FullName -Raw) | ||
| $count += [regex]::Matches($content, '(?<![\w.])(?:test|it)\s*\(').Count | ||
| } |
| function getRepositoryCandidateFiles(execFileSyncImpl = execFileSync) { | ||
| const trackedFiles = parseGitFileList( | ||
| execFileSyncImpl("git", ["ls-files"], { | ||
| cwd: repoRoot, | ||
| encoding: "utf8", | ||
| stdio: ["ignore", "pipe", "pipe"] | ||
| }) | ||
| ); | ||
| const stagedFiles = parseGitFileList( | ||
| execFileSyncImpl("git", ["diff", "--cached", "--name-only", "--diff-filter=ACMR"], { | ||
| cwd: repoRoot, | ||
| encoding: "utf8", | ||
| stdio: ["ignore", "pipe", "pipe"] | ||
| }) | ||
| ); | ||
| const untrackedFiles = parseGitFileList( | ||
| execFileSyncImpl("git", ["ls-files", "--others", "--exclude-standard"], { | ||
| cwd: repoRoot, | ||
| encoding: "utf8", | ||
| stdio: ["ignore", "pipe", "pipe"] | ||
| }) | ||
| ); | ||
|
|
||
| return [...new Set([...trackedFiles, ...stagedFiles, ...untrackedFiles])].sort(); | ||
| } |
| if (require.main === module) { | ||
| const args = process.argv.slice(2); | ||
|
|
||
| try { | ||
| const result = validateRepoIdentity({ check: args.includes("--check") }); | ||
| if (!result.valid) { | ||
| process.exitCode = 1; | ||
| } |
|
|
||
| // The package id is a valid Unity/OpenUPM identifier and must not be treated as repo identity. | ||
| if (value === ALLOWED_PACKAGE_ID) { | ||
| continue; | ||
| } |
| try { | ||
| const result = validateRepoIdentity({ check: args.includes("--check") }); | ||
| if (!result.valid) { | ||
| process.exitCode = 1; | ||
| } |
| function getTrackedFiles(execFileSyncImpl = execFileSync) { | ||
| const output = execFileSyncImpl("git", ["ls-files"], { | ||
| cwd: repoRoot, | ||
| encoding: "utf8", | ||
| stdio: ["ignore", "pipe", "pipe"] | ||
| }); | ||
|
|
||
| return normalizeToLf(output) | ||
| .split("\n") | ||
| .map((line) => line.trim()) | ||
| .filter((line) => line.length > 0); | ||
| } | ||
|
|
||
| function parseGitFileList(output) { | ||
| return normalizeToLf(output) | ||
| .split("\n") | ||
| .map((line) => line.trim()) | ||
| .filter((line) => line.length > 0); | ||
| } | ||
|
|
||
| function getRepositoryCandidateFiles(execFileSyncImpl = execFileSync) { | ||
| const trackedFiles = parseGitFileList( | ||
| execFileSyncImpl("git", ["ls-files"], { | ||
| cwd: repoRoot, | ||
| encoding: "utf8", | ||
| stdio: ["ignore", "pipe", "pipe"] | ||
| }) | ||
| ); | ||
| const stagedFiles = parseGitFileList( | ||
| execFileSyncImpl("git", ["diff", "--cached", "--name-only", "--diff-filter=ACMR"], { | ||
| cwd: repoRoot, | ||
| encoding: "utf8", | ||
| stdio: ["ignore", "pipe", "pipe"] | ||
| }) | ||
| ); | ||
| const untrackedFiles = parseGitFileList( | ||
| execFileSyncImpl("git", ["ls-files", "--others", "--exclude-standard"], { | ||
| cwd: repoRoot, | ||
| encoding: "utf8", | ||
| stdio: ["ignore", "pipe", "pipe"] | ||
| }) | ||
| ); | ||
|
|
||
| return [...new Set([...trackedFiles, ...stagedFiles, ...untrackedFiles])].sort(); | ||
| } |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
There are 3 total unresolved issues (including 2 from previous reviews).
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 8339cec. Configure here.
Fix all CRITICAL/HIGH/MEDIUM/LOW findings from the 72/100 review of the unity-benchmarks perf-doc auto-update: - CRITICAL-1: render a Prettier-aligned table and run managed Prettier --write before diff/commit so the auto-PR is GREEN on the required markdown-json.yml format:md:check gate; add the missing AUTOGENERATED marker block to docs/architecture/performance.md (the committed doc had no markers, so the renderer threw). - CRITICAL-2: blocksEquivalent compares only table-row cells (trimmed, alignment-insensitive) and ignores the provenance/commit line, so a changed SHA or Prettier alignment no longer churns a PR; rendered output is byte-stable run-to-run. - HIGH-1: replace hand-rolled git + force-with-lease with stefanzweifel/git-auto-commit-action@v7 (force-push to the bot-owned auto/perf-doc-update branch), eliminating the 2nd-run stale-info failure. - MEDIUM-1: least-privilege top-level permissions (contents: read); grant contents/pull-requests write only on update-perf-doc. - MEDIUM-2: gate update-perf-doc on the LATEST version's per-leg success markers (editmode + playmode), so older-version flakiness no longer blocks the latest-version doc update. - LOW-1: locateMarkers throws unless exactly one BEGIN/END pair exists. - LOW-2: perf-numbers-check requires the auto-maintained N/A reference to mention performance.md or unity-benchmarks. Tests: rewrite render-perf-doc.test.js + add a perf-doc auto-update contract to unity-workflow-shape.test.js with regression guards that fail on the old behavior (compact pipes, commit-churn, force-with-lease, over-broad perms, all-legs gating). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…000 il2cpp, perf auto-update Completes the adversarially-reviewed CI fix set on top of 97dd630 (4101 tests green). - A: reword empty workflow-expression in verify-unity-results action comment (it broke the verify step on all 9 Unity jobs); add empty-expression policy guard. - B: mark shipped Editor/Analyzers dependency .meta files excluded-from-all-platforms so Roslyn deps are not Unity precompiled assemblies (fixes 2021 'Multiple precompiled assemblies'); categorical, SetupCscRsp.cs untouched. - C: guard editor-only test with '#if UNITY_EDITOR' (fixes 2022 standalone CS0246); add all-platforms-UnityEditor policy guard (hardened for OR-with-runtime-symbol). - D: ensure-editor.ps1 sidesteps a non-Hub-manageable 6000 editor via atomic in-place module reinstall; version-scope the stale-process sweep (no cross-version collateral kill); profile-aware stall threshold; honest runner-side residual. - Perf: unity-benchmarks auto-updates performance.md from the latest Unity version (prettier-stable, idempotent, create_branch for rerun safety); perf-numbers gate gains an N/A auto-maintained escape. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…, standalone) Multi-agent CI fix effort, validated by `npm run preflight` (green). Includes: - Analyzer single-registration: Editor/Analyzers/*.dll.meta Editor-disabled + RoslynAnalyzer-labeled; SetupCscRsp effective Editor-disable; harness diagnostic asserts the Editor-excluded state. Fixes Unity 2021 "Multiple precompiled assemblies with the same name". - Log-flood gate in MessagingTestBase (DXM_TEST_VERBOSE_LOG, default off). - Standalone IL2CPP split-build + file-based results (run-ci-tests.ps1 + generated build modifier / test callback + tree-kill watchdog). - Perf: delete perf-numbers-check.yml PR-body gate + new perf-numbers.yml. Post-review fixes (standalone timeout-honors-file, perf merge-block rework, analyzer meta :Any block, player.log diagnostic) follow in the next commit. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…rf merge-block rework, analyzer :Any block, player.log diagnostic) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…+ master-commit jobs) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…esults delete Re-review round-2 MAJOR finding: 7 prose/comment locations still described the removed merge-blocking branch-push. Reworded to the implemented mechanism (PR -> non-blocking sticky comment; push to master -> commit) across perf-numbers.yml, unity-benchmarks.yml, pull_request_template.md, docs/architecture/performance.md, .llm/skills/performance/dispatch-hot-path.md, unity-workflow-shape.test.js. Re-review minor: run-ci-tests.ps1 deletes any stale results.xml before the standalone player runs (timeout-honors-file can only honor THIS run's results). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Dispatch throughput (Unity 6000.3.16f1, ELI-MACHINE)Regenerated by CI from this branch (run logs). These numbers MOVED versus the committed doc; they are committed to master automatically when this PR merges. Latest CI benchmark run: Unity 6000.3.16f1, commit Platform: Editor Mono x64 Development (WindowsEditor; Unity 6000.3.16f1).
|

Description
This PR completes a comprehensive repository migration that enhances project infrastructure, automation, and documentation. The changes reorganize the codebase for better maintainability and establish operational runbooks for the release and deployment process.
Changes
Infrastructure & CI/CD
Documentation
docs/ops/) covering:Automation & Tooling
.npmignoresettingsLLM Context & Skills
Type of Change
Performance Impact
N/A - Infrastructure and documentation updates only
Testing
Note
High Risk
Changes default-branch Unity perf autocommits, release gates on self-hosted runners with license/org-lock secrets, and broad workflow/devcontainer contract edits—misconfiguration can block merges or leak license seats.
Overview
This PR retargets the repo to Ambiguous-Interactive/DxMessaging (devcontainer labels, GitHub Pages/docs URLs, issue templates, release-drafter guard) and wires Claude Code hooks for pre-push guards and post-edit YAML/validation checks.
Devcontainer & caching: Adds a fifth volume mount (
dxm-node-modules) and pre-createsnode_modulesownership; replaces brittlegrep/jq-on-raw-JSON with.devcontainer/lib/parse-devcontainer-mounts.sh(JSONC strip +jq, loud failures, mount parsing tolerant of extra fields). Post-create now installs hooks viascripts/ensure-pre-commit.js.CI / Unity: Introduces composite actions for serial Unity license preflight, asmdef discovery, host prereqs (VC++/pwsh on self-hosted Windows), log tail + catastrophic compile patterns, NUnit verification, and license return. New
release.yml(tag verify → validate → self-hosted editmode Unity → npm publish + GH release),perf-numbers.yml(replaces PR-body perf gate; benchmarks onfastrunner, PR comment + master autocommit with loop guard), andcross-platform-preflight.yml. Disabled workflows drop UNITY_LICENSE / floating server in favor of UNITY_SERIAL + email/password; unity-il2cpp.yml removed from disabled set.dotnet-testsgains committed-analyzer staleness check and fixes coverage glob.Tooling hygiene: Workflows and devcontainer scripts route pre-commit through
ensure-pre-commit.js; Dependabot drops personal assignees/reviewers; cspell ignore/word lists expanded; PR template points perf numbers to CI;actionlint.yamldocuments custom runner labels.Reviewed by Cursor Bugbot for commit ac8725d. Bugbot is set up for automated code reviews on this repo. Configure here.