Score over time

Final Results

Andrey finished with 808 pts.

3SJQOV

Complete Extreme Startup (cli) Aug 28, 2026, 16:00 UTC – 16:22 UTC
— share the final standings

Activity

A
Andrey evaluated by Code Quality on Task 17 +25 points
cleanliness 8.5 The code is partitioned cleanly by concern (dispatch, numbers, expressions, three handler modules), with no copy-pasted logic: shared numeric helpers live in one module and are reused across handlers. Naming is descriptive throughout (e.g. `_WORD_OPERATORS`, `extract_int_numbers`, `is_perfect_power`, `_BIN_OPS`), and the `@handler(pattern)` decorator reads naturally. The only minor blemishes: `answer.py` is a one-line shim that re-exports `cli.main` (an extra layer that doesn't pull its weight for a script with one function), and the fallback string `'unknown'` is hard-coded twice (in `dispatch.py` and as the expected test value), but both are small. No dead code, no commented-out blocks, no obvious duplication. `result_json.analysis` was not provided, so no numeric duplication cap is applied; spot-checking the modules I see no duplicated blocks. maintainability 8.0 A newcomer can navigate this: each file has a short top-of-file docstring describing its role, handler bodies are one to a handful of lines, and the dispatcher's `try/except` in `answer()` is a sensible safety net (one failing handler doesn't take down the whole CLI). Magic values are mostly named (the Scrabble letter groups are table-driven, the Fibonacci ordinal off-by-one has a comment, operator precedence is delegated to Python's parser rather than hand-rolled). The two real defects: (1) the `@handler` registration is a *side effect of import*, which works but is a sharp edge — `__init__.py` mitigates it with explicit imports, but a newcomer reading `handlers_numeric.py` in isolation has no obvious cue that decorating the function registers it globally. (2) `cli.main()` does no validation of `sys.argv` — passing no args gives a silent empty question and prints 'unknown', which is fine here, but the contract isn't enforced. Function lengths are short (longest is the `anagram` handler at ~10 lines), nesting is shallow, and error handling at the AST-walker boundary is appropriately tight. `test.sh` has no `set -e`-style failure-aggregation problem (it tracks `fail` correctly) and `test_answer.py` gives a clear per-case ok/FAIL line.
04:22 PM +22m 07s
A
Andrey evaluated by Test Quality on Task 17 +23 points
tests 7.5 Two-layer test design (test.sh for CLI-contract end-to-end, test_answer.py for in-process unit). 31 explicit assertion cases in test_answer.py covering nearly every handler with concrete expected values (arithmetic precedence, decimal result, filtered primes, square-and-cube list, ordinal Fibonacci at 1/2/19, anagram with multiple candidates, six Scrabble words, fallback). test.sh exercises the actual subprocess including the tricky trailing `-q` placeholder override. Coverage is honest: no skipped/commented tests, assertions are behavioral not tautological. Gaps: ZeroDivisionError path in arithmetic and is_perfect_power rounding edges are implemented but untested; no negative-input numeric tests; anagram with no matching candidate (the fallback branch inside the handler) isn't exercised at the unit level. Not a 10 because the few untested error paths in numbers.py/expressions.py would let regressions in those branches ship silently.
04:22 PM +21m 40s
A
Andrey started working on Task 17

Code review — the craft of your solution

04:16 PM +15m 44s
A
Andrey implemented Task 16

+30 points

04:16 PM +15m 37s
A
Andrey started working on Task 16

Final integration - mixed question batch

04:16 PM +15m 36s
A
Andrey implemented Task 15

+10 points

04:16 PM +15m 32s
A
Andrey started working on Task 15

General knowledge question - fixed trivia cards

04:15 PM +14m 51s
A
Andrey implemented Task 14

+10 points

04:15 PM +14m 50s
A
Andrey started working on Task 14

Scrabble question - what is the english scrabble score of X

04:14 PM +14m 10s
A
Andrey implemented Task 13

+10 points

04:14 PM +14m 06s
A
Andrey started working on Task 13

Anagram question - which word is an anagram of X

04:14 PM +13m 26s
A
Andrey implemented Task 12

+50 points

04:14 PM +13m 25s
A
Andrey started working on Task 12

Fibonacci question - what is the Nth number in the Fibonacci sequence

04:13 PM +12m 44s
A
Andrey implemented Task 11

+60 points

04:13 PM +12m 43s
A
Andrey started working on Task 11

Primes question - which of the following numbers are primes

04:12 PM +12m 02s
A
Andrey implemented Task 10

+60 points

04:12 PM +12m 01s
A
Andrey started working on Task 10

Square-and-Cube question - which numbers are both a square and a cube

04:11 PM +10m 30s
A
Andrey implemented Task 9

+60 points

04:11 PM +10m 29s
A
Andrey started working on Task 9

Addition-Multiplication question - what is X plus Y multiplied by Z

04:11 PM +10m 29s
A
Andrey implemented Task 8

+50 points

04:11 PM +10m 28s
A
Andrey started working on Task 8

Multiplication-Addition question - what is X multiplied by Y plus Z

04:09 PM +8m 57s
A
Andrey implemented Task 7

+30 points

04:09 PM +8m 56s
A
Andrey started working on Task 7

Addition-Addition question - what is X plus Y plus Z

04:09 PM +8m 56s
A
Andrey implemented Task 6

+20 points

04:09 PM +8m 55s
A
Andrey started working on Task 6

Power question - what is X to the power of Y

04:08 PM +8m 14s
A
Andrey implemented Task 5

+40 points

04:08 PM +8m 13s
A
Andrey started working on Task 5

Maximum question - which of the following numbers is the largest

04:08 PM +7m 33s
A
Andrey implemented Task 4

+10 points

04:08 PM +7m 32s
A
Andrey started working on Task 4

Multiplication question - what is X multiplied by Y

04:08 PM +7m 32s
A
Andrey implemented Task 3

+10 points

04:08 PM +7m 31s
A
Andrey started working on Task 3

Subtraction question - what is X minus Y

04:08 PM +7m 31s
A
Andrey implemented Task 2

+10 points

04:08 PM +7m 30s
A
Andrey started working on Task 2

Addition question - what is X plus Y

04:07 PM +6m 49s
A
Andrey implemented Task 1

+10 points

04:07 PM +6m 48s
A
Andrey started working on Task 1

Warmup question - what is your name

04:05 PM +5m 17s
A
Andrey implemented Task 0

+10 points

04:05 PM +5m 12s
A
Andrey started working on Task 0

Set up project structure and answer.sh contract

04:00 PM +0s