Report the version, and ship as v0.1.1 - #12
Merged
Conversation
PR #10 derives the harness from the ref a caller pinned, but its version output fell back to the action directory name -- '.skillscope-action' through the reusable path, where GITHUB_ACTION_REF is empty. The launcher now reads __version__ out of the checkout it installs from, so the log and the step output name the build that graded the run. A selftest asserts the reported version is the checkout's, and a unit test keeps __version__ and pyproject.toml from disagreeing. Ships as v0.1.1: the v0.1.0 tag already exists with 'uses: amd/skillscope@main' inside it. Co-authored-by: Cursor <cursoragent@cursor.com>
danielholanda
marked this pull request as ready for review
September 8, 2026 19:07
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Report the version, and ship as v0.1.1
Stacked on #10. This targets
dholanda/simplify, so the diff here is just whatI'd change about that PR — merge it into #10 and #10 stays the one that goes to
main.#10 has the right idea:
job.workflow_shaderives the harness from the ref thecaller pinned, so it is correct at a tag, at
main, and on a branch, with noliteral to keep in step and no release ritual. That is why this is stacked on it
rather than on #11. Three things it needs first.
The version output says
.skillscope-actionThe launcher reported
GITHUB_ACTION_REF or source.name. Through the reusableworkflows the action is local —
uses: ./.skillscope-action— soGITHUB_ACTION_REFis empty and the fallback is the directory name. The stepoutput, the log line, and the summary all said
.skillscope-action, which isthe one place a caller looks to confirm the pin did what they meant.
It now reads
__version__out of the checkout it installs from:Borrowed from #11's
packaged_version(), which got this part right.v0.1.0 is already tagged, and it is the broken one
#10 tells callers to pin
@v0.1.0. That tag exists and every job inside itsreusable.ymlsaysuses: amd/skillscope@main— so following those docsreproduces the exact bug being fixed. Bumped to
0.1.1and moved the documentedpins with it, and
docs/usage.mdnow says why v0.1.1 is the first tag wherepinning does what the README claims.
This is a docs-and-packaging bump only. Nothing in the workflows names a
version, so the next release is a tag on whatever commit you like — no 21
literals to bump, which is the difference from #11.
Two tests, neither of them a ref check
checkout. It is the end-to-end statement that nothing fetched a build from
somewhere else.
TestTheVersionIsOneNumberkeeps__version__andpyproject.tomlinagreement, and loads
bootstrap/launch.pywithrunpyto check thelauncher's scraping regex still matches the file it is aimed at. The launcher
cannot import
skillscope— it runs before anything is installed — so thatregex is the one thing here that can rot silently.
Not borrowed from #11: the test that pins 21 literal
uses:refs to__version__. #10's derivation makes those literals disappear, so there isnothing left to keep in agreement.
Worth knowing before merging #10
job.workflow_sha/job.workflow_repositoryare github.com only — not onGitHub Enterprise Server. A GHES caller gets empty values,
actions/checkoutfalls back to their own repo, and
uses: ./.skillscope-actionfails to findaction.yml. That is a loud failure rather than a silently wrong harness, so Ithink it is the right trade, but it is the one real argument for #11's literals
and it should be a deliberate call.
Also: the nested checkout uses the default
GITHUB_TOKEN, which works becauseamd/skillscopeis public. If it ever goes private, that step needs a token.Test plan
python -m unittest discover -s tests -t .— 209 passversion=0.1.1,not
.skillscope-actiongit grep v0.1.0finds only the prose explaining why that tag is broken