Files
agent-orchestrator-benchmark/calculators/builder-solo/run-01/machine-docs/JOURNAL-eval.md

774 B
Raw Blame History

JOURNAL — phase eval

Session 1

Built:

  • calc/evaluator.pyEvalError, evaluate(node) -> int | float walking Num/BinOp/Unary AST nodes; true division; raises EvalError on divide-by-zero.
  • calc/test_evaluator.py — 18 unittest cases covering D1D3: arithmetic, division, EvalError, result types.
  • calc.py — top-level CLI; _fmt() converts whole-valued floats to int display; catches LexError/ParseError/EvalError and prints to stderr with exit code 1.

Verification results:

  • All 46 tests pass (python -m unittest -q).
  • All 6 CLI spot-checks pass (2+3*4→14, (2+3)*4→20, 7/2→3.5, 4/2→2, 1/0→error/exit1, 1+→error/exit1).
  • stderr isolation confirmed (error messages go to stderr only, no traceback).

Commit: c5e74ed