How fchollet/arc-agi works
ARC-AGI-1 is a benchmark dataset plus a browser tool for manually solving its grid tasks. A user loads a task, reviews training demonstrations and test inputs, edits an output grid with resize, copy, selection, and floodfill tools, then submits it for exact-answer validation and moves through remaining test inputs. The task corpus has separate training and evaluation sets. The excerpts establish grid rendering and state synchronization, but omit some handlers and the HTML wiring, so only documented or directly evidenced relationships are shown.
Main entry points: testing_interface.js Task loading · testing_interface.html Testing interface · common.js Grid rendering · training Training tasks
Components 13
Solve Tasks
- Testing interface
apps/testing_interface.html - Task loading
apps/js/testing_interface.js - Training demonstrations
apps/js/testing_interface.js - Test inputs
apps/js/testing_interface.js - Answer validation
apps/js/testing_interface.js
Task Corpus
- Training tasks
data/training - Evaluation tasks
data/evaluation
Grid Interaction
- Grid model
apps/js/common.js - Grid rendering
apps/js/common.js - Grid editing tools
apps/js/testing_interface.js - Grid state sync
apps/js/testing_interface.js - Floodfill
apps/js/common.js
Other components
- Human solver
Connections 14
- Human solver → Testing interface: uses
README.md - Testing interface → Task loading: hosts
README.md - Task loading → Training tasks: loads task
apps/js/testing_interface.js - Task loading → Training demonstrations: loads pairs
apps/js/testing_interface.js - Task loading → Test inputs: loads pairs
apps/js/testing_interface.js - Human solver → Grid editing tools: edits output
README.md - Grid editing tools → Grid state sync: synchronizes
apps/js/testing_interface.js - Grid editing tools → Floodfill: offers tool
README.md - Grid editing tools → Grid rendering: updates display
apps/js/common.js - Grid rendering → Grid model: renders grid
apps/js/common.js - Answer validation → Grid state sync: reads output
apps/js/testing_interface.js - Answer validation → Test inputs: checks expected output
apps/js/testing_interface.js - Human solver → Answer validation: submits answer
README.md - Human solver → Evaluation tasks: may evaluate
README.md