You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
FS.GG.Game.Harness is a packable project in this repo (src/Game.Harness/FS.GG.Game.Harness.fsproj: IsPackable=true, PackageId=FS.GG.Game.Harness, in FS.GG.Game.slnx) but it exists on no feed. nuget.org's FS.GG.Game.* axis at 0.5.1 publishes only FS.GG.Game.Core and FS.GG.Game.Render; there is no FS.GG.Game.Harness package at 0.5.0, 0.5.1, or anywhere (api.nuget.org/v3-flatcontainer/fs.gg.game.harness/index.json → BlobNotFound).
Why
The Harness project + .fsi surface landed after the last release:
No release has been cut since, so the latest published version predates the Harness project.
WI-1 (#420) and WI-2 (#421) are closed, but the package the epic depends on was never published — the release that would carry it hasn't run.
The ask
Cut a FS.GG.Game release that publishes FS.GG.Game.Harness as part of the coherent set, so downstream can consume it.
Two things to confirm while doing so:
release.yml has a now-stale assumption. Its pack step comments "Only FS.GG.Game.Core + FS.GG.Game.Render are IsPackable=true ... so packing the whole slnx yields exactly those two packages". After feat(game-harness): FS.GG.Game.Harness deterministic headless driver (#420) #423 the slnx has three packable projects, so dotnet pack FS.GG.Game.slnx will now emit Harness too (good — but the comment should be corrected, and the coherent-version story confirmed for a third package: Harness → depends on Game.Core@same-version, BCL only).
The nupkg must carry api-surface/*.fsi (the #782 convention). FS.GG.Rendering's scripts/refresh-api-surface-mirror.fsx restores the pinned package and hard-errors if it "carries no api-surface/ — it predates #782." Game.Core/Render already pack theirs (Rendering mirrors them today); Harness is in the same slnx under the same repo-wide packing target, so it should inherit it — please confirm on the packed Harness nupkg.
From: FS.GG.Rendering, found while working FS-GG/FS.GG.Rendering#927. Epic FS-GG/.github#1190 (WI-6 chain). Contract axis:
$(FsGgGameVersion).The gap
FS.GG.Game.Harnessis a packable project in this repo (src/Game.Harness/FS.GG.Game.Harness.fsproj:IsPackable=true,PackageId=FS.GG.Game.Harness, inFS.GG.Game.slnx) but it exists on no feed. nuget.org'sFS.GG.Game.*axis at 0.5.1 publishes onlyFS.GG.Game.CoreandFS.GG.Game.Render; there is noFS.GG.Game.Harnesspackage at 0.5.0, 0.5.1, or anywhere (api.nuget.org/v3-flatcontainer/fs.gg.game.harness/index.json→BlobNotFound).Why
The Harness project +
.fsisurface landed after the last release:v0.5.1released 2026-07-18 20:48Z (commit20da2673, "patch — Geometry.fsi doc fix").src/Game.Harness/FS.GG.Game.Harness.fsprojadded 2026-07-19 06:33Z (feat(game-harness): FS.GG.Game.Harness deterministic headless driver (#420) #423), ~10h later.fs-gg-playtestskill added 2026-07-19 06:57Z (docs(fs-gg-playtest): product skill for headless gameplay evidence (#421) #424).WI-1 (#420) and WI-2 (#421) are closed, but the package the epic depends on was never published — the release that would carry it hasn't run.
The ask
Cut a FS.GG.Game release that publishes
FS.GG.Game.Harnessas part of the coherent set, so downstream can consume it.Two things to confirm while doing so:
release.ymlhas a now-stale assumption. Its pack step comments "Only FS.GG.Game.Core + FS.GG.Game.Render are IsPackable=true ... so packing the whole slnx yields exactly those two packages". After feat(game-harness): FS.GG.Game.Harness deterministic headless driver (#420) #423 the slnx has three packable projects, sodotnet pack FS.GG.Game.slnxwill now emit Harness too (good — but the comment should be corrected, and the coherent-version story confirmed for a third package: Harness → depends on Game.Core@same-version, BCL only).api-surface/*.fsi(the #782 convention). FS.GG.Rendering'sscripts/refresh-api-surface-mirror.fsxrestores the pinned package and hard-errors if it "carries no api-surface/ — it predates #782." Game.Core/Render already pack theirs (Rendering mirrors them today); Harness is in the same slnx under the same repo-wide packing target, so it should inherit it — please confirm on the packed Harness nupkg.Downstream blocked by this
NU1101, and the mirror generator hard-errors on the failed restore.fs-gg-playtestto the game profile skill union; its frozen mirror doesopen FS.GG.Game.Harnessand citesdocs/api-surface/Game.Harness/, which #927 must first make real.Paths: .github/workflows/release.yml Directory.Build.local.props src/Game.Harness/README.md tests/Game.Harness.Tests/packages.lock.json tests/Game.Render.Tests/packages.lock.json