From 0952e883a0a5721765da03e749a0fb8ec657b59d Mon Sep 17 00:00:00 2001 From: Ed_ Date: Sat, 20 Jun 2026 19:42:08 -0400 Subject: [PATCH] chore: TIER-2 READ conductor/code_styleguides/error_handling.md lines 462-540 (error dropping is NOT a drain) before Phase 2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Re-read for Phase 2: - 'What is NOT a drain point' (the 5 anti-drains) - sys.stderr.write alone - logging.error / logger.exception alone - return default_value - pass (silent) - traceback.print_exc alone - 'Boundary types vs. drain points' (the two concepts are complementary) - 'The Broad-Except Distinction' table (each catch site classified by what it does with the exception) - 'Heuristic D' (the 5 drain point patterns: HTTP response, GUI popup, sys.exit, telemetry, bounded retry) Key principle applied to Phase 2 inventory: a wrapper that does def _x(): return _x_result(...).data is equivalent to 'return default_value' — the structured ErrorInfo is lost. The migration is to have callers use _x_result(...).ok and route the error to a documented drain (which may be re-raising, telemetry, or a caller- specific fallback).