The fastlane manifest: where development actually happens #6

Merged
larandar merged 5 commits from agent.teyla/Jostoph:tango/fastlane-manifest into main 2026-08-10 05:49:41 +00:00
Contributor

Owner direction, 2026-08-10 (in flake-ops' kanidm session): the estate's development manifest lives HERE, with the steward, beside the .doctor.just currently in transit — not in a repo of its own. Both halves ship in this PR, dotfiles like the seams that read them.

  • .fastlane.toml — the canonical map every repo's seam fetches raw (anonymous https) and caches beside its justfile: each midgard-pinned flake input named to the development repo the source org actually works on.
  • .fastlane.just — the seam itself, a standalone justfile with one recipe. A consuming repo picks it up two ways: mod? fastlane ".fastlane.just" for direct use (just fastlane::assemble), and a variable — flake_override := if path_exists(...) == "true" { `just -f .fastlane.just assemble` } else { "" } — whose flags whatever runs nix splices in. PRESENCE IS THE TOGGLE: file in place → evaluations run against the manifest's dev repos at ref (default fastlane, ref=<other> per invocation); file absent → the published world. Deploys run from the lock regardless.

First consumer: lar.ad/flake-ops, wired exactly this way; its fetch falls back to the cached copy until this merges (fallback path exercised). The midgard/fastlane repo briefly created for this purpose today is superseded by this PR and should be deleted (the agent toolset has no repo-delete verb).

Owner direction, 2026-08-10 (in flake-ops' kanidm session): the estate's development manifest lives HERE, with the steward, beside the `.doctor.just` currently in transit — not in a repo of its own. Both halves ship in this PR, dotfiles like the seams that read them. - **`.fastlane.toml`** — the canonical map every repo's seam fetches raw (anonymous https) and caches beside its justfile: each midgard-pinned flake input named to the development repo the source org actually works on. - **`.fastlane.just`** — the seam itself, a standalone justfile with one recipe. A consuming repo picks it up two ways: `mod? fastlane ".fastlane.just"` for direct use (`just fastlane::assemble`), and a variable — `` flake_override := if path_exists(...) == "true" { `just -f .fastlane.just assemble` } else { "" } `` — whose flags whatever runs nix splices in. PRESENCE IS THE TOGGLE: file in place → evaluations run against the manifest's dev repos at `ref` (default fastlane, `ref=<other>` per invocation); file absent → the published world. Deploys run from the lock regardless. First consumer: lar.ad/flake-ops, wired exactly this way; its fetch falls back to the cached copy until this merges (fallback path exercised). The `midgard/fastlane` repo briefly created for this purpose today is superseded by this PR and should be deleted (the agent toolset has no repo-delete verb).
The canonical map every repo's .fastlane.just seam fetches: each
midgard-pinned flake input named to its development home. Kept by the
steward, beside the doctor.
Verbatim the copy flake-ops runs — self-containment is the property
being shipped: one file, fetches its manifest, assumes only nu.
Owner-shaped: a standalone justfile exposing `assemble`, picked up with
`mod? fastlane ".fastlane.just"` and a backtick invoking it as a file —
a backtick sees no just variables, but a fixed command runs fine.
Presence of the file is the toggle; `ref` parameterizes per invocation.
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Ting/Jostoph!6
No description provided.