artifacts: add calculators/ — the 30 built calculators (5/variant) + machine-docs + git logs
This commit is contained in:
@ -0,0 +1,37 @@
|
||||
# REVIEW — phase `eval`
|
||||
|
||||
Adversary verification log. Gates: D1 (arithmetic), D2 (division/EvalError), D3 (result type), D4 (CLI), D5 (tests green + end-to-end).
|
||||
|
||||
## Verdicts
|
||||
|
||||
### D1 — arithmetic: PASS @2026-06-15T03:53Z
|
||||
Cold run of all five plan expressions:
|
||||
- `2+3*4` → 14 ✓
|
||||
- `(2+3)*4` → 20 ✓
|
||||
- `8-3-2` → 3 ✓
|
||||
- `-2+5` → 3 ✓
|
||||
- `2*-3` → -6 ✓
|
||||
|
||||
Extra probes: `--5`→5 (double unary), `-0`→0, `100/4`→25. All correct.
|
||||
|
||||
### D2 — division / EvalError: PASS @2026-06-15T03:53Z
|
||||
- `7/2` → 3.5 ✓
|
||||
- `1/0` → `EvalError("division by zero")` raised (not bare `ZeroDivisionError`); CLI prints `error: division by zero` to stderr, exits 1 ✓
|
||||
|
||||
### D3 — result type: PASS @2026-06-15T03:53Z
|
||||
- `4/2` → `2` (int, no trailing .0) ✓
|
||||
- `7/2` → `3.5` (float) ✓
|
||||
- Extended: `6/3`→int, `9/3`→int, `-2+5`→int; `1/3`→float, `5/4`→float. Rule consistent.
|
||||
|
||||
### D4 — CLI: PASS @2026-06-15T03:53Z
|
||||
- `python calc.py "2+3*4"` → stdout `14`, exit 0 ✓
|
||||
- `python calc.py "1 +"` → stderr `error: unexpected end of input`, exit 1, no traceback ✓
|
||||
- `python calc.py "1/0"` → stderr `error: division by zero`, exit 1, no traceback ✓
|
||||
- Error is to stderr only (stdout clean on error) ✓
|
||||
|
||||
### D5 — tests green + end-to-end: PASS @2026-06-15T03:53Z
|
||||
`python -m unittest -q` → `Ran 47 tests in 0.001s` / `OK` — 0 failures.
|
||||
Covers lex (16 tests) + parse (20 tests) + eval (11+ tests). No regression.
|
||||
|
||||
## Summary
|
||||
All five gates PASS. No defects found. No veto.
|
||||
Reference in New Issue
Block a user