Перейти к содержанию

Дерево репозитория

Страница описывает каждый version-controlled файл. Наведите на файл в дереве, чтобы увидеть назначение; ссылка открывает его в GitHub. Нажмите кнопку, чтобы развернуть вложенные каталоги.

.dockerignore .env.example .flake8 .gitignore CHANGELOG.md Dockerfile LICENSE Makefile README.md SECURITY.md alembic.ini docker-compose.test.yml docker-compose.yml mkdocs.yml pyproject.toml requirements-dev.lock requirements-docs.lock requirements.lock
.github/ PULL_REQUEST_TEMPLATE.md
workflows/ ci.yml docs.yml
docs/ algorithm.md api-examples.md architecture.md code-map.md contributing-docs.md decisions.md getting-started.md glossary.md index.md operations.md progress.md reading-guide.md testing.md traceability.md tradeoffs.md
architecture/ data-and-contracts.md runtime-flows.md security-and-resilience.md
assets/
design/ docs-portal-desktop.png docs-portal-mobile.png
images/ favicon.svg logo.svg
diagrams/ README.md architecture.dot architecture.mmd architecture.png ask-sequence.mmd crawl-sequence.mmd data-model.dot data-model.mmd data-model.png pipeline-sequence.dot pipeline-sequence.png
javascripts/ docs.js
modules/ api-and-rag.md core.md crawler.md indexer.md infrastructure.md web-ui.md
operations/ troubleshooting.md
overrides/
partials/ source.html
reference/ frontend-api.md python-api.md repository-tree.md test-catalog.md
stylesheets/ extra.css
ui/ README.md search-wireframe-mobile.png search-wireframe.png
screenshots/ 01-home-desktop.png 02-loading-desktop.png 03-search-results-desktop.png 04-ask-answer-desktop.png 05-validation-error-desktop.png 06-search-results-mobile.png 07-ask-answer-mobile.png 08-home-mobile.png
examples/ demo-requests.sh fixture-server-contract.md
api/ ask-request.json ask-response.json error-429.json search-request.json search-response.json
fixtures/ README.md contracts_finder_ocds.json normalized_tender.json sample_notice.html sample_notice.txt sample_notice.xml sample_tender.pdf ted_search_response.json tender_changed_event.json unsupported.bin
prompts/ rag-system.txt rag-user-template.txt
sql/ exact-cosine-search.sql rate-limit-pseudocode.sql
migrations/ env.py script.py.mako
versions/ 0001_initial_schema.py
schemas/ tender-changed-v1.schema.json tender-record-v1.schema.json
scripts/ check_docs.py demo_fake.sh export_schemas.py generate_code_reference.py live_smoke.sh
src/
tender_lens/ __init__.py ai.py cli.py config.py db.py errors.py hashing.py logging.py models.py nats.py schemas.py search.py storage.py
api/ __init__.py auth.py main.py rate_limit.py routes.py
crawler/ __init__.py __main__.py base.py contracts_finder.py fixture.py service.py ted.py
indexer/ __init__.py __main__.py chunk.py extract.py service.py
web/ app.js index.html styles.css
tests/ conftest.py
api/ test_api.py
e2e/ test_fixture_pipeline.py
integration/ conftest.py test_database_pipeline.py test_nats.py
unit/ test_adapters.py test_ai_and_search.py test_auth_and_rate_limit.py test_cli.py test_extraction_and_chunking.py test_http_and_storage.py test_nats_message.py test_project_contract.py test_schemas_and_hashing.py

Все файлы

Файл Слой Назначение Строк Байт
.dockerignore project Исключает local/secret/build artifacts из Docker build context. 9 101
.env.example project Безопасный шаблон всех environment settings для Compose. 30 831
.flake8 project Настраивает Flake8 и согласует длину строки с Black. 6 161
.github/PULL_REQUEST_TEMPLATE.md automation Checklist содержательного PR, тестов, безопасности и документации. 42 621
.github/workflows/ci.yml automation GitHub Actions workflow для автоматической проверки или deployment. 107 3810
.github/workflows/docs.yml automation GitHub Actions workflow для автоматической проверки или deployment. 58 1658
.gitignore project Исключает secrets, caches, local data, build output и IDE state. 37 383
alembic.ini project Конфигурация Alembic CLI и logging migration environment. 31 624
CHANGELOG.md project Хронология пользовательски значимых изменений release. 32 1728
docker-compose.test.yml project Изолированные PostgreSQL/pgvector и NATS для integration/E2E. 25 650
docker-compose.yml project Runtime topology: БД, broker, roles и optional Ollama profile. 120 2786
Dockerfile project Один non-root Python image для API, crawler, indexer и migrations. 25 681
docs/algorithm.md documentation Статья документации: Алгоритмы TenderLens. 167 7260
docs/api-examples.md documentation Статья документации: API TenderLens. 124 2584
docs/architecture.md documentation Статья документации: Обзор архитектуры. 99 6892
docs/architecture/data-and-contracts.md documentation Статья документации: Данные и контракты. 163 7220
docs/architecture/runtime-flows.md documentation Статья документации: Потоки данных. 151 6804
docs/architecture/security-and-resilience.md documentation Статья документации: Безопасность и отказоустойчивость. 87 6258
docs/assets/design/docs-portal-desktop.png documentation Согласованный desktop/mobile визуальный концепт документационного портала. 1279326
docs/assets/design/docs-portal-mobile.png documentation Согласованный desktop/mobile визуальный концепт документационного портала. 1287262
docs/assets/images/favicon.svg documentation Локальный brand asset документационного сайта. 5 255
docs/assets/images/logo.svg documentation Локальный brand asset документационного сайта. 12 584
docs/code-map.md documentation Статья документации: Как пользоваться картой кода. 55 3270
docs/contributing-docs.md documentation Статья документации: Поддержка документации. 70 3824
docs/decisions.md documentation Статья документации: Ключевые решения. 37 1690
docs/diagrams/architecture.dot documentation Редактируемый исходник архитектурной диаграммы. 35 1997
docs/diagrams/architecture.mmd documentation Редактируемый исходник архитектурной диаграммы. 21 818
docs/diagrams/architecture.png documentation Отрендеренная архитектурная иллюстрация для Markdown/README. 158080
docs/diagrams/ask-sequence.mmd documentation Редактируемый исходник архитектурной диаграммы. 25 786
docs/diagrams/crawl-sequence.mmd documentation Редактируемый исходник архитектурной диаграммы. 27 906
docs/diagrams/data-model.dot documentation Редактируемый исходник архитектурной диаграммы. 16 1128
docs/diagrams/data-model.mmd documentation Редактируемый исходник архитектурной диаграммы. 50 1121
docs/diagrams/data-model.png documentation Отрендеренная архитектурная иллюстрация для Markdown/README. 88197
docs/diagrams/pipeline-sequence.dot documentation Редактируемый исходник архитектурной диаграммы. 17 1040
docs/diagrams/pipeline-sequence.png documentation Отрендеренная архитектурная иллюстрация для Markdown/README. 65816
docs/diagrams/README.md documentation Редактируемый исходник архитектурной диаграммы. 9 917
docs/getting-started.md documentation Статья документации: Первые 10 минут. 120 5204
docs/glossary.md documentation Статья документации: Глоссарий. 276 19491
docs/index.md documentation Статья документации: Как устроен TenderLens. 72 5899
docs/javascripts/docs.js documentation Добавляет Ctrl+K и управление раскрытием code tree. 21 816
docs/modules/api-and-rag.md documentation Статья документации: Search, RAG и API. 83 6265
docs/modules/core.md documentation Статья документации: Конфигурация и домен. 68 6352
docs/modules/crawler.md documentation Статья документации: Crawler. 76 7309
docs/modules/indexer.md documentation Статья документации: Indexer. 72 5372
docs/modules/infrastructure.md documentation Статья документации: Инфраструктура. 79 4443
docs/modules/web-ui.md documentation Статья документации: Web UI. 76 4276
docs/operations.md documentation Статья документации: Запуск и реальная LLM. 250 11029
docs/operations/troubleshooting.md documentation Статья документации: Диагностика. 154 8162
docs/overrides/partials/source.html documentation Рисует GitHub link без фонового GitHub API запроса. 12 405
docs/progress.md documentation Статья документации: Состояние проекта. 29 1610
docs/reading-guide.md documentation Статья документации: Как читать документацию. 59 3850
docs/reference/frontend-api.md documentation Статья документации: Frontend: DOM, JS и CSS. 0
docs/reference/python-api.md documentation Статья документации: Python: классы и функции. 0
docs/reference/repository-tree.md documentation Статья документации: Дерево репозитория. 0
docs/reference/test-catalog.md documentation Статья документации: Каталог тестов. 0
docs/stylesheets/extra.css documentation Design tokens, layout и responsive стили документационного портала. 415 7295
docs/testing.md documentation Статья документации: Тестирование. 79 3197
docs/traceability.md documentation Статья документации: Соответствие тестовому заданию. 27 2761
docs/tradeoffs.md documentation Статья документации: Архитектурные компромиссы. 89 4255
docs/ui/README.md documentation Статья документации: Экраны работающего UI. 154 9826
docs/ui/screenshots/01-home-desktop.png documentation Реальный desktop-снимок начального состояния работающего UI. 98265
docs/ui/screenshots/02-loading-desktop.png documentation Реальный desktop-снимок состояния выполнения Search-запроса. 100539
docs/ui/screenshots/03-search-results-desktop.png documentation Реальный desktop-снимок пяти результатов векторного поиска. 252827
docs/ui/screenshots/04-ask-answer-desktop.png documentation Реальный desktop-снимок Ask-ответа локальной Ollama и источников. 279894
docs/ui/screenshots/05-validation-error-desktop.png documentation Реальный desktop-снимок ошибки формы без API-ключа. 105742
docs/ui/screenshots/06-search-results-mobile.png documentation Реальный mobile-снимок результатов Search при ширине 390 px. 221333
docs/ui/screenshots/07-ask-answer-mobile.png documentation Реальный mobile-снимок Ask-ответа и источников при ширине 390 px. 246597
docs/ui/screenshots/08-home-mobile.png documentation Реальный mobile-снимок начального responsive-состояния UI. 72373
docs/ui/search-wireframe-mobile.png documentation Исходный мобильный wireframe пользовательского Search UI. 55030
docs/ui/search-wireframe.png documentation Исходный desktop wireframe пользовательского Search UI. 126053
examples/api/ask-request.json contract/example Версионированный пример JSON HTTP-контракта. 3 122
examples/api/ask-response.json contract/example Версионированный пример JSON HTTP-контракта. 12 655
examples/api/error-429.json contract/example Версионированный пример JSON HTTP-контракта. 8 198
examples/api/search-request.json contract/example Версионированный пример JSON HTTP-контракта. 4 127
examples/api/search-response.json contract/example Версионированный пример JSON HTTP-контракта. 17 658
examples/demo-requests.sh contract/example Короткий shell-сценарий Search/Ask/rate-limit демонстрации. 17 487
examples/fixture-server-contract.md contract/example HTTP contract локального fixture server, используемого E2E. 30 1032
examples/fixtures/contracts_finder_ocds.json contract/example Контролируемый fixture contracts_finder_ocds.json для adapters/extraction/E2E. 50 1477
examples/fixtures/normalized_tender.json contract/example Контролируемый fixture normalized_tender.json для adapters/extraction/E2E. 25 789
examples/fixtures/README.md contract/example Описание происхождения и роли offline fixtures. 13 1294
examples/fixtures/sample_notice.html contract/example Контролируемый fixture sample_notice.html для adapters/extraction/E2E. 1 414
examples/fixtures/sample_notice.txt contract/example Контролируемый fixture sample_notice.txt для adapters/extraction/E2E. 1 139
examples/fixtures/sample_notice.xml contract/example Контролируемый fixture sample_notice.xml для adapters/extraction/E2E. 8 403
examples/fixtures/sample_tender.pdf contract/example Контролируемый fixture sample_tender.pdf для adapters/extraction/E2E. 50804
examples/fixtures/ted_search_response.json contract/example Контролируемый fixture ted_search_response.json для adapters/extraction/E2E. 27 1076
examples/fixtures/tender_changed_event.json contract/example Контролируемый fixture tender_changed_event.json для adapters/extraction/E2E. 7 262
examples/fixtures/unsupported.bin contract/example Контролируемый fixture unsupported.bin для adapters/extraction/E2E. 8 64
examples/prompts/rag-system.txt contract/example Reference prompt для сравнения grounded RAG поведения. 9 960
examples/prompts/rag-user-template.txt contract/example Reference prompt для сравнения grounded RAG поведения. 11 224
examples/sql/exact-cosine-search.sql contract/example Поясняющий SQL-пример ключевого алгоритма. 18 595
examples/sql/rate-limit-pseudocode.sql contract/example Поясняющий SQL-пример ключевого алгоритма. 16 651
LICENSE project MIT license, обязательная часть публичной поставки. 21 1080
Makefile project Короткие команды install, quality, tests, migrations и demos. 57 1320
migrations/env.py database Подключает async SQLAlchemy engine и metadata к Alembic runtime. 59 1625
migrations/script.py.mako database Шаблон новых Alembic revision files. 24 593
migrations/versions/0001_initial_schema.py database Создание минимальной схемы TenderLens. 197 8482
mkdocs.yml project Структура, тема, поиск, extensions и navigation документационного сайта. 134 4372
pyproject.toml project Package metadata, entrypoint и конфигурация Black/Pytest/MyPy. 78 1946
README.md project Краткая публичная входная страница repository. 227 9990
requirements-dev.lock project Pinned quality, typing и test dependencies. 7 117
requirements-docs.lock project Pinned generator/theme stack документации. 1 23
requirements.lock project Pinned runtime dependencies Docker image. 12 214
schemas/tender-changed-v1.schema.json contract/example Checked-in JSON Schema, генерируемая из Pydantic contract. 39 852
schemas/tender-record-v1.schema.json contract/example Checked-in JSON Schema, генерируемая из Pydantic contract. 195 3789
scripts/check_docs.py automation Validate generated docs, exact GitHub line links, and built search content. 145 4922
scripts/demo_fake.sh automation Служебный automation script для demo, schema, docs или live smoke. 73 2599
scripts/export_schemas.py automation Экспортирует JSON Schema из Pydantic-контрактов без ручного дублирования. 68 2116
scripts/generate_code_reference.py automation Generate searchable repository, symbol, frontend, and test reference pages. 645 30300
scripts/live_smoke.sh automation Служебный automation script для demo, schema, docs или live smoke. 13 440
SECURITY.md project Security policy, threat boundaries и disclosure instructions. 17 795
src/tender_lens/init.py application TenderLens: мониторинг закупок и локальный RAG. 3 104
src/tender_lens/ai.py application Минимальные providers для embeddings и grounded generation. 165 6725
src/tender_lens/api/init.py application FastAPI Gateway TenderLens. 1 34
src/tender_lens/api/auth.py application Проверка X-API-Key без сохранения открытого секрета. 59 2018
src/tender_lens/api/main.py application App factory, lifecycle, middleware, errors и статический интерфейс. 149 5498
src/tender_lens/api/rate_limit.py application Fixed UTC-minute limiter в одной атомарной PostgreSQL-транзакции. 86 2826
src/tender_lens/api/routes.py application Тонкие HTTP routes: валидация, зависимости и вызов сервисов. 116 3844
src/tender_lens/cli.py application Служебные команды: API-ключи, demo seed и проверка зависимостей. 260 9304
src/tender_lens/config.py application Типизированная конфигурация приложения без побочных эффектов. 94 3871
src/tender_lens/crawler/init.py application Асинхронный сбор и нормализация открытых закупок. 1 99
src/tender_lens/crawler/main.py application CLI entrypoint роли crawler. 154 5917
src/tender_lens/crawler/base.py application Общий контракт источника и безопасная HTTP-политика crawler. 281 11843
src/tender_lens/crawler/contracts_finder.py application Адаптер UK Contracts Finder OCDS Search. 140 5414
src/tender_lens/crawler/fixture.py application Одноразовый fixture-адаптер для локального demo и e2e. 33 1356
src/tender_lens/crawler/service.py application Оркестрация crawl: upsert, вложения, cursor и NATS event. 301 12312
src/tender_lens/crawler/ted.py application Адаптер официального TED Search API v3. 189 6652
src/tender_lens/db.py application Создание SQLAlchemy engine/session только по явному запросу. 40 1058
src/tender_lens/errors.py application Типизированные ошибки, переводимые в стабильные HTTP-ответы и логи. 44 1410
src/tender_lens/hashing.py application Детерминированные hash-функции для закупок, файлов и чанков. 87 2578
src/tender_lens/indexer/init.py application Фоновая индексация закупок и вложений. 1 78
src/tender_lens/indexer/main.py application CLI entrypoint durable INDEXER consumer. 92 3433
src/tender_lens/indexer/chunk.py application Детерминированный paragraph-first chunking без отдельного фреймворка. 81 2694
src/tender_lens/indexer/extract.py application Безопасное извлечение текста из ограниченного набора форматов. 162 6406
src/tender_lens/indexer/service.py application Идемпотентная обработка tender.changed.v1 и атомарная замена чанков. 162 6899
src/tender_lens/logging.py application Минимальное структурированное логирование без секретов. 50 1698
src/tender_lens/models.py application Пять SQLAlchemy-моделей, утверждённых спецификацией MVP. 211 9194
src/tender_lens/nats.py application Узкая интеграция NATS JetStream для одного события индексации. 162 6098
src/tender_lens/schemas.py application Pydantic-контракты источников, NATS и HTTP API. 200 5927
src/tender_lens/search.py application Exact cosine retrieval и grounded RAG поверх PostgreSQL/pgvector. 112 4190
src/tender_lens/storage.py application Безопасная потоковая загрузка вложений в локальный volume. 99 3328
src/tender_lens/web/app.js application Browser state, безопасный DOM rendering и Search/Ask fetch flow. 172 6511
src/tender_lens/web/index.html application Семантическая разметка статического TenderLens UI. 90 4828
src/tender_lens/web/styles.css application Design tokens, desktop/mobile layout и UI component styles. 79 6953
tests/api/test_api.py test In-process FastAPI contract tests с dependency injection. 353 11273
tests/conftest.py test Общие pytest fixtures project root и example fixture directory. 15 316
tests/e2e/test_fixture_pipeline.py test Полный fixture pipeline от crawler до Search/Ask. 265 8882
tests/integration/conftest.py test Integration tests с настоящими PostgreSQL/pgvector или NATS. 56 1786
tests/integration/test_database_pipeline.py test Integration tests с настоящими PostgreSQL/pgvector или NATS. 437 14868
tests/integration/test_nats.py test Integration tests с настоящими PostgreSQL/pgvector или NATS. 45 1586
tests/unit/test_adapters.py test Unit tests изолированной логики без real infrastructure. 307 10501
tests/unit/test_ai_and_search.py test Unit tests изолированной логики без real infrastructure. 119 4029
tests/unit/test_auth_and_rate_limit.py test Unit tests изолированной логики без real infrastructure. 86 2895
tests/unit/test_cli.py test Unit tests изолированной логики без real infrastructure. 20 556
tests/unit/test_extraction_and_chunking.py test Unit tests изолированной логики без real infrastructure. 135 4605
tests/unit/test_http_and_storage.py test Unit tests изолированной логики без real infrastructure. 308 9962
tests/unit/test_nats_message.py test Unit tests изолированной логики без real infrastructure. 33 789
tests/unit/test_project_contract.py test Unit tests изолированной логики без real infrastructure. 141 4532
tests/unit/test_schemas_and_hashing.py test Unit tests изолированной логики без real infrastructure. 133 5000

Сгенерировано из git ls-files и локального source tree. Binary assets показывают «—» вместо числа строк.