Case ExplorerCase 01
Reconstruct a browser-side Base64 workbench

Evidence and provenance
Frozen evidence (3)



- 01official source github.com
- 02live gchq.github.io
- 03reference-capture
Evaluation matrix
Score composition
Submission contract, install/build and policy are gates. Contract v2 preserves the full score vector instead of hiding functional checks, visual regions, responsive behavior, workflows and preservation in one value.
global 0.50 · regions 0.00 · functional 0.10 · responsive 0.10 workflow 0.30 · preservation 0.00 · floor 0.60
Active score weights are divided by their total. 1.00
Visual checkpoints (2)


Contract v2 evidence
1 workflow · 4 ordered steps · 0 weighted regions
| Evidence | Contract | Weight |
|---|---|---|
| base64-recipe | initial-empty assert ×0.8 → add-operation drag ×1.5 → enter-input fill ×2.0 → base64-result screenshot ×0.3 | 2.0 |
Deterministic checks (5, total weight 3.0)
| Check | Kind | Dimension | Target | Weight |
|---|---|---|---|---|
| operation-present | selector | functional | desktop | 0.5 |
| recipe-present | selector | functional | desktop | 0.5 |
| input-present | selector | functional | mobile | 0.5 |
| output-present | selector | functional | mobile | 0.5 |
| mobile-no-overflow | no_horizontal_overflow | responsive | mobile | 1.0 |
Development diagnostics · 10 recorded attempts
Fig. 01 desktop · base · 1440×900











Fig. 02 mobile · base · 390×844 · full page











| Pin to compare | Date | Agent | Variant | Status | Visual | Func. | Overall | Time | Cost |
|---|---|---|---|---|---|---|---|---|---|
| 2026-08-30 | claude_code/claude-opus-5 · high | — | completed | 98.7 | 100.0 | 98.3 | 36m 22s | $12.80 | |
| 2026-08-30 | claude_code/claude-sonnet-5 · high | — | completed | 64.6 | 100.0 | 55.8 | 7m 22s | $1.79 | |
| 2026-08-30 | codex/unverified · high | — | completed | 91.4 | 100.0 | 89.2 | 6m 34s | — | |
| 2026-08-30 | codex/unverified · high | — | completed | 62.0 | 100.0 | 22.5 | 7m 07s | — | |
| 2026-08-30 | codex/unverified · high | — | completed | 92.7 | 100.0 | 90.9 | 9m 09s | — | |
| 2026-08-30 | claude_code/claude-opus-5 · high | — | completed | 97.7 | 100.0 | 97.1 | 27m 58s | $10.78 | |
| 2026-08-30 | claude_code/claude-sonnet-5 · high | — | completed | 71.6 | 100.0 | 64.5 | 8m 34s | $2.54 | |
| 2026-08-30 | codex/unverified · high | — | completed | 60.6 | 100.0 | 20.7 | 7m 26s | — | |
| 2026-08-30 | codex/unverified · high | — | completed | 84.2 | 100.0 | 80.2 | 3m 53s | — | |
| 2026-08-30 | codex/unverified · high | — | completed | 93.4 | 100.0 | 91.8 | 9m 06s | — |
No runs match the current filters.
Candidate protocol preview
The rendered Candidate prompt is published for inspection. The downloadable starter workspace, injected Skill files and executable Harness remain restricted, so this page does not claim that an external reader can reproduce a graded run.
Skills declared design-case-implementer
Rendered Candidate prompt
Runtime-agnostic prompt record.
Use the ReconBench candidate skills `design-case-implementer` in that order. Read those skill files if your workspace provides them, and otherwise follow the same process with your own tools.
You are the candidate in ReconBench task `cyberchef-base64-workbench` (Reconstruct a browser-side Base64 workbench).
Read `task/brief.md` and every other file under `task/` before changing code.
Implement the result only under `submission/`. The starter may be replaced when the task allows it.
Do not inspect parent directories, benchmark harness files, grader code, reference images, or any oracle material.
Do not call write endpoints belonging to a reference site. Keep forms, counters, and similar behavior local.
Dependencies install offline from a vendored cache that matches the starter lockfile.
Do not add dependencies; the install will fail and the network is not yours to use.
`tools/screenshot.mjs` renders your work in the browser build the evaluator uses:
node tools/screenshot.mjs --url http://127.0.0.1:4173/ --out shots/desktop.png \
--width 1440 --height 900 --full-page
Before finishing:
1. Run the requested build command.
2. Start the app and capture every target viewport in the task with that tool, then read the captures back.
3. Exercise the required interactions and inspect the console errors and blocked requests it reports.
4. Write `submission/submission.json` using the contract in the implementer skill.
The harness will evaluate the filesystem after this process exits. Do not leave a dev server running.
Prompt rendered by the Harness for Codex CLI.
Use $design-case-implementer.
You are the candidate in ReconBench task `cyberchef-base64-workbench` (Reconstruct a browser-side Base64 workbench).
Read `task/brief.md` and every other file under `task/` before changing code.
Implement the result only under `submission/`. The starter may be replaced when the task allows it.
Do not inspect parent directories, benchmark harness files, grader code, reference images, or any oracle material.
Do not call write endpoints belonging to a reference site. Keep forms, counters, and similar behavior local.
Dependencies install offline from a vendored cache that matches the starter lockfile.
Do not add dependencies; the install will fail and the network is not yours to use.
`tools/screenshot.mjs` renders your work in the browser build the evaluator uses:
node tools/screenshot.mjs --url http://127.0.0.1:4173/ --out shots/desktop.png \
--width 1440 --height 900 --full-page
Before finishing:
1. Run the requested build command.
2. Start the app and capture every target viewport in the task with that tool, then read the captures back.
3. Exercise the required interactions and inspect the console errors and blocked requests it reports.
4. Write `submission/submission.json` using the contract in the implementer skill.
The harness will evaluate the filesystem after this process exits. Do not leave a dev server running.
Prompt rendered by the Harness for Claude Code.
/design-case-implementer
You are the candidate in ReconBench task `cyberchef-base64-workbench` (Reconstruct a browser-side Base64 workbench).
Read `task/brief.md` and every other file under `task/` before changing code.
Implement the result only under `submission/`. The starter may be replaced when the task allows it.
Do not inspect parent directories, benchmark harness files, grader code, reference images, or any oracle material.
Do not call write endpoints belonging to a reference site. Keep forms, counters, and similar behavior local.
Dependencies install offline from a vendored cache that matches the starter lockfile.
Do not add dependencies; the install will fail and the network is not yours to use.
`tools/screenshot.mjs` renders your work in the browser build the evaluator uses:
node tools/screenshot.mjs --url http://127.0.0.1:4173/ --out shots/desktop.png \
--width 1440 --height 900 --full-page
Before finishing:
1. Run the requested build command.
2. Start the app and capture every target viewport in the task with that tool, then read the captures back.
3. Exercise the required interactions and inspect the console errors and blocked requests it reports.
4. Write `submission/submission.json` using the contract in the implementer skill.
The harness will evaluate the filesystem after this process exits. Do not leave a dev server running.
Not publicly reproducible in this Pilot
- Starter workspace
- access restricted
- Injected Skills
- access restricted
- Harness command
- withheld until a runnable public bundle is released
- Sealed evaluator
- never Candidate-visible
Appendix ATask brief — exactly what the candidate agent receives
CyberChef Base64 workbench
Reconstruct the frozen browser-side transformation workbench shown in the supplied evidence. This is an operational desktop tool, not a marketing page. Match the four-area desktop layout at 1440x900 and the full-page compact phone layout at 390x844. On phone, Operations and Recipe share the top row while the Input and Output work areas continue below them without horizontal overflow.
The visible areas are:
- the
Operationslibrary with favourites, categories, counts and search; - the
Recipeworkspace with its action rail and Auto Bake control; - the
Inputeditor and status controls; - the
Outputviewer and status controls.
Implement this observable workflow:
- Drag
To Base64from Operations into the Recipe workspace. - Enter
ReconBench second casein Input. - With Auto Bake enabled, Output becomes
UmVjb25CZW5jaCBzZWNvbmQgY2FzZQ==and matchesevidence/desktop-base64.png.
Expose To Base64 operation, Recipe workspace, Input data, and Output data as accessible names on their corresponding interactive or content
surfaces. Make the operation draggable and the recipe a working drop target.
The input must be a directly editable textarea or contenteditable element.
The output must be a non-form rendered text surface such as div, pre, or a
non-editable contenteditable; do not put Output data on input or
textarea. The evaluator reads the same visible text a user reads rather than
a hidden form value.
Keep every behavior local. Do not embed CyberChef, copy its source, use a screenshot as the implementation, call production APIs, or load runtime assets from the network. Do not implement unrelated cryptographic operations.
Run npm run build, then write submission/submission.json according to the
supplied contract.