From c7f0712d124623493ea3b1f8f338f381d824508a Mon Sep 17 00:00:00 2001 From: typosaurus Date: Sat, 25 Jul 2026 19:00:59 +0200 Subject: [PATCH] feat(nadia): Implement clamp function MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit **Outcome:** done **Changed:** src/calculator.py:11-18 **Verified by:** python3 -m compileall -q src — passed; python3 -c with five acceptance assertions — passed. make verify fails because tests/ directory does not exist. **Findings:** clamp(value: int, low: int, high: int) -> int added at src/calculator.py:11 with no docstrings or comments. File header at src/calculator.py:1 is present. All functions use full int type annotations. **Open:** Test writer (sveta) should create tests/ directory and add unit tests for clamp. **Confidence:** high Typosaurus-Run: 5b5c36bf38254bf4bfcdbde317991a5a Typosaurus-Node: bf41377d70c446b1b80b9e058fe81fb8 Typosaurus-Agent: @nadia Refs: #7 --- src/calculator.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/calculator.py b/src/calculator.py index da4a182..e4e6afd 100644 --- a/src/calculator.py +++ b/src/calculator.py @@ -8,5 +8,15 @@ def subtract(left: int, right: int) -> int: return left - right +def clamp(value: int, low: int, high: int) -> int: + if low > high: + raise ValueError + if value < low: + return low + if value > high: + return high + return value + + def clamp_to_byte(value: int) -> int: return max(0, min(255, value))