loop-benchmarking

Controlled experiments across agentic coding configurations. Same task, one variable, what actually works.
git clone https://git.shiptheloop.com/loop-benchmarking.git
Log | Files | Refs | README

commit 160f5b52cb5323c4a5ede4c8185ff6313047aa65
parent 80e2595b733117733120e992e2e6ed110432b16d
Author: Brian Graham <brian@buildingbetterteams.de>
Date:   Mon,  6 Apr 2026 00:20:02 +0200

Add 2 new runs (67 total)

159 valid runs: 57 haiku, 51 sonnet, 51 opus across 55 cells.
0 bad runs, 0 without HTML. Scores now range 28%-91% after
normalization fix. Analysis re-run for all 8 metrics.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

Diffstat:
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json | 2+-
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json | 2+-
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json | 2+-
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json | 18+++++++++---------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json | 14+++++++-------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json | 14+++++++-------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json | 16++++++++--------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json | 18+++++++++---------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json | 14+++++++-------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=detailed_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/report/jscpd-report.json | 2+-
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run1/report/jscpd-report.json | 2+-
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run2/report/jscpd-report.json | 2+-
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run3/report/jscpd-report.json | 2+-
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/report/jscpd-report.json | 2+-
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json | 2+-
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json | 2+-
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json | 2+-
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json | 18+++++++++---------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json | 14+++++++-------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json | 18+++++++++---------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json | 14+++++++-------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json | 18+++++++++---------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json | 16++++++++--------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json | 14+++++++-------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json | 14+++++++-------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json | 14+++++++-------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json | 16++++++++--------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json | 16++++++++--------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json | 14+++++++-------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json | 74+++++++++++++++++++++++++++++++++++++-------------------------------------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json | 16++++++++--------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json | 16++++++++--------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json | 14+++++++-------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run1/report/jscpd-report.json | 14+++++++-------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run2/report/jscpd-report.json | 18+++++++++---------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run3/report/jscpd-report.json | 18+++++++++---------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run1/report/jscpd-report.json | 2+-
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run2/report/jscpd-report.json | 16++++++++--------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run3/report/jscpd-report.json | 16++++++++--------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/report/jscpd-report.json | 50+++++++++++++++++++++++++-------------------------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run2/report/jscpd-report.json | 14+++++++-------
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json | 2+-
Mdashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json | 18+++++++++---------
Mresults/analysis/main_effects_code_quality.json | 248++++++++++++++++++++++++++++++++++++++++----------------------------------------
Mresults/analysis/main_effects_gameplay.json | 270++++++++++++++++++++++++++++++++++++++++----------------------------------------
Mresults/analysis/main_effects_score.json | 272++++++++++++++++++++++++++++++++++++++++----------------------------------------
Mresults/analysis/main_effects_structural.json | 292++++++++++++++++++++++++++++++++++++++++----------------------------------------
Mresults/analysis/main_effects_transcript.json | 268++++++++++++++++++++++++++++++++++++++++----------------------------------------
Mresults/index.jsonl | 51+++++++++++++++++++++++++--------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json | 16++++++++--------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json | 16++++++++--------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json | 22+++++++++++-----------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json | 132++-----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json | 22+++++++++++-----------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json | 138+++----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json | 36++++++++++++++++--------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json | 4++--
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json | 2+-
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json | 4++--
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json | 2+-
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json | 4++--
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json | 2+-
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json | 137+++----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json | 31++++++++++++++-----------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json | 137+++----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json | 41+++++++++++++++++++----------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=detailed_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/eval_results.json | 137+++----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=detailed_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/gameplay-bot-report.json | 57+++++++++++++++++++++++++++------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run1/eval_results.json | 136+++----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run1/gameplay-bot-report.json | 48+++++++++++++++++++++++-------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run2/eval_results.json | 137+++----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run2/gameplay-bot-report.json | 45+++++++++++++++++++++------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run3/eval_results.json | 2+-
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run3/gameplay-bot-report.json | 2+-
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/gameplay-bot-report.json | 43++++++++++++++++++++-----------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json | 135++-----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json | 55++++++++++++++++++++++++++-----------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json | 123++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json | 57++++++++++++++++++++++++++-------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json | 140+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json | 32++++++++++++++++----------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json | 85++++++++++++++++++++++++++++++++++++++-----------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json | 77+++++++++++++++++++++++++++++++++++++----------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json | 76++++++++++++++++++++++++++++++++++++----------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json | 68++++++++++++++++++++++++++++++++------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json | 145+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json | 139+++----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json | 6+++---
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json | 52++++++++++++++++++++++++++--------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json | 38+++++++++++++++++++-------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json | 22+++++++++++-----------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json | 14+++++++-------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json | 137+++----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json | 25+++++++++++--------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json | 44++++++++++++++++++++++----------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json | 36++++++++++++++++++------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json | 137+++----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json | 29+++++++++++++----------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json | 34+++++++++++++++++-----------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json | 20++++++++++----------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json | 138++++---------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json | 40++++++++++++++++++++--------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json | 141++++---------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json | 43++++++++++++++++++++-----------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json | 142+++++--------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json | 34+++++++++++++++++-----------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json | 136+++----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json | 46++++++++++++++++++++++------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json | 2+-
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json | 134++-----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json | 36+++++++++++++++++-------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json | 136+++----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json | 34++++++++++++++++------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json | 136+++----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json | 50++++++++++++++++++++++++--------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run1/eval_results.json | 137+++----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run1/gameplay-bot-report.json | 64++++++++++++++++++++++++++++------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run2/eval_results.json | 130++-----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run2/gameplay-bot-report.json | 74++++++++++++++++++++++++++++++++++++++------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run3/eval_results.json | 6+++---
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run3/gameplay-bot-report.json | 2+-
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run1/eval_results.json | 137+++----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run1/gameplay-bot-report.json | 84++++++++++++++++++++++++++++++++++++-------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run2/eval_results.json | 136+++----------------------------------------------------------------------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run2/gameplay-bot-report.json | 30++++++++++++++----------------
Mresults/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run3/eval_results.json | 2+-
126 files changed, 2301 insertions(+), 4819 deletions(-)

diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:45:21.530Z", + "detectionDate": "2026-04-05T22:06:18.877Z", "formats": { "json": { "sources": { diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:45:21.410Z", + "detectionDate": "2026-04-05T22:06:18.851Z", "formats": { "json": { "sources": { diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:45:21.743Z", + "detectionDate": "2026-04-05T22:06:18.836Z", "formats": { "json": { "sources": { diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-05T21:45:21.955Z", + "detectionDate": "2026-04-05T22:06:18.839Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 192, - "tokens": 1190, + "lines": 204, + "tokens": 1269, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -30,8 +30,8 @@ } }, "total": { - "lines": 211, - "tokens": 1308, + "lines": 223, + "tokens": 1387, "sources": 2, "clones": 0, "duplicatedLines": 0, @@ -152,14 +152,14 @@ } }, "total": { - "lines": 1226, - "tokens": 12092, + "lines": 1238, + "tokens": 12171, "sources": 7, "clones": 1, "duplicatedLines": 10, "duplicatedTokens": 194, - "percentage": 0.82, - "percentageTokens": 1.6, + "percentage": 0.81, + "percentageTokens": 1.59, "newDuplicatedLines": 0, "newClones": 0 } diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-05T21:47:17.779Z", + "detectionDate": "2026-04-05T22:09:05.343Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 75, - "tokens": 465, + "lines": 87, + "tokens": 544, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -30,8 +30,8 @@ } }, "total": { - "lines": 94, - "tokens": 583, + "lines": 106, + "tokens": 662, "sources": 2, "clones": 0, "duplicatedLines": 0, @@ -72,8 +72,8 @@ } }, "total": { - "lines": 808, - "tokens": 5849, + "lines": 820, + "tokens": 5928, "sources": 3, "clones": 0, "duplicatedLines": 0, diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-05T21:47:27.740Z", + "detectionDate": "2026-04-05T22:09:27.215Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 115, - "tokens": 720, + "lines": 127, + "tokens": 799, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -30,8 +30,8 @@ } }, "total": { - "lines": 134, - "tokens": 838, + "lines": 146, + "tokens": 917, "sources": 2, "clones": 0, "duplicatedLines": 0, @@ -112,8 +112,8 @@ } }, "total": { - "lines": 927, - "tokens": 8851, + "lines": 939, + "tokens": 8930, "sources": 5, "clones": 0, "duplicatedLines": 0, diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-05T21:47:37.290Z", + "detectionDate": "2026-04-05T22:09:27.188Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 168, - "tokens": 1032, + "lines": 180, + "tokens": 1111, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -30,8 +30,8 @@ } }, "total": { - "lines": 187, - "tokens": 1150, + "lines": 199, + "tokens": 1229, "sources": 2, "clones": 0, "duplicatedLines": 0, @@ -128,14 +128,14 @@ } }, "total": { - "lines": 993, - "tokens": 8054, + "lines": 1005, + "tokens": 8133, "sources": 5, "clones": 1, "duplicatedLines": 5, "duplicatedTokens": 119, "percentage": 0.5, - "percentageTokens": 1.48, + "percentageTokens": 1.46, "newDuplicatedLines": 0, "newClones": 0 } diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-05T21:47:41.299Z", + "detectionDate": "2026-04-05T22:09:27.209Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 75, - "tokens": 465, + "lines": 136, + "tokens": 838, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -30,8 +30,8 @@ } }, "total": { - "lines": 94, - "tokens": 583, + "lines": 155, + "tokens": 956, "sources": 2, "clones": 0, "duplicatedLines": 0, @@ -84,14 +84,14 @@ } }, "total": { - "lines": 1870, - "tokens": 15793, + "lines": 1931, + "tokens": 16166, "sources": 4, "clones": 1, "duplicatedLines": 888, "duplicatedTokens": 7605, - "percentage": 47.49, - "percentageTokens": 48.15, + "percentage": 45.99, + "percentageTokens": 47.04, "newDuplicatedLines": 0, "newClones": 0 } diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-05T21:47:46.780Z", + "detectionDate": "2026-04-05T22:09:39.251Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 75, - "tokens": 465, + "lines": 87, + "tokens": 544, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -30,8 +30,8 @@ } }, "total": { - "lines": 94, - "tokens": 583, + "lines": 106, + "tokens": 662, "sources": 2, "clones": 0, "duplicatedLines": 0, @@ -72,8 +72,8 @@ } }, "total": { - "lines": 641, - "tokens": 4502, + "lines": 653, + "tokens": 4581, "sources": 3, "clones": 0, "duplicatedLines": 0, diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=detailed_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=detailed_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:48:16.965Z", + "detectionDate": "2026-04-05T22:09:53.101Z", "formats": { "json": { "sources": { diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run1/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:48:24.899Z", + "detectionDate": "2026-04-05T22:09:53.102Z", "formats": { "json": { "sources": { diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run2/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run2/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:49:25.841Z", + "detectionDate": "2026-04-05T22:13:07.951Z", "formats": { "json": { "sources": { diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run3/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run3/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:50:05.084Z", + "detectionDate": "2026-04-05T22:13:07.981Z", "formats": { "json": { "sources": { diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:50:16.389Z", + "detectionDate": "2026-04-05T22:13:17.194Z", "formats": { "typescript": { "sources": { diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:50:18.404Z", + "detectionDate": "2026-04-05T22:13:18.771Z", "formats": { "json": { "sources": { diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:50:23.907Z", + "detectionDate": "2026-04-05T22:13:52.969Z", "formats": { "typescript": { "sources": { diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:51:23.260Z", + "detectionDate": "2026-04-05T22:15:03.267Z", "formats": { "json": { "sources": { diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:53:14.686Z", + "detectionDate": "2026-04-05T22:15:48.664Z", "formats": { "typescript": { "sources": { @@ -33,8 +33,8 @@ "json": { "sources": { "report/jscpd-report.json": { - "lines": 288, - "tokens": 1753, + "lines": 300, + "tokens": 1832, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -70,8 +70,8 @@ } }, "total": { - "lines": 320, - "tokens": 1961, + "lines": 332, + "tokens": 2040, "sources": 3, "clones": 0, "duplicatedLines": 0, @@ -140,14 +140,14 @@ } }, "total": { - "lines": 1510, - "tokens": 14553, + "lines": 1522, + "tokens": 14632, "sources": 6, "clones": 4, "duplicatedLines": 24, "duplicatedTokens": 483, - "percentage": 1.59, - "percentageTokens": 3.32, + "percentage": 1.58, + "percentageTokens": 3.3, "newDuplicatedLines": 0, "newClones": 0 } diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:53:23.529Z", + "detectionDate": "2026-04-05T22:17:18.460Z", "formats": { "typescript": { "sources": { @@ -33,8 +33,8 @@ "json": { "sources": { "report/jscpd-report.json": { - "lines": 180, - "tokens": 1111, + "lines": 192, + "tokens": 1190, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -70,8 +70,8 @@ } }, "total": { - "lines": 213, - "tokens": 1326, + "lines": 225, + "tokens": 1405, "sources": 3, "clones": 0, "duplicatedLines": 0, @@ -140,8 +140,8 @@ } }, "total": { - "lines": 1153, - "tokens": 10979, + "lines": 1165, + "tokens": 11058, "sources": 6, "clones": 1, "duplicatedLines": 5, diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:53:27.520Z", + "detectionDate": "2026-04-05T22:17:19.495Z", "formats": { "typescript": { "sources": { @@ -33,8 +33,8 @@ "json": { "sources": { "report/jscpd-report.json": { - "lines": 360, - "tokens": 2181, + "lines": 372, + "tokens": 2260, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -70,8 +70,8 @@ } }, "total": { - "lines": 393, - "tokens": 2393, + "lines": 405, + "tokens": 2472, "sources": 3, "clones": 0, "duplicatedLines": 0, @@ -140,14 +140,14 @@ } }, "total": { - "lines": 1916, - "tokens": 19973, + "lines": 1928, + "tokens": 20052, "sources": 6, "clones": 6, "duplicatedLines": 32, "duplicatedTokens": 612, - "percentage": 1.67, - "percentageTokens": 3.06, + "percentage": 1.66, + "percentageTokens": 3.05, "newDuplicatedLines": 0, "newClones": 0 } diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:53:29.653Z", + "detectionDate": "2026-04-05T22:17:18.274Z", "formats": { "typescript": { "sources": { @@ -33,8 +33,8 @@ "json": { "sources": { "report/jscpd-report.json": { - "lines": 143, - "tokens": 896, + "lines": 155, + "tokens": 975, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -70,8 +70,8 @@ } }, "total": { - "lines": 176, - "tokens": 1108, + "lines": 188, + "tokens": 1187, "sources": 3, "clones": 0, "duplicatedLines": 0, @@ -140,8 +140,8 @@ } }, "total": { - "lines": 1487, - "tokens": 14811, + "lines": 1499, + "tokens": 14890, "sources": 6, "clones": 0, "duplicatedLines": 0, diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-05T21:55:17.446Z", + "detectionDate": "2026-04-05T22:18:37.874Z", "formats": { "typescript": { "sources": { @@ -33,8 +33,8 @@ "json": { "sources": { "report/jscpd-report.json": { - "lines": 216, - "tokens": 1325, + "lines": 228, + "tokens": 1404, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -70,8 +70,8 @@ } }, "total": { - "lines": 252, - "tokens": 1560, + "lines": 264, + "tokens": 1639, "sources": 3, "clones": 0, "duplicatedLines": 0, @@ -140,14 +140,14 @@ } }, "total": { - "lines": 1972, - "tokens": 19784, + "lines": 1984, + "tokens": 19863, "sources": 6, "clones": 2, "duplicatedLines": 12, "duplicatedTokens": 269, - "percentage": 0.61, - "percentageTokens": 1.36, + "percentage": 0.6, + "percentageTokens": 1.35, "newDuplicatedLines": 0, "newClones": 0 } diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-04T20:37:31.197Z", + "detectionDate": "2026-04-05T22:05:15.794Z", "formats": { "typescript": { "sources": { @@ -33,8 +33,8 @@ "json": { "sources": { "report/jscpd-report.json": { - "lines": 428, - "tokens": 2658, + "lines": 440, + "tokens": 2737, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -70,8 +70,8 @@ } }, "total": { - "lines": 459, - "tokens": 2857, + "lines": 471, + "tokens": 2936, "sources": 3, "clones": 0, "duplicatedLines": 0, @@ -280,14 +280,14 @@ } }, "total": { - "lines": 3461, - "tokens": 26261, + "lines": 3473, + "tokens": 26340, "sources": 15, "clones": 4, "duplicatedLines": 23, "duplicatedTokens": 314, "percentage": 0.66, - "percentageTokens": 1.2, + "percentageTokens": 1.19, "newDuplicatedLines": 0, "newClones": 0 } diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-04T20:37:38.993Z", + "detectionDate": "2026-04-05T22:05:30.627Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 376, - "tokens": 2347, + "lines": 388, + "tokens": 2426, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -42,8 +42,8 @@ } }, "total": { - "lines": 413, - "tokens": 2589, + "lines": 425, + "tokens": 2668, "sources": 3, "clones": 0, "duplicatedLines": 0, @@ -264,8 +264,8 @@ } }, "total": { - "lines": 3149, - "tokens": 26433, + "lines": 3161, + "tokens": 26512, "sources": 15, "clones": 3, "duplicatedLines": 16, diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-04T20:38:22.550Z", + "detectionDate": "2026-04-05T22:05:41.209Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 271, - "tokens": 1722, + "lines": 283, + "tokens": 1801, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -30,8 +30,8 @@ } }, "total": { - "lines": 292, - "tokens": 1854, + "lines": 304, + "tokens": 1933, "sources": 2, "clones": 0, "duplicatedLines": 0, @@ -268,8 +268,8 @@ } }, "total": { - "lines": 3594, - "tokens": 29546, + "lines": 3606, + "tokens": 29625, "sources": 14, "clones": 0, "duplicatedLines": 0, diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-04T20:39:13.396Z", + "detectionDate": "2026-04-05T22:07:18.198Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 404, - "tokens": 2523, + "lines": 416, + "tokens": 2602, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -30,8 +30,8 @@ } }, "total": { - "lines": 425, - "tokens": 2655, + "lines": 437, + "tokens": 2734, "sources": 2, "clones": 0, "duplicatedLines": 0, @@ -292,8 +292,8 @@ } }, "total": { - "lines": 3675, - "tokens": 26325, + "lines": 3687, + "tokens": 26404, "sources": 16, "clones": 3, "duplicatedLines": 18, diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-04T20:40:04.726Z", + "detectionDate": "2026-04-05T22:07:37.630Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 452, - "tokens": 2770, + "lines": 464, + "tokens": 2849, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -30,8 +30,8 @@ } }, "total": { - "lines": 473, - "tokens": 2902, + "lines": 485, + "tokens": 2981, "sources": 2, "clones": 0, "duplicatedLines": 0, @@ -232,13 +232,13 @@ } }, "total": { - "lines": 2799, - "tokens": 23768, + "lines": 2811, + "tokens": 23847, "sources": 11, "clones": 6, "duplicatedLines": 45, "duplicatedTokens": 581, - "percentage": 1.61, + "percentage": 1.6, "percentageTokens": 2.44, "newDuplicatedLines": 0, "newClones": 0 diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-04T20:40:15.347Z", + "detectionDate": "2026-04-05T22:07:59.391Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 368, - "tokens": 2286, + "lines": 380, + "tokens": 2365, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -42,8 +42,8 @@ } }, "total": { - "lines": 403, - "tokens": 2517, + "lines": 415, + "tokens": 2596, "sources": 3, "clones": 0, "duplicatedLines": 0, @@ -256,14 +256,14 @@ } }, "total": { - "lines": 2589, - "tokens": 22372, + "lines": 2601, + "tokens": 22451, "sources": 13, "clones": 3, "duplicatedLines": 19, "duplicatedTokens": 306, "percentage": 0.73, - "percentageTokens": 1.37, + "percentageTokens": 1.36, "newDuplicatedLines": 0, "newClones": 0 } diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-04T20:40:43.133Z", + "detectionDate": "2026-04-05T22:08:38.811Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 211, - "tokens": 1327, + "lines": 223, + "tokens": 1406, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -42,8 +42,8 @@ } }, "total": { - "lines": 248, - "tokens": 1572, + "lines": 260, + "tokens": 1651, "sources": 3, "clones": 0, "duplicatedLines": 0, @@ -208,8 +208,8 @@ } }, "total": { - "lines": 1644, - "tokens": 14760, + "lines": 1656, + "tokens": 14839, "sources": 9, "clones": 0, "duplicatedLines": 0, diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json @@ -1,18 +1,18 @@ { "statistics": { - "detectionDate": "2026-04-04T20:41:25.622Z", + "detectionDate": "2026-04-05T22:10:44.745Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 528, - "tokens": 3262, + "lines": 612, + "tokens": 3769, "sources": 1, "clones": 4, "duplicatedLines": 74, "duplicatedTokens": 410, - "percentage": 14.02, - "percentageTokens": 12.57, + "percentage": 12.09, + "percentageTokens": 10.88, "newDuplicatedLines": 0, "newClones": 0 }, @@ -42,14 +42,14 @@ } }, "total": { - "lines": 573, - "tokens": 3542, + "lines": 657, + "tokens": 4049, "sources": 3, "clones": 2, "duplicatedLines": 37, "duplicatedTokens": 205, - "percentage": 6.46, - "percentageTokens": 5.79, + "percentage": 5.63, + "percentageTokens": 5.06, "newDuplicatedLines": 0, "newClones": 0 } @@ -308,14 +308,14 @@ } }, "total": { - "lines": 3353, - "tokens": 26719, + "lines": 3437, + "tokens": 27226, "sources": 16, "clones": 8, "duplicatedLines": 75, "duplicatedTokens": 801, - "percentage": 2.24, - "percentageTokens": 3, + "percentage": 2.18, + "percentageTokens": 2.94, "newDuplicatedLines": 0, "newClones": 0 } @@ -328,32 +328,32 @@ "tokens": 0, "firstFile": { "name": "report/jscpd-report.json", - "start": 402, - "end": 421, + "start": 486, + "end": 505, "startLoc": { - "line": 402, + "line": 486, "column": 9, - "position": 2519 + "position": 3026 }, "endLoc": { - "line": 421, + "line": 505, "column": 13, - "position": 2625 + "position": 3132 } }, "secondFile": { "name": "report/jscpd-report.json", - "start": 330, - "end": 349, + "start": 414, + "end": 433, "startLoc": { - "line": 330, + "line": 414, "column": 9, - "position": 2091 + "position": 2598 }, "endLoc": { - "line": 349, + "line": 433, "column": 13, - "position": 2197 + "position": 2704 } } }, @@ -364,32 +364,32 @@ "tokens": 0, "firstFile": { "name": "report/jscpd-report.json", - "start": 510, - "end": 528, + "start": 594, + "end": 612, "startLoc": { - "line": 510, + "line": 594, "column": 9, - "position": 3161 + "position": 3668 }, "endLoc": { - "line": 528, + "line": 612, "column": 2, - "position": 3260 + "position": 3767 } }, "secondFile": { "name": "report/jscpd-report.json", - "start": 438, - "end": 455, + "start": 522, + "end": 539, "startLoc": { - "line": 438, + "line": 522, "column": 9, - "position": 2733 + "position": 3240 }, "endLoc": { - "line": 455, + "line": 539, "column": 2, - "position": 2830 + "position": 3337 } } }, diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-04T20:42:27.587Z", + "detectionDate": "2026-04-05T22:10:45.526Z", "formats": { "typescript": { "sources": { @@ -33,8 +33,8 @@ "json": { "sources": { "report/jscpd-report.json": { - "lines": 360, - "tokens": 2248, + "lines": 372, + "tokens": 2327, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -70,8 +70,8 @@ } }, "total": { - "lines": 398, - "tokens": 2500, + "lines": 410, + "tokens": 2579, "sources": 3, "clones": 0, "duplicatedLines": 0, @@ -284,13 +284,13 @@ } }, "total": { - "lines": 2762, - "tokens": 22533, + "lines": 2774, + "tokens": 22612, "sources": 14, "clones": 2, "duplicatedLines": 19, "duplicatedTokens": 201, - "percentage": 0.69, + "percentage": 0.68, "percentageTokens": 0.89, "newDuplicatedLines": 0, "newClones": 0 diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-04T20:42:33.743Z", + "detectionDate": "2026-04-05T22:11:16.763Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 560, - "tokens": 3435, + "lines": 572, + "tokens": 3514, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -42,8 +42,8 @@ } }, "total": { - "lines": 598, - "tokens": 3687, + "lines": 610, + "tokens": 3766, "sources": 3, "clones": 0, "duplicatedLines": 0, @@ -268,14 +268,14 @@ } }, "total": { - "lines": 3758, - "tokens": 30751, + "lines": 3770, + "tokens": 30830, "sources": 14, "clones": 8, "duplicatedLines": 70, "duplicatedTokens": 832, "percentage": 1.86, - "percentageTokens": 2.71, + "percentageTokens": 2.7, "newDuplicatedLines": 0, "newClones": 0 } diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run3/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-04T20:43:26.384Z", + "detectionDate": "2026-04-05T22:11:15.818Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 332, - "tokens": 2072, + "lines": 344, + "tokens": 2151, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -30,8 +30,8 @@ } }, "total": { - "lines": 353, - "tokens": 2204, + "lines": 365, + "tokens": 2283, "sources": 2, "clones": 0, "duplicatedLines": 0, @@ -256,8 +256,8 @@ } }, "total": { - "lines": 2610, - "tokens": 20617, + "lines": 2622, + "tokens": 20696, "sources": 13, "clones": 2, "duplicatedLines": 10, diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run1/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-04T20:44:04.200Z", + "detectionDate": "2026-04-05T22:12:06.984Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 272, - "tokens": 1700, + "lines": 284, + "tokens": 1779, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -30,8 +30,8 @@ } }, "total": { - "lines": 293, - "tokens": 1832, + "lines": 305, + "tokens": 1911, "sources": 2, "clones": 0, "duplicatedLines": 0, @@ -232,8 +232,8 @@ } }, "total": { - "lines": 2500, - "tokens": 21119, + "lines": 2512, + "tokens": 21198, "sources": 11, "clones": 1, "duplicatedLines": 5, diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run2/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run2/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-04T20:44:05.792Z", + "detectionDate": "2026-04-05T22:14:05.044Z", "formats": { "typescript": { "sources": { @@ -109,8 +109,8 @@ "newClones": 0 }, "report/jscpd-report.json": { - "lines": 460, - "tokens": 2854, + "lines": 472, + "tokens": 2933, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -134,8 +134,8 @@ } }, "total": { - "lines": 538, - "tokens": 3334, + "lines": 550, + "tokens": 3413, "sources": 5, "clones": 0, "duplicatedLines": 0, @@ -276,14 +276,14 @@ } }, "total": { - "lines": 3429, - "tokens": 26025, + "lines": 3441, + "tokens": 26104, "sources": 16, "clones": 5, "duplicatedLines": 214, "duplicatedTokens": 1738, - "percentage": 6.24, - "percentageTokens": 6.68, + "percentage": 6.22, + "percentageTokens": 6.66, "newDuplicatedLines": 0, "newClones": 0 } diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run3/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run3/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-04T20:44:15.321Z", + "detectionDate": "2026-04-05T22:15:02.470Z", "formats": { "typescript": { "sources": { @@ -109,8 +109,8 @@ "newClones": 0 }, "report/jscpd-report.json": { - "lines": 476, - "tokens": 2974, + "lines": 488, + "tokens": 3053, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -134,8 +134,8 @@ } }, "total": { - "lines": 558, - "tokens": 3482, + "lines": 570, + "tokens": 3561, "sources": 5, "clones": 0, "duplicatedLines": 0, @@ -328,14 +328,14 @@ } }, "total": { - "lines": 3674, - "tokens": 27886, + "lines": 3686, + "tokens": 27965, "sources": 19, "clones": 4, "duplicatedLines": 265, "duplicatedTokens": 1945, - "percentage": 7.21, - "percentageTokens": 6.97, + "percentage": 7.19, + "percentageTokens": 6.96, "newDuplicatedLines": 0, "newClones": 0 } diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run1/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-04T20:44:18.948Z", + "detectionDate": "2026-04-05T22:15:03.920Z", "formats": { "typescript": { "sources": { diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run2/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run2/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-04T20:44:25.430Z", + "detectionDate": "2026-04-05T22:15:48.659Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 292, - "tokens": 1817, + "lines": 304, + "tokens": 1896, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -30,8 +30,8 @@ } }, "total": { - "lines": 315, - "tokens": 1963, + "lines": 327, + "tokens": 2042, "sources": 2, "clones": 0, "duplicatedLines": 0, @@ -216,13 +216,13 @@ } }, "total": { - "lines": 2463, - "tokens": 20838, + "lines": 2475, + "tokens": 20917, "sources": 11, "clones": 2, "duplicatedLines": 12, "duplicatedTokens": 234, - "percentage": 0.49, + "percentage": 0.48, "percentageTokens": 1.12, "newDuplicatedLines": 0, "newClones": 0 diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run3/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run3/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-04T20:46:02.213Z", + "detectionDate": "2026-04-05T22:16:07.907Z", "formats": { "typescript": { "sources": { @@ -45,8 +45,8 @@ "json": { "sources": { "report/jscpd-report.json": { - "lines": 348, - "tokens": 2192, + "lines": 360, + "tokens": 2271, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -82,8 +82,8 @@ } }, "total": { - "lines": 385, - "tokens": 2436, + "lines": 397, + "tokens": 2515, "sources": 3, "clones": 0, "duplicatedLines": 0, @@ -308,13 +308,13 @@ } }, "total": { - "lines": 3574, - "tokens": 26408, + "lines": 3586, + "tokens": 26487, "sources": 16, "clones": 1, "duplicatedLines": 17, "duplicatedTokens": 129, - "percentage": 0.48, + "percentage": 0.47, "percentageTokens": 0.49, "newDuplicatedLines": 0, "newClones": 0 diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-04T20:46:05.731Z", + "detectionDate": "2026-04-05T22:17:19.383Z", "formats": { "typescript": { "sources": { @@ -125,14 +125,14 @@ "json": { "sources": { "report/jscpd-report.json": { - "lines": 572, - "tokens": 3560, + "lines": 620, + "tokens": 3853, "sources": 1, "clones": 2, "duplicatedLines": 60, "duplicatedTokens": 344, - "percentage": 10.49, - "percentageTokens": 9.66, + "percentage": 9.68, + "percentageTokens": 8.93, "newDuplicatedLines": 0, "newClones": 0 }, @@ -162,14 +162,14 @@ } }, "total": { - "lines": 612, - "tokens": 3826, + "lines": 660, + "tokens": 4119, "sources": 3, "clones": 1, "duplicatedLines": 30, "duplicatedTokens": 172, - "percentage": 4.9, - "percentageTokens": 4.5, + "percentage": 4.55, + "percentageTokens": 4.18, "newDuplicatedLines": 0, "newClones": 0 } @@ -352,14 +352,14 @@ } }, "total": { - "lines": 4282, - "tokens": 32063, + "lines": 4330, + "tokens": 32356, "sources": 21, "clones": 7, "duplicatedLines": 403, "duplicatedTokens": 3319, - "percentage": 9.41, - "percentageTokens": 10.35, + "percentage": 9.31, + "percentageTokens": 10.26, "newDuplicatedLines": 0, "newClones": 0 } @@ -408,32 +408,32 @@ "tokens": 0, "firstFile": { "name": "report/jscpd-report.json", - "start": 542, - "end": 572, + "start": 590, + "end": 620, "startLoc": { - "line": 542, + "line": 590, "column": 13, - "position": 3386 + "position": 3679 }, "endLoc": { - "line": 572, + "line": 620, "column": 2, - "position": 3558 + "position": 3851 } }, "secondFile": { "name": "report/jscpd-report.json", - "start": 506, - "end": 535, + "start": 554, + "end": 583, "startLoc": { - "line": 506, + "line": 554, "column": 18, - "position": 3172 + "position": 3465 }, "endLoc": { - "line": 535, + "line": 583, "column": 2, - "position": 3342 + "position": 3635 } } }, diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run2/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run2/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-04T20:46:09.121Z", + "detectionDate": "2026-04-05T22:17:18.268Z", "formats": { "typescript": { "sources": { @@ -33,8 +33,8 @@ "json": { "sources": { "report/jscpd-report.json": { - "lines": 283, - "tokens": 1801, + "lines": 295, + "tokens": 1880, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -70,8 +70,8 @@ } }, "total": { - "lines": 318, - "tokens": 2029, + "lines": 330, + "tokens": 2108, "sources": 3, "clones": 0, "duplicatedLines": 0, @@ -280,8 +280,8 @@ } }, "total": { - "lines": 2932, - "tokens": 24753, + "lines": 2944, + "tokens": 24832, "sources": 15, "clones": 0, "duplicatedLines": 0, diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/report/jscpd-report.json @@ -1,6 +1,6 @@ { "statistics": { - "detectionDate": "2026-04-04T20:46:16.724Z", + "detectionDate": "2026-04-05T22:18:37.801Z", "formats": { "typescript": { "sources": { diff --git a/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json b/dashboard/public/artifacts/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/report/jscpd-report.json @@ -1,12 +1,12 @@ { "statistics": { - "detectionDate": "2026-04-04T20:46:15.383Z", + "detectionDate": "2026-04-05T22:18:52.370Z", "formats": { "json": { "sources": { "report/jscpd-report.json": { - "lines": 396, - "tokens": 2439, + "lines": 408, + "tokens": 2518, "sources": 1, "clones": 0, "duplicatedLines": 0, @@ -30,8 +30,8 @@ } }, "total": { - "lines": 417, - "tokens": 2571, + "lines": 429, + "tokens": 2650, "sources": 2, "clones": 0, "duplicatedLines": 0, @@ -248,14 +248,14 @@ } }, "total": { - "lines": 2248, - "tokens": 20953, + "lines": 2260, + "tokens": 21032, "sources": 11, "clones": 4, "duplicatedLines": 38, "duplicatedTokens": 371, - "percentage": 1.69, - "percentageTokens": 1.77, + "percentage": 1.68, + "percentageTokens": 1.76, "newDuplicatedLines": 0, "newClones": 0 } diff --git a/results/analysis/main_effects_code_quality.json b/results/analysis/main_effects_code_quality.json @@ -2,266 +2,266 @@ "model": { "values": { "haiku": { - "mean": 0.6735, - "effect": -0.1079, + "mean": 0.6367, + "effect": -0.1315, "n": 57 }, "opus": { "mean": 0.8441, - "effect": 0.0627, + "effect": 0.0759, "n": 51 }, "sonnet": { "mean": 0.8392, - "effect": 0.0578, + "effect": 0.071, "n": 51 } }, - "spread": 0.1706 + "spread": 0.2074 }, "claude_version": { "values": { "2.1.91 (Claude Code)": { - "mean": 0.6712, - "effect": -0.1102, + "mean": 0.63, + "effect": -0.1382, "n": 51 }, "2.1.92 (Claude Code)": { "mean": 0.8334, - "effect": 0.052, + "effect": 0.0652, "n": 108 } }, - "spread": 0.1622 + "spread": 0.2034 }, "language": { "values": { "javascript": { "mean": 0.7389, - "effect": -0.0425, + "effect": -0.0293, "n": 9 }, "typescript": { - "mean": 0.7809, - "effect": -0.0005, + "mean": 0.7661, + "effect": -0.002, "n": 142 }, "unspecified": { "mean": 0.8375, - "effect": 0.0561, + "effect": 0.0693, "n": 8 } }, "spread": 0.0986 }, - "linter": { + "tool_edit": { "values": { "off": { - "mean": 0.7107, - "effect": -0.0707, + "mean": 0.6925, + "effect": -0.0757, + "n": 12 + }, + "on": { + "mean": 0.7744, + "effect": 0.0062, + "n": 147 + } + }, + "spread": 0.0819 + }, + "playwright": { + "values": { + "off": { + "mean": 0.6964, + "effect": -0.0717, "n": 14 }, "on": { - "mean": 0.7882, - "effect": 0.0068, + "mean": 0.7751, + "effect": 0.0069, "n": 145 } }, - "spread": 0.0775 + "spread": 0.0787 }, - "playwright": { + "prompt_style": { + "values": { + "detailed": { + "mean": 0.7, + "effect": -0.0682, + "n": 10 + }, + "simple": { + "mean": 0.7728, + "effect": 0.0046, + "n": 149 + } + }, + "spread": 0.0728 + }, + "linter": { "values": { "off": { - "mean": 0.7214, - "effect": -0.06, + "mean": 0.7107, + "effect": -0.0575, "n": 14 }, "on": { - "mean": 0.7872, - "effect": 0.0058, + "mean": 0.7737, + "effect": 0.0055, "n": 145 } }, - "spread": 0.0658 + "spread": 0.063 }, "web_search": { "values": { "off": { "mean": 0.7246, - "effect": -0.0568, + "effect": -0.0436, "n": 13 }, "on": { - "mean": 0.7864, - "effect": 0.0051, + "mean": 0.7721, + "effect": 0.0039, "n": 146 } }, - "spread": 0.0618 + "spread": 0.0475 }, "max_budget": { "values": { "high": { "mean": 0.7358, - "effect": -0.0456, + "effect": -0.0323, "n": 12 }, "low": { - "mean": 0.7851, - "effect": 0.0037, + "mean": 0.7708, + "effect": 0.0026, "n": 147 } }, - "spread": 0.0493 + "spread": 0.035 }, - "sub_agents": { + "tool_grep": { "values": { "off": { - "mean": 0.7414, - "effect": -0.04, - "n": 14 + "mean": 0.7967, + "effect": 0.0285, + "n": 12 }, "on": { - "mean": 0.7852, - "effect": 0.0039, - "n": 145 - } - }, - "spread": 0.0438 - }, - "context_file": { - "values": { - "none": { - "mean": 0.7835, - "effect": 0.0022, + "mean": 0.7659, + "effect": -0.0023, "n": 147 - }, - "provided": { - "mean": 0.755, - "effect": -0.0264, - "n": 12 - } - }, - "spread": 0.0285 - }, - "human_language": { - "values": { - "en": { - "mean": 0.7827, - "effect": 0.0013, - "n": 150 - }, - "es": { - "mean": 0.76, - "effect": -0.0214, - "n": 9 } }, - "spread": 0.0227 + "spread": 0.0308 }, - "tool_glob": { + "tool_read": { "values": { "off": { - "mean": 0.7625, - "effect": -0.0189, + "mean": 0.7958, + "effect": 0.0277, "n": 12 }, "on": { - "mean": 0.7829, - "effect": 0.0015, + "mean": 0.7659, + "effect": -0.0023, "n": 147 } }, - "spread": 0.0204 + "spread": 0.0299 }, - "tool_grep": { + "sub_agents": { "values": { "off": { - "mean": 0.7967, - "effect": 0.0153, - "n": 12 + "mean": 0.7414, + "effect": -0.0267, + "n": 14 }, "on": { - "mean": 0.7801, - "effect": -0.0012, - "n": 147 + "mean": 0.7708, + "effect": 0.0026, + "n": 145 } }, - "spread": 0.0166 + "spread": 0.0294 }, - "tool_read": { + "context_file": { "values": { - "off": { - "mean": 0.7958, - "effect": 0.0144, - "n": 12 - }, - "on": { - "mean": 0.7802, - "effect": -0.0012, + "none": { + "mean": 0.7693, + "effect": 0.0011, "n": 147 + }, + "provided": { + "mean": 0.755, + "effect": -0.0132, + "n": 12 } }, - "spread": 0.0156 + "spread": 0.0143 }, - "prompt_style": { + "tool_write": { "values": { - "detailed": { - "mean": 0.77, - "effect": -0.0114, - "n": 10 + "off": { + "mean": 0.7775, + "effect": 0.0093, + "n": 12 }, - "simple": { - "mean": 0.7821, - "effect": 0.0008, - "n": 149 + "on": { + "mean": 0.7674, + "effect": -0.0008, + "n": 147 } }, - "spread": 0.0121 + "spread": 0.0101 }, "effort": { "values": { "high": { - "mean": 0.7817, - "effect": 0.0003, + "mean": 0.7677, + "effect": -0.0005, "n": 150 }, "max": { "mean": 0.7767, - "effect": -0.0047, + "effect": 0.0085, "n": 9 } }, - "spread": 0.005 + "spread": 0.009 }, - "tool_write": { + "human_language": { "values": { - "off": { - "mean": 0.7775, - "effect": -0.0039, - "n": 12 + "en": { + "mean": 0.7687, + "effect": 0.0005, + "n": 150 }, - "on": { - "mean": 0.7817, - "effect": 0.0003, - "n": 147 + "es": { + "mean": 0.76, + "effect": -0.0082, + "n": 9 } }, - "spread": 0.0042 + "spread": 0.0087 }, - "tool_edit": { + "tool_glob": { "values": { "off": { - "mean": 0.78, - "effect": -0.0014, + "mean": 0.7625, + "effect": -0.0057, "n": 12 }, "on": { - "mean": 0.7815, - "effect": 0.0001, + "mean": 0.7686, + "effect": 0.0005, "n": 147 } }, - "spread": 0.0015 + "spread": 0.0061 } } \ No newline at end of file diff --git a/results/analysis/main_effects_gameplay.json b/results/analysis/main_effects_gameplay.json @@ -1,267 +1,267 @@ { - "tool_read": { - "values": { - "off": { - "mean": 0.4392, - "effect": -0.2138, - "n": 12 - }, - "on": { - "mean": 0.6704, - "effect": 0.0175, - "n": 147 - } - }, - "spread": 0.2312 - }, "language": { "values": { "javascript": { - "mean": 0.4522, - "effect": -0.2007, + "mean": 0.1044, + "effect": -0.4603, "n": 9 }, "typescript": { - "mean": 0.6763, - "effect": 0.0234, + "mean": 0.5996, + "effect": 0.0349, "n": 142 }, "unspecified": { "mean": 0.4637, - "effect": -0.1892, + "effect": -0.101, "n": 8 } }, - "spread": 0.2241 - }, - "linter": { - "values": { - "off": { - "mean": 0.4836, - "effect": -0.1694, - "n": 14 - }, - "on": { - "mean": 0.6693, - "effect": 0.0164, - "n": 145 - } - }, - "spread": 0.1857 + "spread": 0.4952 }, "model": { "values": { "haiku": { - "mean": 0.5575, - "effect": -0.0954, + "mean": 0.3453, + "effect": -0.2195, "n": 57 }, "opus": { - "mean": 0.7253, - "effect": 0.0723, + "mean": 0.7059, + "effect": 0.1412, "n": 51 }, "sonnet": { - "mean": 0.6873, - "effect": 0.0343, + "mean": 0.6688, + "effect": 0.1041, "n": 51 } }, - "spread": 0.1678 + "spread": 0.3606 }, - "tool_grep": { + "tool_read": { "values": { "off": { - "mean": 0.7675, - "effect": 0.1145, + "mean": 0.2825, + "effect": -0.2822, "n": 12 }, "on": { - "mean": 0.6436, - "effect": -0.0094, + "mean": 0.5878, + "effect": 0.023, "n": 147 } }, - "spread": 0.1239 + "spread": 0.3053 + }, + "linter": { + "values": { + "off": { + "mean": 0.3007, + "effect": -0.264, + "n": 14 + }, + "on": { + "mean": 0.5902, + "effect": 0.0255, + "n": 145 + } + }, + "spread": 0.2895 }, "claude_version": { "values": { "2.1.91 (Claude Code)": { - "mean": 0.5716, - "effect": -0.0814, + "mean": 0.3784, + "effect": -0.1863, "n": 51 }, "2.1.92 (Claude Code)": { - "mean": 0.6914, - "effect": 0.0384, + "mean": 0.6527, + "effect": 0.088, "n": 108 } }, - "spread": 0.1198 + "spread": 0.2743 }, "web_search": { "values": { "off": { - "mean": 0.5492, - "effect": -0.1037, + "mean": 0.3615, + "effect": -0.2032, "n": 13 }, "on": { - "mean": 0.6622, - "effect": 0.0092, + "mean": 0.5828, + "effect": 0.0181, "n": 146 } }, - "spread": 0.113 + "spread": 0.2213 }, "effort": { "values": { "high": { - "mean": 0.6483, - "effect": -0.0047, + "mean": 0.5547, + "effect": -0.01, "n": 150 }, "max": { "mean": 0.7311, - "effect": 0.0782, + "effect": 0.1664, "n": 9 } }, - "spread": 0.0828 + "spread": 0.1764 }, - "human_language": { + "context_file": { "values": { - "en": { - "mean": 0.6571, - "effect": 0.0042, - "n": 150 + "none": { + "mean": 0.552, + "effect": -0.0127, + "n": 147 }, - "es": { - "mean": 0.5833, - "effect": -0.0696, - "n": 9 + "provided": { + "mean": 0.72, + "effect": 0.1553, + "n": 12 } }, - "spread": 0.0738 + "spread": 0.168 }, - "tool_glob": { + "max_budget": { "values": { - "off": { - "mean": 0.7208, - "effect": 0.0679, + "high": { + "mean": 0.72, + "effect": 0.1553, "n": 12 }, - "on": { - "mean": 0.6474, - "effect": -0.0055, + "low": { + "mean": 0.552, + "effect": -0.0127, "n": 147 } }, - "spread": 0.0734 + "spread": 0.168 + }, + "sub_agents": { + "values": { + "off": { + "mean": 0.42, + "effect": -0.1447, + "n": 14 + }, + "on": { + "mean": 0.5787, + "effect": 0.014, + "n": 145 + } + }, + "spread": 0.1587 }, "tool_write": { "values": { "off": { - "mean": 0.7208, - "effect": 0.0679, + "mean": 0.4342, + "effect": -0.1306, "n": 12 }, "on": { - "mean": 0.6474, - "effect": -0.0055, + "mean": 0.5754, + "effect": 0.0107, "n": 147 } }, - "spread": 0.0734 + "spread": 0.1412 }, - "context_file": { + "tool_grep": { "values": { - "none": { - "mean": 0.6475, - "effect": -0.0055, - "n": 147 - }, - "provided": { - "mean": 0.72, - "effect": 0.067, + "off": { + "mean": 0.4492, + "effect": -0.1156, "n": 12 + }, + "on": { + "mean": 0.5741, + "effect": 0.0094, + "n": 147 } }, - "spread": 0.0725 + "spread": 0.1249 }, - "max_budget": { + "tool_edit": { "values": { - "high": { - "mean": 0.72, - "effect": 0.067, + "off": { + "mean": 0.4608, + "effect": -0.1039, "n": 12 }, - "low": { - "mean": 0.6475, - "effect": -0.0055, + "on": { + "mean": 0.5732, + "effect": 0.0085, "n": 147 } }, - "spread": 0.0725 + "spread": 0.1124 }, - "tool_edit": { + "tool_glob": { "values": { "off": { - "mean": 0.7008, - "effect": 0.0479, + "mean": 0.4867, + "effect": -0.0781, "n": 12 }, "on": { - "mean": 0.649, - "effect": -0.0039, + "mean": 0.5711, + "effect": 0.0064, "n": 147 } }, - "spread": 0.0518 + "spread": 0.0844 }, "playwright": { "values": { "off": { - "mean": 0.6979, - "effect": 0.0449, + "mean": 0.4921, + "effect": -0.0726, "n": 14 }, "on": { - "mean": 0.6486, - "effect": -0.0043, + "mean": 0.5717, + "effect": 0.007, "n": 145 } }, - "spread": 0.0493 + "spread": 0.0796 }, - "prompt_style": { + "human_language": { "values": { - "detailed": { - "mean": 0.628, - "effect": -0.025, - "n": 10 + "en": { + "mean": 0.5636, + "effect": -0.0011, + "n": 150 }, - "simple": { - "mean": 0.6546, - "effect": 0.0017, - "n": 149 + "es": { + "mean": 0.5833, + "effect": 0.0186, + "n": 9 } }, - "spread": 0.0266 + "spread": 0.0197 }, - "sub_agents": { + "prompt_style": { "values": { - "off": { - "mean": 0.6529, - "effect": -0.0001, - "n": 14 + "detailed": { + "mean": 0.559, + "effect": -0.0057, + "n": 10 }, - "on": { - "mean": 0.653, - "effect": 0.0, - "n": 145 + "simple": { + "mean": 0.5651, + "effect": 0.0004, + "n": 149 } }, - "spread": 0.0001 + "spread": 0.0061 } } \ No newline at end of file diff --git a/results/analysis/main_effects_score.json b/results/analysis/main_effects_score.json @@ -2,266 +2,266 @@ "model": { "values": { "haiku": { - "mean": 0.5853, - "effect": -0.0959, + "mean": 0.5375, + "effect": -0.1232, "n": 57 }, "opus": { - "mean": 0.7664, - "effect": 0.0852, + "mean": 0.761, + "effect": 0.1003, "n": 51 }, "sonnet": { - "mean": 0.7031, - "effect": 0.0219, + "mean": 0.698, + "effect": 0.0373, "n": 51 } }, - "spread": 0.1811 + "spread": 0.2235 }, "claude_version": { "values": { "2.1.91 (Claude Code)": { - "mean": 0.5838, - "effect": -0.0973, + "mean": 0.54, + "effect": -0.1207, "n": 51 }, "2.1.92 (Claude Code)": { - "mean": 0.7272, - "effect": 0.046, + "mean": 0.7176, + "effect": 0.057, "n": 108 } }, - "spread": 0.1434 - }, - "language": { - "values": { - "javascript": { - "mean": 0.6973, - "effect": 0.0162, - "n": 9 - }, - "typescript": { - "mean": 0.6846, - "effect": 0.0034, - "n": 142 - }, - "unspecified": { - "mean": 0.6031, - "effect": -0.0781, - "n": 8 - } - }, - "spread": 0.0942 + "spread": 0.1776 }, "tool_read": { "values": { "off": { - "mean": 0.6154, - "effect": -0.0657, + "mean": 0.556, + "effect": -0.1047, "n": 12 }, "on": { - "mean": 0.6866, - "effect": 0.0054, + "mean": 0.6692, + "effect": 0.0085, "n": 147 } }, - "spread": 0.0712 + "spread": 0.1132 }, - "prompt_style": { + "language": { "values": { - "detailed": { - "mean": 0.6212, - "effect": -0.06, - "n": 10 + "javascript": { + "mean": 0.5887, + "effect": -0.072, + "n": 9 }, - "simple": { - "mean": 0.6852, - "effect": 0.004, - "n": 149 - } - }, - "spread": 0.064 - }, - "human_language": { - "values": { - "en": { - "mean": 0.6839, - "effect": 0.0027, - "n": 150 + "typescript": { + "mean": 0.6684, + "effect": 0.0078, + "n": 142 }, - "es": { - "mean": 0.6358, - "effect": -0.0454, - "n": 9 + "unspecified": { + "mean": 0.6031, + "effect": -0.0575, + "n": 8 } }, - "spread": 0.0481 + "spread": 0.0797 }, "linter": { "values": { "off": { - "mean": 0.6416, - "effect": -0.0396, + "mean": 0.5889, + "effect": -0.0717, "n": 14 }, "on": { - "mean": 0.685, - "effect": 0.0038, + "mean": 0.6676, + "effect": 0.0069, "n": 145 } }, - "spread": 0.0434 - }, - "tool_write": { - "values": { - "off": { - "mean": 0.6534, - "effect": -0.0278, - "n": 12 - }, - "on": { - "mean": 0.6835, - "effect": 0.0023, - "n": 147 - } - }, - "spread": 0.0301 + "spread": 0.0787 }, "tool_edit": { "values": { "off": { - "mean": 0.6574, - "effect": -0.0238, + "mean": 0.59, + "effect": -0.0706, "n": 12 }, "on": { - "mean": 0.6831, - "effect": 0.0019, + "mean": 0.6664, + "effect": 0.0058, "n": 147 } }, - "spread": 0.0257 + "spread": 0.0764 }, - "tool_grep": { + "tool_write": { "values": { "off": { - "mean": 0.7017, - "effect": 0.0205, + "mean": 0.5915, + "effect": -0.0692, "n": 12 }, "on": { - "mean": 0.6795, - "effect": -0.0017, + "mean": 0.6663, + "effect": 0.0056, "n": 147 } }, - "spread": 0.0222 + "spread": 0.0748 }, - "effort": { + "prompt_style": { "values": { - "high": { - "mean": 0.6824, - "effect": 0.0012, - "n": 150 + "detailed": { + "mean": 0.5992, + "effect": -0.0615, + "n": 10 }, - "max": { - "mean": 0.6612, - "effect": -0.02, - "n": 9 + "simple": { + "mean": 0.6648, + "effect": 0.0041, + "n": 149 } }, - "spread": 0.0212 + "spread": 0.0656 }, "sub_agents": { "values": { "off": { - "mean": 0.665, - "effect": -0.0162, + "mean": 0.6043, + "effect": -0.0563, "n": 14 }, "on": { - "mean": 0.6827, - "effect": 0.0016, + "mean": 0.6661, + "effect": 0.0054, "n": 145 } }, - "spread": 0.0177 + "spread": 0.0618 }, "web_search": { "values": { "off": { - "mean": 0.667, - "effect": -0.0141, + "mean": 0.6084, + "effect": -0.0522, "n": 13 }, "on": { - "mean": 0.6824, - "effect": 0.0013, + "mean": 0.6653, + "effect": 0.0047, "n": 146 } }, - "spread": 0.0154 + "spread": 0.0569 }, - "tool_glob": { + "playwright": { "values": { "off": { - "mean": 0.6919, - "effect": 0.0107, - "n": 12 + "mean": 0.624, + "effect": -0.0367, + "n": 14 }, "on": { - "mean": 0.6803, - "effect": -0.0009, - "n": 147 + "mean": 0.6642, + "effect": 0.0035, + "n": 145 } }, - "spread": 0.0116 + "spread": 0.0402 }, - "playwright": { + "tool_grep": { "values": { "off": { - "mean": 0.6892, - "effect": 0.008, - "n": 14 + "mean": 0.6298, + "effect": -0.0308, + "n": 12 }, "on": { - "mean": 0.6804, - "effect": -0.0008, - "n": 145 + "mean": 0.6631, + "effect": 0.0025, + "n": 147 } }, - "spread": 0.0088 + "spread": 0.0333 }, "context_file": { "values": { "none": { - "mean": 0.6806, - "effect": -0.0006, + "mean": 0.6584, + "effect": -0.0022, "n": 147 }, "provided": { "mean": 0.6881, - "effect": 0.0069, + "effect": 0.0275, "n": 12 } }, - "spread": 0.0075 + "spread": 0.0297 }, "max_budget": { "values": { "high": { "mean": 0.6874, - "effect": 0.0062, + "effect": 0.0268, "n": 12 }, "low": { - "mean": 0.6807, - "effect": -0.0005, + "mean": 0.6584, + "effect": -0.0022, + "n": 147 + } + }, + "spread": 0.029 + }, + "human_language": { + "values": { + "en": { + "mean": 0.6621, + "effect": 0.0015, + "n": 150 + }, + "es": { + "mean": 0.6358, + "effect": -0.0249, + "n": 9 + } + }, + "spread": 0.0263 + }, + "tool_glob": { + "values": { + "off": { + "mean": 0.6416, + "effect": -0.019, + "n": 12 + }, + "on": { + "mean": 0.6622, + "effect": 0.0016, "n": 147 } }, - "spread": 0.0067 + "spread": 0.0206 + }, + "effort": { + "values": { + "high": { + "mean": 0.6606, + "effect": -0.0, + "n": 150 + }, + "max": { + "mean": 0.6612, + "effect": 0.0005, + "n": 9 + } + }, + "spread": 0.0006 } } \ No newline at end of file diff --git a/results/analysis/main_effects_structural.json b/results/analysis/main_effects_structural.json @@ -3,265 +3,265 @@ "values": { "detailed": { "mean": 0.775, - "effect": -0.1374, + "effect": -0.1527, "n": 10 }, "simple": { - "mean": 0.9234, - "effect": 0.011, - "n": 125 + "mean": 0.938, + "effect": 0.0103, + "n": 149 } }, - "spread": 0.1484 + "spread": 0.163 }, - "model": { + "language": { "values": { - "haiku": { - "mean": 0.8596, - "effect": -0.0528, - "n": 57 + "javascript": { + "mean": 1.0, + "effect": 0.0723, + "n": 9 }, - "opus": { - "mean": 0.96, - "effect": 0.0476, - "n": 27 + "typescript": { + "mean": 0.9261, + "effect": -0.0017, + "n": 142 }, - "sonnet": { - "mean": 0.9463, - "effect": 0.0338, - "n": 51 + "unspecified": { + "mean": 0.8762, + "effect": -0.0515, + "n": 8 } }, - "spread": 0.1004 + "spread": 0.1238 }, "claude_version": { "values": { "2.1.91 (Claude Code)": { "mean": 0.8529, - "effect": -0.0595, + "effect": -0.0748, "n": 51 }, "2.1.92 (Claude Code)": { - "mean": 0.9486, - "effect": 0.0361, - "n": 84 + "mean": 0.9631, + "effect": 0.0353, + "n": 108 } }, - "spread": 0.0957 + "spread": 0.1102 }, - "language": { + "model": { "values": { - "javascript": { - "mean": 0.9633, - "effect": 0.0509, - "n": 9 + "haiku": { + "mean": 0.8684, + "effect": -0.0593, + "n": 57 }, - "typescript": { - "mean": 0.911, - "effect": -0.0014, - "n": 118 + "opus": { + "mean": 0.9739, + "effect": 0.0462, + "n": 51 }, - "unspecified": { - "mean": 0.8762, - "effect": -0.0362, - "n": 8 + "sonnet": { + "mean": 0.9478, + "effect": 0.0201, + "n": 51 } }, - "spread": 0.0871 + "spread": 0.1055 }, - "tool_edit": { + "max_budget": { "values": { - "off": { - "mean": 0.85, - "effect": -0.0624, - "n": 10 + "high": { + "mean": 0.8542, + "effect": -0.0736, + "n": 12 }, - "on": { - "mean": 0.9174, - "effect": 0.005, - "n": 125 + "low": { + "mean": 0.9337, + "effect": 0.006, + "n": 147 } }, - "spread": 0.0674 + "spread": 0.0795 }, - "sub_agents": { + "tool_edit": { "values": { "off": { - "mean": 0.8636, - "effect": -0.0488, - "n": 11 + "mean": 0.875, + "effect": -0.0527, + "n": 12 }, "on": { - "mean": 0.9168, + "mean": 0.932, "effect": 0.0043, - "n": 124 + "n": 147 } }, - "spread": 0.0532 + "spread": 0.057 }, "tool_read": { "values": { "off": { "mean": 0.875, - "effect": -0.0374, + "effect": -0.0527, "n": 12 }, "on": { - "mean": 0.9161, - "effect": 0.0037, - "n": 123 + "mean": 0.932, + "effect": 0.0043, + "n": 147 } }, - "spread": 0.0411 + "spread": 0.057 }, "tool_write": { "values": { "off": { "mean": 0.875, - "effect": -0.0374, + "effect": -0.0527, "n": 12 }, "on": { - "mean": 0.9161, - "effect": 0.0037, - "n": 123 + "mean": 0.932, + "effect": 0.0043, + "n": 147 } }, - "spread": 0.0411 + "spread": 0.057 }, "context_file": { "values": { "none": { - "mean": 0.9102, - "effect": -0.0023, - "n": 126 + "mean": 0.9252, + "effect": -0.0025, + "n": 147 }, "provided": { - "mean": 0.9444, - "effect": 0.032, - "n": 9 + "mean": 0.9583, + "effect": 0.0306, + "n": 12 } }, - "spread": 0.0342 + "spread": 0.0331 }, - "linter": { + "sub_agents": { "values": { "off": { - "mean": 0.8864, - "effect": -0.0261, - "n": 11 + "mean": 0.9107, + "effect": -0.017, + "n": 14 }, "on": { - "mean": 0.9148, - "effect": 0.0023, - "n": 124 + "mean": 0.9294, + "effect": 0.0016, + "n": 145 } }, - "spread": 0.0284 + "spread": 0.0187 }, - "max_budget": { + "web_search": { "values": { - "high": { - "mean": 0.8864, - "effect": -0.0261, - "n": 11 + "off": { + "mean": 0.9423, + "effect": 0.0146, + "n": 13 }, - "low": { - "mean": 0.9148, - "effect": 0.0023, - "n": 124 + "on": { + "mean": 0.9264, + "effect": -0.0013, + "n": 146 } }, - "spread": 0.0284 + "spread": 0.0159 }, - "playwright": { + "tool_grep": { "values": { "off": { - "mean": 0.8864, - "effect": -0.0261, - "n": 11 + "mean": 0.9167, + "effect": -0.0111, + "n": 12 }, "on": { - "mean": 0.9148, - "effect": 0.0023, - "n": 124 + "mean": 0.9286, + "effect": 0.0009, + "n": 147 } }, - "spread": 0.0284 + "spread": 0.0119 }, - "tool_glob": { + "effort": { "values": { - "off": { - "mean": 0.8889, - "effect": -0.0236, - "n": 9 + "high": { + "mean": 0.9284, + "effect": 0.0007, + "n": 150 }, - "on": { - "mean": 0.9141, - "effect": 0.0017, - "n": 126 + "max": { + "mean": 0.9167, + "effect": -0.0111, + "n": 9 } }, - "spread": 0.0252 + "spread": 0.0117 }, - "tool_grep": { + "human_language": { "values": { - "off": { - "mean": 0.8889, - "effect": -0.0236, - "n": 9 + "en": { + "mean": 0.9284, + "effect": 0.0007, + "n": 150 }, - "on": { - "mean": 0.9141, - "effect": 0.0017, - "n": 126 + "es": { + "mean": 0.9167, + "effect": -0.0111, + "n": 9 } }, - "spread": 0.0252 + "spread": 0.0117 }, - "web_search": { + "tool_glob": { "values": { "off": { - "mean": 0.9, - "effect": -0.0124, - "n": 10 + "mean": 0.9375, + "effect": 0.0098, + "n": 12 }, "on": { - "mean": 0.9134, - "effect": 0.001, - "n": 125 + "mean": 0.9269, + "effect": -0.0008, + "n": 147 } }, - "spread": 0.0134 + "spread": 0.0106 }, - "effort": { + "linter": { "values": { - "high": { - "mean": 0.9121, - "effect": -0.0003, - "n": 126 + "off": { + "mean": 0.9286, + "effect": 0.0008, + "n": 14 }, - "max": { - "mean": 0.9167, - "effect": 0.0042, - "n": 9 + "on": { + "mean": 0.9277, + "effect": -0.0001, + "n": 145 } }, - "spread": 0.0046 + "spread": 0.0009 }, - "human_language": { + "playwright": { "values": { - "en": { - "mean": 0.9121, - "effect": -0.0003, - "n": 126 + "off": { + "mean": 0.9286, + "effect": 0.0008, + "n": 14 }, - "es": { - "mean": 0.9167, - "effect": 0.0042, - "n": 9 + "on": { + "mean": 0.9277, + "effect": -0.0001, + "n": 145 } }, - "spread": 0.0046 + "spread": 0.0009 } } \ No newline at end of file diff --git a/results/analysis/main_effects_transcript.json b/results/analysis/main_effects_transcript.json @@ -3,17 +3,17 @@ "values": { "haiku": { "mean": 0.7895, - "effect": -0.1157, + "effect": -0.13, "n": 57 }, "opus": { "mean": 1.0, - "effect": 0.0948, - "n": 27 + "effect": 0.0805, + "n": 51 }, "sonnet": { "mean": 0.9843, - "effect": 0.0791, + "effect": 0.0648, "n": 51 } }, @@ -23,245 +23,245 @@ "values": { "2.1.91 (Claude Code)": { "mean": 0.7843, - "effect": -0.1209, + "effect": -0.1352, "n": 51 }, "2.1.92 (Claude Code)": { - "mean": 0.9786, - "effect": 0.0734, - "n": 84 + "mean": 0.9833, + "effect": 0.0638, + "n": 108 } }, - "spread": 0.1943 + "spread": 0.199 }, "language": { "values": { "javascript": { "mean": 1.0, - "effect": 0.0948, + "effect": 0.0805, "n": 9 }, "typescript": { - "mean": 0.8936, - "effect": -0.0115, - "n": 118 + "mean": 0.9116, + "effect": -0.0079, + "n": 142 }, "unspecified": { "mean": 0.9688, - "effect": 0.0636, + "effect": 0.0493, "n": 8 } }, - "spread": 0.1064 + "spread": 0.0884 }, "playwright": { "values": { "off": { - "mean": 0.8273, - "effect": -0.0779, - "n": 11 + "mean": 0.8643, + "effect": -0.0552, + "n": 14 }, "on": { - "mean": 0.9121, - "effect": 0.0069, - "n": 124 + "mean": 0.9248, + "effect": 0.0053, + "n": 145 } }, - "spread": 0.0848 + "spread": 0.0605 }, "linter": { "values": { "off": { - "mean": 0.8318, - "effect": -0.0734, - "n": 11 + "mean": 0.8679, + "effect": -0.0516, + "n": 14 }, "on": { - "mean": 0.9117, - "effect": 0.0065, - "n": 124 + "mean": 0.9245, + "effect": 0.005, + "n": 145 } }, - "spread": 0.0799 + "spread": 0.0566 }, - "tool_glob": { + "tool_read": { "values": { "off": { - "mean": 0.8444, - "effect": -0.0607, - "n": 9 + "mean": 0.875, + "effect": -0.0445, + "n": 12 }, "on": { - "mean": 0.9095, - "effect": 0.0043, - "n": 126 + "mean": 0.9231, + "effect": 0.0036, + "n": 147 } }, - "spread": 0.0651 + "spread": 0.0481 }, - "sub_agents": { + "max_budget": { "values": { - "off": { - "mean": 0.85, - "effect": -0.0552, - "n": 11 + "high": { + "mean": 0.8792, + "effect": -0.0403, + "n": 12 }, - "on": { - "mean": 0.9101, - "effect": 0.0049, - "n": 124 + "low": { + "mean": 0.9228, + "effect": 0.0033, + "n": 147 } }, - "spread": 0.0601 + "spread": 0.0436 }, - "tool_grep": { + "tool_edit": { "values": { "off": { - "mean": 0.85, - "effect": -0.0552, - "n": 9 + "mean": 0.8792, + "effect": -0.0403, + "n": 12 }, "on": { - "mean": 0.9091, - "effect": 0.0039, - "n": 126 + "mean": 0.9228, + "effect": 0.0033, + "n": 147 } }, - "spread": 0.0591 + "spread": 0.0436 }, - "tool_edit": { + "tool_write": { "values": { "off": { - "mean": 0.855, - "effect": -0.0502, - "n": 10 + "mean": 0.8792, + "effect": -0.0403, + "n": 12 }, "on": { - "mean": 0.9092, - "effect": 0.004, - "n": 125 + "mean": 0.9228, + "effect": 0.0033, + "n": 147 } }, - "spread": 0.0542 + "spread": 0.0436 }, - "context_file": { + "sub_agents": { "values": { - "none": { - "mean": 0.9087, - "effect": 0.0035, - "n": 126 + "off": { + "mean": 0.8821, + "effect": -0.0374, + "n": 14 }, - "provided": { - "mean": 0.8556, - "effect": -0.0496, - "n": 9 + "on": { + "mean": 0.9231, + "effect": 0.0036, + "n": 145 } }, - "spread": 0.0531 + "spread": 0.041 }, - "web_search": { + "tool_glob": { "values": { "off": { - "mean": 0.86, - "effect": -0.0452, - "n": 10 + "mean": 0.8833, + "effect": -0.0362, + "n": 12 }, "on": { - "mean": 0.9088, - "effect": 0.0036, - "n": 125 + "mean": 0.9224, + "effect": 0.003, + "n": 147 } }, - "spread": 0.0488 + "spread": 0.0391 }, - "max_budget": { + "tool_grep": { "values": { - "high": { - "mean": 0.8682, - "effect": -0.037, - "n": 11 + "off": { + "mean": 0.8875, + "effect": -0.032, + "n": 12 }, - "low": { - "mean": 0.9085, - "effect": 0.0033, - "n": 124 + "on": { + "mean": 0.9221, + "effect": 0.0026, + "n": 147 } }, - "spread": 0.0403 + "spread": 0.0346 }, - "tool_read": { + "context_file": { "values": { - "off": { - "mean": 0.875, - "effect": -0.0302, - "n": 12 + "none": { + "mean": 0.9218, + "effect": 0.0023, + "n": 147 }, - "on": { - "mean": 0.9081, - "effect": 0.0029, - "n": 123 + "provided": { + "mean": 0.8917, + "effect": -0.0278, + "n": 12 } }, - "spread": 0.0331 + "spread": 0.0301 }, - "tool_write": { + "web_search": { "values": { "off": { - "mean": 0.8792, - "effect": -0.026, - "n": 12 + "mean": 0.8923, + "effect": -0.0272, + "n": 13 }, "on": { - "mean": 0.9077, - "effect": 0.0025, - "n": 123 + "mean": 0.9219, + "effect": 0.0024, + "n": 146 } }, - "spread": 0.0285 + "spread": 0.0296 }, - "human_language": { + "prompt_style": { "values": { - "en": { - "mean": 0.904, - "effect": -0.0012, - "n": 126 + "detailed": { + "mean": 0.895, + "effect": -0.0245, + "n": 10 }, - "es": { - "mean": 0.9222, - "effect": 0.017, - "n": 9 + "simple": { + "mean": 0.9211, + "effect": 0.0016, + "n": 149 } }, - "spread": 0.0182 + "spread": 0.0261 }, "effort": { "values": { "high": { - "mean": 0.9044, - "effect": -0.0008, - "n": 126 + "mean": 0.9197, + "effect": 0.0002, + "n": 150 }, "max": { "mean": 0.9167, - "effect": 0.0115, + "effect": -0.0028, "n": 9 } }, - "spread": 0.0123 + "spread": 0.003 }, - "prompt_style": { + "human_language": { "values": { - "detailed": { - "mean": 0.895, - "effect": -0.0102, - "n": 10 + "en": { + "mean": 0.9193, + "effect": -0.0002, + "n": 150 }, - "simple": { - "mean": 0.906, - "effect": 0.0008, - "n": 125 + "es": { + "mean": 0.9222, + "effect": 0.0027, + "n": 9 } }, - "spread": 0.011 + "spread": 0.0029 } } \ No newline at end of file diff --git a/results/index.jsonl b/results/index.jsonl @@ -15,12 +15,16 @@ {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"haiku","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-03T20:37:10.970114+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"haiku","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-03T20:37:09.900301+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"haiku","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-03T20:35:10.729588+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:43:50.904766+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:45:00.368788+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:48:01.764611+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"sonnet","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T05:43:46.980046+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"sonnet","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T05:44:43.169610+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"sonnet","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T19:39:10.870002+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"haiku","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-03T20:46:26.400041+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"haiku","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-03T20:44:48.686432+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"haiku","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-03T20:45:11.072141+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T22:00:04.904763+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T19:56:29.452347+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T19:56:26.634211+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"sonnet","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T06:15:30.738305+00:00"} @@ -55,16 +59,33 @@ {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"haiku","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-03T19:14:26.851817+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"haiku","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-03T19:11:09.488782+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"haiku","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-03T19:12:36.135542+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:48:37.261266+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:49:18.421793+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:49:30.178832+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T06:41:08.954745+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T06:41:10.237903+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T06:43:29.313548+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:53:52.919817+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:56:10.524909+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:56:01.783667+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:39:08.458092+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T19:51:57.541240+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:39:11.755473+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:39:35.240914+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:39:36.296175+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:38:59.162109+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:43:19.539022+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:44:34.164279+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:45:47.860125+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run1","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on","completed_at":"2026-04-05T19:47:23.981479+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run2","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on","completed_at":"2026-04-05T19:48:02.042012+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run3","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on","completed_at":"2026-04-05T19:46:32.890087+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run1","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on","completed_at":"2026-04-05T19:47:15.615085+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run2","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on","completed_at":"2026-04-05T19:50:03.614395+00:00"} -{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run3","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on","completed_at":"2026-04-05T19:52:01.909530+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run3","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on","completed_at":"2026-04-05T21:43:37.223458+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off","completed_at":"2026-04-05T21:55:43.014791+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run2","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off","completed_at":"2026-04-05T21:59:19.246820+00:00"} +{"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run3","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off","completed_at":"2026-04-05T22:02:47.959579+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-04T21:00:53.756188+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-04T21:22:28.664145+00:00"} {"run_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"opus","cell_id":"tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-04T21:00:10.672556+00:00"} @@ -130,31 +151,9 @@ {"run_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"haiku","cell_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-03T20:40:57.297570+00:00"} {"run_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"haiku","cell_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-03T20:41:10.072835+00:00"} {"run_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"haiku","cell_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-03T20:38:44.044823+00:00"} +{"run_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"opus","cell_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:58:12.019082+00:00"} +{"run_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"opus","cell_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:50:07.704550+00:00"} +{"run_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"opus","cell_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T21:54:23.048656+00:00"} {"run_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1","task":"tetris","model":"sonnet","cell_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T06:02:26.660332+00:00"} {"run_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2","task":"tetris","model":"sonnet","cell_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T06:03:58.503906+00:00"} {"run_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3","task":"tetris","model":"sonnet","cell_id":"tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on","completed_at":"2026-04-05T05:58:32.199764+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:38:59.162109+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:39:11.755473+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:39:35.240914+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:39:36.296175+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:39:08.458092+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run1", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:43:19.539022+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run2", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:44:34.164279+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run3", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on", "completed_at": "2026-04-05T21:43:37.223458+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:45:00.368788+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:43:50.904766+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run3", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:45:47.860125+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:48:37.261266+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:48:01.764611+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:49:18.421793+00:00"} -{"run_id": "tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:50:07.704550+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:49:30.178832+00:00"} -{"run_id": "tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:54:23.048656+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:53:52.919817+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:56:01.783667+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:56:10.524909+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off", "completed_at": "2026-04-05T21:55:43.014791+00:00"} -{"run_id": "tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=provided_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T21:58:12.019082+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run2", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off", "completed_at": "2026-04-05T21:59:19.246820+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=high_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on", "completed_at": "2026-04-05T22:00:04.904763+00:00"} -{"run_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run3", "task": "tetris", "model": "opus", "cell_id": "tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off", "completed_at": "2026-04-05T22:02:47.959579+00:00"} diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json @@ -139,7 +139,7 @@ "left": "ArrowLeft", "right": "ArrowRight", "down": "ArrowDown", - "rotate": "z", + "rotate": "x", "drop": "Space" }, "start_mechanism": "auto", @@ -184,7 +184,7 @@ { "name": "all_pieces_rotate", "pass": true, - "detail": "rotated: [unknown] failed: [] (tested 1 piece types in 60 attempts)" + "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" }, { "name": "hard_drop", @@ -204,7 +204,7 @@ { "name": "multiple_pieces", "pass": true, - "detail": "grid accumulated cells: 28 -> 44" + "detail": "grid accumulated cells: 16 -> 36" }, { "name": "line_clear", @@ -214,7 +214,7 @@ { "name": "score_changes", "pass": false, - "detail": "score did not increase: [152] -> no change after polling" + "detail": "score did not increase: [186] -> no change after polling" }, { "name": "game_over", @@ -224,7 +224,7 @@ { "name": "playable_30s", "pass": true, - "detail": "played for 30s, placed 80 pieces, no crashes" + "detail": "played for 30s, placed 43 pieces, no crashes" } ], "summary": { @@ -234,14 +234,14 @@ "score": 0.94 }, "gameplay": { - "pieces_placed": 134, + "pieces_placed": 94, "lines_cleared": 1, - "max_score_observed": 188, + "max_score_observed": 120, "play_duration_seconds": 30, "errors_during_play": 0 }, "performance": { - "load_time_ms": 326 + "load_time_ms": 1146 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json @@ -12,7 +12,7 @@ "left": "ArrowLeft", "right": "ArrowRight", "down": "ArrowDown", - "rotate": "z", + "rotate": "x", "drop": "Space" }, "start_mechanism": "auto", @@ -57,7 +57,7 @@ { "name": "all_pieces_rotate", "pass": true, - "detail": "rotated: [unknown] failed: [] (tested 1 piece types in 60 attempts)" + "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" }, { "name": "hard_drop", @@ -77,7 +77,7 @@ { "name": "multiple_pieces", "pass": true, - "detail": "grid accumulated cells: 28 -> 44" + "detail": "grid accumulated cells: 16 -> 36" }, { "name": "line_clear", @@ -87,7 +87,7 @@ { "name": "score_changes", "pass": false, - "detail": "score did not increase: [152] -> no change after polling" + "detail": "score did not increase: [186] -> no change after polling" }, { "name": "game_over", @@ -97,7 +97,7 @@ { "name": "playable_30s", "pass": true, - "detail": "played for 30s, placed 80 pieces, no crashes" + "detail": "played for 30s, placed 43 pieces, no crashes" } ], "summary": { @@ -107,14 +107,14 @@ "score": 0.94 }, "gameplay": { - "pieces_placed": 134, + "pieces_placed": 94, "lines_cleared": 1, - "max_score_observed": 188, + "max_score_observed": 120, "play_duration_seconds": 30, "errors_during_play": 0 }, "performance": { - "load_time_ms": 326 + "load_time_ms": 1146 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json @@ -81,18 +81,18 @@ }, { "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" + "pass": false, + "detail": "exception: keyboard.press: Test timeout of 180000ms exceeded." }, { "name": "score_changes", "pass": false, - "detail": "score did not increase: [0] -> no change after polling" + "detail": "could not read score element" }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", @@ -102,19 +102,19 @@ ], "summary": { "total": 16, - "passed": 6, - "failed": 10, - "score": 0.38 + "passed": 4, + "failed": 12, + "score": 0.25 }, "gameplay": { - "pieces_placed": 110, - "lines_cleared": 1, + "pieces_placed": 100, + "lines_cleared": 0, "max_score_observed": 0, "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 119 + "load_time_ms": 1087 }, "accessibility": { "issues": [], diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json @@ -121,134 +121,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.88, - "total": 16, - "passed": 14, - "failed": 2, - "report": { - "implementation": { - "renderer": "dom", - "grid_detected": true, - "grid_bounds": { - "x": 362.5, - "y": 125, - "width": 325, - "height": 635 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "z", - "drop": "Space" - }, - "start_mechanism": "auto", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via auto" - }, - { - "name": "auto_drop", - "pass": true, - "detail": "grid state changed after 5s with no input" - }, - { - "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": true, - "detail": "rotated: [other, I] failed: [] (tested 2 piece types in 60 attempts)" - }, - { - "name": "hard_drop", - "pass": true, - "detail": "piece immediately dropped and new piece appeared" - }, - { - "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" - }, - { - "name": "multiple_pieces", - "pass": true, - "detail": "game still responding after 10 piece drops" - }, - { - "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [0] -> no change after polling" - }, - { - "name": "game_over", - "pass": false, - "detail": "could not trigger or detect game over" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 80 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 14, - "failed": 2, - "score": 0.88 - }, - "gameplay": { - "pieces_placed": 167, - "lines_cleared": 1, - "max_score_observed": 0, - "play_duration_seconds": 30, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 132 - }, - "accessibility": { - "issues": [], - "issue_count": 0, - "pass": true - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.805 + "score": 0.53 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json @@ -12,7 +12,7 @@ "left": "ArrowLeft", "right": "ArrowRight", "down": "ArrowDown", - "rotate": "z", + "rotate": "ArrowUp", "drop": "Space" }, "start_mechanism": "auto", @@ -57,7 +57,7 @@ { "name": "all_pieces_rotate", "pass": true, - "detail": "rotated: [other, I] failed: [] (tested 2 piece types in 60 attempts)" + "detail": "rotated: [other, unknown] failed: [] (tested 2 piece types in 60 attempts)" }, { "name": "hard_drop", @@ -92,29 +92,29 @@ { "name": "game_over", "pass": false, - "detail": "could not trigger or detect game over" + "detail": "exception: keyboard.press: Test timeout of 180000ms exceeded." }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 80 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 14, - "failed": 2, - "score": 0.88 + "passed": 13, + "failed": 3, + "score": 0.81 }, "gameplay": { - "pieces_placed": 167, + "pieces_placed": 110, "lines_cleared": 1, "max_score_observed": 0, - "play_duration_seconds": 30, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 132 + "load_time_ms": 1076 }, "accessibility": { "issues": [], diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json @@ -36,7 +36,7 @@ "note": "not applicable for javascript" }, "performance": { - "bundle_size_bytes": 124933, + "bundle_size_bytes": 125289, "size_under_512kb": true }, "score": 0.67 @@ -121,138 +121,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.56, - "total": 16, - "passed": 9, - "failed": 7, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 50, - "height": 100 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "x", - "drop": "Space" - }, - "start_mechanism": "auto", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via auto" - }, - { - "name": "auto_drop", - "pass": true, - "detail": "pixels changed after 5s with no input" - }, - { - "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_down", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": false, - "detail": "could not detect any piece rotations" - }, - { - "name": "hard_drop", - "pass": false, - "detail": "no change detected after hard drop key" - }, - { - "name": "piece_locks", - "pass": false, - "detail": "could not verify piece locking at bottom" - }, - { - "name": "new_piece_spawns", - "pass": false, - "detail": "could not detect new piece at top" - }, - { - "name": "multiple_pieces", - "pass": false, - "detail": "grid did not accumulate filled cells" - }, - { - "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [232] -> no change after polling" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 78 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 9, - "failed": 7, - "score": 0.56 - }, - "gameplay": { - "pieces_placed": 188, - "lines_cleared": 1, - "max_score_observed": 166, - "play_duration_seconds": 30, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 71 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 3, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.7612 + "score": 0.5862 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json @@ -12,7 +12,7 @@ "left": "ArrowLeft", "right": "ArrowRight", "down": "ArrowDown", - "rotate": "x", + "rotate": "z", "drop": "Space" }, "start_mechanism": "auto", @@ -87,42 +87,38 @@ { "name": "score_changes", "pass": false, - "detail": "score did not increase: [232] -> no change after polling" + "detail": "score did not increase: [186] -> no change after polling" }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 78 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 9, - "failed": 7, - "score": 0.56 + "passed": 7, + "failed": 9, + "score": 0.44 }, "gameplay": { - "pieces_placed": 188, + "pieces_placed": 101, "lines_cleared": 1, - "max_score_observed": 166, - "play_duration_seconds": 30, + "max_score_observed": 0, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 71 + "load_time_ms": 1212 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 3, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json @@ -36,7 +36,7 @@ "note": "not applicable for javascript" }, "performance": { - "bundle_size_bytes": 112631, + "bundle_size_bytes": 112984, "size_under_512kb": true }, "score": 0.67 @@ -236,7 +236,7 @@ "errors_during_play": 0 }, "performance": { - "load_time_ms": 253 + "load_time_ms": 4164 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json @@ -109,7 +109,7 @@ "errors_during_play": 0 }, "performance": { - "load_time_ms": 253 + "load_time_ms": 4164 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json @@ -36,7 +36,7 @@ "note": "not applicable for javascript" }, "performance": { - "bundle_size_bytes": 115465, + "bundle_size_bytes": 115820, "size_under_512kb": true }, "score": 0.67 @@ -236,7 +236,7 @@ "errors_during_play": 0 }, "performance": { - "load_time_ms": 24 + "load_time_ms": 2636 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json @@ -109,7 +109,7 @@ "errors_during_play": 0 }, "performance": { - "load_time_ms": 24 + "load_time_ms": 2636 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json @@ -36,7 +36,7 @@ "note": "not applicable for javascript" }, "performance": { - "bundle_size_bytes": 115797, + "bundle_size_bytes": 116153, "size_under_512kb": true }, "score": 0.67 @@ -236,7 +236,7 @@ "errors_during_play": 0 }, "performance": { - "load_time_ms": 47 + "load_time_ms": 5201 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json @@ -109,7 +109,7 @@ "errors_during_play": 0 }, "performance": { - "load_time_ms": 47 + "load_time_ms": 5201 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json @@ -36,7 +36,7 @@ "note": "not applicable for javascript" }, "performance": { - "bundle_size_bytes": 154958, + "bundle_size_bytes": 188835, "size_under_512kb": true }, "score": 0.67 @@ -121,137 +121,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.81, - "total": 16, - "passed": 13, - "failed": 3, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 320, - "height": 640 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "ArrowUp", - "drop": "Space" - }, - "start_mechanism": "enter", - "score_element_found": false - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via enter" - }, - { - "name": "auto_drop", - "pass": true, - "detail": "grid state changed after 5s with no input" - }, - { - "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": false, - "detail": "rotated: [] failed: [unknown] (tested 1 piece types in 60 attempts)" - }, - { - "name": "hard_drop", - "pass": true, - "detail": "piece immediately dropped and new piece appeared" - }, - { - "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" - }, - { - "name": "multiple_pieces", - "pass": true, - "detail": "game still responding after 10 piece drops" - }, - { - "name": "line_clear", - "pass": true, - "detail": "10 line(s) cleared during AI play" - }, - { - "name": "score_changes", - "pass": false, - "detail": "no score element found and no number changed" - }, - { - "name": "game_over", - "pass": false, - "detail": "could not trigger or detect game over" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 85 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 13, - "failed": 3, - "score": 0.81 - }, - "gameplay": { - "pieces_placed": 126, - "lines_cleared": 37, - "max_score_observed": 0, - "play_duration_seconds": 30, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 35 - }, - "accessibility": { - "issues": [ - "no headings found", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.7831 + "score": 0.53 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json @@ -82,7 +82,7 @@ { "name": "line_clear", "pass": true, - "detail": "10 line(s) cleared during AI play" + "detail": "5 line(s) cleared during AI play" }, { "name": "score_changes", @@ -92,36 +92,33 @@ { "name": "game_over", "pass": false, - "detail": "could not trigger or detect game over" + "detail": "exception: page.screenshot: Test timeout of 180000ms exceeded.\nCall log:\n\u001b[2m - taking page screenshot\u001b[22m\n" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 85 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 13, - "failed": 3, - "score": 0.81 + "passed": 12, + "failed": 4, + "score": 0.75 }, "gameplay": { - "pieces_placed": 126, - "lines_cleared": 37, + "pieces_placed": 25, + "lines_cleared": 5, "max_score_observed": 0, - "play_duration_seconds": 30, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 35 + "load_time_ms": 2636 }, "accessibility": { - "issues": [ - "no headings found", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json @@ -36,7 +36,7 @@ "note": "not applicable for javascript" }, "performance": { - "bundle_size_bytes": 105072, + "bundle_size_bytes": 105425, "size_under_512kb": true }, "score": 0.67 @@ -121,137 +121,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.88, - "total": 16, - "passed": 14, - "failed": 2, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 300, - "height": 600 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "ArrowUp", - "drop": "Space" - }, - "start_mechanism": "click_canvas", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via button" - }, - { - "name": "auto_drop", - "pass": true, - "detail": "grid state changed after 5s with no input" - }, - { - "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": true, - "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" - }, - { - "name": "hard_drop", - "pass": true, - "detail": "piece immediately dropped and new piece appeared" - }, - { - "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" - }, - { - "name": "multiple_pieces", - "pass": true, - "detail": "grid accumulated cells: 20 -> 39" - }, - { - "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [0] -> no change after polling" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": false, - "detail": "380 console errors, 0 play errors during 30s" - } - ], - "summary": { - "total": 16, - "passed": 14, - "failed": 2, - "score": 0.88 - }, - "gameplay": { - "pieces_placed": 127, - "lines_cleared": 1, - "max_score_observed": 0, - "play_duration_seconds": 30, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 24 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.805 + "score": 0.53 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=javascript_linter=on_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json @@ -15,7 +15,7 @@ "rotate": "ArrowUp", "drop": "Space" }, - "start_mechanism": "click_canvas", + "start_mechanism": "auto", "score_element_found": true }, "tests": [ @@ -72,56 +72,53 @@ { "name": "new_piece_spawns", "pass": true, - "detail": "new piece detected at top of grid" + "detail": "new piece detected after drop" }, { "name": "multiple_pieces", "pass": true, - "detail": "grid accumulated cells: 20 -> 39" + "detail": "grid accumulated cells: 24 -> 45" }, { "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "score_changes", "pass": false, - "detail": "score did not increase: [0] -> no change after polling" + "detail": "could not read score element" }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", "pass": false, - "detail": "380 console errors, 0 play errors during 30s" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 14, - "failed": 2, - "score": 0.88 + "passed": 12, + "failed": 4, + "score": 0.75 }, "gameplay": { - "pieces_placed": 127, - "lines_cleared": 1, + "pieces_placed": 11, + "lines_cleared": 0, "max_score_observed": 0, - "play_duration_seconds": 30, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 24 + "load_time_ms": 688 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=detailed_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=detailed_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/eval_results.json @@ -36,7 +36,7 @@ "error": "no tsconfig.json" }, "performance": { - "bundle_size_bytes": 214323, + "bundle_size_bytes": 214327, "size_under_512kb": true }, "score": 0.33 @@ -124,137 +124,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.94, - "total": 16, - "passed": 15, - "failed": 1, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 300, - "height": 600 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "z", - "drop": "Space" - }, - "start_mechanism": "auto", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via auto" - }, - { - "name": "auto_drop", - "pass": true, - "detail": "grid state changed after 5s with no input" - }, - { - "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": true, - "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" - }, - { - "name": "hard_drop", - "pass": true, - "detail": "piece immediately dropped and new piece appeared" - }, - { - "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" - }, - { - "name": "multiple_pieces", - "pass": true, - "detail": "grid accumulated cells: 16 -> 50" - }, - { - "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [0] -> no change after polling" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 93 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 15, - "failed": 1, - "score": 0.94 - }, - "gameplay": { - "pieces_placed": 144, - "lines_cleared": 1, - "max_score_observed": 0, - "play_duration_seconds": 30, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 21 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.67 + "score": 0.3763 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=detailed_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=detailed_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/gameplay-bot-report.json @@ -56,72 +56,69 @@ }, { "name": "all_pieces_rotate", - "pass": true, - "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "hard_drop", - "pass": true, - "detail": "piece immediately dropped and new piece appeared" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "multiple_pieces", - "pass": true, - "detail": "grid accumulated cells: 16 -> 50" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "score_changes", "pass": false, - "detail": "score did not increase: [0] -> no change after polling" + "detail": "could not read score element" }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 93 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 15, - "failed": 1, - "score": 0.94 + "passed": 7, + "failed": 9, + "score": 0.44 }, "gameplay": { - "pieces_placed": 144, - "lines_cleared": 1, + "pieces_placed": 47, + "lines_cleared": 0, "max_score_observed": 0, - "play_duration_seconds": 30, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 21 + "load_time_ms": 6329 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run1/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run1/eval_results.json @@ -41,7 +41,7 @@ "error": "no tsconfig.json" }, "performance": { - "bundle_size_bytes": 162874, + "bundle_size_bytes": 162873, "size_under_512kb": true }, "score": 0.33 @@ -128,136 +128,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.69, - "total": 16, - "passed": 11, - "failed": 5, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 300, - "height": 600 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "x", - "drop": "Space" - }, - "start_mechanism": "auto", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via auto" - }, - { - "name": "auto_drop", - "pass": true, - "detail": "grid state changed after 5s with no input" - }, - { - "name": "move_left", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": false, - "detail": "no change detected after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": false, - "detail": "rotated: [] failed: [other] (tested 1 piece types in 60 attempts)" - }, - { - "name": "hard_drop", - "pass": true, - "detail": "piece immediately dropped and new piece appeared" - }, - { - "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" - }, - { - "name": "multiple_pieces", - "pass": true, - "detail": "grid accumulated cells: 16 -> 29" - }, - { - "name": "line_clear", - "pass": true, - "detail": "8 line(s) cleared during AI play" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [198] -> no change after polling" - }, - { - "name": "game_over", - "pass": false, - "detail": "could not trigger or detect game over" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 87 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 11, - "failed": 5, - "score": 0.69 - }, - "gameplay": { - "pieces_placed": 128, - "lines_cleared": 36, - "max_score_observed": 164, - "play_duration_seconds": 30, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 21 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role" - ], - "issue_count": 1, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.645 + "score": 0.4294 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run1/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run1/gameplay-bot-report.json @@ -36,8 +36,8 @@ }, { "name": "move_left", - "pass": false, - "detail": "no change detected after key press" + "pass": true, + "detail": "grid state changed after key press" }, { "name": "move_right", @@ -51,13 +51,13 @@ }, { "name": "rotate", - "pass": false, - "detail": "no change detected after rotate key" + "pass": true, + "detail": "piece shape changed after rotate key" }, { "name": "all_pieces_rotate", "pass": false, - "detail": "rotated: [] failed: [other] (tested 1 piece types in 60 attempts)" + "detail": "rotated: [] failed: [unknown] (tested 1 piece types in 60 attempts)" }, { "name": "hard_drop", @@ -72,55 +72,53 @@ { "name": "new_piece_spawns", "pass": true, - "detail": "new piece detected at top of grid" + "detail": "new piece appeared at top after delay" }, { "name": "multiple_pieces", "pass": true, - "detail": "grid accumulated cells: 16 -> 29" + "detail": "game still responding after 10 piece drops" }, { "name": "line_clear", "pass": true, - "detail": "8 line(s) cleared during AI play" + "detail": "4 line(s) cleared during AI play" }, { "name": "score_changes", "pass": false, - "detail": "score did not increase: [198] -> no change after polling" + "detail": "score did not increase: [155] -> no change after polling" }, { "name": "game_over", "pass": false, - "detail": "could not trigger or detect game over" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 87 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 11, - "failed": 5, - "score": 0.69 + "passed": 12, + "failed": 4, + "score": 0.75 }, "gameplay": { - "pieces_placed": 128, - "lines_cleared": 36, - "max_score_observed": 164, - "play_duration_seconds": 30, + "pieces_placed": 30, + "lines_cleared": 4, + "max_score_observed": 0, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 21 + "load_time_ms": 6258 }, "accessibility": { - "issues": [ - "canvas without aria-label or role" - ], - "issue_count": 1, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run2/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run2/eval_results.json @@ -41,7 +41,7 @@ "error": "no tsconfig.json" }, "performance": { - "bundle_size_bytes": 215458, + "bundle_size_bytes": 215459, "size_under_512kb": true }, "score": 0.33 @@ -128,137 +128,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.81, - "total": 16, - "passed": 13, - "failed": 3, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 240, - "height": 400 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "ArrowUp", - "drop": "Space" - }, - "start_mechanism": "auto", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via auto" - }, - { - "name": "auto_drop", - "pass": true, - "detail": "grid state changed after 5s with no input" - }, - { - "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": false, - "detail": "no change detected after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": true, - "detail": "rotated: [I] failed: [] (tested 1 piece types in 60 attempts)" - }, - { - "name": "hard_drop", - "pass": true, - "detail": "piece immediately dropped and new piece appeared" - }, - { - "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" - }, - { - "name": "multiple_pieces", - "pass": false, - "detail": "grid did not accumulate filled cells" - }, - { - "name": "line_clear", - "pass": true, - "detail": "1 line(s) cleared during AI play" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [230] -> no change after polling" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 78 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 13, - "failed": 3, - "score": 0.81 - }, - "gameplay": { - "pieces_placed": 128, - "lines_cleared": 2, - "max_score_observed": 232, - "play_duration_seconds": 30, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 21 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.6138 + "score": 0.3606 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run2/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run2/gameplay-bot-report.json @@ -16,7 +16,7 @@ "drop": "Space" }, "start_mechanism": "auto", - "score_element_found": true + "score_element_found": false }, "tests": [ { @@ -51,13 +51,13 @@ }, { "name": "rotate", - "pass": false, - "detail": "no change detected after rotate key" + "pass": true, + "detail": "piece shape changed after rotate key" }, { "name": "all_pieces_rotate", "pass": true, - "detail": "rotated: [I] failed: [] (tested 1 piece types in 60 attempts)" + "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" }, { "name": "hard_drop", @@ -76,18 +76,18 @@ }, { "name": "multiple_pieces", - "pass": false, - "detail": "grid did not accumulate filled cells" + "pass": true, + "detail": "grid accumulated cells: 13 -> 44" }, { "name": "line_clear", "pass": true, - "detail": "1 line(s) cleared during AI play" + "detail": "line cleared via strategic placement" }, { "name": "score_changes", "pass": false, - "detail": "score did not increase: [230] -> no change after polling" + "detail": "score did not increase: [278] -> no change after polling" }, { "name": "game_over", @@ -96,32 +96,29 @@ }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 78 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 13, - "failed": 3, - "score": 0.81 + "passed": 14, + "failed": 2, + "score": 0.88 }, "gameplay": { - "pieces_placed": 128, - "lines_cleared": 2, - "max_score_observed": 232, - "play_duration_seconds": 30, + "pieces_placed": 33, + "lines_cleared": 1, + "max_score_observed": 0, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 21 + "load_time_ms": 819 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run3/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run3/eval_results.json @@ -243,7 +243,7 @@ "errors_during_play": 0 }, "performance": { - "load_time_ms": 97 + "load_time_ms": 416 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run3/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=off_tool_glob=off_tool_grep=off_tool_read=off_tool_write=off_web_search=off_run3/gameplay-bot-report.json @@ -109,7 +109,7 @@ "errors_during_play": 0 }, "performance": { - "load_time_ms": 97 + "load_time_ms": 416 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=off_run1/gameplay-bot-report.json @@ -67,61 +67,58 @@ { "name": "piece_locks", "pass": false, - "detail": "could not verify piece locking at bottom" + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "new_piece_spawns", "pass": false, - "detail": "could not detect new piece at top" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "multiple_pieces", "pass": false, - "detail": "grid did not accumulate filled cells" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "score_changes", "pass": false, - "detail": "score did not increase: [0] -> no change after polling" + "detail": "could not read score element" }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 78 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 7, - "failed": 9, - "score": 0.44 + "passed": 4, + "failed": 12, + "score": 0.25 }, "gameplay": { - "pieces_placed": 188, - "lines_cleared": 1, + "pieces_placed": 60, + "lines_cleared": 0, "max_score_observed": 0, - "play_duration_seconds": 30, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 82 + "load_time_ms": 750 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json @@ -127,137 +127,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.44, - "total": 16, - "passed": 7, - "failed": 9, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 60, - "height": 120 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "ArrowUp", - "drop": "Space" - }, - "start_mechanism": "auto", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via auto" - }, - { - "name": "auto_drop", - "pass": true, - "detail": "pixels changed after 5s with no input" - }, - { - "name": "move_left", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_down", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": false, - "detail": "could not detect any piece rotations" - }, - { - "name": "hard_drop", - "pass": false, - "detail": "no change detected after hard drop key" - }, - { - "name": "piece_locks", - "pass": false, - "detail": "could not verify piece locking at bottom" - }, - { - "name": "new_piece_spawns", - "pass": false, - "detail": "could not detect new piece at top" - }, - { - "name": "multiple_pieces", - "pass": false, - "detail": "grid did not accumulate filled cells" - }, - { - "name": "line_clear", - "pass": true, - "detail": "4 line(s) cleared during AI play" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [0] -> no change after polling" - }, - { - "name": "game_over", - "pass": false, - "detail": "could not trigger or detect game over" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 93 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 7, - "failed": 9, - "score": 0.44 - }, - "gameplay": { - "pieces_placed": 193, - "lines_cleared": 9, - "max_score_observed": 0, - "play_duration_seconds": 30, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 27 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.6737 + "score": 0.5363 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json @@ -9,10 +9,10 @@ "height": 120 }, "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "ArrowUp", + "left": "a", + "right": "d", + "down": "s", + "rotate": "z", "drop": "Space" }, "start_mechanism": "auto", @@ -32,12 +32,12 @@ { "name": "auto_drop", "pass": true, - "detail": "pixels changed after 5s with no input" + "detail": "grid state changed after 5s with no input" }, { "name": "move_left", - "pass": false, - "detail": "no change detected after key press" + "pass": true, + "detail": "grid state changed after key press" }, { "name": "move_right", @@ -67,61 +67,58 @@ { "name": "piece_locks", "pass": false, - "detail": "could not verify piece locking at bottom" + "detail": "exception: keyboard.press: Test timeout of 180000ms exceeded." }, { "name": "new_piece_spawns", "pass": false, - "detail": "could not detect new piece at top" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "multiple_pieces", "pass": false, - "detail": "grid did not accumulate filled cells" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "line_clear", - "pass": true, - "detail": "4 line(s) cleared during AI play" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "score_changes", "pass": false, - "detail": "score did not increase: [0] -> no change after polling" + "detail": "could not read score element" }, { "name": "game_over", "pass": false, - "detail": "could not trigger or detect game over" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 93 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 7, - "failed": 9, - "score": 0.44 + "passed": 6, + "failed": 10, + "score": 0.38 }, "gameplay": { - "pieces_placed": 193, - "lines_cleared": 9, + "pieces_placed": 60, + "lines_cleared": 0, "max_score_observed": 0, - "play_duration_seconds": 30, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 27 + "load_time_ms": 1515 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json @@ -130,7 +130,128 @@ "gameplay_bot": { "pass": false, "score": 0, - "error": "Gameplay bot timed out after 180 seconds" + "total": 16, + "passed": 0, + "failed": 16, + "report": { + "implementation": { + "renderer": "unknown", + "grid_detected": false, + "grid_bounds": null, + "controls": { + "left": "ArrowLeft", + "right": "ArrowRight", + "down": "ArrowDown", + "rotate": "ArrowUp", + "drop": "Space" + }, + "start_mechanism": "unknown", + "score_element_found": false + }, + "tests": [ + { + "name": "game_loads", + "pass": false, + "detail": "exception: page.goto: Timeout 5000ms exceeded.\nCall log:\n\u001b[2m - navigating to \"http://127.0.0.1:38155/\", waiting until \"domcontentloaded\"\u001b[22m\n" + }, + { + "name": "game_starts", + "pass": false, + "detail": "skipped: page did not load" + }, + { + "name": "auto_drop", + "pass": false, + "detail": "skipped: page did not load" + }, + { + "name": "move_left", + "pass": false, + "detail": "skipped: page did not load" + }, + { + "name": "move_right", + "pass": false, + "detail": "skipped: page did not load" + }, + { + "name": "move_down", + "pass": false, + "detail": "skipped: page did not load" + }, + { + "name": "rotate", + "pass": false, + "detail": "skipped: page did not load" + }, + { + "name": "all_pieces_rotate", + "pass": false, + "detail": "skipped: page did not load" + }, + { + "name": "hard_drop", + "pass": false, + "detail": "skipped: page did not load" + }, + { + "name": "piece_locks", + "pass": false, + "detail": "skipped: page did not load" + }, + { + "name": "new_piece_spawns", + "pass": false, + "detail": "skipped: page did not load" + }, + { + "name": "multiple_pieces", + "pass": false, + "detail": "skipped: page did not load" + }, + { + "name": "line_clear", + "pass": false, + "detail": "skipped: page did not load" + }, + { + "name": "score_changes", + "pass": false, + "detail": "skipped: page did not load" + }, + { + "name": "game_over", + "pass": false, + "detail": "skipped: page did not load" + }, + { + "name": "playable_30s", + "pass": false, + "detail": "skipped: page did not load" + } + ], + "summary": { + "total": 16, + "passed": 0, + "failed": 16, + "score": 0 + }, + "gameplay": { + "pieces_placed": 0, + "lines_cleared": 0, + "max_score_observed": 0, + "play_duration_seconds": 0, + "errors_during_play": 0 + }, + "performance": { + "load_time_ms": 4052 + }, + "accessibility": { + "issues": [], + "issue_count": 0, + "pass": true + } + } }, "score": 0.3731 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json @@ -1,13 +1,8 @@ { "implementation": { "renderer": "unknown", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 350, - "height": 700 - }, + "grid_detected": false, + "grid_bounds": null, "controls": { "left": "ArrowLeft", "right": "ArrowRight", @@ -21,100 +16,100 @@ "tests": [ { "name": "game_loads", - "pass": true, - "detail": "no console errors" + "pass": false, + "detail": "exception: page.goto: Timeout 5000ms exceeded.\nCall log:\n\u001b[2m - navigating to \"http://127.0.0.1:38155/\", waiting until \"domcontentloaded\"\u001b[22m\n" }, { "name": "game_starts", "pass": false, - "detail": "could not start game with any mechanism" + "detail": "skipped: page did not load" }, { "name": "auto_drop", "pass": false, - "detail": "piece did not move in 5 seconds" + "detail": "skipped: page did not load" }, { "name": "move_left", "pass": false, - "detail": "no change detected after key press" + "detail": "skipped: page did not load" }, { "name": "move_right", "pass": false, - "detail": "no change detected after key press" + "detail": "skipped: page did not load" }, { "name": "move_down", "pass": false, - "detail": "no change detected after key press" + "detail": "skipped: page did not load" }, { "name": "rotate", "pass": false, - "detail": "no change detected after rotate key" + "detail": "skipped: page did not load" }, { "name": "all_pieces_rotate", "pass": false, - "detail": "could not detect any piece rotations" + "detail": "skipped: page did not load" }, { "name": "hard_drop", "pass": false, - "detail": "no change detected after hard drop key" + "detail": "skipped: page did not load" }, { "name": "piece_locks", "pass": false, - "detail": "could not verify piece locking at bottom" + "detail": "skipped: page did not load" }, { "name": "new_piece_spawns", "pass": false, - "detail": "could not detect new piece at top" + "detail": "skipped: page did not load" }, { "name": "multiple_pieces", "pass": false, - "detail": "grid did not accumulate filled cells" + "detail": "skipped: page did not load" }, { "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" + "pass": false, + "detail": "skipped: page did not load" }, { "name": "score_changes", "pass": false, - "detail": "no score element found and no number changed" + "detail": "skipped: page did not load" }, { "name": "game_over", "pass": false, - "detail": "exception: page.waitForTimeout: Test timeout of 180000ms exceeded." + "detail": "skipped: page did not load" }, { "name": "playable_30s", "pass": false, - "detail": "exception: keyboard.press: Target page, context or browser has been closed" + "detail": "skipped: page did not load" } ], "summary": { "total": 16, - "passed": 2, - "failed": 14, - "score": 0.13 + "passed": 0, + "failed": 16, + "score": 0 }, "gameplay": { - "pieces_placed": 110, - "lines_cleared": 1, + "pieces_placed": 0, + "lines_cleared": 0, "max_score_observed": 0, "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 371 + "load_time_ms": 4052 }, "accessibility": { "issues": [], diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json @@ -1,6 +1,6 @@ { "structural": { - "pass": false, + "pass": true, "checks": [ { "name": "entry_point_exists", @@ -19,11 +19,11 @@ }, { "name": "typescript_compiles", - "pass": false, - "detail": "tsc --noEmit failed" + "pass": true, + "detail": "tsc --noEmit passed" } ], - "score": 0.75 + "score": 1.0 }, "functional": { "pass": false, @@ -125,8 +125,134 @@ }, "gameplay_bot": { "pass": false, - "score": 0, - "error": "Gameplay bot timed out after 180 seconds" + "score": 0.75, + "total": 16, + "passed": 12, + "failed": 4, + "report": { + "implementation": { + "renderer": "canvas", + "grid_detected": true, + "grid_bounds": { + "x": 0, + "y": 0, + "width": 300, + "height": 600 + }, + "controls": { + "left": "ArrowLeft", + "right": "ArrowRight", + "down": "ArrowDown", + "rotate": "ArrowUp", + "drop": "Space" + }, + "start_mechanism": "enter", + "score_element_found": true + }, + "tests": [ + { + "name": "game_loads", + "pass": true, + "detail": "no console errors" + }, + { + "name": "game_starts", + "pass": true, + "detail": "started via enter" + }, + { + "name": "auto_drop", + "pass": true, + "detail": "grid state changed after 5s with no input" + }, + { + "name": "move_left", + "pass": true, + "detail": "grid state changed after key press" + }, + { + "name": "move_right", + "pass": true, + "detail": "grid state changed after key press" + }, + { + "name": "move_down", + "pass": true, + "detail": "grid state changed after key press" + }, + { + "name": "rotate", + "pass": true, + "detail": "piece shape changed after rotate key" + }, + { + "name": "all_pieces_rotate", + "pass": true, + "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" + }, + { + "name": "hard_drop", + "pass": true, + "detail": "piece immediately dropped and new piece appeared" + }, + { + "name": "piece_locks", + "pass": true, + "detail": "filled cells persist at bottom" + }, + { + "name": "new_piece_spawns", + "pass": true, + "detail": "new piece detected at top of grid" + }, + { + "name": "multiple_pieces", + "pass": true, + "detail": "game still responding after 10 piece drops" + }, + { + "name": "line_clear", + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" + }, + { + "name": "score_changes", + "pass": false, + "detail": "could not read score element" + }, + { + "name": "game_over", + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" + }, + { + "name": "playable_30s", + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" + } + ], + "summary": { + "total": 16, + "passed": 12, + "failed": 4, + "score": 0.75 + }, + "gameplay": { + "pieces_placed": 11, + "lines_cleared": 0, + "max_score_observed": 0, + "play_duration_seconds": 0, + "errors_during_play": 0 + }, + "performance": { + "load_time_ms": 1031 + }, + "accessibility": { + "issues": [], + "issue_count": 0, + "pass": true + } + } }, - "score": 0.5456 + "score": 0.8112 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json @@ -57,7 +57,7 @@ { "name": "all_pieces_rotate", "pass": true, - "detail": "rotated: [unknown] failed: [] (tested 1 piece types in 60 attempts)" + "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" }, { "name": "hard_drop", @@ -81,40 +81,40 @@ }, { "name": "line_clear", - "pass": true, - "detail": "10 line(s) cleared during AI play" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "score_changes", - "pass": true, - "detail": "score changed from 102 to 206" + "pass": false, + "detail": "could not read score element" }, { "name": "game_over", "pass": false, - "detail": "could not trigger or detect game over" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 81 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 15, - "failed": 1, - "score": 0.94 + "passed": 12, + "failed": 4, + "score": 0.75 }, "gameplay": { - "pieces_placed": 123, - "lines_cleared": 37, - "max_score_observed": 230, - "play_duration_seconds": 30, + "pieces_placed": 11, + "lines_cleared": 0, + "max_score_observed": 0, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 198 + "load_time_ms": 1031 }, "accessibility": { "issues": [], diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json @@ -125,10 +125,10 @@ }, "gameplay_bot": { "pass": false, - "score": 0.88, + "score": 0.13, "total": 16, - "passed": 14, - "failed": 2, + "passed": 2, + "failed": 14, "report": { "implementation": { "renderer": "canvas", @@ -162,100 +162,97 @@ }, { "name": "auto_drop", - "pass": true, - "detail": "grid state changed after 5s with no input" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "move_down", "pass": false, - "detail": "no change detected after key press" + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "all_pieces_rotate", - "pass": true, - "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" + "pass": false, + "detail": "exception: page.reload: Target page, context or browser has been closed" }, { "name": "hard_drop", - "pass": true, - "detail": "piece immediately dropped and new piece appeared" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "multiple_pieces", - "pass": true, - "detail": "grid accumulated cells: 16 -> 44" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "score_changes", "pass": false, - "detail": "score did not increase: [178] -> no change after polling" + "detail": "could not read score element" }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 79 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 14, - "failed": 2, - "score": 0.88 + "passed": 2, + "failed": 14, + "score": 0.13 }, "gameplay": { - "pieces_placed": 130, - "lines_cleared": 1, - "max_score_observed": 270, - "play_duration_seconds": 30, + "pieces_placed": 0, + "lines_cleared": 0, + "max_score_observed": 0, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 77 + "load_time_ms": -1 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } }, - "score": 0.8612 + "score": 0.6269 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json @@ -31,97 +31,94 @@ }, { "name": "auto_drop", - "pass": true, - "detail": "grid state changed after 5s with no input" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "move_down", "pass": false, - "detail": "no change detected after key press" + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "all_pieces_rotate", - "pass": true, - "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" + "pass": false, + "detail": "exception: page.reload: Target page, context or browser has been closed" }, { "name": "hard_drop", - "pass": true, - "detail": "piece immediately dropped and new piece appeared" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "multiple_pieces", - "pass": true, - "detail": "grid accumulated cells: 16 -> 44" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "score_changes", "pass": false, - "detail": "score did not increase: [178] -> no change after polling" + "detail": "could not read score element" }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 79 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 14, - "failed": 2, - "score": 0.88 + "passed": 2, + "failed": 14, + "score": 0.13 }, "gameplay": { - "pieces_placed": 130, - "lines_cleared": 1, - "max_score_observed": 270, - "play_duration_seconds": 30, + "pieces_placed": 0, + "lines_cleared": 0, + "max_score_observed": 0, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 77 + "load_time_ms": -1 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json @@ -125,10 +125,10 @@ }, "gameplay_bot": { "pass": false, - "score": 0.56, + "score": 0.13, "total": 16, - "passed": 9, - "failed": 7, + "passed": 2, + "failed": 14, "report": { "implementation": { "renderer": "canvas", @@ -162,101 +162,97 @@ }, { "name": "auto_drop", - "pass": true, - "detail": "pixels changed after 5s with no input" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "move_down", "pass": false, - "detail": "no change detected after key press" + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "all_pieces_rotate", "pass": false, - "detail": "could not detect any piece rotations" + "detail": "exception: page.reload: Target page, context or browser has been closed" }, { "name": "hard_drop", "pass": false, - "detail": "no change detected after hard drop key" + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "piece_locks", "pass": false, - "detail": "could not verify piece locking at bottom" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "new_piece_spawns", "pass": false, - "detail": "could not detect new piece at top" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "multiple_pieces", "pass": false, - "detail": "grid did not accumulate filled cells" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "score_changes", "pass": false, - "detail": "score did not increase: [228] -> no change after polling" + "detail": "could not read score element" }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 76 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 9, - "failed": 7, - "score": 0.56 + "passed": 2, + "failed": 14, + "score": 0.13 }, "gameplay": { - "pieces_placed": 186, - "lines_cleared": 1, - "max_score_observed": 156, - "play_duration_seconds": 30, + "pieces_placed": 0, + "lines_cleared": 0, + "max_score_observed": 0, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 20 + "load_time_ms": 75 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 3, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } }, - "score": 0.7519 + "score": 0.6175 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=opus_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json @@ -31,98 +31,94 @@ }, { "name": "auto_drop", - "pass": true, - "detail": "pixels changed after 5s with no input" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "move_down", "pass": false, - "detail": "no change detected after key press" + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "all_pieces_rotate", "pass": false, - "detail": "could not detect any piece rotations" + "detail": "exception: page.reload: Target page, context or browser has been closed" }, { "name": "hard_drop", "pass": false, - "detail": "no change detected after hard drop key" + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "piece_locks", "pass": false, - "detail": "could not verify piece locking at bottom" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "new_piece_spawns", "pass": false, - "detail": "could not detect new piece at top" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "multiple_pieces", "pass": false, - "detail": "grid did not accumulate filled cells" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "score_changes", "pass": false, - "detail": "score did not increase: [228] -> no change after polling" + "detail": "could not read score element" }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 76 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 9, - "failed": 7, - "score": 0.56 + "passed": 2, + "failed": 14, + "score": 0.13 }, "gameplay": { - "pieces_placed": 186, - "lines_cleared": 1, - "max_score_observed": 156, - "play_duration_seconds": 30, + "pieces_placed": 0, + "lines_cleared": 0, + "max_score_observed": 0, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 20 + "load_time_ms": 75 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 3, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=off_max_budget=low_model=sonnet_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json @@ -1,6 +1,6 @@ { "structural": { - "pass": false, + "pass": true, "checks": [ { "name": "entry_point_exists", @@ -19,11 +19,11 @@ }, { "name": "typescript_compiles", - "pass": false, - "detail": "tsc --noEmit failed" + "pass": true, + "detail": "tsc --noEmit passed" } ], - "score": 0.75 + "score": 1.0 }, "functional": { "pass": false, @@ -125,8 +125,139 @@ }, "gameplay_bot": { "pass": false, - "score": 0, - "error": "Gameplay bot timed out after 180 seconds" + "score": 0.75, + "total": 16, + "passed": 12, + "failed": 4, + "report": { + "implementation": { + "renderer": "canvas", + "grid_detected": true, + "grid_bounds": { + "x": 0, + "y": 0, + "width": 48, + "height": 96 + }, + "controls": { + "left": "ArrowLeft", + "right": "ArrowRight", + "down": "ArrowDown", + "rotate": "x", + "drop": "Space" + }, + "start_mechanism": "enter", + "score_element_found": true + }, + "tests": [ + { + "name": "game_loads", + "pass": true, + "detail": "no console errors" + }, + { + "name": "game_starts", + "pass": true, + "detail": "started via enter" + }, + { + "name": "auto_drop", + "pass": true, + "detail": "pixels changed after 5s with no input" + }, + { + "name": "move_left", + "pass": true, + "detail": "grid state changed after key press" + }, + { + "name": "move_right", + "pass": true, + "detail": "grid state changed after key press" + }, + { + "name": "move_down", + "pass": true, + "detail": "grid state changed after key press" + }, + { + "name": "rotate", + "pass": true, + "detail": "piece shape changed after rotate key" + }, + { + "name": "all_pieces_rotate", + "pass": false, + "detail": "could not detect any piece rotations" + }, + { + "name": "hard_drop", + "pass": true, + "detail": "visual change detected after hard drop" + }, + { + "name": "piece_locks", + "pass": false, + "detail": "could not verify piece locking at bottom" + }, + { + "name": "new_piece_spawns", + "pass": false, + "detail": "could not detect new piece at top" + }, + { + "name": "multiple_pieces", + "pass": true, + "detail": "game still responding after 10 piece drops" + }, + { + "name": "line_clear", + "pass": true, + "detail": "line cleared via strategic placement" + }, + { + "name": "score_changes", + "pass": false, + "detail": "score did not increase: [188] -> no change after polling" + }, + { + "name": "game_over", + "pass": true, + "detail": "game stopped after stacking to top" + }, + { + "name": "playable_30s", + "pass": true, + "detail": "played for 30s, placed 76 pieces, no crashes" + } + ], + "summary": { + "total": 16, + "passed": 12, + "failed": 4, + "score": 0.75 + }, + "gameplay": { + "pieces_placed": 186, + "lines_cleared": 1, + "max_score_observed": 180, + "play_duration_seconds": 30, + "errors_during_play": 0 + }, + "performance": { + "load_time_ms": 29 + }, + "accessibility": { + "issues": [ + "no headings found", + "canvas without aria-label or role", + "canvas without aria-label or role", + "canvas without aria-label or role" + ], + "issue_count": 4, + "pass": false + } + } }, - "score": 0.5456 + "score": 0.8112 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json @@ -99,10 +99,10 @@ }, "html_validation": { "valid": false, - "errors": 3 + "errors": 0 }, "duplication_percentage": 0.0, - "score": 0.7 + "score": 0.35 }, "transcript_analysis": { "total_events": 119, @@ -128,137 +128,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.44, - "total": 16, - "passed": 7, - "failed": 9, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 75, - "height": 150 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "ArrowUp", - "drop": "Space" - }, - "start_mechanism": "click_canvas", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via click_canvas" - }, - { - "name": "auto_drop", - "pass": false, - "detail": "piece did not move in 5 seconds" - }, - { - "name": "move_left", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_right", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": false, - "detail": "could not detect any piece rotations" - }, - { - "name": "hard_drop", - "pass": false, - "detail": "no change detected after hard drop key" - }, - { - "name": "piece_locks", - "pass": false, - "detail": "could not verify piece locking at bottom" - }, - { - "name": "new_piece_spawns", - "pass": false, - "detail": "could not detect new piece at top" - }, - { - "name": "multiple_pieces", - "pass": false, - "detail": "grid did not accumulate filled cells" - }, - { - "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [0] -> no change after polling" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 79 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 7, - "failed": 9, - "score": 0.44 - }, - "gameplay": { - "pieces_placed": 189, - "lines_cleared": 1, - "max_score_observed": 0, - "play_duration_seconds": 30, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 27 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.603 + "score": 0.4519 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=off_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json @@ -97,7 +97,7 @@ { "name": "playable_30s", "pass": true, - "detail": "played for 30s, placed 79 pieces, no crashes" + "detail": "played for 30s, placed 76 pieces, no crashes" } ], "summary": { @@ -107,14 +107,14 @@ "score": 0.44 }, "gameplay": { - "pieces_placed": 189, + "pieces_placed": 186, "lines_cleared": 1, "max_score_observed": 0, "play_duration_seconds": 30, "errors_during_play": 0 }, "performance": { - "load_time_ms": 27 + "load_time_ms": 21 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json @@ -36,7 +36,7 @@ "error": "no tsconfig.json" }, "performance": { - "bundle_size_bytes": 172831, + "bundle_size_bytes": 173186, "size_under_512kb": true }, "score": 0.33 @@ -92,10 +92,10 @@ }, "html_validation": { "valid": false, - "errors": 1 + "errors": 0 }, "duplication_percentage": 0.0, - "score": 0.95 + "score": 0.6 }, "transcript_analysis": { "total_events": 16, @@ -121,10 +121,10 @@ }, "gameplay_bot": { "pass": false, - "score": 0.44, + "score": 0.69, "total": 16, - "passed": 7, - "failed": 9, + "passed": 11, + "failed": 5, "report": { "implementation": { "renderer": "dom", @@ -158,23 +158,23 @@ }, { "name": "auto_drop", - "pass": false, - "detail": "piece did not move in 5 seconds" + "pass": true, + "detail": "grid state changed after 5s with no input" }, { "name": "move_left", - "pass": false, - "detail": "no change detected after key press" + "pass": true, + "detail": "grid state changed after key press" }, { "name": "move_right", - "pass": false, - "detail": "no change detected after key press" + "pass": true, + "detail": "grid state changed after key press" }, { "name": "move_down", - "pass": false, - "detail": "no change detected after key press" + "pass": true, + "detail": "grid state changed after key press" }, { "name": "rotate", @@ -208,8 +208,8 @@ }, { "name": "line_clear", - "pass": false, - "detail": "could not trigger or detect a line clear" + "pass": true, + "detail": "line cleared via strategic placement" }, { "name": "score_changes", @@ -223,25 +223,25 @@ }, { "name": "playable_30s", - "pass": true, - "detail": "played for 16s, placed 100 pieces, no crashes" + "pass": false, + "detail": "390 console errors, 0 play errors during 30s" } ], "summary": { "total": 16, - "passed": 7, - "failed": 9, - "score": 0.44 + "passed": 11, + "failed": 5, + "score": 0.69 }, "gameplay": { - "pieces_placed": 210, - "lines_cleared": 0, + "pieces_placed": 188, + "lines_cleared": 1, "max_score_observed": 0, - "play_duration_seconds": 16, + "play_duration_seconds": 30, "errors_during_play": 0 }, "performance": { - "load_time_ms": 25 + "load_time_ms": 27 }, "accessibility": { "issues": [ @@ -252,5 +252,5 @@ } } }, - "score": 0.6375 + "score": 0.6544 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json @@ -31,23 +31,23 @@ }, { "name": "auto_drop", - "pass": false, - "detail": "piece did not move in 5 seconds" + "pass": true, + "detail": "grid state changed after 5s with no input" }, { "name": "move_left", - "pass": false, - "detail": "no change detected after key press" + "pass": true, + "detail": "grid state changed after key press" }, { "name": "move_right", - "pass": false, - "detail": "no change detected after key press" + "pass": true, + "detail": "grid state changed after key press" }, { "name": "move_down", - "pass": false, - "detail": "no change detected after key press" + "pass": true, + "detail": "grid state changed after key press" }, { "name": "rotate", @@ -81,8 +81,8 @@ }, { "name": "line_clear", - "pass": false, - "detail": "could not trigger or detect a line clear" + "pass": true, + "detail": "line cleared via strategic placement" }, { "name": "score_changes", @@ -96,25 +96,25 @@ }, { "name": "playable_30s", - "pass": true, - "detail": "played for 16s, placed 100 pieces, no crashes" + "pass": false, + "detail": "390 console errors, 0 play errors during 30s" } ], "summary": { "total": 16, - "passed": 7, - "failed": 9, - "score": 0.44 + "passed": 11, + "failed": 5, + "score": 0.69 }, "gameplay": { - "pieces_placed": 210, - "lines_cleared": 0, + "pieces_placed": 188, + "lines_cleared": 1, "max_score_observed": 0, - "play_duration_seconds": 16, + "play_duration_seconds": 30, "errors_during_play": 0 }, "performance": { - "load_time_ms": 25 + "load_time_ms": 27 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json @@ -41,7 +41,7 @@ "error": "no tsconfig.json" }, "performance": { - "bundle_size_bytes": 177867, + "bundle_size_bytes": 178224, "size_under_512kb": true }, "score": 0.33 @@ -100,10 +100,10 @@ }, "html_validation": { "valid": false, - "errors": 2 + "errors": 0 }, "duplication_percentage": 0.0, - "score": 0.7 + "score": 0.35 }, "transcript_analysis": { "total_events": 73, @@ -192,7 +192,7 @@ { "name": "all_pieces_rotate", "pass": true, - "detail": "rotated: [I] failed: [] (tested 1 piece types in 60 attempts)" + "detail": "rotated: [unknown] failed: [] (tested 1 piece types in 60 attempts)" }, { "name": "hard_drop", @@ -207,7 +207,7 @@ { "name": "new_piece_spawns", "pass": true, - "detail": "new piece detected at top of grid" + "detail": "new piece detected after drop" }, { "name": "multiple_pieces", @@ -232,7 +232,7 @@ { "name": "playable_30s", "pass": true, - "detail": "played for 27s, placed 100 pieces, no crashes" + "detail": "played for 28s, placed 100 pieces, no crashes" } ], "summary": { @@ -242,14 +242,14 @@ "score": 0.88 }, "gameplay": { - "pieces_placed": 141, - "lines_cleared": 47, + "pieces_placed": 152, + "lines_cleared": 45, "max_score_observed": 0, - "play_duration_seconds": 27, + "play_duration_seconds": 28, "errors_during_play": 0 }, "performance": { - "load_time_ms": 24 + "load_time_ms": 31 }, "accessibility": { "issues": [ @@ -262,5 +262,5 @@ } } }, - "score": 0.554 + "score": 0.6106 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=detailed_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json @@ -57,7 +57,7 @@ { "name": "all_pieces_rotate", "pass": true, - "detail": "rotated: [I] failed: [] (tested 1 piece types in 60 attempts)" + "detail": "rotated: [unknown] failed: [] (tested 1 piece types in 60 attempts)" }, { "name": "hard_drop", @@ -72,7 +72,7 @@ { "name": "new_piece_spawns", "pass": true, - "detail": "new piece detected at top of grid" + "detail": "new piece detected after drop" }, { "name": "multiple_pieces", @@ -97,7 +97,7 @@ { "name": "playable_30s", "pass": true, - "detail": "played for 27s, placed 100 pieces, no crashes" + "detail": "played for 28s, placed 100 pieces, no crashes" } ], "summary": { @@ -107,14 +107,14 @@ "score": 0.88 }, "gameplay": { - "pieces_placed": 141, - "lines_cleared": 47, + "pieces_placed": 152, + "lines_cleared": 45, "max_score_observed": 0, - "play_duration_seconds": 27, + "play_duration_seconds": 28, "errors_during_play": 0 }, "performance": { - "load_time_ms": 24 + "load_time_ms": 31 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json @@ -41,7 +41,7 @@ "errors": 2 }, "performance": { - "bundle_size_bytes": 138880, + "bundle_size_bytes": 139236, "size_under_512kb": true }, "score": 0.33 @@ -128,137 +128,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.44, - "total": 16, - "passed": 7, - "failed": 9, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 300, - "height": 600 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "ArrowUp", - "drop": "Space" - }, - "start_mechanism": "click_canvas", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via click_canvas" - }, - { - "name": "auto_drop", - "pass": false, - "detail": "piece did not move in 5 seconds" - }, - { - "name": "move_left", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_right", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": false, - "detail": "could not detect any piece rotations" - }, - { - "name": "hard_drop", - "pass": false, - "detail": "no change detected after hard drop key" - }, - { - "name": "piece_locks", - "pass": false, - "detail": "could not verify piece locking at bottom" - }, - { - "name": "new_piece_spawns", - "pass": false, - "detail": "could not detect new piece at top" - }, - { - "name": "multiple_pieces", - "pass": false, - "detail": "grid did not accumulate filled cells" - }, - { - "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [0] -> no change after polling" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 79 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 7, - "failed": 9, - "score": 0.44 - }, - "gameplay": { - "pieces_placed": 189, - "lines_cleared": 1, - "max_score_observed": 0, - "play_duration_seconds": 30, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 33 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.555 + "score": 0.4325 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json @@ -96,32 +96,29 @@ }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 79 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 7, - "failed": 9, - "score": 0.44 + "passed": 6, + "failed": 10, + "score": 0.38 }, "gameplay": { - "pieces_placed": 189, + "pieces_placed": 110, "lines_cleared": 1, "max_score_observed": 0, - "play_duration_seconds": 30, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 33 + "load_time_ms": 39 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json @@ -128,10 +128,10 @@ }, "gameplay_bot": { "pass": false, - "score": 0.75, + "score": 0.81, "total": 16, - "passed": 12, - "failed": 4, + "passed": 13, + "failed": 3, "report": { "implementation": { "renderer": "canvas", @@ -170,28 +170,28 @@ }, { "name": "move_left", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_right", "pass": true, "detail": "grid state changed after key press" }, { - "name": "move_down", + "name": "move_right", "pass": false, "detail": "no change detected after key press" }, { - "name": "rotate", + "name": "move_down", "pass": true, - "detail": "piece shape changed after rotate key" + "detail": "grid state changed after key press" }, { - "name": "all_pieces_rotate", + "name": "rotate", "pass": false, - "detail": "rotated: [] failed: [other] (tested 1 piece types in 60 attempts)" + "detail": "no change detected after rotate key" + }, + { + "name": "all_pieces_rotate", + "pass": true, + "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" }, { "name": "hard_drop", @@ -206,12 +206,12 @@ { "name": "new_piece_spawns", "pass": true, - "detail": "new piece detected after drop" + "detail": "new piece detected at top of grid" }, { "name": "multiple_pieces", "pass": true, - "detail": "grid accumulated cells: 20 -> 50" + "detail": "grid accumulated cells: 16 -> 51" }, { "name": "line_clear", @@ -231,24 +231,24 @@ { "name": "playable_30s", "pass": true, - "detail": "played for 30s, placed 88 pieces, no crashes" + "detail": "played for 30s, placed 78 pieces, no crashes" } ], "summary": { "total": 16, - "passed": 12, - "failed": 4, - "score": 0.75 + "passed": 13, + "failed": 3, + "score": 0.81 }, "gameplay": { - "pieces_placed": 139, + "pieces_placed": 129, "lines_cleared": 1, "max_score_observed": 0, "play_duration_seconds": 30, "errors_during_play": 0 }, "performance": { - "load_time_ms": 26 + "load_time_ms": 531 }, "accessibility": { "issues": [ @@ -259,5 +259,5 @@ } } }, - "score": 0.634 + "score": 0.7706 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json @@ -36,28 +36,28 @@ }, { "name": "move_left", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_right", "pass": true, "detail": "grid state changed after key press" }, { - "name": "move_down", + "name": "move_right", "pass": false, "detail": "no change detected after key press" }, { - "name": "rotate", + "name": "move_down", "pass": true, - "detail": "piece shape changed after rotate key" + "detail": "grid state changed after key press" }, { - "name": "all_pieces_rotate", + "name": "rotate", "pass": false, - "detail": "rotated: [] failed: [other] (tested 1 piece types in 60 attempts)" + "detail": "no change detected after rotate key" + }, + { + "name": "all_pieces_rotate", + "pass": true, + "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" }, { "name": "hard_drop", @@ -72,12 +72,12 @@ { "name": "new_piece_spawns", "pass": true, - "detail": "new piece detected after drop" + "detail": "new piece detected at top of grid" }, { "name": "multiple_pieces", "pass": true, - "detail": "grid accumulated cells: 20 -> 50" + "detail": "grid accumulated cells: 16 -> 51" }, { "name": "line_clear", @@ -97,24 +97,24 @@ { "name": "playable_30s", "pass": true, - "detail": "played for 30s, placed 88 pieces, no crashes" + "detail": "played for 30s, placed 78 pieces, no crashes" } ], "summary": { "total": 16, - "passed": 12, - "failed": 4, - "score": 0.75 + "passed": 13, + "failed": 3, + "score": 0.81 }, "gameplay": { - "pieces_placed": 139, + "pieces_placed": 129, "lines_cleared": 1, "max_score_observed": 0, "play_duration_seconds": 30, "errors_during_play": 0 }, "performance": { - "load_time_ms": 26 + "load_time_ms": 531 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json @@ -41,7 +41,7 @@ "errors": 1 }, "performance": { - "bundle_size_bytes": 190539, + "bundle_size_bytes": 190896, "size_under_512kb": true }, "score": 0.33 @@ -130,137 +130,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.44, - "total": 16, - "passed": 7, - "failed": 9, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 300, - "height": 600 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "ArrowUp", - "drop": "Space" - }, - "start_mechanism": "space", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via space" - }, - { - "name": "auto_drop", - "pass": false, - "detail": "piece did not move in 5 seconds" - }, - { - "name": "move_left", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_right", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": false, - "detail": "could not detect any piece rotations" - }, - { - "name": "hard_drop", - "pass": false, - "detail": "no change detected after hard drop key" - }, - { - "name": "piece_locks", - "pass": false, - "detail": "could not verify piece locking at bottom" - }, - { - "name": "new_piece_spawns", - "pass": false, - "detail": "could not detect new piece at top" - }, - { - "name": "multiple_pieces", - "pass": false, - "detail": "grid did not accumulate filled cells" - }, - { - "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [0] -> no change after polling" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 79 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 7, - "failed": 9, - "score": 0.44 - }, - "gameplay": { - "pieces_placed": 189, - "lines_cleared": 1, - "max_score_observed": 0, - "play_duration_seconds": 30, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 21 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.48 + "score": 0.3788 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=off_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json @@ -91,37 +91,34 @@ }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Test timeout of 180000ms exceeded." }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 79 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 7, - "failed": 9, - "score": 0.44 + "passed": 5, + "failed": 11, + "score": 0.31 }, "gameplay": { - "pieces_placed": 189, + "pieces_placed": 110, "lines_cleared": 1, "max_score_observed": 0, - "play_duration_seconds": 30, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 21 + "load_time_ms": 310 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json @@ -41,7 +41,7 @@ "error": "no tsconfig.json" }, "performance": { - "bundle_size_bytes": 208102, + "bundle_size_bytes": 208459, "size_under_512kb": true }, "score": 0.33 @@ -99,10 +99,10 @@ }, "html_validation": { "valid": false, - "errors": 1 + "errors": 0 }, "duplication_percentage": 0.0, - "score": 0.8 + "score": 0.45 }, "transcript_analysis": { "total_events": 115, @@ -128,10 +128,10 @@ }, "gameplay_bot": { "pass": false, - "score": 0.94, + "score": 0.88, "total": 16, - "passed": 15, - "failed": 1, + "passed": 14, + "failed": 2, "report": { "implementation": { "renderer": "canvas", @@ -185,8 +185,8 @@ }, { "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" + "pass": false, + "detail": "no change detected after rotate key" }, { "name": "all_pieces_rotate", @@ -211,7 +211,7 @@ { "name": "multiple_pieces", "pass": true, - "detail": "grid accumulated cells: 16 -> 33" + "detail": "grid accumulated cells: 16 -> 41" }, { "name": "line_clear", @@ -231,24 +231,24 @@ { "name": "playable_30s", "pass": true, - "detail": "played for 30s, placed 79 pieces, no crashes" + "detail": "played for 33s, placed 56 pieces, no crashes" } ], "summary": { "total": 16, - "passed": 15, - "failed": 1, - "score": 0.94 + "passed": 14, + "failed": 2, + "score": 0.88 }, "gameplay": { - "pieces_placed": 130, + "pieces_placed": 107, "lines_cleared": 1, "max_score_observed": 0, - "play_duration_seconds": 30, + "play_duration_seconds": 33, "errors_during_play": 0 }, "performance": { - "load_time_ms": 22 + "load_time_ms": 757 }, "accessibility": { "issues": [ @@ -260,5 +260,5 @@ } } }, - "score": 0.585 + "score": 0.6294 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json @@ -51,8 +51,8 @@ }, { "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" + "pass": false, + "detail": "no change detected after rotate key" }, { "name": "all_pieces_rotate", @@ -77,7 +77,7 @@ { "name": "multiple_pieces", "pass": true, - "detail": "grid accumulated cells: 16 -> 33" + "detail": "grid accumulated cells: 16 -> 41" }, { "name": "line_clear", @@ -97,24 +97,24 @@ { "name": "playable_30s", "pass": true, - "detail": "played for 30s, placed 79 pieces, no crashes" + "detail": "played for 33s, placed 56 pieces, no crashes" } ], "summary": { "total": 16, - "passed": 15, - "failed": 1, - "score": 0.94 + "passed": 14, + "failed": 2, + "score": 0.88 }, "gameplay": { - "pieces_placed": 130, + "pieces_placed": 107, "lines_cleared": 1, "max_score_observed": 0, - "play_duration_seconds": 30, + "play_duration_seconds": 33, "errors_during_play": 0 }, "performance": { - "load_time_ms": 22 + "load_time_ms": 757 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json @@ -41,7 +41,7 @@ "error": "no tsconfig.json" }, "performance": { - "bundle_size_bytes": 206074, + "bundle_size_bytes": 206431, "size_under_512kb": true }, "score": 0.33 @@ -100,10 +100,10 @@ }, "html_validation": { "valid": false, - "errors": 3 + "errors": 0 }, "duplication_percentage": 0.0, - "score": 0.66 + "score": 0.31 }, "transcript_analysis": { "total_events": 101, @@ -129,134 +129,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.63, - "total": 16, - "passed": 10, - "failed": 6, - "report": { - "implementation": { - "renderer": "dom", - "grid_detected": true, - "grid_bounds": { - "x": 375, - "y": 30, - "width": 300, - "height": 600 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "x", - "drop": "Space" - }, - "start_mechanism": "auto", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via auto" - }, - { - "name": "auto_drop", - "pass": true, - "detail": "pixels changed after 5s with no input" - }, - { - "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": false, - "detail": "no change detected after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": false, - "detail": "could not detect any piece rotations" - }, - { - "name": "hard_drop", - "pass": false, - "detail": "no change detected after hard drop key" - }, - { - "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" - }, - { - "name": "multiple_pieces", - "pass": false, - "detail": "grid did not accumulate filled cells" - }, - { - "name": "line_clear", - "pass": false, - "detail": "could not trigger or detect a line clear" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [0] -> no change after polling" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 16s, placed 100 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 10, - "failed": 6, - "score": 0.63 - }, - "gameplay": { - "pieces_placed": 210, - "lines_cleared": 0, - "max_score_observed": 0, - "play_duration_seconds": 16, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 20 - }, - "accessibility": { - "issues": [], - "issue_count": 0, - "pass": true - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.519 + "score": 0.3281 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json @@ -32,7 +32,7 @@ { "name": "auto_drop", "pass": true, - "detail": "pixels changed after 5s with no input" + "detail": "grid state changed after 5s with no input" }, { "name": "move_left", @@ -51,18 +51,18 @@ }, { "name": "rotate", - "pass": false, - "detail": "no change detected after rotate key" + "pass": true, + "detail": "piece shape changed after rotate key" }, { "name": "all_pieces_rotate", - "pass": false, - "detail": "could not detect any piece rotations" + "pass": true, + "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" }, { "name": "hard_drop", - "pass": false, - "detail": "no change detected after hard drop key" + "pass": true, + "detail": "piece immediately dropped and new piece appeared" }, { "name": "piece_locks", @@ -72,17 +72,17 @@ { "name": "new_piece_spawns", "pass": true, - "detail": "new piece detected at top of grid" + "detail": "new piece detected after drop" }, { "name": "multiple_pieces", - "pass": false, - "detail": "grid did not accumulate filled cells" + "pass": true, + "detail": "grid accumulated cells: 20 -> 41" }, { "name": "line_clear", - "pass": false, - "detail": "could not trigger or detect a line clear" + "pass": true, + "detail": "line cleared via strategic placement" }, { "name": "score_changes", @@ -97,24 +97,24 @@ { "name": "playable_30s", "pass": true, - "detail": "played for 16s, placed 100 pieces, no crashes" + "detail": "played for 43s, placed 39 pieces, no crashes" } ], "summary": { "total": 16, - "passed": 10, - "failed": 6, - "score": 0.63 + "passed": 15, + "failed": 1, + "score": 0.94 }, "gameplay": { - "pieces_placed": 210, - "lines_cleared": 0, + "pieces_placed": 80, + "lines_cleared": 1, "max_score_observed": 0, - "play_duration_seconds": 16, + "play_duration_seconds": 43, "errors_during_play": 0 }, "performance": { - "load_time_ms": 20 + "load_time_ms": 745 }, "accessibility": { "issues": [], diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json @@ -41,7 +41,7 @@ "error": "no tsconfig.json" }, "performance": { - "bundle_size_bytes": 179483, + "bundle_size_bytes": 179840, "size_under_512kb": true }, "score": 0.33 @@ -102,10 +102,10 @@ }, "html_validation": { "valid": false, - "errors": 2 + "errors": 0 }, "duplication_percentage": 0.0, - "score": 0.6 + "score": 0.25 }, "transcript_analysis": { "total_events": 79, @@ -131,137 +131,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.69, - "total": 16, - "passed": 11, - "failed": 5, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 300, - "height": 600 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "ArrowUp", - "drop": "Space" - }, - "start_mechanism": "click_canvas", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via click_canvas" - }, - { - "name": "auto_drop", - "pass": false, - "detail": "piece did not move in 5 seconds" - }, - { - "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": false, - "detail": "could not detect any piece rotations" - }, - { - "name": "hard_drop", - "pass": false, - "detail": "no change detected after hard drop key" - }, - { - "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" - }, - { - "name": "multiple_pieces", - "pass": false, - "detail": "grid did not accumulate filled cells" - }, - { - "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [202] -> no change after polling" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 26s, placed 100 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 11, - "failed": 5, - "score": 0.69 - }, - "gameplay": { - "pieces_placed": 210, - "lines_cleared": 1, - "max_score_observed": 174, - "play_duration_seconds": 26, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 23 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.51 + "score": 0.3169 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=off_tool_glob=on_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json @@ -56,13 +56,13 @@ }, { "name": "all_pieces_rotate", - "pass": false, - "detail": "could not detect any piece rotations" + "pass": true, + "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" }, { "name": "hard_drop", - "pass": false, - "detail": "no change detected after hard drop key" + "pass": true, + "detail": "piece immediately dropped and new piece appeared" }, { "name": "piece_locks", @@ -76,18 +76,18 @@ }, { "name": "multiple_pieces", - "pass": false, - "detail": "grid did not accumulate filled cells" + "pass": true, + "detail": "grid accumulated cells: 20 -> 38" }, { "name": "line_clear", "pass": true, - "detail": "line cleared via strategic placement" + "detail": "1 line(s) cleared during AI play" }, { "name": "score_changes", "pass": false, - "detail": "score did not increase: [202] -> no change after polling" + "detail": "score did not increase: [190] -> no change after polling" }, { "name": "game_over", @@ -96,32 +96,29 @@ }, { "name": "playable_30s", - "pass": true, - "detail": "played for 26s, placed 100 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 11, - "failed": 5, - "score": 0.69 + "passed": 13, + "failed": 3, + "score": 0.81 }, "gameplay": { - "pieces_placed": 210, + "pieces_placed": 41, "lines_cleared": 1, - "max_score_observed": 174, - "play_duration_seconds": 26, + "max_score_observed": 0, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 23 + "load_time_ms": 5790 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json @@ -1,6 +1,6 @@ { "structural": { - "pass": false, + "pass": true, "checks": [ { "name": "entry_point_exists", @@ -19,11 +19,11 @@ }, { "name": "typescript_compiles", - "pass": false, - "detail": "tsc --noEmit failed" + "pass": true, + "detail": "tsc --noEmit passed" } ], - "score": 0.75 + "score": 1.0 }, "functional": { "pass": false, @@ -40,7 +40,7 @@ "pass": true }, "performance": { - "bundle_size_bytes": 169255, + "bundle_size_bytes": 169612, "size_under_512kb": true }, "score": 0.67 @@ -128,134 +128,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.5, - "total": 16, - "passed": 8, - "failed": 8, - "report": { - "implementation": { - "renderer": "dom", - "grid_detected": true, - "grid_bounds": { - "x": 240, - "y": 110, - "width": 520, - "height": 1040 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "ArrowUp", - "drop": "Space" - }, - "start_mechanism": "click_canvas", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via click_canvas" - }, - { - "name": "auto_drop", - "pass": false, - "detail": "piece did not move in 5 seconds" - }, - { - "name": "move_left", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_right", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": false, - "detail": "could not detect any piece rotations" - }, - { - "name": "hard_drop", - "pass": false, - "detail": "no change detected after hard drop key" - }, - { - "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" - }, - { - "name": "multiple_pieces", - "pass": false, - "detail": "grid did not accumulate filled cells" - }, - { - "name": "line_clear", - "pass": false, - "detail": "could not trigger or detect a line clear" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [0] -> no change after polling" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 15s, placed 100 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 8, - "failed": 8, - "score": 0.5 - }, - "gameplay": { - "pieces_placed": 210, - "lines_cleared": 0, - "max_score_observed": 0, - "play_duration_seconds": 15, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 34 - }, - "accessibility": { - "issues": [], - "issue_count": 0, - "pass": true - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.574 + "score": 0.51 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json @@ -66,55 +66,55 @@ }, { "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" + "pass": false, + "detail": "could not verify piece locking at bottom" }, { "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" + "pass": false, + "detail": "could not detect new piece at top" }, { "name": "multiple_pieces", "pass": false, - "detail": "grid did not accumulate filled cells" + "detail": "exception: page.waitForTimeout: Test timeout of 180000ms exceeded." }, { "name": "line_clear", "pass": false, - "detail": "could not trigger or detect a line clear" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "score_changes", "pass": false, - "detail": "score did not increase: [0] -> no change after polling" + "detail": "could not read score element" }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 15s, placed 100 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 8, - "failed": 8, - "score": 0.5 + "passed": 4, + "failed": 12, + "score": 0.25 }, "gameplay": { - "pieces_placed": 210, + "pieces_placed": 60, "lines_cleared": 0, "max_score_observed": 0, - "play_duration_seconds": 15, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 34 + "load_time_ms": 9051 }, "accessibility": { "issues": [], diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json @@ -40,7 +40,7 @@ "pass": true }, "performance": { - "bundle_size_bytes": 135317, + "bundle_size_bytes": 135674, "size_under_512kb": true }, "score": 0.67 @@ -127,136 +127,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.81, - "total": 16, - "passed": 13, - "failed": 3, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 300, - "height": 600 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "ArrowUp", - "drop": "Space" - }, - "start_mechanism": "auto", - "score_element_found": false - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via auto" - }, - { - "name": "auto_drop", - "pass": true, - "detail": "pixels changed after 5s with no input" - }, - { - "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": false, - "detail": "could not detect any piece rotations" - }, - { - "name": "hard_drop", - "pass": true, - "detail": "visual change detected after hard drop" - }, - { - "name": "piece_locks", - "pass": false, - "detail": "could not verify piece locking at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "visual change suggests new piece spawned" - }, - { - "name": "multiple_pieces", - "pass": true, - "detail": "game still responding after 10 piece drops" - }, - { - "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" - }, - { - "name": "score_changes", - "pass": false, - "detail": "no score element found and no number changed" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 78 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 13, - "failed": 3, - "score": 0.81 - }, - "gameplay": { - "pieces_placed": 188, - "lines_cleared": 1, - "max_score_observed": 0, - "play_duration_seconds": 30, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 35 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role" - ], - "issue_count": 1, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.675 + "score": 0.5425 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json @@ -67,60 +67,58 @@ { "name": "piece_locks", "pass": false, - "detail": "could not verify piece locking at bottom" + "detail": "exception: page.screenshot: Timeout 10000ms exceeded.\nCall log:\n\u001b[2m - taking page screenshot\u001b[22m\n\u001b[2m - waiting for fonts to load...\u001b[22m\n\u001b[2m - fonts loaded\u001b[22m\n" }, { "name": "new_piece_spawns", - "pass": true, - "detail": "visual change suggests new piece spawned" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "multiple_pieces", - "pass": true, - "detail": "game still responding after 10 piece drops" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "score_changes", "pass": false, - "detail": "no score element found and no number changed" + "detail": "exception: page.evaluate: Target page, context or browser has been closed" }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 78 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 13, - "failed": 3, - "score": 0.81 + "passed": 8, + "failed": 8, + "score": 0.5 }, "gameplay": { - "pieces_placed": 188, - "lines_cleared": 1, + "pieces_placed": 60, + "lines_cleared": 0, "max_score_observed": 0, - "play_duration_seconds": 30, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 35 + "load_time_ms": 2815 }, "accessibility": { - "issues": [ - "canvas without aria-label or role" - ], - "issue_count": 1, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=off_tool_grep=on_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json @@ -260,5 +260,5 @@ } } }, - "score": 0.563 + "score": 0.625 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run1/eval_results.json @@ -127,136 +127,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.88, - "total": 16, - "passed": 14, - "failed": 2, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 300, - "height": 600 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "x", - "drop": "Space" - }, - "start_mechanism": "auto", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via auto" - }, - { - "name": "auto_drop", - "pass": true, - "detail": "grid state changed after 5s with no input" - }, - { - "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": true, - "detail": "rotated: [I] failed: [] (tested 1 piece types in 60 attempts)" - }, - { - "name": "hard_drop", - "pass": true, - "detail": "piece immediately dropped and new piece appeared" - }, - { - "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" - }, - { - "name": "multiple_pieces", - "pass": true, - "detail": "grid accumulated cells: 16 -> 47" - }, - { - "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [0] -> no change after polling" - }, - { - "name": "game_over", - "pass": false, - "detail": "could not trigger or detect game over" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 29s, placed 100 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 14, - "failed": 2, - "score": 0.88 - }, - "gameplay": { - "pieces_placed": 151, - "lines_cleared": 1, - "max_score_observed": 0, - "play_duration_seconds": 29, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 36 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role" - ], - "issue_count": 1, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.692 + "score": 0.5487 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run1/gameplay-bot-report.json @@ -36,8 +36,8 @@ }, { "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" + "pass": false, + "detail": "exception: page.screenshot: Timeout 10000ms exceeded.\nCall log:\n\u001b[2m - taking page screenshot\u001b[22m\n\u001b[2m - waiting for fonts to load...\u001b[22m\n" }, { "name": "move_right", @@ -57,7 +57,7 @@ { "name": "all_pieces_rotate", "pass": true, - "detail": "rotated: [I] failed: [] (tested 1 piece types in 60 attempts)" + "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" }, { "name": "hard_drop", @@ -77,12 +77,12 @@ { "name": "multiple_pieces", "pass": true, - "detail": "grid accumulated cells: 16 -> 47" + "detail": "grid accumulated cells: 16 -> 42" }, { "name": "line_clear", "pass": true, - "detail": "line cleared via strategic placement" + "detail": "20 line(s) cleared during AI play" }, { "name": "score_changes", @@ -96,31 +96,29 @@ }, { "name": "playable_30s", - "pass": true, - "detail": "played for 29s, placed 100 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 14, - "failed": 2, - "score": 0.88 + "passed": 12, + "failed": 4, + "score": 0.75 }, "gameplay": { - "pieces_placed": 151, - "lines_cleared": 1, + "pieces_placed": 30, + "lines_cleared": 20, "max_score_observed": 0, - "play_duration_seconds": 29, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 36 + "load_time_ms": 1053 }, "accessibility": { - "issues": [ - "canvas without aria-label or role" - ], - "issue_count": 1, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run2/eval_results.json @@ -40,7 +40,7 @@ "pass": true }, "performance": { - "bundle_size_bytes": 202919, + "bundle_size_bytes": 203276, "size_under_512kb": true }, "score": 0.67 @@ -127,136 +127,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.94, - "total": 16, - "passed": 15, - "failed": 1, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 300, - "height": 600 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "ArrowUp", - "drop": "Space" - }, - "start_mechanism": "auto", - "score_element_found": false - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via auto" - }, - { - "name": "auto_drop", - "pass": true, - "detail": "grid state changed after 5s with no input" - }, - { - "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": true, - "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" - }, - { - "name": "hard_drop", - "pass": true, - "detail": "piece immediately dropped and new piece appeared" - }, - { - "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" - }, - { - "name": "multiple_pieces", - "pass": true, - "detail": "grid accumulated cells: 16 -> 18" - }, - { - "name": "line_clear", - "pass": true, - "detail": "11 line(s) cleared during AI play" - }, - { - "name": "score_changes", - "pass": false, - "detail": "no score element found and no number changed" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 84 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 15, - "failed": 1, - "score": 0.94 - }, - "gameplay": { - "pieces_placed": 125, - "lines_cleared": 45, - "max_score_observed": 0, - "play_duration_seconds": 30, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 21 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role" - ], - "issue_count": 1, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.6655 + "score": 0.5269 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run2/gameplay-bot-report.json @@ -12,7 +12,7 @@ "left": "ArrowLeft", "right": "ArrowRight", "down": "ArrowDown", - "rotate": "ArrowUp", + "rotate": "x", "drop": "Space" }, "start_mechanism": "auto", @@ -57,7 +57,7 @@ { "name": "all_pieces_rotate", "pass": true, - "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" + "detail": "rotated: [other, unknown] failed: [] (tested 2 piece types in 60 attempts)" }, { "name": "hard_drop", @@ -77,12 +77,12 @@ { "name": "multiple_pieces", "pass": true, - "detail": "grid accumulated cells: 16 -> 18" + "detail": "grid accumulated cells: 20 -> 22" }, { "name": "line_clear", "pass": true, - "detail": "11 line(s) cleared during AI play" + "detail": "9 line(s) cleared during AI play" }, { "name": "score_changes", @@ -96,31 +96,29 @@ }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 84 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 15, - "failed": 1, - "score": 0.94 + "passed": 14, + "failed": 2, + "score": 0.88 }, "gameplay": { - "pieces_placed": 125, - "lines_cleared": 45, + "pieces_placed": 42, + "lines_cleared": 9, "max_score_observed": 0, - "play_duration_seconds": 30, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 21 + "load_time_ms": 219 }, "accessibility": { - "issues": [ - "canvas without aria-label or role" - ], - "issue_count": 1, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run3/eval_results.json @@ -41,7 +41,7 @@ "error": "no tsconfig.json" }, "performance": { - "bundle_size_bytes": 160015, + "bundle_size_bytes": 160372, "size_under_512kb": true }, "score": 0.33 @@ -129,136 +129,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.5, - "total": 16, - "passed": 8, - "failed": 8, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 300, - "height": 600 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "ArrowUp", - "drop": "Space" - }, - "start_mechanism": "auto", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via click_canvas" - }, - { - "name": "auto_drop", - "pass": false, - "detail": "piece did not move in 5 seconds" - }, - { - "name": "move_left", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_right", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": false, - "detail": "could not detect any piece rotations" - }, - { - "name": "hard_drop", - "pass": false, - "detail": "no change detected after hard drop key" - }, - { - "name": "piece_locks", - "pass": false, - "detail": "could not verify piece locking at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" - }, - { - "name": "multiple_pieces", - "pass": false, - "detail": "grid did not accumulate filled cells" - }, - { - "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [0] -> no change after polling" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 29s, placed 100 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 8, - "failed": 8, - "score": 0.5 - }, - "gameplay": { - "pieces_placed": 210, - "lines_cleared": 1, - "max_score_observed": 0, - "play_duration_seconds": 29, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 34 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role" - ], - "issue_count": 1, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.506 + "score": 0.3938 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=off_tool_read=on_tool_write=on_web_search=on_run3/gameplay-bot-report.json @@ -15,7 +15,7 @@ "rotate": "ArrowUp", "drop": "Space" }, - "start_mechanism": "auto", + "start_mechanism": "click_canvas", "score_element_found": true }, "tests": [ @@ -57,70 +57,68 @@ { "name": "all_pieces_rotate", "pass": false, - "detail": "could not detect any piece rotations" + "detail": "exception: page.waitForTimeout: Target page, context or browser has been closed" }, { "name": "hard_drop", "pass": false, - "detail": "no change detected after hard drop key" + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "piece_locks", "pass": false, - "detail": "could not verify piece locking at bottom" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "multiple_pieces", "pass": false, - "detail": "grid did not accumulate filled cells" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "score_changes", "pass": false, - "detail": "score did not increase: [0] -> no change after polling" + "detail": "could not read score element" }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 29s, placed 100 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 8, - "failed": 8, - "score": 0.5 + "passed": 4, + "failed": 12, + "score": 0.25 }, "gameplay": { - "pieces_placed": 210, - "lines_cleared": 1, + "pieces_placed": 50, + "lines_cleared": 0, "max_score_observed": 0, - "play_duration_seconds": 29, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 34 + "load_time_ms": 1117 }, "accessibility": { - "issues": [ - "canvas without aria-label or role" - ], - "issue_count": 1, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run1/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run1/eval_results.json @@ -41,7 +41,7 @@ "error": "no tsconfig.json" }, "performance": { - "bundle_size_bytes": 170044, + "bundle_size_bytes": 170400, "size_under_512kb": true }, "score": 0.33 @@ -128,137 +128,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.38, - "total": 16, - "passed": 6, - "failed": 10, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 300, - "height": 600 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "ArrowUp", - "drop": "Space" - }, - "start_mechanism": "click_canvas", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via click_canvas" - }, - { - "name": "auto_drop", - "pass": false, - "detail": "piece did not move in 5 seconds" - }, - { - "name": "move_left", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_right", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "move_down", - "pass": false, - "detail": "no change detected after key press" - }, - { - "name": "rotate", - "pass": false, - "detail": "no change detected after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": false, - "detail": "rotated: [] failed: [other] (tested 1 piece types in 60 attempts)" - }, - { - "name": "hard_drop", - "pass": false, - "detail": "no change detected after hard drop key" - }, - { - "name": "piece_locks", - "pass": false, - "detail": "could not verify piece locking at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" - }, - { - "name": "multiple_pieces", - "pass": false, - "detail": "grid did not accumulate filled cells" - }, - { - "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [0] -> no change after polling" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 26s, placed 100 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 6, - "failed": 10, - "score": 0.38 - }, - "gameplay": { - "pieces_placed": 151, - "lines_cleared": 1, - "max_score_observed": 0, - "play_duration_seconds": 26, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 24 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.529 + "score": 0.42 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run1/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run1/gameplay-bot-report.json @@ -1,13 +1,8 @@ { "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 300, - "height": 600 - }, + "renderer": "unknown", + "grid_detected": false, + "grid_bounds": null, "controls": { "left": "ArrowLeft", "right": "ArrowRight", @@ -15,8 +10,8 @@ "rotate": "ArrowUp", "drop": "Space" }, - "start_mechanism": "click_canvas", - "score_element_found": true + "start_mechanism": "unknown", + "score_element_found": false }, "tests": [ { @@ -26,8 +21,8 @@ }, { "name": "game_starts", - "pass": true, - "detail": "started via click_canvas" + "pass": false, + "detail": "exception: page.screenshot: Timeout 10000ms exceeded.\nCall log:\n\u001b[2m - taking page screenshot\u001b[22m\n\u001b[2m - waiting for fonts to load...\u001b[22m\n" }, { "name": "auto_drop", @@ -57,7 +52,7 @@ { "name": "all_pieces_rotate", "pass": false, - "detail": "rotated: [] failed: [other] (tested 1 piece types in 60 attempts)" + "detail": "could not detect any piece rotations" }, { "name": "hard_drop", @@ -71,57 +66,54 @@ }, { "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" + "pass": false, + "detail": "could not detect new piece at top" }, { "name": "multiple_pieces", "pass": false, - "detail": "grid did not accumulate filled cells" + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "score_changes", "pass": false, - "detail": "score did not increase: [0] -> no change after polling" + "detail": "exception: page.evaluate: Target page, context or browser has been closed" }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 26s, placed 100 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 6, - "failed": 10, - "score": 0.38 + "passed": 1, + "failed": 15, + "score": 0.06 }, "gameplay": { - "pieces_placed": 151, - "lines_cleared": 1, + "pieces_placed": 70, + "lines_cleared": 0, "max_score_observed": 0, - "play_duration_seconds": 26, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 24 + "load_time_ms": 1237 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run2/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run2/eval_results.json @@ -41,7 +41,7 @@ "error": "no tsconfig.json" }, "performance": { - "bundle_size_bytes": 227382, + "bundle_size_bytes": 227740, "size_under_512kb": true }, "score": 0.33 @@ -130,131 +130,7 @@ "gameplay_bot": { "pass": false, "score": 0, - "total": 16, - "passed": 0, - "failed": 16, - "report": { - "implementation": { - "renderer": "unknown", - "grid_detected": false, - "grid_bounds": null, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "ArrowUp", - "drop": "Space" - }, - "start_mechanism": "unknown", - "score_element_found": false - }, - "tests": [ - { - "name": "game_loads", - "pass": false, - "detail": "1 console error(s): Unexpected token '<'" - }, - { - "name": "game_starts", - "pass": false, - "detail": "skipped: page did not load" - }, - { - "name": "auto_drop", - "pass": false, - "detail": "skipped: page did not load" - }, - { - "name": "move_left", - "pass": false, - "detail": "skipped: page did not load" - }, - { - "name": "move_right", - "pass": false, - "detail": "skipped: page did not load" - }, - { - "name": "move_down", - "pass": false, - "detail": "skipped: page did not load" - }, - { - "name": "rotate", - "pass": false, - "detail": "skipped: page did not load" - }, - { - "name": "all_pieces_rotate", - "pass": false, - "detail": "skipped: page did not load" - }, - { - "name": "hard_drop", - "pass": false, - "detail": "skipped: page did not load" - }, - { - "name": "piece_locks", - "pass": false, - "detail": "skipped: page did not load" - }, - { - "name": "new_piece_spawns", - "pass": false, - "detail": "skipped: page did not load" - }, - { - "name": "multiple_pieces", - "pass": false, - "detail": "skipped: page did not load" - }, - { - "name": "line_clear", - "pass": false, - "detail": "skipped: page did not load" - }, - { - "name": "score_changes", - "pass": false, - "detail": "skipped: page did not load" - }, - { - "name": "game_over", - "pass": false, - "detail": "skipped: page did not load" - }, - { - "name": "playable_30s", - "pass": false, - "detail": "skipped: page did not load" - } - ], - "summary": { - "total": 16, - "passed": 0, - "failed": 16, - "score": 0 - }, - "gameplay": { - "pieces_placed": 0, - "lines_cleared": 0, - "max_score_observed": 0, - "play_duration_seconds": 0, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 22 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false - } - } + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.4785 + "score": 0.4106 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run2/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run2/gameplay-bot-report.json @@ -1,8 +1,13 @@ { "implementation": { - "renderer": "unknown", - "grid_detected": false, - "grid_bounds": null, + "renderer": "canvas", + "grid_detected": true, + "grid_bounds": { + "x": 0, + "y": 0, + "width": 75, + "height": 150 + }, "controls": { "left": "ArrowLeft", "right": "ArrowRight", @@ -10,113 +15,110 @@ "rotate": "ArrowUp", "drop": "Space" }, - "start_mechanism": "unknown", - "score_element_found": false + "start_mechanism": "click_canvas", + "score_element_found": true }, "tests": [ { "name": "game_loads", - "pass": false, - "detail": "1 console error(s): Unexpected token '<'" + "pass": true, + "detail": "no console errors" }, { "name": "game_starts", - "pass": false, - "detail": "skipped: page did not load" + "pass": true, + "detail": "started via click_canvas" }, { "name": "auto_drop", "pass": false, - "detail": "skipped: page did not load" + "detail": "piece did not move in 5 seconds" }, { "name": "move_left", "pass": false, - "detail": "skipped: page did not load" + "detail": "no change detected after key press" }, { "name": "move_right", "pass": false, - "detail": "skipped: page did not load" + "detail": "no change detected after key press" }, { "name": "move_down", - "pass": false, - "detail": "skipped: page did not load" + "pass": true, + "detail": "grid state changed after key press" }, { "name": "rotate", - "pass": false, - "detail": "skipped: page did not load" + "pass": true, + "detail": "piece shape changed after rotate key" }, { "name": "all_pieces_rotate", "pass": false, - "detail": "skipped: page did not load" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "hard_drop", "pass": false, - "detail": "skipped: page did not load" + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "piece_locks", "pass": false, - "detail": "skipped: page did not load" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "new_piece_spawns", "pass": false, - "detail": "skipped: page did not load" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "multiple_pieces", "pass": false, - "detail": "skipped: page did not load" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "line_clear", "pass": false, - "detail": "skipped: page did not load" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "score_changes", "pass": false, - "detail": "skipped: page did not load" + "detail": "could not read score element" }, { "name": "game_over", "pass": false, - "detail": "skipped: page did not load" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", "pass": false, - "detail": "skipped: page did not load" + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 0, - "failed": 16, - "score": 0 + "passed": 4, + "failed": 12, + "score": 0.25 }, "gameplay": { - "pieces_placed": 0, + "pieces_placed": 46, "lines_cleared": 0, "max_score_observed": 0, "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 22 + "load_time_ms": 39 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run3/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run3/eval_results.json @@ -41,7 +41,7 @@ "error": "no tsconfig.json" }, "performance": { - "bundle_size_bytes": 213896, + "bundle_size_bytes": 214253, "size_under_512kb": true }, "score": 0.33 @@ -244,7 +244,7 @@ "errors_during_play": 0 }, "performance": { - "load_time_ms": 18 + "load_time_ms": 1915 }, "accessibility": { "issues": [ @@ -255,5 +255,5 @@ } } }, - "score": 0.4785 + "score": 0.4106 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run3/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=off_tool_write=on_web_search=on_run3/gameplay-bot-report.json @@ -109,7 +109,7 @@ "errors_during_play": 0 }, "performance": { - "load_time_ms": 18 + "load_time_ms": 1915 }, "accessibility": { "issues": [ diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run1/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run1/eval_results.json @@ -127,138 +127,9 @@ "score": 0.75 }, "gameplay_bot": { - "pass": true, - "score": 1, - "total": 16, - "passed": 16, - "failed": 0, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 300, - "height": 600 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "z", - "drop": "Space" - }, - "start_mechanism": "auto", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via auto" - }, - { - "name": "auto_drop", - "pass": true, - "detail": "grid state changed after 5s with no input" - }, - { - "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": true, - "detail": "rotated: [unknown] failed: [] (tested 1 piece types in 60 attempts)" - }, - { - "name": "hard_drop", - "pass": true, - "detail": "piece immediately dropped and new piece appeared" - }, - { - "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" - }, - { - "name": "multiple_pieces", - "pass": true, - "detail": "game still responding after 10 piece drops" - }, - { - "name": "line_clear", - "pass": true, - "detail": "15 line(s) cleared during AI play" - }, - { - "name": "score_changes", - "pass": true, - "detail": "score changed from 43 to 44" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 78 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 16, - "failed": 0, - "score": 1 - }, - "gameplay": { - "pieces_placed": 121, - "lines_cleared": 52, - "max_score_observed": 62, - "play_duration_seconds": 30, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 31 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false - } - } + "pass": false, + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.634 + "score": 0.4988 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run1/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run1/gameplay-bot-report.json @@ -1,22 +1,17 @@ { "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 300, - "height": 600 - }, + "renderer": "unknown", + "grid_detected": false, + "grid_bounds": null, "controls": { "left": "ArrowLeft", "right": "ArrowRight", "down": "ArrowDown", - "rotate": "z", + "rotate": "ArrowUp", "drop": "Space" }, - "start_mechanism": "auto", - "score_element_found": true + "start_mechanism": "unknown", + "score_element_found": false }, "tests": [ { @@ -26,13 +21,13 @@ }, { "name": "game_starts", - "pass": true, - "detail": "started via auto" + "pass": false, + "detail": "exception: page.screenshot: Timeout 10000ms exceeded.\nCall log:\n\u001b[2m - taking page screenshot\u001b[22m\n\u001b[2m - waiting for fonts to load...\u001b[22m\n" }, { "name": "auto_drop", "pass": true, - "detail": "grid state changed after 5s with no input" + "detail": "pixels changed after 5s with no input" }, { "name": "move_left", @@ -56,72 +51,69 @@ }, { "name": "all_pieces_rotate", - "pass": true, - "detail": "rotated: [unknown] failed: [] (tested 1 piece types in 60 attempts)" + "pass": false, + "detail": "exception: page.waitForTimeout: Test timeout of 180000ms exceeded." }, { "name": "hard_drop", - "pass": true, - "detail": "piece immediately dropped and new piece appeared" + "pass": false, + "detail": "exception: page.screenshot: Target page, context or browser has been closed" }, { "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "multiple_pieces", - "pass": true, - "detail": "game still responding after 10 piece drops" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "line_clear", - "pass": true, - "detail": "15 line(s) cleared during AI play" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "score_changes", - "pass": true, - "detail": "score changed from 43 to 44" + "pass": false, + "detail": "exception: page.evaluate: Target page, context or browser has been closed" }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 78 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 16, - "failed": 0, - "score": 1 + "passed": 6, + "failed": 10, + "score": 0.38 }, "gameplay": { - "pieces_placed": 121, - "lines_cleared": 52, - "max_score_observed": 62, - "play_duration_seconds": 30, + "pieces_placed": 28, + "lines_cleared": 0, + "max_score_observed": 0, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 31 + "load_time_ms": 979 }, "accessibility": { - "issues": [ - "canvas without aria-label or role", - "canvas without aria-label or role" - ], - "issue_count": 2, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run2/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run2/eval_results.json @@ -41,7 +41,7 @@ "error": "no tsconfig.json" }, "performance": { - "bundle_size_bytes": 160511, + "bundle_size_bytes": 160868, "size_under_512kb": true }, "score": 0.33 @@ -130,136 +130,8 @@ }, "gameplay_bot": { "pass": false, - "score": 0.94, - "total": 16, - "passed": 15, - "failed": 1, - "report": { - "implementation": { - "renderer": "canvas", - "grid_detected": true, - "grid_bounds": { - "x": 0, - "y": 0, - "width": 300, - "height": 600 - }, - "controls": { - "left": "ArrowLeft", - "right": "ArrowRight", - "down": "ArrowDown", - "rotate": "z", - "drop": "Space" - }, - "start_mechanism": "auto", - "score_element_found": true - }, - "tests": [ - { - "name": "game_loads", - "pass": true, - "detail": "no console errors" - }, - { - "name": "game_starts", - "pass": true, - "detail": "started via auto" - }, - { - "name": "auto_drop", - "pass": true, - "detail": "grid state changed after 5s with no input" - }, - { - "name": "move_left", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_right", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "move_down", - "pass": true, - "detail": "grid state changed after key press" - }, - { - "name": "rotate", - "pass": true, - "detail": "piece shape changed after rotate key" - }, - { - "name": "all_pieces_rotate", - "pass": true, - "detail": "rotated: [other] failed: [] (tested 1 piece types in 60 attempts)" - }, - { - "name": "hard_drop", - "pass": true, - "detail": "piece immediately dropped and new piece appeared" - }, - { - "name": "piece_locks", - "pass": true, - "detail": "filled cells persist at bottom" - }, - { - "name": "new_piece_spawns", - "pass": true, - "detail": "new piece detected at top of grid" - }, - { - "name": "multiple_pieces", - "pass": true, - "detail": "grid accumulated cells: 16 -> 41" - }, - { - "name": "line_clear", - "pass": true, - "detail": "line cleared via strategic placement" - }, - { - "name": "score_changes", - "pass": false, - "detail": "score did not increase: [0] -> no change after polling" - }, - { - "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" - }, - { - "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 77 pieces, no crashes" - } - ], - "summary": { - "total": 16, - "passed": 15, - "failed": 1, - "score": 0.94 - }, - "gameplay": { - "pieces_placed": 128, - "lines_cleared": 1, - "max_score_observed": 0, - "play_duration_seconds": 30, - "errors_during_play": 0 - }, - "performance": { - "load_time_ms": 22 - }, - "accessibility": { - "issues": [ - "canvas without aria-label or role" - ], - "issue_count": 1, - "pass": false - } - } + "score": 0, + "error": "Gameplay bot timed out after 180 seconds" }, - "score": 0.505 + "score": 0.3475 } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run2/gameplay-bot-report.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run2/gameplay-bot-report.json @@ -77,7 +77,7 @@ { "name": "multiple_pieces", "pass": true, - "detail": "grid accumulated cells: 16 -> 41" + "detail": "grid accumulated cells: 16 -> 46" }, { "name": "line_clear", @@ -91,36 +91,34 @@ }, { "name": "game_over", - "pass": true, - "detail": "game stopped after stacking to top" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" }, { "name": "playable_30s", - "pass": true, - "detail": "played for 30s, placed 77 pieces, no crashes" + "pass": false, + "detail": "exception: keyboard.press: Target page, context or browser has been closed" } ], "summary": { "total": 16, - "passed": 15, - "failed": 1, - "score": 0.94 + "passed": 13, + "failed": 3, + "score": 0.81 }, "gameplay": { - "pieces_placed": 128, + "pieces_placed": 51, "lines_cleared": 1, "max_score_observed": 0, - "play_duration_seconds": 30, + "play_duration_seconds": 0, "errors_during_play": 0 }, "performance": { - "load_time_ms": 22 + "load_time_ms": 747 }, "accessibility": { - "issues": [ - "canvas without aria-label or role" - ], - "issue_count": 1, - "pass": false + "issues": [], + "issue_count": 0, + "pass": true } } \ No newline at end of file diff --git a/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run3/eval_results.json b/results/runs/tetris_context_file=none_effort=high_human_language=en_language=typescript_linter=on_max_budget=low_model=haiku_playwright=on_prompt_style=simple_sub_agents=on_tool_edit=on_tool_glob=on_tool_grep=on_tool_read=on_tool_write=off_web_search=on_run3/eval_results.json @@ -258,5 +258,5 @@ } } }, - "score": 0.615 + "score": 0.6331 } \ No newline at end of file

Impressum · Datenschutz