Synthetic fixtures

The local-demo provider accepts challenges of kind: "synthetic" whose fixture matches these patterns. Results are deterministic — ideal for CI.

OperationFixture patternResult
textsg-text-<answer>returns <answer>
image_classificationsg-classify-<label>returns <label>
gridsg-grid-<i1,i2,…>returns the index list
audiosg-audio-<words>returns the transcription
drag_dropsg-dd-<target>returns the target
matchingsg-match-<pairs>returns the pairs

Behavior fixtures

sg-fail-<reason>permanent failure — no retry
sg-flakytransient failure on attempt 0, succeeds on retry
sg-slow-<ms>resolves after a delay
sg-hangnever resolves — exercises the timeout path

Anything else returns validation_failed before a job is created — invalid challenges are never billed. All demo results carry executionMode: "demo".