diff --git a/Cargo.toml b/Cargo.toml index e7c7297..6881def 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -22,47 +22,57 @@ portable-pty = "0.9" vt100 = "0.16" # ============================================================ -# Bombay — god-level lint config (adopted from nexus, verbatim). +# Bombay — god-level lint config (adopted from nexus — card #61). # -# TEMPORARILY RELAXED to `allow`. The vendored bombay code (~19k LOC) is -# not clean against this bar (1200+ findings). Rather than bury them -# under scattered #[allow]s on code that ships *zero tests upstream* -# (notably the `actors` crate), the bar is parked at `allow` so the -# clippy gate passes over verbatim bombay. It will be re-tightened -# lint-by-lint, with real fixes, as test coverage lands (M1/M7). +# RESTORED as a lint RATCHET. The bar is DENY workspace-wide, so ALL NEW +# code is held to the nexus/agency hygiene standard from line one. Legacy +# vendored kameo files that predate the bar carry a documented per-file +# `#![allow(..., reason = "…#61")]` quarantine header (zero refactor, zero +# behaviour change on code that M1/M7 will rewrite or delete). Those headers +# are removed file-by-file as the files are cleaned or dropped; the +# de-quarantine checklist lives on issue #61. # -# TO RESTORE the god-level bar: set the three groups below back to -# `deny` and re-add the restriction wall preserved in the comment. +# DEVIATION from nexus-verbatim: `disallowed_types` (the std::sync::Mutex / +# RwLock ban) is NOT adopted — see clippy.toml for the rationale (the real +# rule is "no lock held across .await", a per-site call, not a type ban). # ============================================================ [workspace.lints.rust] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tokio_unstable)'] } +# NOTE (#61 tail): the optional `[workspace.lints.rust]` tightening — +# `unsafe_code` (kameo's `error.rs` transmute needs a per-site allow), +# `missing_docs`, `unreachable_pub`, `dead_code` — is deferred. Turning it on +# means covering rust-level lints in the per-file quarantine headers too. [workspace.lints.clippy] -all = { level = "allow", priority = -1 } -pedantic = { level = "allow", priority = -1 } -nursery = { level = "allow", priority = -1 } - -# Original god-level config, to be restored as the surviving core is -# cleaned (set the groups above to `deny` and uncomment these): -# -# unwrap_used = "deny" -# expect_used = "deny" -# panic = "deny" -# todo = "deny" -# unimplemented = "deny" -# dbg_macro = "deny" -# print_stdout = "deny" -# print_stderr = "deny" -# disallowed_methods = "deny" -# disallowed_types = "deny" -# clone_on_ref_ptr = "deny" -# as_conversions = "deny" -# str_to_string = "deny" -# implicit_clone = "deny" -# shadow_reuse = "deny" -# shadow_same = "deny" -# shadow_unrelated = "deny" -# allow_attributes_without_reason = "deny" +# 1. THE FOUNDATION +all = { level = "deny", priority = -1 } +pedantic = { level = "deny", priority = -1 } +nursery = { level = "deny", priority = -1 } + +# 2. THE RUTHLESS RESTRICTIONS (disallowed_types omitted — see header) +unwrap_used = "deny" +expect_used = "deny" +panic = "deny" +todo = "deny" +unimplemented = "deny" +dbg_macro = "deny" +print_stdout = "deny" +print_stderr = "deny" +disallowed_methods = "deny" + +# 3. MEMORY & PERFORMANCE STRICTNESS +clone_on_ref_ptr = "deny" +as_conversions = "deny" +str_to_string = "deny" +implicit_clone = "deny" + +# 4. VARIABLE HYGIENE +shadow_reuse = "deny" +shadow_same = "deny" +shadow_unrelated = "deny" + +# 5. THE "NO CHEATING" RULE — every #[allow] must carry a reason. +allow_attributes_without_reason = "deny" [workspace.metadata.crane] name = "bombay" diff --git a/README.md b/README.md index bb902a3..39f74c3 100644 --- a/README.md +++ b/README.md @@ -45,7 +45,7 @@ Everything below is re-exported from `bombay::prelude`: - **Actor** — `#[derive(Actor)]` or `impl Actor` by hand. Lifecycle hooks: `on_start`, `on_panic`, `on_link_died`, `on_stop`. Spawn with `Actor::spawn`, `spawn_with_mailbox`, `spawn_in_thread`, or build one with `prepare` and run it later. - **Messages** — `impl Message for A { type Reply; async fn handle(&mut self, msg, ctx) -> Reply }`. The `Context` exposes the actor's own `ActorRef`, the reply channel (`reply_sender`), `forward`/`try_forward` to another actor, and `attach_stream` for `StreamMessage`. -- **ActorRef** — `ask` (request/reply) and `tell` (fire-and-forget), each a builder: `.mailbox_timeout(..)`, `.reply_timeout(..)`, `.send()` / `.try_send()` / `.blocking_send()`, `tell`'s `.send_after(..)`, `.forward(..)`, or `await` it directly (`IntoFuture`). Plus `downgrade()` → `WeakActorRef`, strong/weak reference counts, `link`/`unlink`, and type-erased `Recipient` / `ReplyRecipient`. +- **`ActorRef`** — `ask` (request/reply) and `tell` (fire-and-forget), each a builder: `.mailbox_timeout(..)`, `.reply_timeout(..)`, `.send()` / `.try_send()` / `.blocking_send()`, `tell`'s `.send_after(..)`, `.forward(..)`, or `await` it directly (`IntoFuture`). Plus `downgrade()` → `WeakActorRef`, strong/weak reference counts, `link`/`unlink`, and type-erased `Recipient` / `ReplyRecipient`. - **Reply** — any `Reply` type, including `Result` and infallible scalars/collections. `ForwardedReply`, `DelegatedReply`, and a single-use `ReplySender` for replying out-of-band. - **Supervision** — `RestartPolicy` (`Permanent` / `Transient` / `Never`), `SupervisionStrategy` (`OneForOne` / `OneForAll` / `RestForOne`), restart-intensity limits (max restarts within a sliding window), and death-watch via links + `on_link_died`. - **Registry** — a process-local `ActorRegistry`: register an actor under a name, look it up, remove it. diff --git a/actors/src/broker.rs b/actors/src/broker.rs index 14756fb..c25d701 100644 --- a/actors/src/broker.rs +++ b/actors/src/broker.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Provides a topic-based message broker for the actor system. //! //! The `broker` module implements a flexible topic-based publish/subscribe mechanism that allows diff --git a/actors/src/lib.rs b/actors/src/lib.rs index 6ab42c9..d05b34f 100644 --- a/actors/src/lib.rs +++ b/actors/src/lib.rs @@ -7,11 +7,11 @@ //! - `pool`: Actor pool for managing concurrent task execution //! - `pubsub`: Publish-subscribe pattern implementation for actor communication //! -//! # When to use MessageBus vs Broker vs PubSub +//! # When to use `MessageBus` vs `Broker` vs `PubSub` //! -//! - Use **MessageBus** when you want to route messages based on their type without explicit topics. -//! - Use **Broker** when you need hierarchical topics, pattern-based subscriptions, or explicit routing. -//! - Use **PubSub** when you need simple broadcast to all listeners with optional predicate-based filtering. +//! - Use `MessageBus` when you want to route messages based on their type without explicit topics. +//! - Use `Broker` when you need hierarchical topics, pattern-based subscriptions, or explicit routing. +//! - Use `PubSub` when you need simple broadcast to all listeners with optional predicate-based filtering. use std::time::Duration; diff --git a/actors/src/message_bus.rs b/actors/src/message_bus.rs index d6e3487..b613341 100644 --- a/actors/src/message_bus.rs +++ b/actors/src/message_bus.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Provides a type-based message bus for the actor system. //! //! The `message_bus` module implements a type-based publish/subscribe mechanism that allows diff --git a/actors/src/message_queue.rs b/actors/src/message_queue.rs index f52237c..c5d4ce8 100644 --- a/actors/src/message_queue.rs +++ b/actors/src/message_queue.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Provides an AMQP-style message queue system for the actor system. //! //! The `message_queue` module implements a flexible message queue system inspired by AMQP, with diff --git a/actors/src/pool.rs b/actors/src/pool.rs index f3e390d..fc0f78b 100644 --- a/actors/src/pool.rs +++ b/actors/src/pool.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Provides a pool of actors for task distribution and load balancing. //! //! The `pool` module offers the ability to manage a group of actors that work together to process tasks. diff --git a/actors/src/pubsub.rs b/actors/src/pubsub.rs index 9b994e0..84af0ae 100644 --- a/actors/src/pubsub.rs +++ b/actors/src/pubsub.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Provides a publish-subscribe (pubsub) mechanism for actors. //! //! The `pubsub` module allows actors to broadcast messages to multiple subscribers. It offers diff --git a/actors/src/scheduler.rs b/actors/src/scheduler.rs index e1a45a7..c74e6f1 100644 --- a/actors/src/scheduler.rs +++ b/actors/src/scheduler.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Sends messages to actors at scheduled timeouts/intervals. //! //! Its common for actors to need to run code at some interval or after a delay. The [`Scheduler`] actor handles this diff --git a/clippy.toml b/clippy.toml index d3368e2..e4c7547 100644 --- a/clippy.toml +++ b/clippy.toml @@ -1,41 +1,40 @@ # ============================================================ -# Bombay — Elite Clippy Configuration (adopted from nexus, verbatim — card #61) +# Bombay — Elite Clippy Configuration (adopted from nexus — card #61) # -# TEMPORARILY PARKED alongside the relaxed `[workspace.lints.clippy]` bar -# in Cargo.toml. kameo's `src/lib.rs` carries `#![warn(clippy::all)]`, -# which a source attribute keeps active even with the workspace groups set -# to `allow`; this file's `disallowed-*` entries and tightened thresholds -# are what make that re-enabled `clippy::all` bite on verbatim kameo -# (e.g. its `std::sync::Mutex`/`RwLock` use). With them gone, kameo passes -# `clippy::all` cleanly, as it does upstream. +# RESTORED (was parked): pairs with the god-level `[workspace.lints.clippy]` +# wall in Cargo.toml. Legacy/vendored kameo files that fail the bar carry a +# documented per-file `#![allow(..., reason = "…#61")]` quarantine header; +# they are re-linted file-by-file or deleted under M1/M7. NEW code is never +# exempt — it is born under the full bar. # -# TO RESTORE the god-level bar: re-enable the `[workspace.lints.clippy]` -# wall in Cargo.toml AND uncomment the config below. +# DELIBERATE DEVIATION from nexus-verbatim: the `disallowed-types` ban on +# `std::sync::Mutex` / `RwLock` is NOT adopted. That ban encodes a false +# premise — the real rule is "never hold a lock across `.await`", not "never +# use a std mutex". A short synchronous critical section is *correctly* a +# `std::sync`/`parking_lot` mutex; `tokio::sync::Mutex` is for guards held +# across await points. The choice is per-site (see card #52), which a blanket +# type-ban cannot express. Bombay has zero `std::sync::Mutex` in production +# today, so the ban would only forbid a future-correct use. # ============================================================ -# Tests get escape hatches for unwrap/expect (the only mercy) -# allow-unwrap-in-tests = true -# allow-expect-in-tests = true +# Tests get escape hatches for unwrap/expect (the only mercy). +allow-unwrap-in-tests = true +allow-expect-in-tests = true -# 1. BRAIN-CAPACITY LIMITS -# cognitive-complexity-threshold = 9 -# too-many-arguments-threshold = 5 -# too-many-lines-threshold = 80 +# 1. BRAIN-CAPACITY LIMITS (these lints live in pedantic/nursery groups). +cognitive-complexity-threshold = 9 +too-many-arguments-threshold = 5 +too-many-lines-threshold = 80 # 2. BAN DANGEROUS METHODS -# [[disallowed-methods]] -# path = "std::process::exit" -# reason = "Return a `Result` or `ExitCode` from main instead." -# -# [[disallowed-methods]] -# path = "std::thread::spawn" -# reason = "Use `std::thread::scope` or an async runtime like Tokio." +[[disallowed-methods]] +path = "std::process::exit" +reason = "Return a `Result` or `ExitCode` from main instead." -# 3. BAN DANGEROUS TYPES -# [[disallowed-types]] -# path = "std::sync::Mutex" -# reason = "Use `tokio::sync::Mutex` or `parking_lot::Mutex`." -# -# [[disallowed-types]] -# path = "std::sync::RwLock" -# reason = "Use `tokio::sync::RwLock` or `parking_lot::RwLock`." +[[disallowed-methods]] +path = "std::thread::spawn" +reason = "Use `std::thread::scope` or an async runtime like Tokio." + +# 3. BAN DANGEROUS TYPES — intentionally omitted (see header). The +# std::sync::Mutex / RwLock ban is a per-site judgment (card #52), not a +# type-level rule. diff --git a/console/src/main.rs b/console/src/main.rs index 28afab6..4daca2d 100644 --- a/console/src/main.rs +++ b/console/src/main.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use std::{ net::SocketAddr, sync::{Arc, Mutex, atomic::AtomicU64}, diff --git a/console/src/poller.rs b/console/src/poller.rs index 09fe832..7779677 100644 --- a/console/src/poller.rs +++ b/console/src/poller.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use std::{ io::{self, Read, Write}, net::{Shutdown, SocketAddr, TcpStream}, diff --git a/console/src/tui.rs b/console/src/tui.rs index 75e8132..1a78a11 100644 --- a/console/src/tui.rs +++ b/console/src/tui.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use std::cmp::Ordering; use std::collections::{HashMap, HashSet, VecDeque}; use std::io; diff --git a/flake.nix b/flake.nix index 51c5ffc..7d2c5e1 100644 --- a/flake.nix +++ b/flake.nix @@ -103,16 +103,32 @@ with pkgs; { checks = { - # NOTE: the whole-workspace clippy gate is PARKED (removed from - # `nix flake check`) until the surviving kameo core is brought up to - # bombay's god-level lint bar (cards M1/M7). It is red-by-design over - # the ~19k LOC of vendored code — even rustc's `--deny warnings` alone - # trips on unused/dead code there. Re-add it here — mirroring the - # Cargo.toml "TO RESTORE the god-level bar" note — once the tests land: - # bombay-clippy = craneLib.cargoClippy (commonArgs // { - # inherit cargoArtifacts; - # cargoClippyExtraArgs = "--all-targets -- --deny warnings"; - # }); + # The clippy gate, RESTORED as a ratchet (card #61). The god-level bar + # (root Cargo.toml `[workspace.lints]` + clippy.toml) is DENY, so all NEW + # PRODUCTION code is held to it. Vendored kameo lib/bin files that predate + # the bar carry a documented per-file quarantine header + # (`#![allow(..., reason = "…#61")]`), removed file-by-file as the code is + # cleaned or deleted under M1/M7. + # + # Scope = default targets (lib + bins), NOT `--all-targets`: test / + # example / bench code is deliberately held to a lighter bar (consistent + # with clippy.toml's `allow-unwrap-in-tests` / `allow-expect-in-tests`) — + # the ~60 BDD-wiring files trip 2k+ pedantic/nursery style findings whose + # cleanup buys nothing on code whose job is test clarity. Gating the test + # surface is a separate #61-tail decision. `--all-features` still lints the + # `remote`/`console` production modules. + # + # No `-- --deny warnings`: the `deny`-level `[workspace.lints.clippy]` bar + # already fails the build on any god-level violation, while rust-level + # warnings (unused/dead-code in vendored kameo) stay non-blocking until the + # rust-lints tightening tracked in the #61 tail. + bombay-clippy = craneLib.cargoClippy ( + commonArgs + // { + inherit cargoArtifacts; + cargoClippyExtraArgs = "--all-features"; + } + ); bombay-doc = craneLib.cargoDoc (commonArgs // { inherit cargoArtifacts; }); diff --git a/macros/src/derive_actor.rs b/macros/src/derive_actor.rs index ee7cf3e..462a1ee 100644 --- a/macros/src/derive_actor.rs +++ b/macros/src/derive_actor.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use quote::{ToTokens, quote}; use syn::{ DeriveInput, Generics, Ident, LitStr, Token, custom_keyword, diff --git a/macros/src/derive_remote_actor.rs b/macros/src/derive_remote_actor.rs index a0cea55..0c99006 100644 --- a/macros/src/derive_remote_actor.rs +++ b/macros/src/derive_remote_actor.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use quote::{ToTokens, quote}; use syn::{ DeriveInput, Expr, ExprAssign, ExprLit, Generics, Ident, Lit, LitStr, diff --git a/macros/src/derive_reply.rs b/macros/src/derive_reply.rs index e9515ac..4ce80e7 100644 --- a/macros/src/derive_reply.rs +++ b/macros/src/derive_reply.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use quote::{ToTokens, quote}; use syn::{ DeriveInput, Generics, Ident, diff --git a/macros/src/messages.rs b/macros/src/messages.rs index 0848f89..a00a985 100644 --- a/macros/src/messages.rs +++ b/macros/src/messages.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use heck::ToUpperCamelCase; use proc_macro2::{Span, TokenStream}; use quote::{ToTokens, format_ident, quote, quote_spanned}; diff --git a/macros/src/remote_message.rs b/macros/src/remote_message.rs index 6e94cf8..1da6fc7 100644 --- a/macros/src/remote_message.rs +++ b/macros/src/remote_message.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use proc_macro2::TokenStream; use quote::{ToTokens, quote}; use syn::{ diff --git a/src/actor.rs b/src/actor.rs index 1e407f5..0e7f55c 100644 --- a/src/actor.rs +++ b/src/actor.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Core functionality for defining and managing actors in Kameo. //! //! Actors are independent units of computation that run asynchronously, sending and receiving messages. diff --git a/src/actor/actor_ref.rs b/src/actor/actor_ref.rs index bd965f2..22a7779 100644 --- a/src/actor/actor_ref.rs +++ b/src/actor/actor_ref.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use std::{ cell::Cell, cmp, fmt, diff --git a/src/actor/id.rs b/src/actor/id.rs index 5bb2a1d..ce49f6f 100644 --- a/src/actor/id.rs +++ b/src/actor/id.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use std::error; use std::hash::Hash; #[cfg(feature = "remote")] diff --git a/src/actor/kind.rs b/src/actor/kind.rs index 692d781..7ca6b5d 100644 --- a/src/actor/kind.rs +++ b/src/actor/kind.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use std::{ any::Any, collections::{HashMap, HashSet, VecDeque}, diff --git a/src/actor/spawn.rs b/src/actor/spawn.rs index 4def90b..a596f15 100644 --- a/src/actor/spawn.rs +++ b/src/actor/spawn.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use std::{ collections::VecDeque, convert, ops::ControlFlow, panic::AssertUnwindSafe, sync::Arc, thread, }; diff --git a/src/console.rs b/src/console.rs index d1523fe..c714dd5 100644 --- a/src/console.rs +++ b/src/console.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Live monitoring of a running actor system for the bombay console. //! //! Enabling the `console` feature instruments every actor with a lightweight per-instance diff --git a/src/console/demo.rs b/src/console/demo.rs index 5615793..895b7d5 100644 --- a/src/console/demo.rs +++ b/src/console/demo.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! A self-contained, lively actor system used to showcase the console. //! //! [`spawn`] builds a small supervision tree plus a few standalone actors driven with diff --git a/src/console/registry.rs b/src/console/registry.rs index dfafb4e..3d65320 100644 --- a/src/console/registry.rs +++ b/src/console/registry.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Per-actor monitoring state and the global registry the collector reads. //! //! Every actor registers an [`ActorMonitor`] when it is prepared (see diff --git a/src/console/server.rs b/src/console/server.rs index 0761ee2..c3a6eae 100644 --- a/src/console/server.rs +++ b/src/console/server.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! TCP server that streams snapshots to a connected console client. //! //! Serving is explicit and pull-based: the client opens a connection and sends a one-byte diff --git a/src/error.rs b/src/error.rs index 663fb46..52856ba 100644 --- a/src/error.rs +++ b/src/error.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Defines error handling constructs for bombay. //! //! This module centralizes error types used throughout bombay, encapsulating common failure scenarios encountered diff --git a/src/lib.rs b/src/lib.rs index 866d9b8..ac880e1 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,6 +1,8 @@ #![doc = include_str!("../README.md")] #![warn(missing_docs)] -#![warn(clippy::all)] +// `clippy::all` is governed by the workspace `[lints.clippy]` bar (deny) in the +// root Cargo.toml — a source-level `#![warn(clippy::all)]` here would DOWNGRADE +// it crate-wide, so it is intentionally not set (card #61). #![warn(rust_2018_idioms)] #![warn(missing_debug_implementations)] #![deny(unused_must_use)] @@ -15,7 +17,10 @@ pub mod error; // The pre-existing internal items it exposes are not part of the public API, so // `missing_docs` is allowed on the test-only public surface. #[cfg(any(test, feature = "testing"))] -#[allow(missing_docs)] +#[allow( + missing_docs, + reason = "test-only public surface exposed solely for the cucumber wiring" +)] pub mod links; #[cfg(not(any(test, feature = "testing")))] pub(crate) mod links; diff --git a/src/links.rs b/src/links.rs index f8633f7..5034379 100644 --- a/src/links.rs +++ b/src/links.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use std::{ any::Any, collections::HashMap, diff --git a/src/mailbox.rs b/src/mailbox.rs index 4488dd7..4839d3a 100644 --- a/src/mailbox.rs +++ b/src/mailbox.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! A multi-producer, single-consumer queue for sending messages and signals between actors. //! //! An actor mailbox is a channel which stores pending messages and signals for an actor to process sequentially. diff --git a/src/message.rs b/src/message.rs index c5714c3..bd2ecb4 100644 --- a/src/message.rs +++ b/src/message.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Messaging infrastructure for actor communication in Kameo. //! //! This module provides the constructs necessary for handling messages within Kameo, diff --git a/src/remote.rs b/src/remote.rs index e98bb5f..6b2ffe4 100644 --- a/src/remote.rs +++ b/src/remote.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! # Remote Actors in Kameo //! //! The `remote` module in Kameo provides tools for managing distributed actors across nodes, diff --git a/src/remote/_internal.rs b/src/remote/_internal.rs index 62e4c92..4fc8a61 100644 --- a/src/remote/_internal.rs +++ b/src/remote/_internal.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use std::borrow::Cow; use std::time::Duration; diff --git a/src/remote/behaviour.rs b/src/remote/behaviour.rs index 5cb3f47..3ec002a 100644 --- a/src/remote/behaviour.rs +++ b/src/remote/behaviour.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use std::task; use either::Either; diff --git a/src/remote/messaging.rs b/src/remote/messaging.rs index e7c501e..df09fca 100644 --- a/src/remote/messaging.rs +++ b/src/remote/messaging.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Remote message passing infrastructure for actors across the network. //! //! This module provides the core messaging capabilities that enable actors running on different diff --git a/src/remote/registry.rs b/src/remote/registry.rs index 5f704a2..0aa0999 100644 --- a/src/remote/registry.rs +++ b/src/remote/registry.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Actor registration and discovery system for distributed actor networks. //! //! This module implements a distributed registry that allows actors to register themselves diff --git a/src/remote/swarm.rs b/src/remote/swarm.rs index 62a4388..61c233a 100644 --- a/src/remote/swarm.rs +++ b/src/remote/swarm.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use core::task; use std::{ borrow::Cow, diff --git a/src/reply.rs b/src/reply.rs index 1e681ce..7faf667 100644 --- a/src/reply.rs +++ b/src/reply.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Constructs for handling replies and errors in Kameo's actor communication. //! //! This module provides the [`Reply`] trait and associated structures for managing message replies within the actor diff --git a/src/request.rs b/src/request.rs index 7a2d998..b9c2f7c 100644 --- a/src/request.rs +++ b/src/request.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Types for sending requests including messages and queries to actors. use std::time::Duration; diff --git a/src/request/ask.rs b/src/request/ask.rs index cc1151c..377cfe3 100644 --- a/src/request/ask.rs +++ b/src/request/ask.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use futures::{FutureExt, future::BoxFuture}; use std::{ future::{Future, IntoFuture}, diff --git a/src/request/tell.rs b/src/request/tell.rs index d4b50da..f81dbab 100644 --- a/src/request/tell.rs +++ b/src/request/tell.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] use std::{future::IntoFuture, time::Duration}; use futures::{FutureExt, future::BoxFuture}; diff --git a/src/supervision.rs b/src/supervision.rs index a60aee8..bd73729 100644 --- a/src/supervision.rs +++ b/src/supervision.rs @@ -1,3 +1,31 @@ +// --- #61 quarantine (vendored kameo, pre-god-level-bar) ------------------- +// This file predates the workspace god-level clippy bar (root Cargo.toml). +// It is held at the prior standard and is cleaned or deleted file-by-file +// under M1/M7. NEW code is NOT exempt — remove this block when the file is +// brought up to the bar or dropped. De-quarantine checklist: issue #61. +#![allow( + clippy::all, + clippy::pedantic, + clippy::nursery, + clippy::unwrap_used, + clippy::expect_used, + clippy::panic, + clippy::todo, + clippy::unimplemented, + clippy::dbg_macro, + clippy::print_stdout, + clippy::print_stderr, + clippy::disallowed_methods, + clippy::clone_on_ref_ptr, + clippy::as_conversions, + clippy::str_to_string, + clippy::implicit_clone, + clippy::shadow_reuse, + clippy::shadow_same, + clippy::shadow_unrelated, + clippy::allow_attributes_without_reason, + reason = "Vendored kameo predating the #61 god-level clippy bar; held at the prior standard, cleaned or deleted file-by-file under M1/M7. New code is not exempt. See #61." +)] //! Actor supervision for building fault-tolerant systems. //! //! This module provides Erlang-style supervision trees, allowing actors to automatically