Skip to content

Answer F# scripts outside any project; ratchet coverage floors - #503

Merged
MelbourneDeveloper merged 2 commits into
mainfrom
fix/497-fsharp-scripts-without-project
Oct 27, 2026
Merged

MelbourneDeveloper merged 2 commits into
mainfrom
fix/497-fsharp-scripts-without-project

Conversation

@MelbourneDeveloper

Copy link
Copy Markdown
Collaborator

Two changes, each behind tests.

  • F# scripts outside any project ([Bug]: F# Script LSP feature not available #497): a script is never project-owned ([SCRIPT-DETECT]), but semantic queries only checked files against a loaded workspace.
    • In a folder with no F# project, the F# sidecar refused the workspace ("No .fsproj found"), and every query on a script answered nothing.
    • Beside a project that does not list it, a script was checked under that project's options, and answered nothing either.
    • Now a directory or selection with no F# project opens as an empty workspace ([SCRIPT-DEGRADE]). A script that no loaded project or script compiles is checked under the options its own directives resolve ([SCRIPT-FSX-OPTIONS]), with or without a workspace.
    • Three tests asserted the old refusal. They now assert the empty workspace the spec requires.
  • Coverage floors: Rust 95.8 → 96.25 and VS Code 96.96 → 97.4: what CI measured on Test Explorer Debug builds, diagnostic accuracy and refresh; consolidate all branches #494, less the gate's one-point tolerance.

The full local ci-prep passed before this was pushed: every lint gate, the .NET suites (158, 488 and 839 tests), both Rust shards with 97.24% coverage, and all 16 VS Code chunks that run on macOS.

Refs #497. The issue closes once a released build is verified.

CI's merged shards measured 97.26% for the Rust workspace and 98.41% for
the VS Code extension on PR #494 (run 40451288370); each floor moves to the
measurement less the gate's one-point tolerance: 95.8 -> 96.25 and
96.96 -> 97.4. [DIST-CI-COVERAGE-THRESHOLDS]
A script is never project-owned, but semantic queries only checked files
against a loaded workspace. In a folder with no F# project the F# sidecar
refused the workspace with "No .fsproj found" and every query on a script
returned nothing; beside a project that does not list it, the script was
checked under the project's options and answered nothing either. A
directory or selection with no F# project now opens as an empty workspace,
and a script that no loaded project or script compiles checks under the
options its own directives resolve, with or without a workspace. Three
tests asserted the old refusal; they now assert the empty workspace
[SCRIPT-DEGRADE] requires. Refs #497. [SCRIPT-DETECT] [SCRIPT-FSX-OPTIONS]
@MelbourneDeveloper
MelbourneDeveloper enabled auto-merge (squash) October 27, 2026 07:34
@MelbourneDeveloper
MelbourneDeveloper merged commit 2943203 into main Oct 27, 2026
115 of 119 checks passed
@MelbourneDeveloper
MelbourneDeveloper deleted the fix/497-fsharp-scripts-without-project branch October 27, 2026 08:22
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.

1 participant