Skip to content

Fix more complog-related issues - #310

Merged
jjonescz merged 7 commits into
dotnet:mainfrom
jjonescz:complog-vmr-2
Sep 10, 2026
Merged

jjonescz merged 7 commits into
dotnet:mainfrom
jjonescz:complog-vmr-2

Conversation

@jjonescz

@jjonescz jjonescz commented Sep 7, 2026 •

Copy link
Copy Markdown
Member

Follow up on #306.

Fixes official builds currently failing on main: https://dev.azure.com/dnceng/internal/_build?definitionId=612&_a=summary

Thanks to @danzhu54 we now have validation website, so I'm pretty confident this fix is going to work this time; it's deployed to https://validation.source.dot.net/.

@jjonescz
jjonescz requested review from tannergooding and a balanced review from Copilot September 7, 2026 08:09
@jjonescz jjonescz changed the title Complog vmr 2 Fix more complog-related issues- #306 Sep 7, 2026
@jjonescz jjonescz changed the title Fix more complog-related issues- #306 Fix more complog-related issues Sep 7, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Unaligned positional scores can select the wrong project for duplicate assemblies.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Fixes compiler-log indexing regressions affecting VMR repository grouping, source paths, and official builds.

Changes:

  • Restores original compiler project paths and repository mappings.
  • Normalizes linked-file folders and duplicate assembly selection.
  • Adds regression tests and validation-site smoke testing.
File summaries
File Description
SolutionGenerator.SolutionExplorer.cs Resolves repository grouping from Roslyn projects.
SolutionGenerator.cs Adds compiler-log path recovery, folder normalization, and scoring.
ProjectGenerator.cs Uses project identity for repository metadata.
CompilerLogWebAccessTests.cs Tests VMR mappings and project-path recovery.
CompilerLogAssemblyNameTests.cs Tests scoring and linked-file normalization.
azure-pipelines.yml Runs smoke tests against the selected deployment host.
Review details
  • Files reviewed: 6/6 changed files
  • Comments generated: 2
  • Review effort level: Balanced

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@jjonescz
jjonescz marked this pull request as draft September 7, 2026 10:53

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📝 Extracted from src/SourceBrowser/src/BinLogToSln/Program.cs, so it can be reused.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Repository path rewriting and deployment-pipeline changes warrant final human validation despite comprehensive tests.

Review details
  • Files reviewed: 12/12 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Compiler-log path reconstruction and deployment behavior affect production indexing and warrant final human verification.

Review details
  • Files reviewed: 12/12 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

@jjonescz
jjonescz marked this pull request as ready for review September 8, 2026 07:16
Comment on lines +591 to +595
var originalRepositoryRoot = GetCompilerLogDocumentRoot(
repoPathMappings,
compilerLogFilePath,
repositoryRoot);
normalizedServerPathMappings[originalRepositoryRoot] = configuredMapping.Value;

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A local copilot review (GPT-6 Astra) had one callout that I missed:

The server-path mapping can attach a nested repository’s URL to the outer repository’s root. For a runtime checkout nested under dotnet, source links gain an incorrect src/runtime/ prefix. Both mapping overloads need to preserve the selected server mapping’s relative root rather than reuse the document/grouping root.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Production path rewriting and deployment behavior warrant final human validation despite broad regression coverage.

Review details
  • Files reviewed: 12/12 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

@jjonescz
jjonescz merged commit c7e6559 into dotnet:main Sep 10, 2026
2 of 3 checks passed
@jjonescz
jjonescz deleted the complog-vmr-2 branch September 10, 2026 06:37
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.

3 participants