
ИИ-помощник разработчика 1С, который опирается на вашу конфигурацию, а не на догадки
Pilot 1C превращает задачу, поставленную обычными словами, в техническое задание, код на встроенном языке и сценарии проверки. Работает он не по догадкам: прежде чем что-то предложить, сверяется с устройством вашей конфигурации — какие объекты в ней есть, из чего они состоят, кто их вызывает, какие роли на них выданы.
Ассистенты общего назначения угадывают по тексту модулей, и на типовой конфигурации с расширениями это не работает: объекты с почти одинаковыми именами, заимствования, перехваты, свои реквизиты у каждого клиента. Pilot берёт факты из графа Analyzer 1C — это отдельный продукт линейки 1C Intelligence Suite, он ставится рядом и из базы знаний, содержащей более 200 тысяч фактов по всем видам учета и стандартам языка 1С, которая входит в поставку и может быть дополнена вашими стандартами и регламентами прямо в настройках продукта. Чего найти не удалось — спрашивает у вас, а не выдумывает.
Кому: разработчику и аналитику 1С, ведущему команды разработки, интегратору, который сопровождает несколько конфигураций. Модель — ваша, локальная или облачная; правки в базу продукт не вносит.
Что получает разработчик
Задача по шагам: исследование → требования → архитектура → техническое задание → результат → тесты; каждый шаг — отдельная вкладка, к которой можно вернуться
Заземление на вашу систему: названия из задачи разрешаются по графу конфигурации; пункты ТЗ привязаны к конкретным объектам, а не написаны общими словами
Проверка написанного: готовый код проходит более полутора сотен проверок — от существования методов в вашей версии платформы до слоя правки и работы с движениями
Модель — ваша: любой сервер, совместимый с программным интерфейсом OpenAI, в том числе локальный; модель в поставку не входит и работает на вашей стороне
Правки в базу не вносит: отдаёт код и карту вставки, применяет разработчик — продукт не может ничего сломать
Справочник знаний по 1С в поставке: объектная модель платформы, язык запросов и стандарты разработки — помощник сверяется с ними до того, как предложит код, и делает это без интернета
Pilot 1C в цифрах
Цифры сняты с задачи на демонстрационной базе 1С:ERP Управление холдингом 3.2.8.11 с расширением «Управление лизингом»: план-факт оплат по договору лизинга — плановые из графика расширения, фактические по типовому учёту.
150+
проверок кода
синтаксис, методы вашей версии платформы, сигнатуры событий, слой правки, движения, стандарты
15,5 мин
до готового результата
от задачи словами до кода, ТЗ и сценариев проверки на демонстрационной базе
932 против 0
записей в четырёх хранилищах-тёзках
помощник выбрал единственное заполненное и назвал причину вслух
6
шагов задачи
исследование, требования, архитектура, ТЗ, результат, тесты — каждый отдельной вкладкой
5
режимов работы
авто, опрос, выработка решения, анализ, код-ревью
3
источника фактов
граф Analyzer 1C, справочник языка из поставки, срез Insight 1C
Откуда берутся факты
Главное отличие Pilot от разговора с языковой моделью — он не угадывает устройство конфигурации, а узнаёт его. Перед тем как планировать, помощник достаёт из задачи названия объектов, ищет их в вашей конфигурации, добирает состав реквизитов и табличных частей, вызывающих, роли и радиус влияния правки — и кладёт добытое в работу. Неразрешённое превращается в вопрос разработчику: ответ «такого объекта нет» ценнее правдоподобного вымысла.
Analyzer 1C
Устройство конкретной конфигурации: объекты, связи, вызовы, роли, расширения. Ответ на вопрос «что в системе есть». Помощник ходит в граф от вашего имени — по личному токену, и обращения видны в журнале Analyzer.
Справочник языка 1С
Входит в поставку и не требует интернета: объектная модель платформы (типы, методы, свойства, с какой версии доступны), язык запросов, стандарты разработки, разбор типовых решений. Ответ на вопрос «как правильно писать».
Insight 1C
Что в базе реально используется: какие объекты заполнены данными, а какие только описаны в конфигурации. Подключается отдельно и меняет решения: документ, который перестали создавать два года назад, и документ, который проводят ежедневно, требуют разной осторожности.
Ваши документы
Отраслевой регламент, внутренний стандарт, описание собственного решения — в формате PDF, TXT или Markdown. Документ разбирается фоном на факты, и помощник опирается на них наравне со справочником из поставки. Набор включается и выключается переключателем.
Как проходит задача
Pilot не отвечает одним куском текста. Он ведёт задачу по шагам, и каждый шаг оседает отдельной вкладкой в средней колонке окна. К любой вкладке можно вернуться, а с полосы «Продолжить с фазы» — переиграть работу с любого места, сохранив сделанное раньше.

1. Исследование
Что помощник выяснил о вашей конфигурации, прежде чем что-то предлагать: какие объекты найдены, как они устроены, что с чем связано. Здесь же — вопросы, без которых пришлось бы догадываться.

2. Требования
Что именно требуется сделать, разложенное по пунктам. Ответ на вопрос «чего мы добиваемся» — ещё без решения о том, как.

3. Архитектура
Решение о способе: в конфигурации или в расширении, каким слоем, какие объекты затрагиваются — и обоснование выбора.

4. Техническое задание
Реестр: каждый блок пронумерован и несёт колонки — что делаем, какое архитектурное решение реализует, какие требования закрывает, что при этом объявляется, от каких блоков зависит. Имена объектов — из вашей конфигурации, а не общие слова.

5. Результат
Готовый код: внешняя обработка либо карта вставки — куда и что добавить в конфигурацию или расширение. В конце — раздел «Проверено / Предположено». Материалы любой вкладки скачиваются файлом в форматах Markdown и Word.

6. Тесты
Сценарии проверки на русском языке Gherkin для Vanessa Automation: что должно происходить при верном поведении и как это увидеть.
Что умеет Pilot 1C
Пять режимов работы
Авто — помощник сам понимает по формулировке. Опрос — заканчивается постановкой задачи, а не кодом. Выработка решения — полный цикл до кода и тестов. Анализ — заземлённая справка без кода. Код-ревью — разбор уже написанного кода.
Интерактивно или автономно
Интерактивно помощник останавливается и задаёт вопросы, когда ему не хватает данных. Автономно — вопросов не задаёт, недостающее фиксирует допущением и идёт дальше: удобно, когда нужен быстрый черновик.
Проверка написанного
Синтаксис, существование методов и свойств в вашей версии платформы, сигнатуры обработчиков событий по справочнику, контекст исполнения, слой правки, работа с движениями и запросами, стандарты разработки. Замечания ссылаются на стандарт, а не на мнение.
Сессии и продолжение
Каждая задача сохраняется: формулировка, состояние, модель, расход токенов и обращений, кто запускал. К задаче можно вернуться, прерванную — продолжить, неудачную — переиграть с нужного шага, дописав уточнение.
Ход работы на виду
Панель справа показывает рассуждения модели и вызовы инструментов: что спрашивали у графа и что вернулось. Не «модель так решила», а «запросила состав документа и увидела там такой реквизит».
Пользователи и роли
Для сервера команды: четыре роли — просмотр, разработка, ведущий, администратор; локальные учётные записи, вход через LDAP или Active Directory и через корпоративного поставщика по OpenID Connect, журнал действий, личные токены для обращений из сценариев.
Материалы — файлами
Любая вкладка скачивается в форматах Markdown и Word: ТЗ уходит заказчику, код — в конфигуратор, сценарии — в Vanessa Automation.
Без интернета
Сервер Pilot, база данных и справочник знаний работают в контуре клиента; наружу ходит только запрос к модели, и если модель локальная — не ходит ничего.
Сравните: ассистент общего назначения и Pilot 1C
Что получается, когда модель угадывает по тексту — и когда она сверяется с вашей конфигурацией
Было (ассистент общего назначения)
Имена объектов
Правдоподобные, но из «типовой» конфигурации; реквизит клиента и заимствованный объект расширения не видны
Тёзки и похожие имена
Берётся первое попавшееся хранилище — в нём может не быть ни одной записи
Методы платформы
Метод из свежей версии в модуле под старую платформу — не компилируется
Проверка результата
Читать и перепроверять всё подряд; где догадка, а где факт — неизвестно
Данные
Задача и фрагменты конфигурации уходят к внешнему сервису
Стало (с Pilot 1C)
Имена объектов
Разрешаются по графу вашей конфигурации: состав, вызывающие, роли, слой — расширение или типовой объект
Тёзки и похожие имена
Insight отвечает, где есть данные; помощник отбрасывает пустые и называет причину
Методы платформы
Существование и версия метода проверяются по справочнику языка до того, как код уедет в результат
Проверка результата
Раздел «Проверено / Предположено» отделяет подтверждённое фактами от допущений
Данные
Сервер в вашем контуре, модель ваша — локальная или облачная по вашему выбору
Настройки и связи
Все связи настраиваются в окне, кнопка «Настройки» в шапке: общие значения задаёт установка в файле настроек, личные — каждый пользователь на своих вкладках. Ниже — что писать в каждое поле.
Три поля. Модель — точное имя, как его ждёт сервер: например qwen3.6:27b. BASE_URL — адрес сервера, строка, оканчивающаяся на /v1; подходит любой сервер, совместимый с программным интерфейсом OpenAI. Ключ — если сервер его требует; для локальной модели обычно пусто.
Как выглядит адрес:
- модель на той же машине, где стоит Docker (например ollama) —
http://host.docker.internal:11434/v1: так контейнер видит свою машину,localhostздесь означал бы сам контейнер; - сервер модели в вашей сети —
http://llm.corp:8000/v1; - облачный поставщик —
https://api.поставщик.ru/v1плюс ключ поставщика.
Кнопка «Проверить» обращается по адресу и говорит, отвечает ли сервер. Пустые поля означают значения из файла настроек установки: PILOT_LLM_BASE_URL, PILOT_LLM_MODEL, PILOT_LLM_API_KEY; для облачных поставщиков там же указывается PILOT_LLM_API_STYLE=openai. Заполненные поля перекрывают общие для этого пользователя, ключ хранится в его браузере и в общую базу не попадает.

Адрес графа — адрес сервера Analyzer, тот же, что открываете в браузере: http://analyzer.corp:8000. Путь протокола /mcp дописывается сам. Пустое поле — общий адрес из файла настроек установки (ANALYZER_MCP_URL; по умолчанию http://host.docker.internal:8000/mcp — Analyzer на той же машине).
Токен доступа — личный токен Analyzer вида a1c_pat_…. Выпускается в самом Analyzer: значок ключа рядом с вашим именем в шапке открывает окно «Мои токены доступа», значение показывается один раз — скопируйте сразу. Помощник ходит в граф от вашего имени: видны только те системы, к которым вы допущены, обращения попадают в журнал Analyzer. Токен хранится зашифрованным.
Система по умолчанию — идентификатор системы в графе, например erpuh_lizing. Заполнено — помощник не спрашивает систему на старте; пусто — предлагает список. Ниже подписано, сколько систем вам доступно.

Адрес Insight задаётся при установке в файле настроек: INSIGHT_MCP_URL, например http://host.docker.internal:8010/mcp для Insight на той же машине или http://insight.corp:8010/mcp для сервера в сети. В окне у пользователя два поля.
Токен доступа — личный токен Insight. Выдаёт администратор Insight на листе «Доступ» в карточке пользователя; значение показывается один раз. Агент спрашивает Insight от вашего имени — с вашей ролью и вашими внедрениями, обращения видны в журнале Insight.
Внедрение по умолчанию — карточка базы в Insight, сведения о которой брать; в списке только внедрения, выданные вам. Метка Insight в окне показывает состояние связи и, при наведении, на какое число сделан снимок: сведения о жизни объектов — фотография базы на момент съёмки. Без Insight помощник работает, просто не знает, что в базе живо.

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

На сервере команды администратор заводит пользователей, назначает роли и смотрит журнал доступа. На одной машине с выключенным разграничением доступа вкладка не нужна.

История задач: состояние, модель, расход токенов и обращений, кто запускал. Отсюда задача открывается заново, продолжается или переигрывается с нужного шага.

Чего Pilot не делает
Не правит конфигурацию сам
Отдаёт код и карту вставки — куда и что добавить. Применяет правку разработчик — сам, в своей среде разработки.
Не запускает 1С:Предприятие и не отлаживает
Проверить поведение на живых данных, пройти отладчиком, посмотреть в режиме предприятия — по-прежнему работа разработчика.
Не помнит проект между задачами
Каждая сессия начинается с чистого листа и заново заземляется на конфигурацию. Материалы прежних задач доступны в истории, но в новую задачу автоматически не попадают. Работу нескольких разработчиков над одним модулем помощник не согласовывает.
Не заменяет проверку человеком
Результат читаете, оцениваете и принимаете вы. Проверки, которыми помощник просеивает собственный код, ловят многое, но не всё. Поэтому в конце результата стоит раздел «Проверено / Предположено»: что подтверждено фактами, а что осталось допущением.
Технические требования
Сервер Pilot: Docker — Docker Desktop на Windows или macOS, Docker Engine с compose версии 2 на Linux; интернет не нужен ни при установке, ни в работе
Analyzer 1C с загруженной конфигурацией и доступом к графу по протоколу MCP — источник фактов о вашей системе; без него помощник работает, но материалы помечаются «не заземлено»
Языковая модель: любой сервер, совместимый с программным интерфейсом OpenAI, — локальный или облачный; модель должна уверенно работать с длинным контекстом и понимать русский язык. В поставку модель не входит, наценки на обращения к ней нет
Insight 1C — добавляет сведения о том, что в базе используется
Интерфейс — любой современный браузер; по умолчанию адрес http://127.0.0.1:8772
Кадры в описании сняты на задаче из демонстрационной базы 1С:ERP Управление холдингом 3.2.8.11 с расширением «Управление лизингом».
Варианты поставки
| Пакет, 1 год |
1 место
один разработчик
|
5 мест
12 000 руб. за место
|
10 мест
10 000 руб. за место
|
50 мест
9 500 руб. за место
|
|---|---|---|---|---|
| Цена пакета в год, без НДС | 15 000 руб. | 60 000 руб. | 100 000 руб. | 475 000 руб. |
| Мест разработчика | 1 | 5 | 10 | 50 |
| Все режимы, шесть шагов задачи, проверки кода, свои документы | ![]() |
![]() |
![]() |
![]() |
| Обновления 12 месяцев | ![]() |
![]() |
![]() |
![]() |
| Работа без интернета, привязки к оборудованию нет | ![]() |
![]() |
![]() |
![]() |
Продление обновлений, техподдержка сверх включённого месяца и консультация с автором продукта — отдельными позициями. Лицензия приходит письмом: строкой, которую вставляют в окне помощника, или файлом с той же строкой; подключения к интернету и привязки к оборудованию нет. За 14 дней до окончания окно предупреждает; после окончания ещё 14 дней задачи запускаются с предупреждением. Без действующей лицензии окно, настройки и история открыты, а запуск задачи отклоняется с подсказкой, где ввести строку.
Состав поставки
Образ приложения Docker и база данных рядом с ним — ни языковых сред, ни средств сборки ставить не требуется
Заполненный справочник знаний языка 1С: объектная модель платформы, язык запросов, стандарты разработки
Справочник знаний 1С и его витрина — в поставке, интернет не нужен
Скрипты установки, запуска и остановки для Windows и Linux, пример файла настроек
Описание установки, руководство пользователя и журнал изменений
Строка лицензии — письмом после оплаты, на число мест из позиции
Вопросы и ответы
Pilot поставляется одним архивом: образ приложения, база данных рядом с ним и уже заполненный справочник знаний языка 1С. На машине нужен только Docker. Отдельно нужны Analyzer 1C с загруженной конфигурацией и доступом к графу по протоколу MCP (включается лицензией поставки Analyzer) и сервер языковой модели, совместимый с программным интерфейсом OpenAI.
- Распакуйте архив в любую папку.
- При необходимости поправьте в примере настроек адрес модели и сетевые параметры. Файл настроек создастся сам, если его нет.
- Запустите установку:
deploy.batна Windows,./deploy.shна Linux и macOS. Установщик загрузит образы, поднимет базу данных, зальёт справочник знаний и запустит окно. Заливка справочника занимает несколько минут — это разовая операция. - Откройте
http://127.0.0.1:8772в браузере.
Повседневное включение — start.bat или ./start.sh, остановка — stop.bat или ./stop.sh. Данные при этом сохраняются. Все адреса по умолчанию открыты только на этой машине; при выносе сервера на отдельную машину разграничение доступа нужно включить в файле настроек вместе с открытием адреса наружу.
Обновление приходит тем же архивом, что и первая поставка. Положите рядом с установщиком файл образа pilot-1c-offline.tar из новой поставки и запустите установку снова: образ загрузится поверх прежнего, файл после загрузки установщик удалит сам. Если в поставку входит обновлённый справочник знаний языка — папка lang-kb-seed — положите рядом и её: справочник перезальётся начисто, папка после заливки удалится. Без папки знания не трогаются, без файла образа остаётся прежний образ.
Перезаливается только справочник, привезённый с продуктом. Документы, которые вы загрузили сами, извлечённые из них знания, учётные записи и выданные токены сохраняются: данные лежат в томе Docker и переживают остановку и обновление.
Обновляйте, когда задачи не выполняются: пересоздание окна оборвало бы уже сделанную работу.
Любой сервер, совместимый с программным интерфейсом OpenAI: локальный (например ollama на той же машине или сервер модели в вашей сети) или облачный поставщик с ключом. Модель должна уверенно работать с длинным контекстом и понимать русский язык: задачи, стандарты и справочник написаны по-русски. Слишком маленькая модель теряет нить на длинной задаче — доходит до кода, но путает объекты.
Сервер Pilot, база данных и справочник работают в вашем контуре. Наружу уходит только запрос к модели, и если модель локальная — не уходит ничего. Наценки на обращения к модели нет: вы платите её поставщику напрямую или не платите вовсе.
Запускается и работает без обоих: помощник ставит задачу, ведёт её по шагам и опирается на справочник знаний по 1С, который входит в поставку. Отличается не работоспособность, а то, на что он может опереться, — и там, где опереться не на что, он говорит об этом прямо, а не додумывает.
Без Analyzer 1C — работает, но не знает вашей конфигурации: материалы получают пометку «не заземлено», пункты ТЗ пишутся общими словами, а уточняющих вопросов становится больше. Граф Analyzer — то, ради чего продукт существует, и это единственная связь, без которой продукт заметно слабее себя самого.
Без Insight 1C — работает, просто без слоя «живо или мертво». Insight отвечает на вопрос, которого не видно ни в конфигурации, ни в графе: сколько у объекта записей и за какой срок, какие реквизиты не заполняют ни разу, а какие лишь изредка, какие документы не проводят, включена ли настройка. Без такого среза помощник опирается на устройство конфигурации и не знает, чем из описанного в ней люди действительно пользуются, — и может предложить решение вокруг реквизита, который в базе не заполнен ни разу. Выдумывать эти сведения он не станет.
Лицензия приходит письмом: строкой, которую вставляют в окне помощника, или файлом с той же строкой. Подключения к интернету и привязки к оборудованию нет — строка подписана и проверяется самим продуктом. Лицензий может быть несколько, и они складываются: купили на три места, докупили ещё на два — стало пять.
Число мест сравнивается с числом активных пользователей за 30 дней; превышение показывается в сводке и работу не останавливает. При выключенном разграничении доступа места не учитываются. Отказ по лицензии — отдельный ответ, он не путается с «нет прав» и не выглядит сбоем.
Нет, и продукт для того и разделяет проверенное с додуманным. Код проходит более полутора сотен проверок, но применяет его разработчик — сам, в своей среде, после чтения раздела «Проверено / Предположено». Помощник не запускает 1С:Предприятие и не отлаживает; проверить поведение на живых данных — по-прежнему работа человека.
История версий
При обновлении: запустите установку как обычно. Ваши учётные записи, документы и история прогонов не трогаются.
Новое
Раздельная работа над задачей
Свою сессию можно передать в общую работу кнопкой «В раздельную работу…» в «Моих сессиях». Задача становится делом, каждый шаг — отдельный этап, и этап берёт сотрудник, которому назначена база. Этап возвращают на прежний с замечанием, задают вопрос автору постановки; автор может вернуться на свой сданный этап, пока следующий никем не взят. Общий список ждущих этапов — кнопка «Дела в работе». Одиночная работа не меняется.
Граница этапа — за исполнителем
В окне прогон останавливается после каждого шага. Исполнитель решает сам: «Продолжить» и вести следующий шаг или «Отдать … в очередь» с запиской — следующий шаг возьмёт любой сотрудник с правами. Над документами прошлых шагов — компактная полоса дела: этапы с исполнителями, действия и журнал передач.
Роль «Аналитик»
Уточнение постановки, справка об устройстве, опрос и код-ревью — без шагов с кодом. Запрос на доработку от аналитика идёт до уточнения постановки и сам становится делом раздельной работы: этап с кодом берёт коллега с ролью выше. Аналитик занимает обычное место лицензии.
Вводные по ходу прогона
Пока помощник работает, поле ввода открыто: написанное уходит ему вводной и учитывается на ближайшем шаге. В ленте видно, учтена ли вводная и на каком шаге.
Выбор шага после конца прогона
Цепочка шагов над вкладками становится выбором, откуда продолжить работу.
Выбор внедрения Insight в начале задачи
Если внедрение по умолчанию не задано, а доступно несколько, помощник спрашивает, с каким работать. Выбор запоминается в сессии.
От справки к разработке
В режиме «Авто» ответ «нужна доработка» на уточняющий вопрос справки даёт предложение перейти к разработке; согласие ведёт задачу до кода без второго уточнения.
Новые сведения из графа Analyzer
Помощник пользуется определяемыми типами, критериями отбора, планами обмена, регламентными заданиями, внешними сервисами, пакетами XDTO, параметрами сеанса, правами набора ролей, обработчиками и рисками обновления и точками нагрузки кода — там, где их отдаёт подключённый Analyzer 1C.
Справка по языку с описаниями
У методов и свойств языка помощник видит описание, примечания и пояснение каждого параметра из синтакс-помощника.
Улучшения
Замечания критика о платформе сверяются с базой знаний языка
Утверждение о поведении платформы принимается только при подтверждении фактом языковой базы, поэтому ложные замечания больше не переписывают верный код.
Переделка по замечаниям проверок не теряет верные правки
Отказ модели по части замечаний больше не отбрасывает сделанные исправления, а из нескольких попыток сохраняется лучшая редакция.
Меньше ложных замечаний проверок кода
Точнее проверяются параметры виртуальных таблиц запроса и ресурсы в их условиях, перехват метода в модуле формы и объекты сверх задания; реквизит, упомянутый в тексте рядом с другим объектом, больше не приписывается этому объекту.
Сообщения проверок на языке читателя
В плашках проверок — в окне и в документе — больше нет служебных имён полей и инструментов и указаний, адресованных помощнику: остаётся суть замечания.
Исправление ошибок
«Мои сессии» без разграничения доступа
История, возврат к сессии и продолжение работают и в установке с выключенным разграничением доступа.
Понятная причина, если Insight недоступен
Окно называет причину словами — адрес не задан, нет соединения, токен не принят — и показывает адрес; незаданный адрес отображается как «не подключён», а не как сбой связи.
При обновлении: запустите установку как обычно — накатятся новый образ и справочник знаний по языку 1С. Ваши учётные записи, документы и история прогонов не трогаются.
Новое
Сценарии тестов на шагах Vanessa Automation
Помощник собирает сценарии проверки из готовых шагов библиотеки Vanessa Automation и сверяет с ней каждый шаг. Шаг, которого в библиотеке нет, он заменяет подходящим, поэтому сценарий запускается без доработки руками.
Помощник видит доработки конфигурации
Помощник получает список объектов, тронутых расширениями: собственные объекты расширений и заимствованные типовые. При подключённых данных внедрения он сразу видит, какие доработки относятся к объектам, которыми в базе не пользуются, и что при обновлении можно не переносить.
Прецеденты перехвата перед правкой через расширение
Прежде чем писать перехват, помощник смотрит, как этот объект уже дорабатывается в вашей конфигурации: какие методы перехвачены, каким способом, продолжается ли вызов типового метода, и есть ли рядом штатная точка расширения, где перехват не нужен вовсе.
Кто записывает значение реквизита
Помощник находит места, где реквизит заполняется кодом, включая обработчики событий. Ответ на вопрос «откуда берётся это значение» больше не приходится выводить из чтений в запросах.
Руководство пользователя приезжает вместе с продуктом
В комплекте появились два документа: руководство пользователя и описание справочника знаний по 1С. Они лежат и внутри архива, и рядом с ним — инструкцию чаще пересылают отдельно, и распаковывать ради неё весь комплект незачем. Прежде оба документа были написаны, но в поставку не входили.
Комплект поставки проверяется до установки
Рядом с архивом лежит его контрольная сумма, а в комплекте — список сумм всех файлов и проверка verify.bat / verify.sh: она читает каждый файл поставки и называет недостающие и не совпавшие. Недокачанный или испорченный при переносе комплект теперь виден до установки, а не при первом запуске.
Улучшения
Код-ревью собирает код объекта целиком
Ревью находит модули объекта по фактам конфигурации и спускается по вызовам, а длинные модули читает постранично — перехват метода расширением больше не теряется на границе страницы. Замечания автоматических проверок передаются модели как подсказка, а не как готовый вердикт.
Помощник понимает реквизит по его синониму
Если в задаче реквизит назван так, как он подписан в интерфейсе, а не по имени в конфигурации, помощник всё равно находит его и опирается на него в уточнении и решении.
Понятия задачи сверяются с методическими материалами
Прежде чем искать ответ в конфигурации, помощник уточняет понятия задачи по методичкам, причём понятием считается словосочетание целиком, а не отдельные слова.
Новые проверки кода по остаткам регистров
Проверки находят чтение остатков на дату из основной таблицы регистра вместо виртуальной таблицы остатков и выборку остатков без свёртки по измерениям. Проверка виртуальных таблиц больше не срабатывает на именах, которые таблицами платформы не являются, а выборка из запроса, возвращающего одну строку, не требует цикла перебора.
Замечаний по делу больше, придирок меньше
Проверки, судившие по обрывку строки или по началу условия, научились читать конструкцию целиком: многострочное условие снова распознаётся, склеенный из частей заголовок считается правильно, а проверка, у которой пять находок из семи оказывались ложными, переведена в разряд советов и больше не роняет вердикт. Ложное замечание учит не доверять и верным, поэтому сомнительные проверки сужены до доказуемого.
Справочник знаний по языку отвечает полнее и точнее
У функций языка запросов появились формы вызова, и они больше не выдаются за процедуры: в языке запросов процедур нет, а прежде функция с неописанным типом результата выглядела как процедура — по такому ответу нельзя было решить, можно ли позвать её в выражении. Сигнатуры больше не обрезаются при записи, а имена, отличающиеся только регистром букв, не заводят в справочнике двойников.
Техническое задание умеет запрещать, а не только требовать
В задание можно записать запрет («не делать так-то»), и прогон отдельно называет случаи, когда код от задания отклонился, — раньше расхождение приходилось искать глазами.
Отказ связи с графом конфигурации называет причину
Вместо общего «нет связи» окно сообщает, что именно произошло: служба не отвечает, доступ закрыт или сведения ограничены лицензией.
Ответ о составе типа ужимается по объёму, но перечень остаётся полным
Длинные описания членов типа подрезаются, а сам список членов приходит целиком: раньше при нехватке места терялись строки перечня.
Исправление ошибок
Меньше ложных замечаний проверок кода
Проверки больше не называют неизвестной функцией оператор языка в шаге ТЗ, например ВызватьИсключение, и не считают ошибкой вызов метода объекта без получателя в его собственном модуле, например ЭтоНовый. Многострочный текст в шаге сценария Vanessa Automation даёт одно замечание о форме шага вместо россыпи.
Обновление страницы не обрывает идущий прогон
После перезагрузки страницы окно теряло связь с идущим прогоном. Теперь оно подключается к нему заново и показывает ленту целиком, а открытый вопрос помощника снова ждёт ответа.
Полоса фаз в код-ревью и анализе показывает свои шаги
В этих режимах полоса рисовала фазы написания кода и не подсвечивала текущую. Теперь у ревью и анализа своя полоса, и видно, на каком шаге работа.
Продолжение сессии ревью и анализа
Вернувшись к сессии код-ревью или анализа, её нельзя было продолжить, а окно показывало фазы написания кода. Теперь такая сессия продолжается по своим фазам.
Установка без 1C:EDT не считается неполной
У тех, кто работает без 1C:EDT, каждый результат помечался как «собранный не в штатных условиях». Работа без EDT штатная, и пометка больше не ставится.
Нумерация списков в ответах помощника
Нумерованный список, начатый после абзаца, продолжает нумерацию, а не начинается заново с единицы.
Номер строки в замечаниях печатается один раз
Часть замечаний к коду начиналась с номера строки, напечатанного дважды: «строка 8: строка 8: …». Попадало это и в техническое задание, которое перечнем замечаний открывается.
Цитата «Было» в предлагаемой правке сверяется с настоящим текстом метода
Фрагмент «как было» брался из описания и мог разойтись с тем, что лежит в конфигурации, — правка по такой цитате не встала бы. Теперь он сверяется с телом метода, полученным в прогоне.
Метод формы больше не подтверждается тёзкой из другой формы
Метод с тем же именем в соседней форме засчитывался как прочитанный, и разбор строился на чужом теле.
Существующий метод без полученного текста больше не выдаётся за прочитанный
Раньше такой метод показывался как установленный факт, хотя его тело не запрашивалось.
Имя функции языка запросов не выдаётся за функцию встроенного языка
Это два разных языка с частично совпадающими именами, и подмена приводила к предложениям, которые не компилируются.
Термин из задачи не подменяется однокоренным именем константы
Слово из постановки притягивало похожую по написанию константу конфигурации, и решение строилось вокруг неё.
Дата в сценарии приводится к принятому виду
Сценарий с датой, записанной в чужом формате, доезжал до читателя как есть.
Довод проверяющего доходит целой фразой
Обоснование замечания обрывалось на середине, и замечание нельзя было понять.
Составы перечислений-тёзок уточняются запросом, а не догадкой по имени
Одноимённые перечисления разных объектов считались одинаковыми по составу.
Обновление записи справочника не стирает то, чего не касалось
Непереданное поле обнулялось: запись теряла знание, которое в неё уже было внесено.
При обновлении: поставка этой версии требует лицензию. Без неё окно и история открыты, а запуск задачи отклоняется. Строку лицензии из письма вставьте в окне: Настройки → Лицензия, либо положите файл лицензии в папку лицензий рядом с сессиями. Кроме файла образа положите рядом с установщиком свежую папку со справочником знаний из поставки и запустите установку — справочник перезаливается начисто. Загруженные вами документы, учётные записи и выданные токены не затрагиваются.
Новое
Лицензия вводится строкой или файлом
В настройках появилась вкладка «Лицензия»: строку из письма вставляют в поле, файл загружают кнопкой или просто кладут в папку лицензий — он подхватывается без перезапуска. Несколько лицензий складываются: докупленные места прибавляются к действующим. В сводке — лицензиат, состояние, ближайший срок и число активных пользователей за 30 дней против мест в лицензии; превышение показывается, но работу не останавливает.
Полоса о сроке лицензии над лентой
За 14 дней до истечения окно предупреждает о сроке; после истечения ещё 14 дней задачи запускаются с предупреждением, затем запуск отклоняется с подсказкой, где ввести новую строку. Отказ по лицензии — отдельный ответ, не «нет прав» и не сбой.
Отказ графа Analyzer по лицензии не считается его падением
Если граф Analyzer отвечает, что обращение ограничено лицензией его поставки, помощник продолжает без этого инструмента и говорит об этом, а не пересобирает заземление как при недоступном графе.
Сигнатура обработчика события сверяется со справочником платформы
Помощник получил прямой доступ к справочнику событий: какие события бывают у вида объекта, в каком модуле живут и сколько параметров обязан принять обработчик. Раньше состав параметров восстанавливался по образцу соседнего кода, и обработчик подписки легко получал сигнатуру перехвата или наоборот. Заодно проверяется адрес вставки: событие модуля объекта нельзя разместить в модуле менеджера, и теперь это сказано до того, как код уедет в результат.
Отказ записи без сообщения пользователю — на переделку
Обработчик, устанавливающий Отказ и не выводящий ни одного сообщения, отправляется на переделку с образцом сообщения с привязкой к полю.
Реквизит договора стороны расчётов под договор другой роли — на переделку
Совпадение типа не означает совпадения роли: под договор лизинга, аренды или залога нужен свой реквизит, а не существующий «Договор контрагента».
«Типовой» о заимствованном объекте — предупреждение
Если граф отдал, что объект заимствован расширением, а текст называет его типовым, выдаётся предупреждение: слой уже открыт, цена доработки другая.
Свойство присвоено дважды без чтения между — предупреждение
Второе присваивание затирает первое, в том числе сохранённую типовую ветку.
Аргумент вызова против имени параметра
Если параметр метода по имени соответствует реквизиту объекта, а передан другой реквизит, выдаётся предупреждение с подсказкой.
Сценарий проверки против объявленного изменения поведения
Сценарий, требующий прежнего поведения при объявлении «применяется всегда», отправляется на переделку: такой тест упал бы на верном коде.
Здесь названы шесть проверок из тридцати, вошедших в версию; полный перечень — в журнале изменений внутри поставки.
Исправлено
Витрина справочника знаний закрыта входом целиком
Страница витрины требовала входа, а обращения к инструментам справочника отвечали без него: охрана путей закрывала саму страницу, но не то, что лежит под ней. Теперь вход требуется ко всему разделу. Сведений о конфигурации и данных базы витрина не отдаёт — она обращается только к справочнику знаний по 1С, — но обращения к ней больше не проходят мимо разграничения доступа.