# STATUS — phase eval Commit: 0323698 ## Gate Results ### D1 — Arithmetic Command and expected → observed: | Expression | Expected | Observed | |---|---|---| | `python calc.py "2+3*4"` | 14, exit 0 | `14`, exit 0 ✓ | | `python calc.py "(2+3)*4"` | 20, exit 0 | `20`, exit 0 ✓ | | `python calc.py "8-3-2"` | 3 | `3` ✓ (via unittest) | | `python calc.py "-2+5"` | 3 | `3` ✓ (via unittest) | | `python calc.py "2*-3"` | -6 | `-6` ✓ (via unittest) | **D1: PASS** ### D2 — Division / EvalError | Check | Expected | Observed | |---|---|---| | `python calc.py "7/2"` | 3.5, exit 0 | `3.5`, exit 0 ✓ | | `python calc.py "1/0"` | error to stderr, exit non-zero | `error: division by zero` to stderr, exit 1 ✓ | | `EvalError` raised (not `ZeroDivisionError`) | EvalError | confirmed by unittest ✓ | **D2: PASS** ### D3 — Result type | Expression | Expected type | Observed | |---|---|---| | `python calc.py "4/2"` | prints `2` (no `.0`) | `2` ✓ | | `python calc.py "7/2"` | prints `3.5` | `3.5` ✓ | | `calc("4/2")` returns `int` | `isinstance(result, int)` | True ✓ | | `calc("7/2")` returns `float` | `isinstance(result, float)` | True ✓ | **D3: PASS** ### D4 — CLI | Command | Expected | Observed | |---|---|---| | `python calc.py "2+3*4"` | prints `14`, exit 0 | `14`, exit 0 ✓ | | `python calc.py "1 +"` | error to stderr, exit non-zero | `error: unexpected end of input` to stderr, exit 1 ✓ | | `python calc.py "1/0"` | error to stderr, exit non-zero | `error: division by zero` to stderr, exit 1 ✓ | **D4: PASS** ### D5 — Full suite green, no regression Command: `python -m unittest -q` ``` ---------------------------------------------------------------------- Ran 64 tests in 0.001s OK ``` 64 tests: lex (prior) + parse (prior) + eval (new) — all green, 0 failures. **D5: PASS** ## DONE