{
  "schemaVersion": 1,
  "id": "P41-C02",
  "title": "Накладная на трех страницах: восстановление перенесенной строки",
  "author": {
    "id": "P41",
    "name": "Светлана Воронцова"
  },
  "specialty": "Документы в проверенные таблицы",
  "projectStatus": "concept",
  "source": {
    "document": "catalogue_60_personas.md",
    "briefId": "P41-C02",
    "title": "Накладные с переносом таблицы",
    "kind": "editorial_concept",
    "data": "synthetic"
  },
  "context": "Длинное описание восьмой позиции переносится на следующую страницу. Если считать каждую строку товаром, появится лишняя позиция; если пропустить продолжение, потеряется характеристика.",
  "decision": "Я сохранила номера страниц и тип строки до сборки таблицы. Продолжение присоединяется только к предыдущей позиции; повторный заголовок не меняет состояние. Экспорт останавливается при разрыве страниц и несовпадении контрольного итога.",
  "constraint": "На входе текстовый слой накладной с размеченными типами строк; качество OCR не заявляется.",
  "steps": [
    "Сохранить последовательность трех страниц и номера товарных позиций.",
    "Присоединить продолжение позиции 8; пересчитать каждую сумму.",
    "Удалить страницу 2 и изменить цену в отдельных контрольных прогонах."
  ],
  "inspection": [
    "Получены 10 позиций, перенесенный размер сохранен — проверено.",
    "Пропуск второй страницы останавливает экспорт — проверено.",
    "Изменение цены не скрывается совпадающим заголовком — проверено."
  ],
  "sample": {
    "headers": [
      "Позиция",
      "Описание",
      "Количество",
      "Цена",
      "Сумма"
    ],
    "rows": [
      [
        "1",
        "Коробка архивная малая",
        "10",
        "180",
        "1800"
      ],
      [
        "2",
        "Папка с клапанами",
        "20",
        "90",
        "1800"
      ],
      [
        "3",
        "Бумага А4, пачка",
        "5",
        "420",
        "2100"
      ],
      [
        "4",
        "Лента бумажная",
        "8",
        "125",
        "1000"
      ],
      [
        "5",
        "Конверт картонный",
        "30",
        "35",
        "1050"
      ],
      [
        "6",
        "Пакет с ручкой",
        "20",
        "65",
        "1300"
      ],
      [
        "7",
        "Вкладыш защитный",
        "10",
        "70",
        "700"
      ],
      [
        "8",
        "Коробка транспортная усиленная с двойным дном; внутренний размер 300×200×180 мм",
        "10",
        "250",
        "2500"
      ],
      [
        "9",
        "Разделитель на 6 ячеек",
        "10",
        "160",
        "1600"
      ],
      [
        "10",
        "Наклейка маркировочная",
        "100",
        "16",
        "1600"
      ]
    ]
  },
  "sampleNote": "Авторский контрольный набор; не клиентские документы и не результаты внешней модели.",
  "caseStudy": {
    "role": "Аналитик обработки документов",
    "contribution": "Я собрала трёхстраничный счёт, восстановила десять позиций и добавила контроль страниц и итоговой суммы.",
    "objective": "Продолжение позиции соединяется с исходной строкой, повторные заголовки исчезают, итог пересчитывается по количеству и цене.",
    "problem": "Длинное описание восьмой позиции переносится на следующую страницу. Если считать каждую строку товаром, появится лишняя позиция; если пропустить продолжение, потеряется характеристика.",
    "result": "Собраны 10 товарных позиций на 15450 ₽. Размер усиленной коробки сохранен в позиции 8; три повторных заголовка и строка итога не стали товарами. Разрыв страниц и изменение цены блокируют экспорт.",
    "deliverables": [
      "index.html",
      "source.json",
      "source.csv",
      "result.json",
      "result.csv",
      "engine.js",
      "checks.json",
      "style.css"
    ],
    "blocks": [
      {
        "type": "text",
        "title": "Позиция, которая продолжается на следующей странице",
        "text": "Восьмая позиция разрывается границей страницы. Если считать каждый фрагмент отдельной строкой, в таблице появляется лишний товар; если потерять продолжение, строка остаётся неполной. Я связала фрагменты по номеру позиции и сверила собранные десять строк с итогом 15450. При удалении страницы расчёт останавливается до выдачи готовой таблицы."
      }
    ]
  },
  "deliverable": {
    "type": "analysis",
    "entry": "/catalogue/deliverables/p41-c02/index.html",
    "label": "Открыть работающий материал",
    "files": [
      {
        "path": "/catalogue/deliverables/p41-c02/index.html",
        "name": "index.html",
        "mimeType": "text/html"
      },
      {
        "path": "/catalogue/deliverables/p41-c02/source.json",
        "name": "source.json",
        "mimeType": "application/json"
      },
      {
        "path": "/catalogue/deliverables/p41-c02/source.csv",
        "name": "source.csv",
        "mimeType": "text/csv"
      },
      {
        "path": "/catalogue/deliverables/p41-c02/result.json",
        "name": "result.json",
        "mimeType": "application/json"
      },
      {
        "path": "/catalogue/deliverables/p41-c02/result.csv",
        "name": "result.csv",
        "mimeType": "text/csv"
      },
      {
        "path": "/catalogue/deliverables/p41-c02/engine.js",
        "name": "engine.js",
        "mimeType": "text/javascript"
      },
      {
        "path": "/catalogue/deliverables/p41-c02/verify.cjs",
        "name": "verify.cjs",
        "mimeType": "text/javascript"
      },
      {
        "path": "/catalogue/deliverables/p41-c02/checks.json",
        "name": "checks.json",
        "mimeType": "application/json"
      },
      {
        "path": "/catalogue/deliverables/p41-c02/style.css",
        "name": "style.css",
        "mimeType": "text/css"
      }
    ],
    "summary": "Собраны 10 товарных позиций на 15450 ₽. Размер усиленной коробки сохранен в позиции 8; три повторных заголовка и строка итога не стали товарами. Разрыв страниц и изменение цены блокируют экспорт."
  },
  "takeaway": "Собраны 10 товарных позиций на 15450 ₽. Размер усиленной коробки сохранен в позиции 8; три повторных заголовка и строка итога не стали товарами. Разрыв страниц и изменение цены блокируют экспорт.",
  "capabilities": [
    "completed_analysis"
  ],
  "externalConnections": []
}
