Загрузка данных


Ты работаешь только в проекте:

/Users/23865613/IdeaProjects/untitled/zadanie2/source_project

Этап структурирования интеграций завершён:

- уровень АС: 0 реальных integration-point;
- уровень ФП: 5 реальных integration-point;
- межуровневых дублей: 0;
- повторная регенерация идемпотентна;
- py_compile успешно.

Теперь начинается этап 2 — выгрузка вкладки «Атрибуты».

На текущем этапе требуется только аудит. Ничего не изменяй.

Запрещено:

- запускать браузер;
- обращаться к META;
- запускать run_exporter.py;
- изменять Python-код;
- изменять Markdown-файлы;
- удалять или создавать каталоги;
- выполнять Git-команды;
- переходить к исправлению до завершения аудита.

Работай только с существующими локальными файлами:

- temp_html/*.html;
- output/*.md;
- projects/SNL/meta;
- scripts/*.py.

======================================================================
1. ПРОВЕРИТЬ ТЕКУЩИЕ ФАЙЛЫ АТРИБУТОВ
======================================================================

Прочитай полностью:

projects/SNL/meta/as/SberGeo/attributes/README.md

projects/SNL/meta/as/SberGeo/fp/SberGeo.СНЛ/attributes/README.md

Для каждого файла показать:

- все существующие разделы;
- содержатся ли Markdown-таблицы;
- какие значения являются реальными;
- какие значения являются заглушками;
- откуда writer получил эти данные.

Составить таблицу:

| Объект | Карточка | Ответственность | Дополнительные атрибуты | Технические атрибуты |
|---|---|---|---|---|

Статусы:

- реальные данные;
- частичные данные;
- заглушка;
- раздел отсутствует.

======================================================================
2. НАЙТИ HTML СТРАНИЦЫ АС И ФП
======================================================================

Найди в temp_html страницы, относящиеся к:

- АС SberGeo;
- ФП SberGeo.СНЛ.

Использовать содержимое HTML, title, breadcrumb, URL и META ID.

Для каждой найденной страницы показать:

| Объект | HTML-файл | URL | META ID | Размер файла |
|---|---|---|---:|---:|

Не определять страницу только по имени файла — подтвердить содержимым.

======================================================================
3. НАЙТИ В HTML СЕКЦИИ ВКЛАДКИ «АТРИБУТЫ»
======================================================================

Для HTML АС и ФП найти точные вхождения:

- Атрибуты;
- Карточка;
- Карточка АС;
- Карточка ФП;
- Ответственность;
- Дополнительные атрибуты;
- Технические атрибуты.

Для каждого раздела указать:

- присутствует ли заголовок;
- присутствуют ли строки данных;
- присутствуют ли названия полей;
- присутствуют ли значения;
- HTML-представление:
  - table;
  - tr/td;
  - div/grid;
  - definition list;
  - виртуальная таблица;
  - JSON внутри script;
  - другое.

Не выводить весь HTML. Показать только короткие структурные фрагменты,
достаточные для понимания DOM.

======================================================================
4. ОПРЕДЕЛИТЬ, ПОЛНОСТЬЮ ЛИ СОХРАНЁН DOM
======================================================================

Для каждой секции определить:

1. Заголовок и данные присутствуют в temp_html.
2. Заголовок присутствует, но строки отсутствуют.
3. В HTML есть только закрытая вкладка.
4. Данные подгружаются только после клика.
5. Данные отсутствуют полностью.

Проверить, есть ли признаки:

- скрытых вкладок;
- aria-selected;
- role=tab;
- role=tabpanel;
- display:none;
- lazy rendering;
- виртуализированной таблицы;
- кнопок раскрытия;
- текста «Показать ещё»;
- пустого контейнера таблицы.

Составить таблицу:

| Объект | Секция | Заголовок в DOM | Данные в DOM | Требовался ли клик при сборе |
|---|---|---:|---:|---|

======================================================================
5. ПРОВЕРИТЬ META_PAGE_EXPANDER
======================================================================

Прочитай:

scripts/meta_page_expander.py

Определить:

- пытается ли он открыть вкладку «Атрибуты»;
- нажимает ли вложенные разделы:
  - Карточка;
  - Ответственность;
  - Дополнительные атрибуты;
  - Технические атрибуты;
- прокручивает ли таблицы внутри этих разделов;
- ожидает ли рендеринг после переключения;
- может ли один клик закрыть ранее открытый раздел;
- сохраняется ли HTML после раскрытия всех секций.

Показать соответствующие функции и условия.

Ничего не исправлять.

======================================================================
6. ПРОВЕРИТЬ HTML_TO_MARKDOWN
======================================================================

Прочитай:

scripts/html_to_markdown.py

Найди код, который:

- распознаёт таблицы;
- удаляет служебные строки;
- определяет заголовки таблиц;
- фильтрует пустые строки;
- удаляет повторяющиеся значения;
- обрабатывает div-based таблицы.

Особенно проверить функции наподобие:

- _is_table_header_or_sep;
- _detect_object_type;
- обработку section/table/grid;
- фильтрацию строк с символами `|`, `---` и заголовками.

Определить, может ли фильтрация удалить реальные строки таблиц
«Атрибуты».

Для каждой подозрительной функции указать:

| Функция | Назначение | Возможная потеря данных | Доказательство |
|---|---|---|---|

======================================================================
7. ПРОВЕРИТЬ ПРОМЕЖУТОЧНЫЕ MARKDOWN-ОТЧЁТЫ
======================================================================

Найди упоминания атрибутов во всех output/*.md.

Показать:

- в каких файлах есть реальные строки атрибутов;
- в каких только заголовки;
- где появляется текст «Не найдены»;
- формируется ли этот текст парсером или structured_meta_writer.py.

Выполнить поиск по вариантам:

- Карточка;
- Ответственность;
- Дополнительные атрибуты;
- Технические атрибуты;
- Не найдены;
- Доступна.

Составить таблицу:

| Файл | Объект | Найденные секции | Есть реальные строки |
|---|---|---|---:|

======================================================================
8. ПРОВЕРИТЬ STRUCTURED_META_WRITER
======================================================================

Прочитай:

scripts/structured_meta_writer.py

Найти формирование:

attributes/README.md

Определить:

- читает ли writer реальные данные из output или temp_html;
- вставляет ли фиксированный текст;
- смешивает ли атрибуты АС и ФП;
- сохраняет ли таблицы;
- создаёт ли разделы даже при отсутствии данных;
- где формируется «Не найдены» и «Доступна».

Показать точные функции и логическую цепочку:

HTML → промежуточный Markdown → structured_meta_writer →
attributes/README.md

======================================================================
9. СОПОСТАВИТЬ ИСТОЧНИК И РЕЗУЛЬТАТ
======================================================================

Для каждого из четырёх разделов АС и ФП составить таблицу:

| Объект | Секция | Есть в HTML | Есть в output | Есть в итоговом README | Где потеряны данные |
|---|---|---:|---:|---:|---|

Возможные места потери:

- браузерный сбор;
- meta_page_expander;
- HTML-снимок;
- html_to_markdown;
- offline_report_generator;
- structured_meta_writer;
- данных действительно нет в META.

======================================================================
10. ОПРЕДЕЛИТЬ МИНИМАЛЬНЫЙ ПЛАН ИСПРАВЛЕНИЯ
======================================================================

Предложить минимальный план без реализации.

Не переписывать весь проект.

Указать:

1. какие конкретные файлы нужно изменить;
2. какие функции нужно изменить;
3. можно ли исправить проблему полностью офлайн;
4. потребуется ли повторный браузерный прогон;
5. как сохранить Markdown-табличный формат;
6. как не смешать атрибуты АС и ФП;
7. как отличить реальное отсутствие данных от ошибки парсинга;
8. какие тестовые данные уже есть в temp_html.

======================================================================
ФИНАЛЬНЫЙ ОТЧЁТ
======================================================================

# Этап 2.0 — аудит вкладки «Атрибуты»

## Текущее состояние README атрибутов

## Найденные HTML-страницы АС и ФП

## Наличие четырёх секций в DOM

## Полнота сохранённого DOM

## Работа meta_page_expander.py

## Работа html_to_markdown.py

## Работа structured_meta_writer.py

## Точное место потери данных

## Можно ли исправить офлайн

## Нужен ли повторный браузерный прогон

## Минимальный план исправления

В конце явно ответить:

- есть ли реальные данные «Карточка» в temp_html;
- есть ли реальные данные «Ответственность» в temp_html;
- есть ли реальные данные «Дополнительные атрибуты» в temp_html;
- есть ли реальные данные «Технические атрибуты» в temp_html;
- какой файл является главным местом ошибки.

Ничего не изменять и остановиться.