Skip to content

Follow caisson's per-target integration namespaces - #3

Open
clhodapp wants to merge 11 commits into
mainfrom
rename/integration-surface
Open

clhodapp wants to merge 11 commits into
mainfrom
rename/integration-surface

Conversation

@clhodapp

Copy link
Copy Markdown
Contributor

Follows nix-caisson/caisson's move of every integration to lib.caisson.<target> with the uniform mkModule / mkConfiguration names (branch rename/integration-surface there). The expected-name list and the two existence checks change. The suite passes with --override-input caisson pointed at that branch; the caisson pin advances once that change lands on main.

🤖 Generated with Claude Code

caisson now nests the flake-parts integration at lib.caisson.flake-parts
and names every integration's entry points mkModule / mkConfiguration.
The expected-name list and the existence checks follow.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@clhodapp clhodapp self-assigned this Sep 10, 2026
clhodapp and others added 10 commits September 9, 2026 23:07
Every mkConfiguration now takes configModule and specialArgs; the
colmena, terranix and system-manager probes pass a config module
instead of a modules list.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The three probes now hand pkgSets.pkgs to mkConfiguration and rely on
the integration to seed the evaluator's package-set slot (colmena's
meta.nixpkgs, terranix's pkgs, system-manager's nixpkgs.hostPlatform).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Every closed entry point refuses an evaluator argument (one probe per
target), and the unsupervised twins reach the evaluator through
`evaluatorArgs` (nixos minimal prefix, terranix strip_nulls and pkgs,
home-manager check). The colmena probe passes its node as `nodes`,
and the minimal-NixOS probe reads the `pkgs` module argument instead
of declaring nixpkgs.pkgs by hand.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…systemArgs

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The colmena probe uses the node shape (`nodes.<name>.configModule`,
`deployment`), a new probe asserts a node's toplevel derivation equals
lib.caisson.nixos.mkConfiguration's from the same modules and that the
node's pkgs is the handed-in instance, and meta.nixpkgs is refused.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
A hive from mkNixosConfiguration nodes carries the schema the pinned
colmena's makeHive emits, the node's toplevel and deployment config,
and the metadata; a node is the NixOS configuration nixos builds from
the same module with `deployment` declared; a plain nixos
configuration is refused as a node; `nodes` at the call and
`deployment` as a node argument are refused. The colmena probes compose
with declared ecosystems, as a consumer flake does.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The node constructor is the hive module's argument now; the probes
build their nodes there (nixpkgs explicit in the identity probe) and
read them back from hive.nodes.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant