Brand and design · Hi-fi screens · S20 Processing · Processing

Data-binding map: S20 Processing · Processing

Data-binding map of Processing · Processing: every field to its source, and what each required state shows.

Generated by botgumi-design index from ../../screens.json. Edit that file, not this page.

Every field S20 shows and where it comes from.

Field Source (endpoint or local state) Format Fallback
stage rows api GET /attempts/{attempt_id} status · attempt.status, attempt.progress.stage / stage_index / stage_count; upload stage = local:uploadQueue ✓ / spinner / pending —
stage rows api GET /attempts/{attempt_id} progress.stage
stage rows api GET /attempts/{attempt_id} progress.stage_index
stage rows api GET /attempts/{attempt_id} progress.stage_count
stage rows local uploadQueue
upload sub local recorder.effectiveMs · local:recorder.effectiveMs processing.sub.upload —
transcribed length api GET /attempts/{attempt_id} transcript.length.label · attempt.transcript.length.label processing.done.transcribe "Transcribed" without count
ETA api GET /attempts/{attempt_id} progress.eta_ms · attempt.progress.eta_ms seconds hide
long wait api GET /config limits.poll_timeout_ms · config.limits.poll_timeout_ms exceeded processing.slow.* —
failed api GET /attempts/{attempt_id} error.code · attempt.error.code / message (Accept-Language) / retryable / stage retry if retryable non-retryable → generic error
failed api GET /attempts/{attempt_id} error.message
failed api GET /attempts/{attempt_id} error.retryable
failed api GET /attempts/{attempt_id} error.stage
unreliable api GET /attempts/{attempt_id} unreliable_reason · attempt.unreliable_reason → unreliable.<reason>.*; attempt.transcript.length vs floor (CCR-13); language_mismatch uses session.language endonym — generic unreliable copy
own-audio playback call GET /attempts/{id}/audio · GET /v1/attempts/{id}/audio player 410 → hide player
POST /v1/attempts/{id}/discard call POST /attempts/{id}/discard · From the board's data-bind; no row in data-binding.md yet.
POST /v1/attempts/{id}/discard → record idle call POST /attempts/{id}/discard · From the board's data-bind; no row in data-binding.md yet.
POST /v1/attempts/{id}/retry (attempt.error.retryable) call POST /attempts/{id}/retry · From the board's data-bind; no row in data-binding.md yet.
attempt.error.code + attempt.error.stage api GET /attempts/{attempt_id} error.code · From the board's data-bind; no row in data-binding.md yet.
attempt.error.code + attempt.error.stage api GET /attempts/{attempt_id} error.stage
attempt.error.message (Accept-Language) api GET /attempts/{attempt_id} error.message · From the board's data-bind; no row in data-binding.md yet.
attempt.transcript.length.label vs per-language floor (D2) api GET /attempts/{attempt_id} transcript.length.label · From the board's data-bind; no row in data-binding.md yet.
attempt.unreliable_reason = too_short api GET /attempts/{attempt_id} unreliable_reason · From the board's data-bind; no row in data-binding.md yet.
session.stage → derived step api GET /sessions/{session_id} stage · From the board's data-bind; no row in data-binding.md yet.

Binds on the boards

The data-bind values across every state.

  • POST /v1/attempts/{id}/discard
  • POST /v1/attempts/{id}/discard → record idle
  • POST /v1/attempts/{id}/retry (attempt.error.retryable)
  • attempt.error.code + attempt.error.stage
  • attempt.error.message (Accept-Language)
  • attempt.progress.eta_ms
  • attempt.progress.stage / stage_index / stage_count
  • attempt.status
  • attempt.transcript.length.label vs per-language floor (D2)
  • attempt.unreliable_reason = too_short
  • session.stage → derived step

States