JSWOzonetel · Call Analysis

Prompts the instructions sent to the model — editable here, no deployment needed

Transcription 3255 characters · built-in, never edited

Sent with the audio. It decides how the recording is turned into English text, who is labelled agent or customer, and the JSON shape the rest of the system reads.

These must stay in the text, because the code that reads the reply looks for them: "turns" · "speaker" · text_native · text_en · primary_language · "connected"

saved to /app/config/prompts/transcribe.md

Scoring preamble 1847 characters · built-in, never edited

The opening instructions for scoring a call against the pitch. The rubric itself - steps, weights, objections - is generated from config/rubric.json and is not part of this text.

saved to /app/config/prompts/analysis_header.md

Rules the rubric, the bands and the lexicon — what the numbers are computed from

Pitch rubric 14243 characters · 2026-10-31 15:38

The pitch steps, their weights and the score bands, per pitch type. This is what a score is computed FROM - the model reports which steps happened, and Python does the arithmetic from these weights.

saved to /app/config/rubric.json; the previous version is kept under config/history/

Objections 3108 characters · 2026-10-31 15:38

The objection types the scorer recognises and how each is judged.

saved to /app/config/objections.json; the previous version is kept under config/history/

Analysability bands 1143 characters · 2026-10-31 15:38

How a recording is judged scoreable at all - full conversation, short or unclear, or no conversation. Not a judgement of the agent.

saved to /app/config/banding.json; the previous version is kept under config/history/

Campaign to pitch type 2983 characters · 2026-10-31 15:38

Which pitch rubric each campaign is scored against. An unmatched campaign is transcribed but excluded from pitch scoring, rather than scored against a guessed rubric.

saved to /app/config/campaign_map.json; the previous version is kept under config/history/

Sentiment lexicon 5325 characters · 2026-10-31 15:38

The words and phrases that move customer sentiment, with weights. Sentiment is computed from this list alone - no model is involved, so the same words always give the same answer.

saved to /app/config/sentiment_lexicon.json; the previous version is kept under config/history/