# Toybox #001: Free Zen Clock Protocol

Status: protocol ready; official runs not scheduled

Protocol version: 2

Schema version: 2

Sources checked: 2026-07-29; recheck required before running

## Consumer question

Which currently listed-Free Zen route can produce a usable, accessible one-file clock without repair—and what does it cost in time, privacy, and billing risk?

## Locked route manifest

1. `opencode/big-pickle`
2. `opencode/deepseek-v4-flash-free`
3. `opencode/mimo-v2.5-free`
4. `opencode/laguna-s-2.1-free`
5. `opencode/ling-3.0-flash-free`
6. `opencode/north-mini-code-free`
7. `opencode/nemotron-3-ultra-free`

Run three round-robin passes: pass 1 visits every route in the order above, followed by pass 2 and pass 3. There is no substitute. A locked route that disappears receives `unavailable` rows. Newly listed routes wait for another protocol version.

## One-shot run contract

- Use the exact UTF-8 text in `PROMPT.txt` (SHA-256: `d235274abfbc08b59b897a5dee2916ad71f6a0603ea0df74d657fadcfd24c2dd`).
- Record the exact OpenCode version and exact `opencode/<route>` selection.
- Use a clean directory containing no files before each attempt.
- Record environment, permissions, workspace contents, timestamps, and terminal output.
- Apply a 20-minute timeout from prompt submission.
- Do not repair, edit, or add a follow-up prompt.
- Preserve terminal failures, timeouts, rate limits, unavailable states, and raw artifacts.
- Record token reporting, billing state, actual charge, and a redacted receipt.
- Run the pinned evaluator and preserve its JSON, screenshots, console events, network observations, Axe output, and checksums.

Allowed result states are `not-run`, `in-progress`, `complete`. Allowed attempt statuses are `not-run`, `accepted`, `failed`, `timed-out`, `rate-limited`, `unavailable`. Evidence state is `missing`, `partial`, `complete`, `verified`.

Numeric evidence is nullable. A recorded zero is data and must remain `0`; missing evidence is `null`.

## Evaluator hooks

The artifact must expose:

- a `[data-toybox-clock]` root that becomes `data-ready="true"` after initialization;
- a visible `<time data-toybox-time datetime="…">` whose machine-readable value updates with the clock;
- accessible hour-mode and theme controls that expose their selected state.

No visual layout is prescribed beyond the functional prompt.

## Deterministic gate

Observation begins before navigation. Readiness has five seconds. The evaluator samples time immediately and two seconds later.

Rendering fails on readiness timeout, an uncaught page error, or `console.error`; warnings are recorded. Time passes only within two seconds of the browser clock. Advancement passes only when the second sample advances consistently without navigation or reload. Only the initial local document request is allowed; every other attempted request is recorded, blocked, and fails the gate.

## Evidence and publication

Use `RESULTS-TEMPLATE.csv` for all 21 rows and complete `PRIVACY-BILLING-CHECKLIST.md` before attempt 1. Official evidence requires owner review. Redact billing material before publication.

An in-progress page may expose evidence-reviewed raw attempts and counts, but cannot name a best route. A complete page requires all 21 rows terminal and reviewed. It may publish no recommendation for incomplete, tied, or uniformly poor evidence. Do not create a blended model score or generalize beyond this prompt-harness combination.
