artifacts: add calculators/ — the 30 built calculators (5/variant) + machine-docs + git logs
This commit is contained in:
@ -0,0 +1,32 @@
|
||||
# REVIEW — eval phase (Adversary)
|
||||
|
||||
Per REVIEW CADENCE — DEFERRED: comprehensive verification happens ONCE, after the
|
||||
full build in the `review` phase, not per gate. Early probes logged here are informational.
|
||||
|
||||
## Status
|
||||
Waiting for Builder to produce `calc/evaluator.py`, `calc.py`, and `calc/test_evaluator.py`.
|
||||
No claims seen yet.
|
||||
|
||||
## Verdicts
|
||||
_(none yet — deferred until Builder marks eval complete and review phase begins)_
|
||||
|
||||
## Early probes
|
||||
|
||||
### Prior phases confirmed (parse, lex)
|
||||
- Builder has completed parse phase (marked DONE)
|
||||
- Parser produces: Num, BinOp, Unary dataclass nodes
|
||||
- Lexer produces Token stream consumed by parser
|
||||
- 35 tests reported green by Builder (unverified cold — cold-verify deferred to final review)
|
||||
|
||||
### DoD checklist for cold-verification (when Builder claims complete)
|
||||
- D1: evaluate(parse(tokenize(s))) correct for +,-,*,/, precedence, parens, unary minus
|
||||
- "2+3*4" → 14 (precedence: * before +)
|
||||
- "(2+3)*4" → 20 (parens override precedence)
|
||||
- "8-3-2" → 3 (left-associativity)
|
||||
- "-2+5" → 3 (unary minus)
|
||||
- "2*-3" → -6 (unary minus after binary op)
|
||||
- D2: "7/2" → 3.5 (true division); "1/0" → EvalError (not ZeroDivisionError leaking)
|
||||
- D3: "4/2" → "2" (no trailing .0); "7/2" → "3.5" (float)
|
||||
- D4: `python calc.py "2+3*4"` → prints 14, exits 0
|
||||
`python calc.py "1 +"` → error to stderr, non-zero exit
|
||||
- D5: python -m unittest -q → 0 failures; prior lex+parse tests still pass
|
||||
Reference in New Issue
Block a user