Карта файлов проекта
English · Справочник · Установка
Где что лежит. Документ для того, кто будет сопровождать проект: пользователю он не нужен.
Рабочие папки (input, output, logs, report, release, workspace, runtime, wheelhouse) описаны по роли, а не пофайлово — их содержимое порождается прогонами и пересобирается.
Корень
| Файл | Что это |
Start.exe | Скомпилированный запуск окна: открывает App\AudionAddressProcessor.exe |
address_cli.cmd | Консольная команда: те же операции без окна; на ней стоит само окно |
builder_main.cmd | Сборка portable-окружения |
cleanup_project.cmd | Очистка наработанных артефактов |
pytest.ini | Настройки тестов |
release_manifest.json | Манифест последней сборки релиза |
README.md | Публичное описание проекта |
CMD-файлы должны оставаться UTF-8 без BOM с переносами CRLF. После правки — install\Check-CmdEncoding.cmd.
App и Source — окно
| Путь | Что это |
Source/ | Исходники окна: Avalonia 12 / .NET 10. Core/ — запуск команды, манифест, значения полей, журнал, настройки; Views/ — форма, панели, диалоги; MainWindow.*.cs — разделы, рабочая зона, запуск, ОКТМО; Ps/ — исходник собственного PowerShell программы; Tools/ — значки и проверка без мыши |
Source/config/i18n.json | Английские пары всех русских текстов окна |
App/ | Собранное окно (AudionAddressProcessor.exe) и свой PowerShell AudionPs.exe для сценариев сборки; собирается install\Build-App.cmd, в выпуск едет готовым |
config — настройки
| Файл | Что это |
project.yaml | Настройки движка: город, эталонная колонка, целевые колонки, связанные колонки, ограничения безопасности |
window_layout.yaml | Раскладка окна: разделы, операции в них, кнопки рабочей зоны и панели результата, значки |
tool_manifest.yaml | Описание всех операций и полей окна; из него строится интерфейс |
version.json | Версия и язык корневого README |
path_history.json | История и закрепления путей источника и назначения |
window_settings.json | Настройки окна: размер, язык, тема, шрифт (создаёт само окно) |
oktmo_current_keys.txt | Текущие ключи поиска ОКТМО |
oktmo_region_pins.json | Закреплённые регионы |
oktmo_municipality_pins.json | Закреплённые муниципалитеты |
oktmo_pins_bundle.json | Общий набор пинов |
system_core — код
Верхний уровень
| Файл | Что делает |
Ultimate_GT_Aligner.py | Движок сопоставления: разбор адреса, проходы, перенос связанных колонок |
safe_table_join.py | Сравнение двух книг и перенос колонок через Excel |
excel_layout.py | Оформление книг результата: ширина колонок, перенос текста, заливка |
remove_empty_rows.py | Удаление полностью пустых строк |
Parser_Diagnostic.py | Диагностика разбора адреса |
inspect_md_tables.py | Разбор таблиц в Markdown |
doctor.py | Проверка окружения и импортов |
main.py | Прямой запуск сопоставления без окна |
cli.py | Консольная команда: describe, run, options, oktmo, serve, stop-office, version |
office_session.py | Учёт своих Excel и Word операции, чтобы остановка закрывала только их |
address_engine — адресный движок
| Файл | Что делает |
audion_address_core.py | Разбор адреса на составляющие, распознавание адресоподобного текста |
address_slots.py | Слоты: определение, заполнение, сборка адресной строки |
slot_fill.py | Заполнение слотов из свидетельств |
models.py | Структуры данных: наблюдение, составляющие адреса, отпечаток, кластер |
source_intake.py | Чтение источников всех поддерживаемых форматов |
source_table_assembly.py | Сбор адресов из источников в книгу |
source_cleanup.py | Отсев временных файлов Office |
reference_builder.py | Построение эталонного справочника, определение слотов и колонок |
reference_processor.py | Сортировка и разложение справочника по слотам |
oktmo_lookup.py | Индекс ОКТМО, дисковый кэш, поиск региона, МО и населённого пункта |
oktmo_user_keys.py | Файл ключей проекта и пины |
rosstat_update.py | Скачивание и обновление реестра Росстата |
region_reference.py | Справочник регионов |
russian_morphology.py | Падежные формы названий |
universal_address.py | Общий нормализатор адреса |
normalizer_runtime.py | Настройка нормализатора под прогон |
address_diagnostics.py | Диагностические выборки |
legacy_office_converter.py | Конвертация DOC/XLS |
services — сервисный слой
address_aligner_service.py — единственный файл. Каждая команда окна ссылается на функцию отсюда: сервис принимает параметры, вызывает движок, пишет журнал, отчёт и список артефактов.
core — ядро
| Файл | Что делает |
jobs.py | Запуск операций, отмена, прогресс, живая строка хода |
operation_model.py | Правила, по которым собираются параметры запуска: умолчания, условия показа полей, порядок слотов; манифест в виде для окна |
window_layout.py | Чтение window_layout.yaml и проверка, что каждая операция стоит в окне |
manifest.py | Разбор tool_manifest.yaml |
paths.py | Управляемые папки проекта |
config.py | Чтение настроек |
ansi_terminal.py | Очистка вывода программ от управляющих кодов цвета |
cmd_encoding.py | Проверка кодировок CMD |
output_decode.py | Декодирование вывода подпроцессов |
logging_utils.py | Журналирование |
Прочее
| Путь | Что это |
icons/ | Значок программы |
start_launcher/ | Исходник Start.exe |
install — установка и сборка
| Файл | Что делает |
Build_Portable_Env.cmd / .ps1 | Сборка portable-окружения |
install_portable_offline.cmd | Установка из локального wheelhouse |
verify_portable_env.cmd | Проверка собранного окружения |
init_folders.cmd | Создание рабочих папок |
Check-CmdEncoding.cmd | Проверка кодировок CMD |
Clean-Install-Cache.cmd / .ps1 | Очистка кэша сборки |
Update-Requirements-Lock.cmd | Обновление lock-файла зависимостей |
Build-StartLauncher.cmd / .ps1 | Сборка Start.exe |
Build-App.cmd | Сборка окна App\ из Source\ |
requirements_full.in | Список зависимостей |
README_INSTALL.md | Заметки по установке |
data — данные
| Путь | Что это |
regions_reference.yaml | Справочник регионов |
rosstat/data-*.csv | Реестр ОКТМО, скачивается кнопкой в окне |
rosstat/oktmo_lookup_cache.json | Разобранный индекс ОКТМО |
docs — документация
| Файл | Что это |
README_RU.md, README_EN.md | Описание проекта, точка входа |
USER_GUIDE_RU.md, USER_GUIDE_EN.md | Руководство пользователя |
OKTMO_RU.md, OKTMO_EN.md | Реестр ОКТМО, ключи и пины |
REFERENCE_RU.md, REFERENCE_EN.md | Технический справочник |
INSTALL_RU.md, INSTALL_EN.md | Установка и запуск |
tools/PROJECT_FILES_GUIDE_*.md | Этот документ |
tools/WINDOW_INVENTORY.md | Опись прежнего окна (NiceGUI) и сверка с новым: что где закрыто |
PDF/ | Отрендеренные PDF всех документов в двух темах |
PDF собираются отдельным инструментом из всех .md в docs, включая вложенные папки. Структура папок сохраняется.
tests — тесты
| Файл | Что проверяет |
test_address_aligner_regression.py | Проходы сопоставления |
test_safe_table_join.py | Перенос колонок по адресу |
test_excel_layout.py | Оформление книг результата |
test_console_output.py | Очистка вывода от кодов цвета, кодировки вывода подпроцессов |
test_cli_door.py | Консольная команда: параметры запуска те же, что у прежнего окна, остановка, Excel и Word |
test_window_avalonia.py | Окно и команда читают одни и те же ключи; английские пары; самопроверка собранного окна |
former_window_parameters.json | Параметры 14 операций, снятые с прежнего окна 11.10.2026: по ним проверяется команда |
Окно проверяется не страницей в браузере, а самим собой: App\AudionAddressProcessor.exe --self-check строит все разделы и сверяет их с манифестом.
licenses — лицензии
Тексты лицензий сторонних компонентов, THIRD_PARTY_NOTICES.txt, COMPONENTS.json, отчёт сканирования и манифест пакета. Собираются инструментом Audion Build Licenses по готовому составу проекта, руками не правятся.