# Synthetic example hour

Summary: The synthetic example hour is one sealed hour and the hour before it, as one download, for the synthetic venue `example` and its channel `trades`. It holds no market data. It includes both daily manifests and the test key set that their signatures verify against.

Use it to run [command-line verification](https://noxfze.com/docs/verify) before your first sealed hour arrives, or to test your own
implementation of [record format, version 1](https://noxfze.com/docs/format).

## Download

[example-hour.tar](https://noxfze.com/docs/example-hour.tar): 21504 bytes, SHA-256 `45eab923b72291d31d626a2930a17c42524644430d39df69121897c3b2c5f88c`.

Unpack it with `tar -xf example-hour.tar`. It holds the directory `example-hour/`:

```text
   391  example-hour/expected.json
   142  example-hour/keys.json
  1026  example-hour/recorder=r1/venue=example/channel=trades/date=2026-01-05/hour=23/manifest.json
   216  example-hour/recorder=r1/venue=example/channel=trades/date=2026-01-05/hour=23/manifest.json.sig
   307  example-hour/recorder=r1/venue=example/channel=trades/date=2026-01-05/hour=23/raw.jsonl.zst
  2013  example-hour/recorder=r1/venue=example/channel=trades/date=2026-01-05/hour=23/trades.parquet
   245  example-hour/recorder=r1/venue=example/channel=trades/date=2026-01-05/manifest.json
   216  example-hour/recorder=r1/venue=example/channel=trades/date=2026-01-05/manifest.json.sig
  1863  example-hour/recorder=r1/venue=example/channel=trades/date=2026-01-06/hour=00/manifest.json
   216  example-hour/recorder=r1/venue=example/channel=trades/date=2026-01-06/hour=00/manifest.json.sig
   318  example-hour/recorder=r1/venue=example/channel=trades/date=2026-01-06/hour=00/raw.jsonl.zst
  2052  example-hour/recorder=r1/venue=example/channel=trades/date=2026-01-06/hour=00/trades.parquet
   306  example-hour/recorder=r1/venue=example/channel=trades/date=2026-01-06/manifest.json
   216  example-hour/recorder=r1/venue=example/channel=trades/date=2026-01-06/manifest.json.sig
```

- `expected.json`: the expected result of a verifier that makes every check of the format.
- `keys.json`: the test key set, a JWK Set (RFC 7517), used only for synthetic test data.

## The two synthetic hours

| Hour (UTC) | Status | Reasons | Files | Previous manifest (BLAKE3) |
|---|---|---|---|---|
| 2026-01-05 23:00 to 00:00 | `complete` | none | `raw.jsonl.zst` (3 rows), `trades.parquet` (2 rows) | `null`, the start of the chain |
| 2026-01-06 00:00 to 01:00 | `partial` | `reconnect`, `clock_offset_unknown` | `raw.jsonl.zst` (4 rows), `trades.parquet` (3 rows) | `05a9316fa40d8f7ea43cd1c6cbb27c88c979059466054d6cae45150c4aded1e8` |

## Expected result

`expected.json` states the verdict `pass` with no errors, for 2 hours on 2 days:

| Hour (UTC) | Status |
|---|---|
| 2026-01-05 23:00 | `complete` |
| 2026-01-06 00:00 | `partial` |

The synthetic hour 2026-01-06 00:00 UTC is `partial`, and its manifest states why. Its reasons are `reconnect` (a
replica reconnected during the hour) and `clock_offset_unknown` (at least one frame has no receipt with a clock
offset). A partial hour still passes: the checks show that the hour is intact and consistent, and its manifest states
what was incomplete.
