{
  "schema": "vitrina-presentation-strategy/v2",
  "asOf": "2026-10-13",
  "status": "PROPOSAL_NOT_APPROVED",
  "choice": "DINOv3 frozen features + small classifier + human review",
  "reason": "Promising same-cohort saved quality/latency, low-complexity path. Generalization, human time saving and complete inventory remain unproven.",
  "stages": [
    {
      "id": "data",
      "name": "Данные и базовый протокол",
      "hours": [
        22,
        32
      ],
      "compute": 2000,
      "condition": "Первый цикл. Включает итоговую оценку после фиксации метода.",
      "basis": "Fable discussion and lead synthesis; 22–32h assumption"
    },
    {
      "id": "ranking",
      "name": "Отбор дополнительных подсказок",
      "hours": [
        8,
        12
      ],
      "compute": 3000,
      "condition": "Первый цикл. До двух дополнительных кандидатов на фото.",
      "basis": "Fable discussion and lead synthesis; 8–12h assumption"
    },
    {
      "id": "spatial",
      "name": "Мелкая сетка / AnyUp",
      "hours": [
        12,
        20
      ],
      "compute": 5000,
      "condition": "Условно: выбрать один способ на разработке до закрытого теста.",
      "basis": "New planning estimate for presentation; not measured and not a Fable quote"
    },
    {
      "id": "rf",
      "name": "RF-DETR Small",
      "hours": [
        8,
        16
      ],
      "compute": 5000,
      "condition": "Альтернатива пространственной ветке; готовое подтвержденное оборудование.",
      "basis": "New planning estimate; no setup/procurement promise, not old4hoption"
    },
    {
      "id": "pilot",
      "name": "Ограниченный пилот с пользователями",
      "hours": [
        16,
        24
      ],
      "compute": 3000,
      "condition": "Только после критериев качества; просмотр, отказы и сохранение исправлений на существующей платформе.",
      "basis": "New planning estimate; excludes ongoing support and new platform integrations"
    }
  ],
  "defaults": {
    "hourlyRate": 3000,
    "reservePercent": 20,
    "challenger": "none",
    "includePilot": false
  },
  "firstCycleHours": [
    30,
    44
  ],
  "firstCycleRubWithFullComputeAllowance": [
    113000,
    163400
  ],
  "testProtocol": "Develop and choose at most one challenger first. Freeze the full new-photo policy. One joint baseline/challenger evaluation on unopened physical scenes. Any inspected confirmation set becomes development; another round needs new data/budget.",
  "proposedGates": {
    "emptyRecallMin": 0.85,
    "finalSuggestionPrecisionMin": 0.95,
    "occupiedAsEmptyPerPhotoMax": 0.1,
    "medianCompleteReviewTimeReductionMin": 0.3,
    "technicalFailureFractionMax": 0.05,
    "extraReviewCandidatesPerPhotoMax": 2,
    "assistedMissesMustNotExceedManual": true,
    "confirmationLabelTargets": {
      "empty": 100,
      "occupied": 1000
    },
    "status": "PROPOSED_NOT_ACHIEVED_OR_APPROVED",
    "precisionDenominator": "All final suggestions, including mistakes, duplicates, unresolved and unevaluable outputs; only unambiguously human-confirmed useful findings count as correct. Extra review candidates reported separately."
  },
  "limits": [
    "AI-draft archive, not human gold",
    "Same-source historical comparisons have different selection histories",
    "Criteria and budget are planning assumptions, not promises or commitments",
    "Physical store access,travel,hardware,newplatforms,commerciallicenses,massdeployment,newintegrations,andpostpilotmaintenance excluded",
    "Conditional branch budget does not include newsealedtestcollection after opening an oldtest",
    "No new training/inference authorized by presentation"
  ],
  "sourceReferences": [
    "research-fable-20261013/decision.json",
    "research-fable-20261013/candidate-load-diagnostic.json",
    "research-fable-20261013/source-correction.json",
    "research-fable-20261013/fable-turn2-answer.txt"
  ]
}
