tenders-44fz

star 0

Госзакупки 44-ФЗ для поставщика (друг Алекса — сувенирка/печать/брендинг). 4-шаговый агент: фильтр → анализ заказчика (победители, % снижения) → запрос цен поставщикам → маржа к НМЦ. Источники данных, инфра, обучение вайбкодингу. Используй при любой задаче про тендеры/закупки друга.

VedaAstro By VedaAstro schedule Updated 6/10/2026

name: tenders-44fz description: Госзакупки 44-ФЗ для поставщика (друг Алекса — сувенирка/печать/брендинг). 4-шаговый агент: фильтр → анализ заказчика (победители, % снижения) → запрос цен поставщикам → маржа к НМЦ. Источники данных, инфра, обучение вайбкодингу. Используй при любой задаче про тендеры/закупки друга.

Tenders 44-ФЗ — агент-помощник поставщика госзакупок

Engine v2 (2026-06-10 вечер, АКТУАЛЬНОЕ): «движок пути к деньгам» — expert-loop калибровка на Вадиме, bottom-up смета, P(win|цена) → platform/specs/SPEC-grantum-engine-v2-money-path-2026-06-10.md. ⚠️ Стратегия/монетизация (2026-06-10): петля денег, целевая функция «выгодности», каскад L0-L3, roadmap → platform/specs/SPEC-grantum-tender-engine-strategy-2026-06-10.md (см. memory/grantum-engine-strategy-2026-06-10.md). ⭐ READ FIRST (новая сессия): reference/MASTER-SPEC-grantum-full-buildout-2026-06-03.md — ретро + мировой best-practice (Stotles/Tussell/Keelvar/Fairmarkit/AutogenAI) + спека ВСЕХ эпиков остатка (A pipeline/workspace, B renewal+алерты, C bid/no-bid отчёт+price-to-win, D doc-QA, E черновик заявки, F RFQ-автоматизация, G коммерция, H профиль, I инфра, J buyer-intel) + handoff-промпт под ключ. ⚠️ EPIC I срочно: gov-прокси триал истекает 06.06.2026. Затем reference/SESSION-2026-06-03-v2-retro-and-handoff.md — что уже LIVE. Затем reference/HANDOFF-SPEC-2026-06-03.md — детали реализации gov_gateway/РНП/финансы/профиль/RFQ/референс. Это движок Grantum (grantum.ai = ЖИВОЕ приложение, сервер 72.56.236.63, НЕ 217). Цель — топовая международная supplier-side платформа, профильно под друга (полиграфия/сувенирка). Связанные доки: reference/{data-architecture,strategy-and-enrichment,friend-profile-poligraf-suvenirka}-*.md. Креды: memory/credentials.md.

Когда использовать

Любая задача про тендеры друга Алекса: поставка сувенирной/печатной/брендированной продукции по госзакупкам 44-ФЗ. Цель — софт, которым он пользуется как сторонний заказчик, + обучить его строить агентов самому (вайбкодинг).

Канон-факты (не переоткрывать)

  • Целимся в 44-ФЗ (государственные закупки). Подтверждено Алексом 2026-06-02. НЕ коммерция, НЕ Росэлторг.Бизнес.
  • 44-ФЗ полностью публикуется в ЕИС (zakupki.gov.ru) → данные открытые: извещения, протоколы (победители), реестр контрактов, цены. Всё, что нужно для шагов 1-2, — открыто и бесплатно.
  • Росэлторг — это площадка (1 из 8 федеральных ЭТП), не заказчик. Его коммерческая секция Росэлторг.Бизнес (номера B/COM, способ «выбор победителя», com.roseltorg.ru) — НЕ наш кейс, в ЕИС не попадает. Если всплывёт такой тендер — это исключение, не цель.
  • Детали/история решения: memory/tender-data-sourcing-2026-06-02.md. Проект-код: Grantum /Users/alex/Projects/tender-ai/.

Архитектура: 4 шага друга → как закрываем

  1. Фильтр-мониторинг (ОКПД, ключи, заказчик, НМЦ, регион, тип процедуры). → Открытые данные 44-ФЗ. ✅ закрыто данными.
  2. Анализ заказчика (история закупок, кто побеждал, % снижения, один победитель или ротация). → Протоколы + реестр контрактов 44-ФЗ, всё открыто. % снижения = (НМЦ − итоговая цена)/НМЦ. ✅ строим на открытых данных.
  3. Запрос цен поставщикам (позиции ТЗ → рассылка по базе через мессенджер/почту → сбор и сведение ответов). → Своя разработка (RFQ-бот), данные площадок НЕ нужны. Самое сложное. Ключ — структурированный шаблон ответа поставщика.
  4. Срез себес/НМЦ → маржа (НМЦ 2 млн, себес 1.1 млн, маржа 45% → участвуем за секунды). → Калькулятор поверх Шага 3. Маржу исторически НЕ калибруем (уникалка непредсказуема) — только факт по живым ценам Шага 3, либо прайс-каталог на стандартные SKU (бумага, типовые ручки/кружки по артикулу). ФСНБ-движок Grantum (стройка) — НЕ использовать.

Источники данных 44-ФЗ

  • gosplan.info зеркалоhttps://v2.gosplan.info/fz44/{contracts,...} — БЕСПЛАТНО, без ключа, работает с любого IP. Уже интегрирован в Grantum (outreach/providers.py GosplanClient, base_url=.../fz44). Параметры: customer(ИНН заказчика — фильтр РАБОТАЕТ на fz44, проверено), supplier, limit, published_forpast, sort. 160K тендеров уже в БД Grantum.
  • ЕИС официальный (zakupki.gov.ru) — первоисточник, полные протоколы/контракты. ⚠️ Режет IP стартап-сервера (000), но доступен с prod-217 (200). Для прямого ЕИС — через 217 или официальный integration API (СОИ, регистрация free).
  • TenderGuru API — удобный REST, покрывает 44-ФЗ. Ключ в credentials.md. Free: keyword-поиск + поля заказчик/НМЦ/цена/победитель(имя). Платно (тариф «Стандарт» 12900₽/6мес): снимает маску ИНН победителя + фильтр customerInn(camelCase). MCP: tenderguru.ru/api/mcp. ⚠️ Покупать только если открытых данных gosplan/ЕИС не хватит — сначала выжать бесплатное.

Инфраструктура

  • НЕ трогать prod-217 (109.73.194.217) — основной прод VEDA.
  • Стартап-сервер 72.56.236.63 (Timeweb, Москва, Ubuntu 24.04) — выделен под стартапы (grantum + nalogai). PM2: grantum-backend(:8011), grantum-frontend(:3007), nalogai-*. БД postgresql://grantum@localhost/grantum. SSH root@, ключ ~/.ssh/id_ed25519. Вся работа по тендерам — здесь.
  • Деплой Grantum (проверено 2026-06-02): rsync → 72.56.236.63 (НЕ 217 — CLAUDE.md проекта устарел). Backend: /var/www/grantum-backend/ (venv uvicorn, pm2 grantum-backend :8011, БД grantum, реестр API под /api/v1/...). Frontend: /var/www/grantum-frontend/frontend/ (Next standalone + npm, pm2 grantum-frontend :3007; NEXT_PUBLIC_* печётся при build → ключ AG Grid в .env.production ДО npm run build; после build докопировать .next/static+public в .next/standalone/frontend/). БД: tender(307K строк, 44-ФЗ), tender_match_score. Users: alex@grantum.tech, codex-collect@tender.ai.
  • ⚠️ App-фронт (:3007) НЕ проброшен наружу! nginx grantum (grantum.ai/grantum.tech): /→статика /var/www/grantum-ai-site (лендинг Genesis), /api/→:8011. grantum.ai=200(лендинг), grantum.tech=502(мёртв). Чтобы UI приложения был доступен — нужно завести домен/сабдомен (напр. app.grantum.ai) с location / → proxy_pass :3007. CORS бэка под этот origin тоже добавить.
  • ⚠️ Деплой rsync ОБЯЗАН исключать .env.production (--exclude='.env.production') — иначе локальная версия без NEXT_PUBLIC_AG_GRID_LICENSE_KEY затирает серверную → AG Grid рисует watermark «License Key Not Found» и Enterprise-фичи в trial. Ключ NEXT_PUBLIC печётся при npm run build, поэтому после правки env — пересобрать.
  • SSRM-грабли (warnings в консоли): groupDefaultExpanded НЕ работает с rowModelType="serverSide" (только clientSide) — убрать. agTotalAndFilteredRowCountComponent в statusBar — только client-side; для SSRM использовать agTotalRowCountComponent или убрать. WebSocket wss://grantum.ai/api/v1/ws даёт 404 (nginx не проксирует ws upgrade на /api — отдельная задача, на грид не влияет).
  • Грид-эндпоинты: GET /api/v1/tenders/grid (плоский, старый) + POST /api/v1/tenders/grid/query (SSRM: rowGroupCols/groupKeys/valueCols/filterModel/sortModel → group-rows{key,cnt,max_price sum} или leaf-rows). Группировка по customer_name проверена: топ-заказчик 1719 закупок, Σ НМЦ 9.6 млрд.
  • TODO обогащение данных (для оживления Шага 2): в модели Tender НЕТ final_price/contract_price/winner/supplier → % снижения и Победителей сейчас null. Источник для обогащения — data_json['eis_enrichment'] (EIS-enrichment уже есть). После добавления полей: reduction_pct=(max_price-final_price)/max_price*100, winners_count=COUNT(DISTINCT winner) в группировке.
  • Старый эндпоинт: GET /api/v1/tenders/grid (start_row,end_row,sort_field,sort_dir,region,min/max_price,law,okpd,customer,q) → {rows,last_row}. Колонки модели Tender: title, customer_name, customer_inn, max_price, okpd2_codes(JSONB), publish_date, deadline, law, source, status, match_score, margin_percent.

AG Grid лицензия (для UI тендеров)

  • Наша лицензия (memory/ag-grid-enterprise-license.md): Enterprise Multiple Applications, 1 dev, до 06.05.2027. Покрывает НЕОГРАНИЧЕННОЕ число ВНУТРЕННИХ приложений. AG Grid НЕ берёт плату за серверы — «разные сервера» не проблема.
  • РЕШЕНИЕ (Алекс 2026-06-02): инструмент тендеров = ВНУТРЕННИЙ, друг = наш сотрудник. → используем Enterprise с нашим ключом (env NEXT_PUBLIC_AG_GRID_LICENSE_KEY, ключ в memory/ag-grid-enterprise-license.md), все фичи доступны (SSRM, Row Grouping для досье, Excel и т.д.). Регистрация как в veda-presentation: AllEnterpriseModule + LicenseManager.setLicenseKey (app/lib/agGridSetup.ts).
  • ⚠️ ЕСЛИ позже пойдём в customer-facing/продажу внешним → тогда докупить Deployment License Add-on (~$750/прод-окружение). Сейчас не усложнять.

Обучение друга вайбкодингу

Первый учебный агент: «по ИНН заказчика верни — кто побеждал и средний % снижения». Открытые данные gosplan/44-ФЗ, простой GET, измеримый результат. Дальше: RFQ-бот (Шаг 3), маржа-калькулятор (Шаг 4). Он сам сторонний заказчик софта + хочет учиться строить агентов/ИИ.

Entity-graph обогащение (сделано 2026-06-03)

  • DaData резолвит ИНН→компаниюbackend/app/services/company_resolver.py, suggestions findById/party (Authorization: Token <DADATA_API_KEY>, ключи в env сервера). Кэш in-memory 24ч. Вшито в customer_dossier_service → досье показывает названия победителей/заказчика (ООО «ФК Балтимор» вместо 7701071789) + статус + ОКВЭД. Деградация: нет ключа → name=None, дос не падает.
  • ⚠️ РНП пока не подключён: ФАС opendata (fas.gov.ru/opendata/7703516539-rnp) и zakupki.gov.ru/dishonestsupplier геоблокнуты с сервера 72.56.236.63 (000), gosplan РНП-эндпоинта не имеет. Нужен прокси / 217 / зеркало / периодическая загрузка датасета. DaData РНП не отдаёт.
  • Стратегия/мировой best-practice/обогащение/универсальный движок → reference/strategy-and-enrichment-2026-06-03.md.

Gotchas

  • «Закупка с выбором победителя» + номер B/COM = коммерция Росэлторг.Бизнес, НЕ 44-ФЗ, в ЕИС нет → не наш кейс.
  • gosplan fz223 customer-фильтр НЕ отработал в тестах (контроль РЖД=0) — не доверять fz223-фильтру без перепроверки. Для 44-ФЗ фильтр customer работает.
  • ЕИС геоблокит датацентр-IP (стартап-сервер режется, 217 проходит) — для прямого ЕИС использовать 217 или official API, иначе gosplan-зеркало.
  • Не строить маржу на ФСНБ (Grantum заточен под стройку — для сувенирки бесполезно).
Install via CLI
npx skills add https://github.com/VedaAstro/veda-skills --skill tenders-44fz
Repository Details
star Stars 0
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator