Skip to content

Fix .NET 10 test runner and finalize ragsharp-graph rename / storage path changes#3

Merged
KSemenenko merged 1 commit intomainfrom
codex/standardize-project-naming-and-improve-readme
Jan 3, 2026
Merged

Fix .NET 10 test runner and finalize ragsharp-graph rename / storage path changes#3
KSemenenko merged 1 commit intomainfrom
codex/standardize-project-naming-and-improve-readme

Conversation

@KSemenenko
Copy link
Copy Markdown
Member

Motivation

  • Tests were failing on .NET 10 due to an ambiguous project name collision and the Microsoft Testing Platform VSTest guard, preventing dotnet test from running.
  • The CLI and on-disk index/state layout needed to be standardized to a single name/paths for clarity and packaging.
  • Ensure the repository builds and tests cleanly on the required .NET 10 SDK and that documentation, templates, and packaging reflect the new conventions.

Description

  • Renamed the CLI and binaries to ragsharp-graph and changed default index/state locations from .codegraph/* to .ragsharp/graph/* in Program.cs, docs, and skill templates.
  • Resolved restore-name collisions by adding explicit project names/IDs (ProjectName/PackageId) and updating the solution entries to include Name attributes so restore no longer reports an ambiguous project name.
  • Opted test projects into the Microsoft Testing Platform pipeline for .NET 10 by adding EnableTestingPlatform, TestingPlatformDotnetTestSupport, and UseMSBuildTestInfrastructure properties and added a Directory.Build.targets override to avoid the VSTest guard while ensuring builds occur before test invocation.
  • Updated packaging paths in RagSharp.Packaging.csproj, adjusted global.json layout, and refreshed README/docs/examples to use ragsharp-graph and .ragsharp/graph paths.

Testing

  • Verified the environment uses .NET SDK 10 (SDK 10.0.100) via the installed runtime during the run.
  • Ran dotnet test ragsharp.slnx and confirmed it completes successfully after the fixes.
  • Test results: RagSharp.CodeGraph.Tests passed (103 tests) and RagSharp.SkillInstaller.Tests passed (2 tests), with no failing tests.
  • Generated a restore graph during diagnosis to detect and resolve duplicate projectName entries so project restore now succeeds.

Codex Task

Copilot AI review requested due to automatic review settings January 3, 2026 17:22
@KSemenenko KSemenenko merged commit 625f8d6 into main Jan 3, 2026
4 checks passed
@KSemenenko KSemenenko deleted the codex/standardize-project-naming-and-improve-readme branch January 3, 2026 17:22
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR completes the rename from ragsharp-codegraph to ragsharp-graph, updates storage paths from .codegraph/ to .ragsharp/graph/, and fixes .NET 10 test runner compatibility issues by adopting the Microsoft Testing Platform.

  • Renamed the CLI binary and updated all references from ragsharp-codegraph to ragsharp-graph
  • Migrated storage paths from .codegraph/* to .ragsharp/graph/* across code, tests, docs, and templates
  • Fixed .NET 10 test execution by enabling Microsoft Testing Platform in test projects and adding a Directory.Build.targets workaround for VSTest

Reviewed changes

Copilot reviewed 21 out of 22 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
tests/RagSharp.SkillInstaller.Tests/RagSharp.SkillInstaller.Tests.csproj Added Microsoft Testing Platform properties to enable .NET 10 test execution
tests/RagSharp.CodeGraph.Tests/RagSharp.CodeGraph.Tests.csproj Added Microsoft Testing Platform properties to enable .NET 10 test execution
tests/RagSharp.CodeGraph.Tests/CodeGraphIntegrationTests.cs Updated test temporary paths and database locations to use new .ragsharp/graph/ structure
src/RagSharp.SkillInstaller/RagSharp.SkillInstaller.csproj Added explicit PackageId to resolve project name collision
src/RagSharp.Packaging/RagSharp.Packaging.csproj Added ProjectName and updated packaging path from ragsharp-codegraph to ragsharp-graph
src/RagSharp.CodeGraph.Cli/RagSharp.CodeGraph.Cli.csproj Changed AssemblyName from ragsharp-codegraph to ragsharp-graph
src/RagSharp.CodeGraph.Cli/Program.cs Updated all default paths from .codegraph/ to .ragsharp/graph/ and renamed CLI in help text
global.json Moved testRunner configuration out of sdk block to correct JSON structure
docs/Development/Troubleshooting.md Updated CLI name and paths in troubleshooting documentation
docs/Development/QueryContract.md Updated CLI name in query contract documentation
docs/Development/Performance.md Updated CLI name in performance documentation
docs/Development/CodeGraph.md Updated CLI name, paths, and file locations throughout CLI documentation
assets/skill-templates/query-code-graph/scripts/run.sh Updated CLI name and database path in query skill template
assets/skill-templates/query-code-graph/scripts/run.ps1 Updated CLI name and database path in query skill template
assets/skill-templates/query-code-graph/SKILL.md Updated CLI name and database path in skill documentation
assets/skill-templates/build-code-graph/scripts/run.sh Updated CLI name and database/state paths in build skill template
assets/skill-templates/build-code-graph/scripts/run.ps1 Updated CLI name and database/state paths in build skill template
assets/skill-templates/build-code-graph/references/README.md Updated CLI name in skill reference documentation
assets/skill-templates/build-code-graph/SKILL.md Updated CLI name, description, and all paths in skill documentation
README.md Comprehensive update of CLI name, paths, examples, and expanded documentation with new sections
Directory.Build.targets Added VSTest workaround to disable global.json testRunner guard and ensure builds before tests
.gitignore Updated ignored path from .codegraph/ to .ragsharp/graph/

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

- `.codegraph/` contains the index and state files (not committed).
- Ensure `.codegraph/` and `state.json` remain in `.gitignore`.
- `.ragsharp/graph/` contains the index and state files (not committed).
- Ensure `.ragsharp/graph/` and `state.json` remain in `.gitignore`.
Copy link

Copilot AI Jan 3, 2026

Choose a reason for hiding this comment

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

The documentation states "Ensure .ragsharp/graph/ and state.json remain in .gitignore", but the .gitignore pattern .ragsharp/graph/ will already ignore state.json since it's located within that directory. The phrasing suggests they are separate items to ignore, which could be confusing. Consider updating to "Ensure .ragsharp/ remains in .gitignore" or "Ensure .ragsharp/graph/ (which contains index.db and state.json) remains in .gitignore."

Suggested change
- Ensure `.ragsharp/graph/` and `state.json` remain in `.gitignore`.
- Ensure `.ragsharp/graph/` (which contains `index.db` and `state.json`) remains in `.gitignore`.

Copilot uses AI. Check for mistakes.

- `.ragsharp/graph/index.db` — SQLite graph database.
- `.ragsharp/graph/state.json` — incremental index state.
- `.ragsharp/graph/schema_version` — schema version guard.
Copy link

Copilot AI Jan 3, 2026

Choose a reason for hiding this comment

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

The markdown formatting is missing a blank line between the "Files" section and the "Exit codes" heading. This can cause the "Exit codes" heading to not render properly in some markdown parsers. Add a blank line before line 16.

Suggested change
- `.ragsharp/graph/schema_version` — schema version guard.
- `.ragsharp/graph/schema_version` — schema version guard.

Copilot uses AI. Check for mistakes.
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.

2 participants