Both cdk-cli build paths are broken, and the justfile carried a drifted cdk pin #28
Labels
No labels
bug
duplicate
enhancement
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
vnprc/hashpool#28
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Both paths that build
cdk-cliare broken, and neither has been able to run for some time, sojust balanceand any other ecash CLI check have no working way to produce the binary they depend on.Primary goals:
cdk-cli— a single path, so the pin it uses cannot drift from the pins the mint and proxy build against.Current state and specifics
There are two separate implementations and both are non-functional.
The justfile recipe.
justfile:104definesbuild-cdk-clias./scripts/build-cdk-cli.sh. That script does not exist —scripts/containspatch-cdk-path.shbut nobuild-cdk-cli.sh, on master or on any open branch. The recipe therefore fails immediately.just balance(justfile:108) depends onbin/cdk-cliand instructs the reader to runjust build-cdk-clifirst, so the balance check is unreachable too.The devenv task.
devenv.nixdefines abuild:cdk:clitask that clonescdkRepo, checks outcdkCommitand builds--bin cdk-cliinline. It has no trigger: itsbeforelist nameddevenv:processes:*tasks that this devenv version does not define, and those dead dependencies were removed whendevenv shellwas repaired, leaving the task reachable only by an explicitdevenv tasks run.devenv tasks listshows it as a root.The drifted pin.
justfile:100-101carried its own pin, independent of the four sites normally kept in step:9523a003is not a ref tip on the forge or on github.com/vnprc/cdk and is not present in any local object store — a third lost cdk revision, alongside the two recorded on vnprc/hashpool#21. Theupdate-cdkrecipe does try to keep this value in step (justfile:44seds it), so the drift was unintended rather than deliberate. The URL and commit have since been pointed at the forge and at the branch's real revision on the open branches, which removes the drift trap but does not make the recipe work.Scope
In scope: decide which of the two build paths survives, delete the other, and either add the missing script or drop the recipe that calls it. If the justfile path is kept, its pin must be enumerated alongside
protocols/Cargo.toml,roles/Cargo.toml,devenv.nixandroles/Cargo.lockwherever that list is written down, because this issue exists precisely because it was not.Out of scope:
cdk-ehash's own[patch]pin, which also needs moving to the forge and is a separate repository.Validation
From a clean tree with no
bin/cdk-clipresent, the chosen path produces a working binary, andjust balancethen runs without the "CDK CLI not built" error. Then confirm the binary was built from the same cdk revision the mint and proxy are pinned to, rather than from whatever the surviving pin happened to say — comparing the revisions is the check, not that the build succeeded.