import type { Narrative } from '@/lib/demo-kit';

/**
 * What this environment argues, tab by tab.
 *
 * The page is a set of tabs rather than an essay because an executive who has
 * chosen an environment wants to be doing the task, not reading a case for it.
 * Each claim is the one sentence that tab has to earn.
 */
export const narrative: Narrative = {
  thesis:
    'This is the smallest complete reinforcement-learning environment we could find that needs no ' +
    'domain knowledge at all. It has everything the ones that matter to your business have: a task, ' +
    'a fixed set of legal moves, a grader that cannot be argued with, and a score that moves when ' +
    'the model gets better. Learn the machine here, and every environment after this is the same ' +
    'machine with a different grader.',
  anxiety: 'How would we know it was actually working?',
  claims: {
    play:
      'Play it yourself first. Everything else on this page is about what happened when a model tried the same thing.',
    watch:
      'This is not a video. It is a recorded attempt replayed at the speed it actually happened, and you can step through it one guess at a time.',
    reward:
      'Move one slider and the winner changes. That is not a trick — it is the product.',
    evidence:
      'The grader is thirty lines of Python. Here it is, here is the command that runs it, and here is what this environment does not teach you.',
  },
  limits: [
    {
      text:
        'Nobody is pushing back. There is no counterparty adapting to what the agent does, which is most of what makes fraud and abuse hard.',
      answeredBy: 'alert-triage',
    },
    {
      text:
        'There is no rule the agent could break. No privacy boundary, no regulator, no policy it must satisfy while it optimises.',
      answeredBy: 'denial-appeal',
    },
    {
      text:
        'Every guess is objectively scorable. Real decisions have partial credit and honest disagreement about what a good answer even was.',
      answeredBy: 'coverage-reserve',
    },
    {
      text:
        'The score arrives the moment the game ends. A claim, a bid or a dispatch is graded weeks later, by reality.',
      answeredBy: 'day-ahead-bid',
    },
  ],
};
