Repository navigation
docs(openspec): add the OpenSpec baseline specification set - #27
Merged
Merged
Conversation
Backfill the OpenSpec baseline for the three host-facing capabilities: Machine reachability and fact collection, single-host convergence via the NixosConfiguration orchestrator, and whole-cluster convergence via NixCluster. Assisted-by: LLM Signed-off-by: Maxim Belyy <maximbel2003@gmail.com>
Cover the behaviour every Nix workload shares — revision resolution from a pinned commit, a Flux artifact or a polled ref, the rendered pod pipeline and its store/builder wiring — plus the per-kind projection and health rules for NixDeployment, NixJob, NixCronJob and NixStatefulSet. Assisted-by: LLM Signed-off-by: Maxim Belyy <maximbel2003@gmail.com>
Cover the NixStore binary cache and the single-worker NixBuilder, plus the cross-cutting runtime contract: the API surface, namespace-local references, manager configuration, observability, RBAC and how the operator is delivered. Assisted-by: LLM Signed-off-by: Maxim Belyy <maximbel2003@gmail.com>
Assisted-by: LLM Signed-off-by: Maxim Belyy <maximbel2003@gmail.com>
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.
What
Adds the OpenSpec baseline: nine capability specs under
openspec/specs/,describing the behaviour the operator already implements, plus the project
context block in
openspec/config.yaml.machine-discoveryhost-convergencecluster-convergenceflake-source-resolutionworkload-pod-renderingnix-workload-kindsnix-storenix-builderoperator-runtimeWhy
OpenSpec was introduced to this repository with an empty spec set. Backfilling
the current behaviour gives future changes a baseline to write deltas against,
instead of re-deriving the contract from the controllers each time.
Scope
Documentation only — no Go code, manifests or CI touched. Every spec passes
openspec validate --specs --strict.