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


Ты работаешь в локальном репозитории:

/Users/23865613/snl-ai-spec

Я вручную перенёс папку zadanie2 внутрь каталога skill-а, поэтому сейчас структура может быть вложенной и неаккуратной.

Нужно привести проект к структуре, которую требует наставник.

На этом этапе:

- не запускай Ralph Loop;
- не запускай браузерную выгрузку;
- не изменяй бизнес-логику проекта;
- не выполняй git add;
- не выполняй git commit;
- не выполняй git push;
- не выполняй git pull или git fetch;
- не обращайся к удалённому репозиторию;
- не удаляй исходные файлы до создания резервной копии и проверки переноса.

Работай только с локальными файлами.

Основной репозиторий:

/Users/23865613/snl-ai-spec

Целевой каталог skill-а:

/Users/23865613/snl-ai-spec/.gigacode/skills/adt-markdownify-meta

Целевой каталог выгруженной архитектуры:

/Users/23865613/snl-ai-spec/projects/SNL/meta

Пример Ralph Loop:

/Users/23865613/snl-ai-spec/projects/SNL/ralph-loop/service-doc-generator

Главная задача:
найти вручную перенесённую папку zadanie2, определить, где внутри неё находится рабочий проект, и аккуратно разложить файлы по правильным каталогам.

======================================================================
1. ПРОАНАЛИЗИРОВАТЬ ТЕКУЩУЮ СТРУКТУРУ
======================================================================

Перейди в репозиторий:

cd /Users/23865613/snl-ai-spec

Покажи:

pwd
git branch --show-current
git status --short

Найди все каталоги zadanie2:

find /Users/23865613/snl-ai-spec -type d -name "zadanie2" -print

Найди рабочие файлы проекта:

find /Users/23865613/snl-ai-spec \
  -type f \
  \( \
    -name "run_exporter.py" \
    -o -name "SKILL.md" \
    -o -name "meta_urls.txt" \
    -o -name "meta_exporter.yaml.example" \
    -o -name "structured_meta_writer.py" \
  \) \
  | sort

Найди возможные рабочие каталоги:

find /Users/23865613/snl-ai-spec \
  -type d \
  \( \
    -name "source_project" \
    -o -name "gigacode_skill" \
    -o -name "structured_meta" \
    -o -path "*/projects/SNL/meta" \
  \) \
  | sort

После поиска сначала напиши краткий отчёт:

1. Где находится папка zadanie2.
2. Где находится рабочий run_exporter.py.
3. Где находится актуальный SKILL.md.
4. Где находятся scripts/.
5. Где находится projects/SNL/meta.
6. Есть ли несколько копий одного проекта.
7. Какая копия выглядит наиболее полной и актуальной.

Не начинай перенос, пока не определишь точный источник.

======================================================================
2. ОПРЕДЕЛИТЬ ПРАВИЛЬНЫЙ ИСТОЧНИК
======================================================================

Полный рабочий проект должен содержать минимум:

- run_exporter.py
- SKILL.md
- README.md
- requirements.txt
- meta_urls.txt
- meta_exporter.yaml.example
- scripts/config_loader.py
- scripts/scrape_meta.py
- scripts/html_to_markdown.py
- scripts/markdown_writer.py
- scripts/structured_meta_writer.py

Также могут присутствовать:

- scripts/meta_page_expander.py
- scripts/integration_interactions_parser.py
- scripts/link_discovery.py
- scripts/regenerate_reports.py
- DEMO.md
- docs/

Если найдено несколько копий, сравни:

- размер файлов;
- дату изменения;
- наличие structured_meta_writer.py;
- наличие meta_page_expander.py;
- наличие regenerate_reports.py;
- наличие актуального SKILL.md;
- прохождение py_compile.

Не смешивай файлы из разных версий без необходимости.

Выбери одну полную актуальную копию и укажи её как SOURCE_PROJECT.

======================================================================
3. СОЗДАТЬ РЕЗЕРВНУЮ КОПИЮ
======================================================================

Перед изменением структуры создай каталог:

/Users/23865613/snl-ai-spec/.local-backup

Создай резервную копию текущего состояния skill-а:

BACKUP_PATH="/Users/23865613/snl-ai-spec/.local-backup/adt-markdownify-meta-before-cleanup-$(date +%Y%m%d-%H%M%S)"

mkdir -p "$BACKUP_PATH"

rsync -a \
  /Users/23865613/snl-ai-spec/.gigacode/skills/adt-markdownify-meta/ \
  "$BACKUP_PATH/"

Не добавляй резервную копию в Git.

Не удаляй её после выполнения задачи.

Покажи созданный путь.

======================================================================
4. СФОРМИРОВАТЬ ЧИСТЫЙ КОРЕНЬ SKILL-А
======================================================================

Целевой каталог:

/Users/23865613/snl-ai-spec/.gigacode/skills/adt-markdownify-meta

В его корне должны находиться непосредственно:

- SKILL.md
- README.md
- requirements.txt
- run_exporter.py
- meta_urls.txt
- meta_exporter.yaml.example
- .gitignore, если он есть
- DEMO.md, если он есть
- scripts/
- docs/, если она есть
- ralph-loop/

В корне skill-а не должно оставаться промежуточной вложенности:

- zadanie2/
- source_project/
- gigacode_skill/
- exported_reports/
- structured_meta/
- mentor_feedback/
- demo/, если это отдельная служебная копия;
- .venv/
- output/
- temp_html/
- projects/
- .git/
- .idea/
- __pycache__/

Сначала выполни dry-run переноса из выбранного SOURCE_PROJECT:

rsync -avn \
  --exclude='.git/' \
  --exclude='.venv/' \
  --exclude='venv/' \
  --exclude='output/' \
  --exclude='temp_html/' \
  --exclude='projects/' \
  --exclude='meta_exporter.yaml' \
  --exclude='*.log' \
  --exclude='*.bak' \
  --exclude='*.bak2' \
  --exclude='__pycache__/' \
  --exclude='*.pyc' \
  --exclude='.DS_Store' \
  --exclude='.idea/' \
  --exclude='zadanie2/' \
  --exclude='source_project/' \
  --exclude='gigacode_skill/' \
  --exclude='exported_reports/' \
  --exclude='structured_meta/' \
  --exclude='mentor_feedback/' \
  "$SOURCE_PROJECT/" \
  /Users/23865613/snl-ai-spec/.gigacode/skills/adt-markdownify-meta/

Проверь dry-run.

Если он корректен, выполни реальный rsync с теми же исключениями, но без параметра -n.

Не используй --delete.

======================================================================
5. ПЕРЕНЕСТИ СТРУКТУРИРОВАННУЮ АРХИТЕКТУРУ
======================================================================

Найди актуальный источник архитектуры.

Приоритет:

1. SOURCE_PROJECT/projects/SNL/meta
2. zadanie2/structured_meta
3. другая найденная папка, содержащая:
   - as/SberGeo/README.md;
   - fp/SberGeo.СНЛ;
   - module/;
   - tk/;
   - integration/;
   - integration-point/;
   - attributes/.

Целевой каталог:

/Users/23865613/snl-ai-spec/projects/SNL/meta

Если целевой каталог уже содержит файлы, создай резервную копию:

META_BACKUP="/Users/23865613/snl-ai-spec/.local-backup/SNL-meta-before-cleanup-$(date +%Y%m%d-%H%M%S)"

mkdir -p "$META_BACKUP"

rsync -a \
  /Users/23865613/snl-ai-spec/projects/SNL/meta/ \
  "$META_BACKUP/"

Затем скопируй актуальную архитектуру в:

/Users/23865613/snl-ai-spec/projects/SNL/meta

Не используй --delete.

Не копируй:

- *.log
- *.bak
- .DS_Store
- временные данные
- резервные папки meta.before-*

======================================================================
6. ПОДГОТОВИТЬ RALPH LOOP
======================================================================

Целевой каталог:

/Users/23865613/snl-ai-spec/.gigacode/skills/adt-markdownify-meta/ralph-loop

Если внутри вручную перенесённого проекта уже есть:

- AGENTS.md
- MAIN_GOAL.md
- run-gigacode.sh

сначала покажи их пути и сравни с примером:

/Users/23865613/snl-ai-spec/projects/SNL/ralph-loop/service-doc-generator

На этом этапе Ralph Loop должен содержать:

ralph-loop/
├── AGENTS.md
├── MAIN_GOAL.md
└── run-gigacode.sh

Если этих файлов нет, скопируй их из локального примера:

/Users/23865613/snl-ai-spec/projects/SNL/ralph-loop/service-doc-generator

Пока:

- не запускай run-gigacode.sh;
- не изменяй MAIN_GOAL.md;
- не изменяй AGENTS.md;
- не создавай goal_done.md;
- не создавай progress-файлы;
- не выполняй commit.

Нам сначала нужно получить и отдельно адаптировать содержимое MAIN_GOAL.md.

======================================================================
7. ПРОВЕРИТЬ ИТОГОВУЮ СТРУКТУРУ
======================================================================

После переноса покажи:

find /Users/23865613/snl-ai-spec/.gigacode/skills/adt-markdownify-meta \
  -maxdepth 4 -type f | sort

И отдельно:

find /Users/23865613/snl-ai-spec/projects/SNL/meta \
  -maxdepth 8 -type f | sort

Проверь, что в корне skill-а нет:

find /Users/23865613/snl-ai-spec/.gigacode/skills/adt-markdownify-meta \
  -maxdepth 2 \
  -type d \
  \( \
    -name "zadanie2" \
    -o -name "source_project" \
    -o -name "gigacode_skill" \
    -o -name ".venv" \
    -o -name "output" \
    -o -name "temp_html" \
    -o -name ".git" \
  \) \
  -print

Если такие папки ещё есть:

- не удаляй их сразу;
- сначала сравни их содержимое с целевыми файлами;
- убедись, что уникальных полезных файлов внутри нет;
- покажи список оставшихся файлов;
- только после подтверждения полного переноса можно удалить промежуточную вложенную папку.

======================================================================
8. ПРОВЕРИТЬ PYTHON-КОД
======================================================================

Перейди:

cd /Users/23865613/snl-ai-spec/.gigacode/skills/adt-markdownify-meta

Выполни:

python -m py_compile run_exporter.py scripts/*.py

Если команда успешна, напиши:

PY_COMPILE OK

Не запускай браузерную выгрузку.

Не создавай виртуальное окружение.

Не устанавливай зависимости глобально.

======================================================================
9. ПРОВЕРИТЬ СТАРЫЕ АБСОЛЮТНЫЕ ПУТИ
======================================================================

Выполни:

grep -RIn \
  --exclude-dir=.git \
  --exclude-dir=.venv \
  --exclude-dir=output \
  --exclude-dir=temp_html \
  '/Users/23865613/IdeaProjects/untitled/zadanie2' \
  /Users/23865613/snl-ai-spec/.gigacode/skills/adt-markdownify-meta || true

Покажи найденные совпадения.

На этом этапе не заменяй их автоматически, если они находятся:

- в старом отчёте;
- в документации;
- в резервном файле;
- в Ralph Loop.

Для каждого совпадения объясни, нужно ли его заменить на:

/Users/23865613/snl-ai-spec/.gigacode/skills/adt-markdownify-meta

или сделать относительным путём.

======================================================================
10. ПОКАЗАТЬ GIT STATUS
======================================================================

Перейди:

cd /Users/23865613/snl-ai-spec

Выполни:

git branch --show-current
git status --short
git diff --stat
git diff --name-status

Не выполняй:

- git add;
- git commit;
- git push;
- git pull;
- git fetch;
- git reset;
- git clean;
- git restore.

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

Покажи:

# Приведение adt-markdownify-meta к структуре snl-ai-spec

## 1. Где находилась вручную перенесённая папка zadanie2

Указать точный путь.

## 2. Какой каталог был выбран актуальным SOURCE_PROJECT

Указать путь и основание выбора.

## 3. Куда помещён skill

/Users/23865613/snl-ai-spec/.gigacode/skills/adt-markdownify-meta

## 4. Итоговая структура skill-а

Показать дерево файлов.

## 5. Куда помещена архитектура

/Users/23865613/snl-ai-spec/projects/SNL/meta

Указать количество файлов.

## 6. Ralph Loop

Показать наличие:

- AGENTS.md
- MAIN_GOAL.md
- run-gigacode.sh

Подтвердить, что run-gigacode.sh не запускался.

## 7. Какие промежуточные папки остались

Перечислить:

- zadanie2;
- source_project;
- gigacode_skill;
- другие.

Для каждой указать, можно ли её безопасно удалить позже.

## 8. Результат py_compile

Указать результат.

## 9. Старые абсолютные пути

Показать найденные совпадения.

## 10. Git status

Показать локальные изменения.

## 11. Следующий этап

Следующим этапом должно быть:

1. открыть скопированный ralph-loop/MAIN_GOAL.md;
2. адаптировать его под adt-markdownify-meta;
3. адаптировать AGENTS.md;
4. проверить run-gigacode.sh;
5. только затем запускать Ralph Loop.

Главная цель:
в snl-ai-spec должна остаться аккуратная структура без лишней обёртки zadanie2, при этом ни один полезный файл не должен быть потерян.