Repository navigation
feat: close Silver gaps — toolchain, guix manifest, well-known, profile, quickstart - #189
Merged
Merged
Conversation
|
Warning Review limit reachedNext included review available in 57 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Advanced Run ID: 📒 Files selected for processing (10)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Base automatically changed from
fix/main-health-changelog-lock-docs
to
main
September 22, 2026 07:57
The tracked mise.toml pinned 30 tools to "latest" — which pins nothing — including runtimes the estate bans here (node/python/go) and test runners for languages with no code in tree. Its [alias] table mapped command lines as tool aliases (mise [alias] keys are tool names), and its [env] was node/python cruft. - mise.toml [tools] is now exactly what this repo builds with: rust 1.98.1 (measured 2026-09-21, current stable — what CI's ambient toolchain is). just stays unpinned by decision (any recent just runs these Justfiles; `cargo install just`), git is system-provided. - .tool-versions added with the same pin (the asdf-compatible spelling the RSR tool-versions check reads) — closes that Silver gap. - Both files say what they did and why, so the next estate sweep that sees a one-line tools table understands it is deliberate, not empty.
Option A of QUICKSTART-DEV prescribes `guix shell`, but no manifest or package file existed — the recipe cannot have worked. This adds manifest.scm (estate naming; bare `guix shell` auto-discovers it per the manual) with the verified spec set rust/just/git: - `rust`: unversioned alias confirmed present in gnu/packages/rust.scm (read via Software Heritage after cgit kept dropping the fetch). - `just`: confirmed in gnu/packages/rust-apps.scm at 1.43.0. - `git`: straight from the manual's own manifest example. Deliberately NOT guix.scm: bare `guix shell` treats guix.scm as a *package file* (--file semantics), not a manifest — a one-list file by that name would break. Consequence, stated plainly: gate table v0.3.0 and criterion 1.2.1 only recognise guix.scm, so this manifest is invisible to conformance machinery and reproducible-build stays undeclared in rsr-profile.a2ml. That upstream gap is filed separately; the file is reviewed-not-executed (no Guix daemon here) and says so.
#175 deliberately migrated root .well-known/ to www/.well-known/ per rsr-template-repo#119 stage 5 — that move is respected, not reversed. But RSR v2 2.2.1 wants the bundle discoverable at the repo root, and nothing serves www/ today (Pages builds _site from src/, not www/). Resolution: root .well-known/ holds relative symlinks to the three www/ files. Single source of truth (no content duplication to drift), criterion satisfied for any read-based check, migration intact. No README inside the directory (it would pollute the bundle) — this message plus the STATE entry are the documentation.
Adds .machine_readable/rsr-profile.a2ml: ["rust", "bash", "cli", "docs-site"], direct declaration (no preset fits — rust-cli would add `library`, and aletheia is binary-only). Every declined module gets a [rationale] line per the policy shape; [canon]/role omitted (neither spine nor canon). Deliberate, documented non-declarations: - governance-tier: partial quad (MAINTAINERS.adoc + root GOVERNANCE.adoc only; 2.1.8 wants 0-canon/GOVERNANCE.adoc). Declaring would fail Silver/Gold criteria; omitting keeps them na. The governance boundary is a policy-DRAFT open item anyway. - reproducible-build: manifest.scm + stapeln.toml ship, but gates v0.3.0 and criterion 1.2.1 only recognise guix.scm (wrong semantics under bare `guix shell`). Upstream gap, filed separately. - container/benchmarks/library/formal-proofs: nested-or-absent, each with its one-line reason. Honesty note (also in the file): the reference checker reports 3 MISSING + 1 VESTIGIAL (exit 1) against this profile. The MISSINGs are the root-anchored rust rows vs our nested aletheia/ crate; the VESTIGIAL is the partial-quad MAINTAINERS.adoc. Both are gate-format expressiveness gaps (root-anchoring, no partial modules), not repo defects — the profile declares what the repo IS. Checker stays unwired in CI until upstream can represent this shape.
The file was a 114-line template: {{LANG_STACK}}/{{BUILD_CMD}}/
{{TEST_CMD}} placeholders and references to doc/TOUR.adoc,
doc/TESTING.adoc, doc/llm-context.adoc — but doc/ does not exist at
all. Now every claim is measured against the tree:
- Stack: Rust 1.98.1 pin (MSRV 1.80, edition 2021, zero-dep),
Just, GHA; absolute-zero documented as the submodule it is.
- Option A `guix shell` is real now (manifest.scm ships this stack);
Option B rustup (recommended); Nix honestly absent, not faked.
- BUILD/TEST/MUST: just build/test/check + the Mustfile contract
(lint/test/fmt) + contractile must-check/trust-verify.
- Landmines are issue-grounded (#98 root-only workflows, #125
clippy -D warnings, #99 loud failures, Optimus-Branch squash-only).
- All 14 named recipes verified present in Justfile/contractile.just;
all 17 named paths verified present; llm-warmup-dev.adoc at root
replaces the doc/ fictions; wiki link kept (wiki enabled).
- EXPLAINME's Guix row said "no manifest in tree" — manifest.scm ships in this stack, and the row now records the true history (#97 retired the flake but the manifest never landed until now) plus the guix.scm-only upstream gap. - STATE gains the follow-up entry and three landmines: the checker-stays-unwired rule (gate-format gaps, not repo defects), and two observed-not-fixed defects for the next campaign (setup.sh's missing `just setup` handoff; pages.yml building a stub index). (The optimus-branch-ruleset landmine landed earlier in the main-health stack, which also references it.)
hyperpolymath
force-pushed
the
fix/followups-silver-gaps-guix-quickstart
branch
from
September 22, 2026 07:58
33da1da to
71767f9
Compare
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.
Follow-ups closing out the #185 thread (6 commits, squash to one)
Stacked on #188 — rebase onto main after it merges.
mise.toml+.tool-versions:rust 1.98.1, just 1.58.0, guix 1.43.0).
manifest.scmQUICKSTART always promised (bareguix shellreads
manifest.scm, notguix.scm; upstream naming issue still open)..well-known/links to canonicalwww/(move rejected in chore(www): migrate root .well-known/ to www/.well-known/ #175).rsr-profile.a2ml).Verification (tip commit)
Same suite as the parent PR, all green: 68+47 tests, fmt, clippy, zero deps, 26/26
Silver self-scan, docs gate exit 0, invisible scan 0 hits.
Merge: squash only, after the parent PR (stacked).