Skip to content

signsofai --version has said 0.1.0 since 0.1.0 - #84

Merged
peopleworks merged 1 commit into
mainfrom
cli-version
Sep 7, 2026
Merged

peopleworks merged 1 commit into
mainfrom
cli-version

Conversation

@peopleworks

Copy link
Copy Markdown
Owner

src/SignsOfAI.Cli/Program.cs restated the version as a constant and nobody ever bumped it:

const string Version = "0.1.0";

The package has shipped as 0.2.0 through 0.7.0 while the tool told anyone who asked that they were running the first release ever published.

This is the 24 August failure, one channel over

A support message then said "desktop 0.4.0 is not published" — because the desktop app displayed no version anywhere and the reporter could not tell which build they had. #64 fixed that one and added a guard. Nobody looked at the CLI.

It is worse here than there. The desktop said nothing; the CLI says something false. Someone checking whether they already have today's em-dash fix runs --version, reads 0.1.0, and concludes they are seven releases behind when they are current.

The fix

BuildInfo reads the assembly the compiler stamped from <Version>, so the two cannot disagree — the same reasoning DesktopRelease.ZipUrl already uses to interpolate its URL rather than restate it.

The guard

A CI step runs the tool that was just built and compares what it says against what the csproj packs. Verified by mutation: with the constant put back, the step fails with 0.1.0 against 0.7.0.

It deliberately is not a test asserting the source contains no literal — that class of test is satisfied by a comment, which is the lesson from the boot tests on 31 August.

How it was found

While verifying that 0.7.0 on NuGet actually carried the em-dash fix. It does — installed from NuGet, the learner's essay comes back with no em-dash finding. The version it reported while proving that was 0.1.0.

Release

Core is untouched, so no score changes and the calibration is not affected. This is Cli only. Cutting 0.7.1 is a judgement call: the fix matters most to somebody diagnosing whether they have 0.7.0, and right now the tool answers that question wrongly.

🤖 Generated with Claude Code

https://claude.ai/code/session_015PEbbiYSNPw7jE3LrPNhyF

`Program.cs` restated the version as a constant and nobody ever bumped it. The
package has gone out as 0.2.0 through 0.7.0 while the tool told anyone who asked
that they were running the first release ever published.

That is the failure mode from 24 August, one channel over. A support message
then said "desktop 0.4.0 is not published" because the desktop app displayed no
version at all and the reporter could not tell which build they had. #64 fixed
that one and added a guard. Nobody looked at the CLI.

It is worse here than there. The desktop said nothing; the CLI says something
false. Someone checking whether they already have today's em-dash fix runs
`--version`, reads 0.1.0, and concludes they are seven releases behind when they
are current.

`BuildInfo` reads the assembly the compiler stamped from `<Version>`, so the two
cannot disagree — the same reasoning `DesktopRelease.ZipUrl` uses to interpolate
its URL instead of restating it.

The guard runs the tool that was just built and compares what it says against
what the csproj packs. Verified by mutation: with the constant put back, the
step fails with 0.1.0 against 0.7.0. A test asserting the source does not
contain a literal would have been satisfied by a comment.

Found while verifying that 0.7.0 on NuGet actually carried the em-dash fix. It
does — the learner's essay comes back with no em-dash finding from the published
package. The version it reported while proving it was 0.1.0.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015PEbbiYSNPw7jE3LrPNhyF
@peopleworks
peopleworks merged commit 3bd31e1 into main Sep 7, 2026
4 checks passed
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