Point volunteers at npx givework@latest - #114
Merged
Merged
Conversation
`npx givework start` resolves the `latest` dist-tag on a first run, but npx prefers a local node_modules/.bin/givework or a cached entry on every run after that — a volunteer can keep running an old CLI indefinitely without knowing. `start` is pitched as the same command your first time or your fiftieth, so that is exactly the path that goes stale. Pin the user-facing invocations to @latest: README, the site pages, and the post-login page in oauth.ts. Left alone on purpose: - scripts/seed-test-task.ts runs the locally built bin during development, where @latest would pull the registry copy and defeat the point; - the `npx github:Barneyjm/givework.dev …` branch-install path, which never touches the registry. test/run-target.test.ts asserts these strings, so it moves in lockstep. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WoAJRWLbAW5pakUUzEzcjV
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.
Why
npx givework startresolves thelatestdist-tag on a first run, so a brand-new volunteeralways gets the current CLI. Every run after that is the problem: npx prefers a local
node_modules/.bin/giveworkor a cached entry, so a returning volunteer can keep running an oldCLI indefinitely without ever knowing.
startis pitched in the README as "the same command every time, whether it is your first time oryour fiftieth" — which is precisely the path that goes stale.
givework@latestforces tagresolution against the registry.
Concretely: the v0.5.1 fork-fallback fix reaches a volunteer's machine only if their next
npxactually re-resolves.
What changed
User-facing invocations pinned to
@latest(16 occurrences):README.mdsite/index.html,site/volunteers.html,site/tasks.html,site/conjecture.htmlsrc/oauth.ts— the post-login pagetest/run-target.test.tsasserts these exact strings, so it moves in lockstep (and neededreformatting: the longer string pushed a line past 100 cols).
Deliberately left alone
scripts/seed-test-task.ts— those instructions run the locally built bin duringdevelopment.
@latestwould pull the registry copy and defeat the purpose.npx github:Barneyjm/givework.dev …in the README — the unreleased-branch path, which nevertouches the registry. The sentence after it was updated.
Verification
Full suite 47 files / 596 tests pass, typecheck clean, Biome clean.
Touches the site and the control plane (
src/oauth.ts, deploys on merge), not the published CLI —so no version bump, and independent of the pending v0.5.1 release.
Note:
README.mdis in package.jsonfiles, so npm's package page keeps showing the old commanduntil the next publish after this merges — v0.5.1 is cut from
1e8ca18, which predates this.🤖 Generated with Claude Code
https://claude.ai/code/session_01WoAJRWLbAW5pakUUzEzcjV