Skip to content

Migrate LexBox.sln to LexBox.slnx - #2503

Merged
hahn-kev merged 1 commit into
developfrom
claude/sln-to-slnx-migration-ac5040
Jul 30, 2026
Merged

Migrate LexBox.sln to LexBox.slnx#2503
hahn-kev merged 1 commit into
developfrom
claude/sln-to-slnx-migration-ac5040

Conversation

@hahn-kev-bot

Copy link
Copy Markdown
Collaborator

🤖 AI summary

Converts the solution from the legacy .sln format to the newer XML-based .slnx format using dotnet sln migrate, removes the old LexBox.sln, and updates every reference found in the repo.

Changed:

  • LexBox.slnx — new, generated by dotnet sln migrate; LexBox.sln removed.
  • LexBoxOnly.slnf, FwLiteOnly.slnf, FwLiteCore.slnf — filter path now points at LexBox.slnx.
  • .vscode/settings.jsondotnet.defaultSolutionLexBox.slnx.
  • README.md — prose reference updated.
  • backend/FwLite/LcmDebugger/Utils.cs — repo-root finder now probes for LexBox.slnx.
  • backend/LexBoxApi/dev.Dockerfile, backend/FwHeadless/dev.DockerfileCOPY *.sln*.slnx.

Reviewer notes:

  • Verified .slnf solution filters restore correctly when their path targets a .slnx (SDK 10.0.302).
  • The two Dockerfile *.sln globs are effectively dead: the build context is backend/ but the solution lives at the repo root, so the glob never matched. Updated to *.slnx only for consistency — nothing functional depended on them.
  • CI workflows and Taskfiles reference the .slnf files (not the .sln directly), so they needed no changes.

Test plan

  • dotnet restore succeeds for LexBox.slnx and all three .slnf filters (exit 0).
  • CI green (core .NET build/tests, LexBox API tests).

Run `dotnet sln migrate` to convert the solution to the newer XML-based
.slnx format, remove the old .sln, and update all references:

- .slnf solution filters point their path at LexBox.slnx (verified filters
  still restore correctly against a .slnx target)
- .vscode dotnet.defaultSolution, README prose, and the LcmDebugger repo-root
  finder in Utils.cs
- dev.Dockerfile COPY globs (*.sln -> *.slnx) for consistency; these globs
  never matched anyway since the solution is at the repo root, outside the
  backend/ build context

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@github-actions github-actions Bot added 💻 FW Lite issues related to the fw lite application, not miniLcm or crdt related 📦 Lexbox issues related to any server side code, fw-headless included labels Jul 30, 2026
@coderabbitai

coderabbitai Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

The LexBox solution is migrated from LexBox.sln to the new LexBox.slnx format. Solution configurations, editor settings, Docker build inputs, repository-root discovery, and README setup instructions now reference the new file.

Changes

Solution format migration

Layer / File(s) Summary
Solution definition and references
LexBox.sln, LexBox.slnx, *.slnf, .vscode/settings.json, README.md
Removes LexBox.sln, adds the project and solution-item definitions in LexBox.slnx, and updates solution paths, editor defaults, and setup documentation.
Build and runtime integration
backend/FwHeadless/dev.Dockerfile, backend/LexBoxApi/dev.Dockerfile, backend/FwLite/LcmDebugger/Utils.cs
Updates Dockerfile solution globs and repository-root discovery to use .slnx files.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

Suggested reviewers: hahn-kev

Poem

A rabbit hops through folders bright,
And finds the .slnx in sight.
Docker copies, tools align,
Configs point along the line—
New solution, neat and fine!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly states the main change: migrating the solution from .sln to .slnx.
Description check ✅ Passed The description directly matches the changeset and summarizes the solution migration and reference updates.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/sln-to-slnx-migration-ac5040

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@backend/FwHeadless/dev.Dockerfile`:
- Line 14: The dev Dockerfiles currently copy a wildcard solution from the
build-context root, but CI uses the backend directory as context and cannot
access the repository-root solution. Update both
backend/FwHeadless/dev.Dockerfile line 14 and backend/LexBoxApi/dev.Dockerfile
line 12 to use LexBox.slnx with a repo-root build context, or explicitly make
LexBox.slnx available when the context remains backend; keep the project and
props copies aligned with the resolved solution.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 52acff32-ac10-471b-8783-aa7f9d8dbabd

📥 Commits

Reviewing files that changed from the base of the PR and between 889ad85 and 5773f77.

📒 Files selected for processing (10)
  • .vscode/settings.json
  • FwLiteCore.slnf
  • FwLiteOnly.slnf
  • LexBox.sln
  • LexBox.slnx
  • LexBoxOnly.slnf
  • README.md
  • backend/FwHeadless/dev.Dockerfile
  • backend/FwLite/LcmDebugger/Utils.cs
  • backend/LexBoxApi/dev.Dockerfile
💤 Files with no reviewable changes (1)
  • LexBox.sln

Comment thread backend/FwHeadless/dev.Dockerfile
@argos-ci

argos-ci Bot commented Jul 30, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Argos notifications ↗︎

Build Status Details Updated (UTC)
default (Inspect) ✅ No changes detected - Jul 30, 2026, 9:30 AM
e2e (Inspect) ✅ No changes detected - Jul 30, 2026, 9:38 AM

@hahn-kev
hahn-kev enabled auto-merge (squash) July 30, 2026 12:18
@hahn-kev
hahn-kev disabled auto-merge July 30, 2026 12:18
@hahn-kev
hahn-kev enabled auto-merge (squash) July 30, 2026 12:18
@hahn-kev
hahn-kev merged commit ad75bda into develop Jul 30, 2026
31 checks passed
@hahn-kev
hahn-kev deleted the claude/sln-to-slnx-migration-ac5040 branch July 30, 2026 12:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

💻 FW Lite issues related to the fw lite application, not miniLcm or crdt related 📦 Lexbox issues related to any server side code, fw-headless included

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants