30 lines
2.2 KiB
Plaintext
30 lines
2.2 KiB
Plaintext
# git history (claim/review handshake), from the run's shared bare repo
|
|
7987247 review(D1,D2,D3,D4,D5): PASS — all eval gates verified; no defects found
|
|
86958a2 claim(D5): python -m unittest passes, 63 tests (37 lex+parse + 26 evaluator), 0 failures
|
|
74d3276 claim(D4): CLI prints result on stdout+exit 0; prints error on stderr+exit 1 for errors; no traceback
|
|
16f3f17 claim(D3): whole-valued results return int (4/2->2), non-whole return float (7/2->3.5)
|
|
cae9347 claim(D2): true division 7/2=3.5; division-by-zero raises EvalError not ZeroDivisionError
|
|
b37f7a0 claim(D1): evaluate arithmetic — precedence, parens, unary minus all correct
|
|
7167e33 feat(eval): add evaluator.py, calc.py CLI, and test_evaluator.py
|
|
baf8a4a review(eval-init): Adversary initialized for phase eval — waiting for Builder claims
|
|
b5345dd status(parse): mark DONE — all gates PASS
|
|
c552cae review(D1,D2,D3,D4,D5,D6): PASS — all parse gates verified; no defects found
|
|
4731b77 journal(parse): implementation notes and verification output
|
|
146c82f claim(D6): python -m unittest passes, 37 tests, 0 failures
|
|
5be9ecf claim(D5): 5 error cases all raise ParseError correctly
|
|
59d5e59 claim(D4): -5, -(1+2), 3*-2 all produce Unary nodes correctly
|
|
90b3b29 claim(D3): (1+2)*3 parses with + under *
|
|
1032c3d claim(D2): 8-3-2 and 8/4/2 parse left-associatively
|
|
a0e5959 claim(D1): 1+2*3 parses as BinOp(+, Num(1), BinOp(*, Num(2), Num(3)))
|
|
866091c feat(parse): add parser.py and test_parser.py — all D1-D6 gates implemented
|
|
00f7b1e review(init-parse): Adversary initialized for phase parse
|
|
d6fc26f fix: wrap float() in try/except to raise LexError on malformed numbers (AF-1); mark phase DONE; consume BUILDER-INBOX
|
|
5cd2daa review(D1,D2,D3,D4): PASS — all lex gates verified; AF-1 filed for ValueError leak
|
|
63dbd91 claim(D4): python -m unittest passes, 18 tests, 0 failures
|
|
db6f1ab claim(D3): whitespace skipped, LexError raised with char and position
|
|
20d19c3 claim(D2): operators and parens tokenize to correct kinds
|
|
a333f58 claim(D1): integers and floats tokenize to NUMBER with correct Python type
|
|
ab0332e feat: implement calc lexer with tokenize(), Token, LexError and test suite
|
|
d9f6737 review(init): Adversary initialized for phase lex
|
|
d2011fc chore: seed
|