.fastlane.toml does not name jostoph-rs, so its consumers have no fastlane #11
Labels
No labels
Compat/Breaking
Kind/Bug
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Security
Kind/Testing
Meta/Campaign
Meta/Epic
Meta/Session
Priority/Critical
Priority/High
Priority/Low
Priority/Medium
Reviewed/Confirmed
Reviewed/Curated
Reviewed/Duplicate
Reviewed/Invalid
Reviewed/Won't Fix
Scope/Campaign
Status/Abandoned
Status/Blocked
Status/Conflicted
Status/In Progress
Status/In Review
Status/Need Grooming
Status/Need More Info
Status/Ready
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
Ting/Jostoph#11
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?
Source: swapping
Ting/Vedanta's vendoredjostoph-rsfor themidgard/jostoph-rsmirror, 2026-08-10.Ting/Vedantanow pinsjostoph-rsas a flake input atgit+https://jo.et0.pw/midgard/jostoph-rs.git(locked029a102cf606, byte-identical to the tree it replaced) instead of carryingvendor/jostoph-rsin the repository. That was the whole point of #6's manifest: an input pinned to midgard names its development home there, and the seam turns that into--override-input..fastlane.tomlcurrently lists four inputs —dendriteand the threenixops4-providersflakes.jostoph-rsis not among them. So a repo that develops against the substrate gets the published mirror and nothing else:just fastlane::assembleemits no override for it, and reachinglar.ad/jostoph-rs?ref=fastlanemeans passing--override-inputby hand — the drift the manifest exists to end.lar.ad/jostoph-rsis private, confirmed rather than assumed:git ls-remoteover anonymous HTTPS with credential helpers disabled (GIT_CONFIG_GLOBAL=/dev/null) fails oncould not read Username, wheremidgard/jostoph-rsanswers under identical conditions. The manifest's ssh-name convention (git+ssh://[email protected]/…) is what makes the development side reachable at all, so this entry is not cosmetic.In scope
.fastlane.toml:jostoph-rs = "git+ssh://[email protected]/lar.ad/jostoph-rs", following the file's stated convention exactly — ssh name, no?dir=(the flake is at the repository root), noref(the seam sets it per invocation).Out of scope
flake.nix.Ting/Vedantaalready declares the input under the namejostoph-rs; the manifest only has to agree with the name. A consumer that does not declare it is inert, per the file's own header — nix warns on an unknown--override-inputrather than failing.jostoph-rsinput, which still pins the private canonical and is a separate finding, filed separately.midgard/jostoph-rskeeps trackinglar.adis #3's push-mirror reconciliation, not this ticket's.Boundary
The manifest is fetched raw over anonymous HTTPS and cached beside every consumer's justfile on a one-day rule, so a wrong line here is wrong in every repo for up to a day and cannot be recalled — but it is also inert for any repo that does not declare the input, which bounds the blast radius of adding one to exactly the repos that asked for it.
The
refstays out of the manifest. Writingfastlanehere would make the manifest, not the invocation, decide which branch an evaluation resolves against, which is the seam's job (just ref=<other> …).Acceptance
jostoph-rsinput,just fastlane::assembleemits--override-input jostoph-rs git+ssh://[email protected]/lar.ad/jostoph-rs?ref=fastlanealongside the existing four.Ting/Vedanta, where the equivalent override was already exercised by hand (nix build .#default --override-input jostoph-rs path:…builds a working binary, so the override path itself is live).jostoph-rsinput is unaffected: nix warns, the build proceeds.midgardfrom the lock.Context
midgard/jostoph-rscurrent; this entry assumes it does.Ting/VedantaPR #2 — the vendoring this swap retires, and its own note that "the real distribution model ... is still undecided."Closing — this ticket's premise is wrong.
Owner, 2026-08-10:
midgard/jostoph-rscarriesmainonly, by design. The substrate is consumed as published, not co-developed branch-for-branch with its consumers, so it does not belong in the development manifest at all. I filed this from the assumption that every midgard-pinned input has alar.adfastlane counterpart; that is true of the four inputs already listed and is not true here.I also acted on that wrong premise before it was corrected: I created a
fastlanebranch onlar.ad/jostoph-rsto make the manifest entry resolve. That branch has been deleted —lar.ad/jostoph-rsis back tomainonly, as it should be.One measured finding from this is worth keeping, because it is a real constraint on the seam and cost nothing to establish:
So the manifest cannot currently express a main-only input, and a repo that is published-not-co-developed must simply stay out of it. That is fine as a rule, but it is an implicit one — the file's header explains that an undeclared input is inert, and says nothing about an input whose ref does not exist. If a main-only repo is ever added by mistake, it breaks every consumer that declares it, which is exactly the kind of silent-until-it-isn't drift the steward exists to catch. Left as an observation here rather than reopened as its own ticket; #3's remit is closer to it than mine.
The half of this that survives is #12 — pinning
midgard/jostoph-rsand committing the lock — which is done and up as #13. The manifest is untouched there, and the reasoning is recorded in the input's own comment so nobody re-derives this.