Files
bearingsinfo/tools/scripts
ArtemFilin1990 7748c89f96 feat: add seed-database workflow with D1-compatible schema
- .github/workflows/seed-database.yml  — GitHub Actions workflow
  Триггеры: push на main (data/**) + workflow_dispatch (dry_run, reset_db)
  Этапы: checkout → build SQL → apply schema → execute seed → verify counts

- tools/scripts/build_bearings_seed.py — генератор seed SQL
  Читает: brands.csv, import_analogs.csv, nomenclature.csv, master_catalog.csv
  Выдаёт: seed/*.sql (батчи 500/1000 строк) + seed/manifest.json

- data/schema/d1_schema.sql — SQLite-совместимая схема для D1
  Таблицы: bearings, manufacturers, analogs, nomenclature, search_history
  Фиксы: SERIAL→INTEGER PRIMARY KEY AUTOINCREMENT, TIMESTAMP→TEXT, DECIMAL→REAL

Secrets required: CLOUDFLARE_API_TOKEN, CLOUDFLARE_ACCOUNT_ID
2026-03-26 14:46:30 +00:00
..

Скрипты управления

Скрипты для управления и обслуживания репозитория.


Структура

scripts/
├── build_knowledge_base.py  # Построитель базы знаний (режим максимального контекста)
├── manage.py                # Основной скрипт управления (из Baza)
└── README.md               # Этот файл

Также доступны:

  • api/scripts/import_to_postgres.py - импорт в PostgreSQL (из bearing-api)
  • api/scripts/unpack_and_classify.py - обработка файлов (из bearing-api)
  • 00_ВСПОМОГАТЕЛЬНЫЕ/extract_archives.sh - распаковка архивов (из Mar)

build_knowledge_base.py

Knowledge Base Builder - построение полной, структурированной и машиночитаемой базы знаний.

Описание

Автоматически обрабатывает все файлы в репозитории и создает исчерпывающую базу знаний в формате Markdown.

Режим максимального контекста - извлекает 100% информации без сокращений.

Использование

# Запуск из корня репозитория
python scripts/build_knowledge_base.py

# С указанием пути к репозиторию
python scripts/build_knowledge_base.py --repo /path/to/repo

# С указанием имени выходного файла
python scripts/build_knowledge_base.py --output MY_KNOWLEDGE_BASE.md

Возможности

✅ Полная инвентаризация всех файлов
✅ Извлечение терминов и определений
✅ Анализ структур данных из кода
✅ Трассировка каждого факта к источнику
✅ Машиночитаемый формат для LLM, RAG, Wiki

Результат

  • Обрабатывает ~3,000+ файлов
  • Извлекает ~11,000+ терминов
  • Создает базу знаний ~6 MB
  • Время выполнения: 3-5 минут

📖 Полная документация: docs/KNOWLEDGE_BASE_BUILDER.md


manage.py

Основной скрипт управления базой знаний.

Использование

python scripts/manage.py <command> [options]

Команды

validate

Проверка структуры репозитория

python scripts/manage.py validate

report

Генерация отчета о содержимом

python scripts/manage.py report

update

Обновление данных

python scripts/manage.py update

help

Справка по командам

python scripts/manage.py help

Опции

  • -v, --verbose - подробный вывод

Скрипты API

import_to_postgres.py

Импорт данных из CSV в PostgreSQL.

python api/scripts/import_to_postgres.py

unpack_and_classify.py

Обработка входящих файлов из data/inbox/.

python api/scripts/unpack_and_classify.py

Shell скрипты

extract_archives.sh

Распаковка архивов из Mar.

bash 00_ВСПОМОГАТЕЛЬНЫЕ/extract_archives.sh

Зависимости

Python скрипты требуют:

  • Python 3.8+
  • Зависимости из api/requirements.txt

Установка:

pip install -r api/requirements.txt

Автоматизация

Скрипты могут быть запущены через:

  • GitHub Actions workflows
  • Cron jobs
  • Вручную

Источники

  • manage.py - из Baza
  • import_to_postgres.py, unpack_and_classify.py - из bearing-api
  • extract_archives.sh - из Mar

Последнее обновление: 2026-01-19