Repository navigation
docs: add a CLAUDE.md for the Rust rewrite - #883
Merged
Merged
Conversation
🦋 Changeset detectedLatest commit: 6b8dc49 The changes in this PR will be included in the next version bump. This PR includes changesets to release 0 packagesWhen changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
[Low impact] The PR appears safe to merge; no new actionable issues were found.
|
checks.yml passed -D clippy::unwrap_used -D clippy::expect_used -D clippy::panic only on the command line. A crate inheriting [lints] workspace = true therefore passed a local cargo clippy and was rejected by the gate. The three lints move into [workspace.lints.clippy], and the 17 integration-test targets that assert by unwrapping or panicking carry an explicit allow at the top of the file. The allowance names the file rather than exempting test targets workspace-wide, so a new test file has to ask. Measured from a clean target directory: fmt clean; all-targets clippy clean; strict lib+bins pass clean; 157 tests passed, 0 failed; release build succeeds. Proven to fire: Some(1).unwrap() added to nostream-config/src/lib.rs fails the all-targets pass.
chappie-daemon
force-pushed
the
rewrite/claude-md
branch
from
October 18, 2026 13:06
340cc09 to
82b6040
Compare
Two contradictions in the CLAUDE.md: - 'everything outside the two binaries returns CliError' read as 'all libraries depend on nostream-cli'. It now says each library module returns its own crate's type, with the CLI's library modules returning CliError. - The anyhow check searched only crates/*/src/lib.rs, so a module file using anyhow would pass. It now scans every .rs file, excludes the two allowed main.rs, and skips comment lines that merely name the crate. Re-proven by adding an anyhow::Result probe to nostream-config/src/load.rs, which the check printed.
cameri
approved these changes
Oct 18, 2026
6 tasks
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.
docs: add a
CLAUDE.mdfor the Rust rewriterewrite/maincarried no agent instruction file, so every factory job re-derived theRust conventions from its own
spec.md. This adds one at the branch root holding onlythe rules that are specific to this repository and that an agent gets wrong:
--workspaceand--all-features, andwhy there are two clippy passes (strict
--lib --binskeeps tests free to unwrap).scripts/rust.sh, and that the toolchain comes fromrust-toolchain.tomlrather than a command-line flag.and
[lints] workspace = true— the line whose absence silently opts a crate out ofevery workspace lint.
<Crate>Errorper crate,anyhowconfined to the twomain.rsfiles,
NotImplementedinstead oftodo!()/panic!(), exit codes 1 and 2 keptdistinct, and validation findings as
Issuevalues rather than errors.Ok(()).rewrite/mainruleset.Generic Rust guidance is deliberately absent. The empty changeset is expected: no
published package changes.