{
  "id": "P27-C04",
  "mode": "calculator",
  "theme": "workspace",
  "brand": "РАСЧЁТ / Филипп Нестеров",
  "title": "Стеллаж: совместимость до подсчета деталей",
  "lead": "Несовместимое соединение не дает красивую, но бесполезную ведомость.",
  "section": "Проверяемая модель",
  "calculator": {
    "calculator": {
      "kind": "rack",
      "title": "Совместимость условной секции стеллажа",
      "inputs": [
        {
          "id": "section",
          "label": "Серия секции",
          "type": "select",
          "value": "A",
          "options": [
            {
              "value": "A",
              "label": "Серия A"
            },
            {
              "value": "B",
              "label": "Серия B"
            }
          ]
        },
        {
          "id": "connector",
          "label": "Тип соединения",
          "type": "select",
          "value": "A",
          "options": [
            {
              "value": "A",
              "label": "Тип A"
            },
            {
              "value": "B",
              "label": "Тип B"
            }
          ]
        },
        {
          "id": "levels",
          "label": "Уровни полок",
          "type": "number",
          "value": 5,
          "unit": "шт.",
          "min": 2,
          "max": 6,
          "step": 1
        }
      ],
      "formula": "Допуск: серия секции совпадает с типом соединения. Для принятой схемы: 4 стойки, 2 балки на уровень, 1 настил на уровень.",
      "assumptions": [
        "Учебная секция 2000 × 900 мм.",
        "Это счетная модель основных деталей, не полный конструкторский перечень.",
        "Крепеж, раскосы, нагрузка и устойчивость требуют инженерной проверки."
      ],
      "tests": [
        {
          "values": {
            "section": "A",
            "connector": "A",
            "levels": 5
          },
          "expected": {
            "allowed": true,
            "uprights": 4,
            "beams": 10,
            "shelves": 5
          }
        },
        {
          "values": {
            "section": "B",
            "connector": "A",
            "levels": 5
          },
          "expected": {
            "allowed": false
          }
        },
        {
          "values": {
            "levels": 2.5
          },
          "expected": {
            "error": true
          }
        }
      ]
    }
  }
}
