Case ExplorerCase 03
Reconstruct a local-first Markdown workspace

Evidence and provenance
Frozen evidence (4)




- 01official source github.com
- 02live stackedit.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.62
Active score weights are divided by their total. 1.00
Visual checkpoints (3)



Contract v2 evidence
1 workflow · 5 ordered steps · 0 weighted regions
| Evidence | Contract | Weight |
|---|---|---|
| edit-persistence | replace-note fill ×1.5 → replace-title fill ×1.0 → reload navigate ×2.0 → restore-title fill ×0.3 → persisted screenshot ×0.3 | 2.0 |
Deterministic checks (6, total weight 4.5)
| Check | Kind | Dimension | Target | Weight |
|---|---|---|---|---|
| seeded-preview | text | functional | desktop | 1.0 |
| editor-present | selector | functional | mobile | 0.5 |
| reader-control | selector | functional | mobile | 0.5 |
| document-title | selector | functional | desktop | 0.5 |
| mobile-no-overflow | no_horizontal_overflow | responsive | mobile | 1.0 |
| mobile-preview-hidden | hidden | responsive | mobile | 1.0 |
Development diagnostics · 10 recorded attempts
Fig. 01 desktop · base · 1440×900











Fig. 02 mobile · base · 390×844











Fig. 03 mobile-reader · state · click











| Pin to compare | Date | Agent | Variant | Status | Visual | Func. | Overall | Time | Cost |
|---|---|---|---|---|---|---|---|---|---|
| 2026-08-30 | claude_code/claude-opus-5 · high | — | completed | 94.8 | 100.0 | 93.1 | 37m 25s | $14.80 | |
| 2026-08-30 | claude_code/claude-sonnet-5 · high | — | completed | 73.2 | 100.0 | 64.5 | 9m 03s | $2.43 | |
| 2026-08-30 | codex/unverified · high | — | completed | 86.3 | 100.0 | 81.9 | 11m 09s | — | |
| 2026-08-30 | codex/unverified · high | — | completed | 83.0 | 100.0 | 77.5 | 6m 32s | — | |
| 2026-08-30 | codex/unverified · high | — | completed | 89.6 | 100.0 | 86.2 | 12m 50s | — | |
| 2026-08-30 | claude_code/claude-opus-5 · high | — | completed | 93.9 | 100.0 | 91.9 | 40m 06s | $15.06 | |
| 2026-08-30 | claude_code/claude-sonnet-5 · high | — | completed | 74.4 | 100.0 | 66.0 | 18m 42s | $4.27 | |
| 2026-08-30 | codex/unverified · high | — | completed | 89.8 | 100.0 | 86.5 | 12m 01s | — | |
| 2026-08-30 | codex/unverified · high | — | completed | 80.3 | 100.0 | 73.9 | 9m 46s | — | |
| 2026-08-30 | codex/unverified · high | — | completed | 90.2 | 100.0 | 86.9 | 15m 57s | — |
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 `stackedit-field-notes` (Reconstruct a local-first Markdown workspace).
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 `stackedit-field-notes` (Reconstruct a local-first Markdown workspace).
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 `stackedit-field-notes` (Reconstruct a local-first Markdown workspace).
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
Field Notes Markdown workspace
Reconstruct the frozen local-first Markdown workspace shown in the supplied evidence. The target is a compact editing tool, not a marketing page. Match the desktop split editor/preview at 1440x900 and the phone editor layout at 390x844.
The initial document title is Field Notes and its exact Markdown fixture is:
# Field Notes
A calm place for **working drafts**.
## Today
Capture the layout.
Review responsive behavior.
| View | Mode | Status |
| --- | --- | --- |
| Desktop | Split | Ready |
| Phone | Editor | Ready |
Everything stays in this browser.
sync: ready
The desktop workspace keeps a dark formatting toolbar, equal editor and rendered preview panes, a narrow preview control rail, and a blue status bar. The phone layout hides the preview pane without shrinking the editor off-screen and keeps the reduced toolbar, title, preview controls, and status bar usable.
Implement these observable behaviors:
Reader modechanges the phone from editor mode to the rendered document shown inevidence/mobile-reader.png.- Editing Markdown updates the rendered preview immediately.
- The current title and Markdown are stored locally and survive a same-origin
reload. The persistence check replaces the title with
Local Draftand the note with# Field Notes\n\nUpdated locally., reloads, verifies both saved values, then restores the title toField Notesbefore comparing the state withevidence/desktop-persisted.png.
Expose the accessible name Markdown editor directly on the editable
textarea or contenteditable element. Expose Rendered preview, Reader mode, and Document title on their corresponding controls and surfaces. Keep
all behavior local. Do not embed StackEdit, copy its source, use a screenshot as
the implementation, call production APIs, or load runtime assets from the
network.
Run npm run build, then write submission/submission.json according to the
supplied contract.