chore: strip audit-ticket prefixes from code comments
Drops the ~60 ticket-prefix comments (CRIT-N, HIGH-N, MED-N, LOW-N, L-N, M-N, AUDIT-N, PLUTUS-N, "audit fix (date):", "Phase N" labels, "Adversarial-review fix:") that had accumulated in inline + doc comments over several audit cycles. Where the surrounding prose still carried useful WHY context it gets kept and tightened; where the ticket WAS the comment it gets dropped entirely. No logic, no renames, no behavior change. Audit history lives in commit messages and the audits/ tree where it belongs — eternal comments don't need to mirror it. Net 138 LOC shorter. 253 tests pass, no new clippy or fmt warnings.
This commit is contained in:
parent
4e4becd0bb
commit
b69d891a2b
12 changed files with 201 additions and 339 deletions
|
|
@ -3,20 +3,8 @@
|
|||
//! Speaks MCP over stdio. Any MCP client (e.g. Claude Code)
|
||||
//! launches this as a subprocess and gets a wallet's worth of tools.
|
||||
//!
|
||||
//! ## Phase 1 tools (target — server wiring lands in 1.7)
|
||||
//!
|
||||
//! - `wallet.address` — derived CIP-1852 base address
|
||||
//! - `wallet.balance` — ADA + native-asset balance via chain backend
|
||||
//! - `wallet.utxos` — list UTXOs at the wallet address
|
||||
//! - `wallet.network` — configured network selector
|
||||
//!
|
||||
//! ## Phase 2-4 tools
|
||||
//!
|
||||
//! See `ROADMAP.md` at the repo root.
|
||||
//!
|
||||
//! ## Logging
|
||||
//!
|
||||
//! Stderr only — stdout is the MCP transport, must stay clean.
|
||||
//! Logging: stderr only — stdout is the MCP transport and must stay
|
||||
//! clean.
|
||||
|
||||
mod bootstrap;
|
||||
mod config;
|
||||
|
|
@ -60,17 +48,12 @@ async fn run() -> Result<()> {
|
|||
"aldabra starting"
|
||||
);
|
||||
|
||||
// CRIT-2 audit fix (2026-05-12): make sure the sandbox root exists
|
||||
// and is daemon-only readable. Tools use canonicalize() against
|
||||
// this dir to validate `*_path` args, which requires the dir to
|
||||
// be a real directory on disk. Idempotent: create_dir_all is a
|
||||
// no-op when the dir already exists.
|
||||
//
|
||||
// Adversarial-review fix (2026-05-12): chmod is `?`'d not swallowed.
|
||||
// If the filesystem refuses chmod (noexec, selinux, broken mount),
|
||||
// we'd otherwise silently fall back to the umask default (commonly
|
||||
// 0o755) — making the security comment "daemon-only readable" a
|
||||
// lie. Fail loudly instead so the operator sees + investigates.
|
||||
// Make sure the sandbox root exists and is daemon-only readable.
|
||||
// Tools canonicalize() against this dir to validate `*_path`
|
||||
// args, which requires the dir to be a real directory on disk.
|
||||
// Chmod is `?`'d not swallowed — if the filesystem refuses it
|
||||
// (noexec, selinux, broken mount), fail loudly instead of
|
||||
// silently falling back to umask 0o755.
|
||||
if !cfg.safe_reads_root.exists() {
|
||||
std::fs::create_dir_all(&cfg.safe_reads_root).map_err(|e| {
|
||||
anyhow::anyhow!(
|
||||
|
|
@ -117,8 +100,8 @@ async fn run() -> Result<()> {
|
|||
let xprv_path = bootstrap::root_xprv_path(&cfg.data_dir);
|
||||
let any_key_exists = mnemonic_path.exists() || xprv_path.exists();
|
||||
|
||||
// L-2 audit fix: scope `root` to a block so its XPrv drops + wipes
|
||||
// as soon as we've extracted the keys we need.
|
||||
// Scope `root` to a block so its XPrv drops + wipes as soon as
|
||||
// we've extracted the keys we need.
|
||||
let (payment_key, stake_key, address) = {
|
||||
let root = if bootstrap_new {
|
||||
bootstrap::generate_and_save_root_key(&cfg.data_dir)?
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue