Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы, интерфейс 8.5. Може...
Pilot 1C превращает задачу, поставленную обычными словами, в техническое задание, код на встроенном языке и сценарии проверки. Прежде чем что-то предложить, он сверяется с устройством вашей конфигурации через граф Analyzer 1C: существует ли объект, из чего он состоит, кто его вызывает, какие роли дают права. Чего найти не удалось – спрашивает, а не выдумывает. Готовый код проходит более полутора сотен проверок по справочнику языка и стандартам разработки, который приезжает вместе с продуктом. Модель – ваша: любой сервер, совместимый с программным интерфейсом OpenAI, в том числе локальный. Правки в конфигурацию Pilot не вносит – их применяет разработчик.
Арт.: 2787345
18 300 руб.
73 200 руб.
579 500 руб.
122 000 руб.
6 000 руб.

Поставьте задачу Pilot прямо из MCP-клиента. Например, попросите подготовить ТЗ на отчёт о продажах, укажите период в ответ на уточнение и следите за ходом работы из того же диалога. Задачу можно сформулировать своими словами или выбрать из личного списка Jira, GitLab или Redmine.
Команда pilot_solve запускает задачу, pilot_my_tasks и pilot_take_task позволяют выбрать её из трекера. Через pilot_watch и pilot_status клиент получает изменения и текущее состояние, через pilot_reply отвечает на уточнения. Доступный этап можно продолжить командой pilot_continue, а задачу отменить через pilot_cancel. Для выбора архитектуры Pilot возвращает ссылку на своё окно. Когда ТЗ готово, его текст возвращается в result.content.
Администратор включает агентные команды для доверенного клиента. Для подключения выберите Streamable HTTP, укажите адрес Pilot с путём /mcp и личный токен из раздела «Мои токены». Доступ зависит от прав пользователя и лицензии поставки. Через тот же вход можно искать методы встроенного языка, стандарты и сведения о типовых решениях.
Pilot 1C превращает задачу, поставленную обычными словами, в техническое задание, код на встроенном языке и сценарии проверки. Работает он не по догадкам: прежде чем что-то предложить, сверяется с устройством вашей конфигурации — какие объекты в ней есть, из чего они состоят, кто их вызывает, какие роли на них выданы.
Ассистенты общего назначения угадывают по тексту модулей, и на типовой конфигурации с расширениями это не работает: объекты с почти одинаковыми именами, заимствования, перехваты, свои реквизиты у каждого клиента. Pilot берёт факты из графа Analyzer 1C — это отдельный продукт линейки 1C Intelligence Suite, он ставится рядом и из базы знаний, содержащей более 200 тысяч фактов по всем видам учета и стандартам языка 1С, которая входит в поставку и может быть дополнена вашими стандартами и регламентами прямо в настройках продукта. Чего найти не удалось — спрашивает у вас, а не выдумывает.
Pilot предназначен для разработчиков, аналитиков 1С и руководителей команд. Модель выбирает ваша организация. В окне Pilot внутри 1С:EDT можно разрешить запись в открытый проект через Effector 1C. Доступные действия зависят от настроек установки и прав пользователя.
Задача по шагам: исследование → требования → архитектура → техническое задание → результат → тесты; каждый шаг — отдельная вкладка, к которой можно вернуться
Заземление на вашу систему: названия из задачи разрешаются по графу конфигурации; пункты ТЗ привязаны к конкретным объектам, а не написаны общими словами
Проверка написанного: готовый код проходит более полутора сотен проверок — от существования методов в вашей версии платформы до слоя правки и работы с движениями
Модель — ваша: любой сервер, совместимый с программным интерфейсом OpenAI, в том числе локальный; модель в поставку не входит и работает на вашей стороне
Правки в базу не вносит: отдаёт код и карту вставки, применяет разработчик — продукт не может ничего сломать
Справочник знаний по 1С в поставке: объектная модель платформы, язык запросов и стандарты разработки — помощник сверяется с ними до того, как предложит код, и делает это без интернета
Цифры сняты с задачи на демонстрационной базе 1С:ERP Управление холдингом 3.2.8.11 с расширением «Управление лизингом»: план-факт оплат по договору лизинга — плановые из графика расширения, фактические по типовому учёту.
150+
синтаксис, методы вашей версии платформы, сигнатуры событий, слой правки, движения, стандарты
15,5 мин
от задачи словами до кода, ТЗ и сценариев проверки на демонстрационной базе
932 против 0
помощник выбрал единственное заполненное и назвал причину вслух
6
исследование, требования, архитектура, ТЗ, результат, тесты — каждый отдельной вкладкой
5
авто, опрос, выработка решения, анализ, код-ревью
3
граф Analyzer 1C, справочник языка из поставки, срез Insight 1C
Главное отличие Pilot от разговора с языковой моделью — он не угадывает устройство конфигурации, а узнаёт его. Перед тем как планировать, помощник достаёт из задачи названия объектов, ищет их в вашей конфигурации, добирает состав реквизитов и табличных частей, вызывающих, роли и радиус влияния правки — и кладёт добытое в работу. Неразрешённое превращается в вопрос разработчику: ответ «такого объекта нет» ценнее правдоподобного вымысла.
Устройство конкретной конфигурации: объекты, связи, вызовы, роли, расширения. Ответ на вопрос «что в системе есть». Помощник ходит в граф от вашего имени — по личному токену, и обращения видны в журнале Analyzer.
Входит в поставку и не требует интернета: объектная модель платформы (типы, методы, свойства, с какой версии доступны), язык запросов, стандарты разработки, разбор типовых решений. Ответ на вопрос «как правильно писать».
Что в базе реально используется: какие объекты заполнены данными, а какие только описаны в конфигурации. Подключается отдельно и меняет решения: документ, который перестали создавать два года назад, и документ, который проводят ежедневно, требуют разной осторожности.
Отраслевой регламент, внутренний стандарт, описание собственного решения — в формате PDF, TXT или Markdown. Документ разбирается фоном на факты, и помощник опирается на них наравне со справочником из поставки. Набор включается и выключается переключателем.
Pilot не отвечает одним куском текста. Он ведёт задачу по шагам, и каждый шаг оседает отдельной вкладкой в средней колонке окна. К любой вкладке можно вернуться, а с полосы «Продолжить с фазы» — переиграть работу с любого места, сохранив сделанное раньше.

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

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

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

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

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

Сценарии проверки на русском языке Gherkin для Vanessa Automation: что должно происходить при верном поведении и как это увидеть.
Авто — помощник сам понимает по формулировке. Опрос — заканчивается постановкой задачи, а не кодом. Выработка решения — полный цикл до кода и тестов. Анализ — заземлённая справка без кода. Код-ревью — разбор уже написанного кода.
Интерактивно помощник останавливается и задаёт вопросы, когда ему не хватает данных. Автономно — вопросов не задаёт, недостающее фиксирует допущением и идёт дальше: удобно, когда нужен быстрый черновик.
Синтаксис, существование методов и свойств в вашей версии платформы, сигнатуры обработчиков событий по справочнику, контекст исполнения, слой правки, работа с движениями и запросами, стандарты разработки. Замечания ссылаются на стандарт, а не на мнение.
Каждая задача сохраняется: формулировка, состояние, модель, расход токенов и обращений, кто запускал. К задаче можно вернуться, прерванную — продолжить, неудачную — переиграть с нужного шага, дописав уточнение.
Панель справа показывает рассуждения модели и вызовы инструментов: что спрашивали у графа и что вернулось. Не «модель так решила», а «запросила состав документа и увидела там такой реквизит».
Для сервера команды: четыре роли — просмотр, разработка, ведущий, администратор; локальные учётные записи, вход через LDAP или Active Directory и через корпоративного поставщика по OpenID Connect, журнал действий, личные токены для обращений из сценариев.
Любая вкладка скачивается в форматах Markdown и Word: ТЗ уходит заказчику, код — в конфигуратор, сценарии — в Vanessa Automation.
Сервер Pilot, база данных и справочник знаний работают в контуре клиента; наружу ходит только запрос к модели, и если модель локальная — не ходит ничего.
Что получается, когда модель угадывает по тексту — и когда она сверяется с вашей конфигурацией
Правдоподобные, но из «типовой» конфигурации; реквизит клиента и заимствованный объект расширения не видны
Берётся первое попавшееся хранилище — в нём может не быть ни одной записи
Метод из свежей версии в модуле под старую платформу — не компилируется
Читать и перепроверять всё подряд; где догадка, а где факт — неизвестно
Задача и фрагменты конфигурации уходят к внешнему сервису
Разрешаются по графу вашей конфигурации: состав, вызывающие, роли, слой — расширение или типовой объект
Insight отвечает, где есть данные; помощник отбрасывает пустые и называет причину
Существование и версия метода проверяются по справочнику языка до того, как код уедет в результат
Раздел «Проверено / Предположено» отделяет подтверждённое фактами от допущений
Сервер в вашем контуре, модель ваша — локальная или облачная по вашему выбору
Все связи настраиваются в окне, кнопка «Настройки» в шапке: общие значения задаёт установка в файле настроек, личные — каждый пользователь на своих вкладках. Ниже — что писать в каждое поле.
Три поля. Модель — точное имя, как его ждёт сервер: например qwen3.6:27b. BASE_URL — адрес сервера, строка, оканчивающаяся на /v1; подходит любой сервер, совместимый с программным интерфейсом OpenAI. Ключ — если сервер его требует; для локальной модели обычно пусто.
Как выглядит адрес:
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: 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С:Предприятие и не отлаживает; проверить поведение на живых данных — по-прежнему работа человека.
После установки перезапустите сервер. Агентные команды MCP по умолчанию выключены. Доверенные подключения настраивает администратор.
Через MCP можно поставить задачу на подготовку ТЗ, получить личный список задач, следить за ходом работы, отвечать на уточнения и получить готовый документ.
В истории сессии можно подготовить и скачать сценарий Vanessa Automation в формате .feature. Предпросмотр показывает, какие шаги найдены в библиотеке Vanessa и какие требуют проверки.
В аналитической справке Pilot указывает происхождение оценок Insight и перечисляет данные, которых не хватает для вывода. Рекомендации по доработке добавляются по запросу.
При обновлении: перезапустите сервер после установки и войдите в Pilot заново. Укажите используемую модель в PILOT_LLM_MODEL либо в настройках подключения окна: модель по умолчанию в поставке больше не задана. Для разбора документов в базу знаний модель должна быть задана на сервере.
Улучшено масштабирование при многопользовательской работе
Возможности применения изменений
Приветствие уточняет: применение подготовленных изменений зависит от доступных инструментов и прав. Подключение к EDT само по себе не означает возможности записи.
Вход Bearer для подключений MCP
При создании подключения через API можно выбрать auth_kind=bearer: Pilot передаёт токен в заголовке Authorization: Bearer.
Шаги процессов при повторном разборе документа
Для шагов и процессов с учтённым происхождением повторный полный разбор снимает те, которые исчезли из документа. Шаги выключенного или удалённого источника не остаются видимыми через другой документ. Шаги, подтверждённые другими источниками, и прежние данные без установленного источника сохраняются.
Проверка размещения кода
Тип модуля определяется по общим правилам для проверок. Явное место вставки имеет приоритет перед заголовком; одинаковые заголовки модуля дают одинаковое покрытие проверки без повторного сообщения об одной ошибке.
Даты во входных данных обработок
Строки дат из JSON сохраняют исходное значение при чтении в PowerShell и создании XML.
Пометки языка у блока кода
Блок после текста строки распознаётся по тем же пометкам языка 1С, что и самостоятельный блок; проверки контекста больше не пропускают такие фрагменты.
Переносы строк в создаваемых объектах
Генераторы форм, ролей, подсистем и табличных макетов сохраняют единый формат XML. Переносы внутри текстового содержимого макета остаются частью исходного значения.
Полученные сведения об объекте
Повторная подготовка проверки использует уже полученные достаточные сведения и не запрашивает их заново.
Проверка типов внутри метода
При проверке вызовов платформы локальные значения берутся из своего метода. Значение из соседней процедуры больше не подменяет тип получателя вызова.
Выбор информационной базы
Известная информационная база с русским именем распознаётся без лишнего запроса, если её доступность уже получена для текущего пользователя.
Входные данные обработок
В PowerShell корректно принимаются объекты JSON, пустые и одноэлементные массивы. Исправление применяется ко всем обработкам с общим разбором входа.
Расширение для вставки кода
Явный адрес вставки в результате сверяется с выбранным расширением, в том числе в списке расширений; при несовпадении проверка сообщает о расхождении. Упоминание исходного модуля не считается адресом вставки.
Страницы GitLab Wiki
Новые привязки поддерживают вложенные страницы и каноническое Unicode-представление ключей; ссылка декодируется один раз и проверяется на соответствие запрошенной странице.
Пределы поиска по объектам
Однозначный заголовок раздела помогает сопоставить утверждение с полученной границей поиска. Самостоятельный заголовок после пустого пункта списка начинает новый раздел.
Проверка записи движений
Проверка сохраняет исполняемый код после многострочной строки и учитывает явное включение записи движений.
Модель языка в поставке не задана — её выбирает заказчик
В .env.example, docker-compose и руководстве по установке больше нет модели по умолчанию: укажите свою модель в PILOT_LLM_MODEL. Сервер запускается и без неё — окно агента может передать модель в настройках подключения; проверка состояния сервера в этом случае предупреждает, что модель не задана, а запуск задачи без модели получает понятный отказ с подсказкой. Разбор документов в базу знаний работает только на модели сервера.
После обновления — один повторный вход
При первом запуске новой версии сервер сбрасывает прежние сессии входа: каждый пользователь один раз входит заново. Токены доступа агента (PAT) не затрагиваются.
Доверенные прокси для адреса сервера
Новая необязательная настройка PILOT_TRUSTED_PROXIES — список адресов и сетей (IP/CIDR) обратных прокси. Если она задана, заголовок X-Forwarded-Host принимается только от этих адресов; если не задана, поведение прежнее. Слишком широкая сеть в списке (например, 0.0.0.0/0) принимается, но сервер предупреждает о ней в журнале при запуске. Запись с ошибкой пропускается с предупреждением в журнале, остальные записи списка действуют; если годных записей нет, X-Forwarded-Host не принимается ни от кого.
Выход и смена пароля прекращают доступ сразу
После «Выйти», смены пароля, сброса пароля администратором или отзыва токена прежний доступ перестаёт действовать на следующем же запросе — при любом виде входа: по паролю, через LDAP, через SSO, по токену. Раньше уже выданный доступ после выхода или смены пароля оставался годным до суток.
Вход по паролю отклоняет запросы с чужих сайтов
Вход по паролю, как и вход по токену, принимает только тело JSON (Content-Type: application/json) и отклоняет запрос, пришедший с чужого сайта; попытка записывается в журнал аудита. Окно Pilot уже входит так. Собственные сценарии и интеграции, которые входят HTML-формой или с другого адреса, нужно перевести на JSON-запрос.
«Выйти» закрывает только свою сессию
Выход завершает сессию входа, только если браузер прислал её полностью; неполная или подменённая cookie сессию не завершает. При выходе гасятся обе cookie входа.
Постоянное имя сервера в статусе журнала изменений
В docker-compose поставки у сервера задано постоянное имя узла pilot-agent-server: без PILOT_INSTANCE статус держателя журнала изменений показывает его, а не идентификатор контейнера, который меняется при каждом пересоздании. Если несколько серверов работают с одной базой доступа, задайте каждому своё имя в PILOT_INSTANCE, иначе в статусе их не различить.
Состав подсистем конфигурации
Для справки о подсистеме Pilot получает из Analyzer её объекты, дочерние подсистемы и родительскую подсистему. Неполный состав явно отмечается.
Доступность сведений Insight
Ошибка получения списка баз отличается от пустого списка. Сообщение объясняет причину отказа и учитывает, что видны только карточки, доступные текущей учётной записи.
«Найди, как это сделано в конфигурации» — справка с готовым методом
Просьбы найти и показать, как задача уже решена в конфигурации («найди функцию …», «покажи код, как …», «как в ERP получить …?», «где в типовой реализовано …», «какой модуль отвечает за …», «есть ли готовая функция»), сразу идут в справку, а не в доработку. Справка показывает найденный метод: модуль и метод, сигнатуру, ключевой фрагмент тела и пример вызова под задачу; метод ищется по графу конфигурации, а не по памяти модели. Не нашёлся — справка так и говорит и предлагает перейти к доработке. Блоки кода 1С в справке больше не вырезаются. Поручение с тем же оборотом («сделай как в типовой», «найди код и используй его в новой обработке») по-прежнему ведёт в доработку.
Вопрос о ветке работы — с явным выбором
Когда вид задачи неясен, Pilot предлагает выбор: «доработка» — написать новый код, или «справка» — найти готовое и показать код. Ответ «код» больше не уводит в доработку: на неясный ответ Pilot один раз переспрашивает с вариантами, а если ответ снова неясен, сообщает, по какой ветке продолжает.
Окно Pilot в EDT — в теме EDT
Окно Pilot внутри EDT открывается в теме самой EDT: светлая EDT — светлое окно, тёмная — тёмное. При смене темы EDT окно перекрашивается без перезагрузки. Переключатель темы в окне EDT действует до следующей смены темы EDT или до переоткрытия окна и не меняет тему, выбранную в браузере и в учётной записи. Вне EDT всё по-прежнему.
Окно Pilot в EDT — вход по токену из настроек Effector
Если в настройках Effector задан токен Pilot, окно Pilot внутри EDT входит по нему само, без формы входа; права — как у владельца токена. Токен пустой или отклонён — открывается обычная форма входа с причиной отказа. Смена токена в настройках Effector перевыполняет вход без перезагрузки окна и без потери беседы. После обновления окна сессия по токену остаётся сессией по токену; ручной вход и вход через SSO этот признак снимают, и неверный токен из EDT такую сессию не завершает. Отзыв токена сразу завершает открытые по нему сессии окна: следующий запрос получает отказ, начатая запись доходит до конца, новая не начинается. Если сервер не ответил на вход за срок, но вход состоялся, окно показывает вошедшего пользователя вместо «повторите вход» (в том числе карточку обязательной смены пароля), и токен из EDT такой ручной вход не перебивает. Токен не попадает в адрес, журналы и хранилище браузера.
Вопросы после блока кода
Явно оформленный список вопросов после незавершённого блока кода 1С остаётся видимым на ранних этапах работы.
Продолжение сессии сверяет конфигурацию, открытую в EDT
Прерванная сессия продолжается, только если в EDT открыта та же конфигурация, на которой сессия начиналась; раньше продолжение шло по сохранённой системе Analyzer, даже если конфигурация в EDT сменилась. Если конфигурация сменилась, Pilot спрашивает: начать заново или прервать, в том числе при продолжении этапа дела; при автономном запуске без окна продолжение останавливается. Сохранённое состояние сессии до ответа не меняется. Если в EDT открыто несколько конфигураций, «начать заново» просит оставить одну. EDT не ответил — сессия продолжается, а допущение записывается в журнал. Расширения, открытые в EDT, но не загруженные в Analyzer, дают предупреждение. Повторная загрузка той же системы в Analyzer сменой конфигурации не считается.
Заземление при неоднозначной системе и нескольких открытых конфигурациях
Если конфигурации из EDT соответствует несколько систем Analyzer или в EDT открыто несколько конфигураций, Pilot не берёт первую попавшуюся: оставляет назначенные пользователю системы, а если выбор не определился, спрашивает. Сделанный выбор сохраняется и учитывается при сверке на продолжении.
Выбор системы при «нет доступа» и «в загрузке»
Pilot называет настоящую причину вместо «конфигурации нет», не берёт другую систему и не сообщает роли о чужих системах. Если в EDT открыта конфигурация без доступа или в загрузке, а в постановке названа одна назначенная живая система, прогон заземляется на неё вместо останова. Иначе автономный прогон останавливается, а с человеком работа идёт без графа, о чём сказано прямо. Модели и заземлению ответ о конфигурации показывается одинаково, с учётом назначенных баз; сбой проверки доступа на продолжении больше не роняет прогон.
Запись после продолжения при поздней привязке окна
Если окно привязалось после первого запроса к мосту, запись закрывалась отказом «мост этого окна не опознан». Теперь сервер сам опознаёт мост после каждой привязки окна; ответ другой вкладки этому не мешает, параллельные чтения ждут опознания. Прерывание во время сверки конфигурации при продолжении завершает прогон как отменённый.
Продолжение при закрытой закреплённой вкладке
Закрытая закреплённая вкладка при живой отстранённой больше не отключает EDT: чтения идут через вкладку, запись закрыта до доверенного ответа закреплённого окна.
Сверка конфигурации EDT при продолжении: окно, открывшееся позже 3 с
Окно, подписавшееся на события после срока, теперь успевает ответить, и живое окно не считается недоступным. Если окна нет вовсе, ожидание увеличивается с 3 до 6 с.
Отмена при начале заново после смены конфигурации
Отмена прогона во время заземления больше не затирает прежний чекпойнт сессии, и сообщение о прогоне без заземления при этом не выводится.
Запись агентом: честные причины в окне
Роль без прав отсылается к администратору вместо команды включить запись; устаревшая проверка блокировки журнала называется своей подписью, без внутреннего кода.
Лента прогона не становится чужой при смене входа
Окно сверяет логин, под которым ушёл запрос, при возврате к прогону и запуске. Сбой проверки входа больше не выглядит как выключенный RBAC, зависший запрос возврата снимается по сроку, а повтор проверки всегда заканчивается лентой или понятными словами. Если проверка кончилась чужим или несверенным логином, окно говорит об этом, а не оставляет «Повторяю проверку». Если сервер долго отвечает ошибкой на запросы ленты, окно один раз сообщает об этом и продолжает проверку. Лента большого прогона при возврате больше не срывается на 35-й секунде чтения: 35 с действуют только до ответа сервера, на чтение своя граница 120 с. Дело, открытое при смене учётной записи, больше не считает нового пользователя ведущим ленту.
Окно Pilot после закрытия сессии входа
Если сессия входа закрыта (выход в другой вкладке, сброс пароля, отзыв токена), окно снимает признак занятости, пишет «Сессия входа закрыта — войдите заново» и после входа возвращается к тому же прогону; в окне EDT оно сначала пробует войти по токену из настроек Effector. После смены собственного пароля лента прогона продолжается сама. Вход другой учётной записью очищает экран, как «Новый запрос», и не предлагает продолжить чужую сессию. Раньше окно в этом случае без паузы повторяло запросы, а форма входа вставала поверх занятого окна.
Отдел «Бухгалтерия» больше не принимается за программу
Постановки вроде «бухгалтерия жалуется на отчёт» или «Бухгалтерия 8-го числа закрывает месяц» не считаются указанием на программу «Бухгалтерия предприятия», и Pilot не отвечает, что эта программа недоступна. Программа по-прежнему распознаётся по явному названию: «в Бухгалтерии предприятия», «1С:Бухгалтерия», «БП 3.0», «Бухгалтерия 8.3». Фраза после двоеточия с признаком ошибки программы («Бухгалтерия: неверно считает…») по-прежнему указывает на программу.
Вопрос о выборе расширения понимает ответ словами
Ответ словами вместо номера варианта принимается; на непонятный ответ Pilot переспрашивает с вариантами, а не повторяет «Не понял» до последней попытки. Ответ привязан к своему вопросу: запоздавший повтор ответа на прежний вопрос сервер отклоняет, и окно показывает причину. Ответ словами не путает «свойства» со «своё», а нестандартные цифры (², ]12;) — с номером варианта.
Совет отключить безопасный режим снимается точнее
Pilot убирает из ответа совет отключить безопасный режим расширения, но соседние независимые указания той же фразы («…и включите журналирование») остаются. Таблицы, в том числе без внешних «|», и заголовки с таким советом обрабатываются целиком, не разваливая разметку; указание оставить безопасный режим включённым не снимается.
Клавиши Esc и Tab в окне Pilot внутри EDT
Esc закрывает только верхний слой (меню учётной записи, карточку входа, настройки), а не панель «Мои сессии» или «Дела в работе» под ним. Tab на карточке входа и смены пароля ходит только по её полям, в том числе поверх окна подтверждения удаления подключения.
Внутренняя ошибка сервера — понятный ответ вместо обрыва
Сбой при обработке запроса возвращает ошибку «внутренняя ошибка», а не обрывает соединение; подробности остаются в журнале сервера. Разбор документа при незаданной модели сервера завершается подсказкой задать её в PILOT_LLM_MODEL.
Запросы к Analyzer укладываются в срок операции
Медленный ответ Analyzer больше не задерживает фазу дольше отведённого ей срока. Вызов Analyzer, у которого вышел общий срок, больше не держит поток и соединение до конца ответа медленного сервера — соединение обрывается сразу по сроку.
Справка: пример вызова метода конфигурации сверяется с прочитанным кодом
Пример вызова сверяется с прочитанным кодом по паре «модуль с видом — метод». Выдуманный метод полностью прочитанного модуля снимается. Комментарии, строки и текст самого агента подтверждением не считаются. Сверяются и блоки кода без указания языка; отсутствующий метод помечается прямо в тексте ответа. Сверяются и многострочные вызовы с вложенными скобками и переносом после точки, и блоки кода внутри пунктов списка; незакрытый блок кода в пункте не захватывает следующие пункты. Сверяются и вызовы в блоке кода внутри цитаты «>» любой глубины, в том числе с переносом после точки. Вывод программы под заголовком «Вывод…» или «Результат выполнения…» за пример вызова не принимается и не снимается. Имя в строке-комментарии «//» перед скобкой на следующей строке вызовом не считается.
Справка: выдуманный вызов в блоке кода с отступом и в пункте списка проверяется
Блок кода, открытый «~~~» с отступом, считается блоком по тем же правилам, что и в остальной разметке ответа. Блок внутри пункта списка проверяется, а строка с отступом, похожая на пункт, не прячет настоящий блок кода 1С. Признак кода 1С на длинных цепочках вызовов определяется без замедления. Подпись «- **Вход:**», «- **Результат:**» внутри примера больше не обрывает срезку примера вывода. Сверка вызовов и срезка примеров вывода находят блоки кода одинаково, в том числе в пунктах списка и в ответах с переводами строк Windows. Так же одинаково проверка и скрытие кода в ответе распознают незакрытые блоки и блоки, оформленные через «~~~». Блок вывода после пустой строки ниже фрагмента кода в пункте списка больше не захватывает следующий заголовок; в текстах с переводами строк Windows замена неподтверждённого фрагмента сохраняет перевод строки.
Проверки кода в ответе видят одни и те же блоки кода
Проверка кода 1С, проверка точки перехвата, контекст исполнения метода, выбор места вставки и разбор постановки находят блоки кода по одним правилам, в том числе блоки «~~~», блоки без указания языка и блоки в пунктах списка. Блок, открытый «```bsl» в конце строки текста, распознаётся как блок кода. Блок кода, выпавший из пункта списка, заканчивается на соседнем пункте и не захватывает его. Аннотация перехвата («&Перед», «&После», «&Вместо») сверяется с целью своего пункта списка, а не соседнего. Проверка вида модуля и проверка «метод уже есть в конфигурации» видят те же блоки кода; непарная кавычка в тексте перед блоком больше не скрывает блок от проверки, а блок изменений (diff) не даёт ложной находки «метод без директивы».
Проверки кода: блоки в цитатах и блоки, выпавшие из пункта списка
Блоки кода 1С внутри цитаты «>», в том числе вложенной и в пункте списка, проверяются так же, как обычные. Незакрытый блок без указания языка, выпавший из пункта списка, проверяется до конца пункта. В таком блоке пояснение после пустой строки не принимается за код, а многострочный код после пустой строки проверяется целиком. Блок кода после блока JSON в новом пункте относится к модулю этого пункта, а не предыдущего; строка о месте вставки без названия модуля вид модуля не сбрасывает. Две аннотации перехвата в одной строке («&Вместо(…) &После(…)») проверяются обе.
Вкладки артефактов — в порядке фаз
Вкладки «Факты», «Стандарты», «Исследование», «Требования», «Архитектура», «ТЗ», «Результат» стоят в порядке фаз работы и после возврата к сессии, и при любом порядке прихода артефактов; панель выгрузки показывает тот же порядок.
Проверка ТЗ: шаг разведки не требуется в коде
Шаг ТЗ «вызвать инструмент агента» (например, получить список методов модуля), в том числе в MCP-форме и в любом регистре, и его аргументы не считаются вызовами, обязательными в итоговом коде. Методы 1С вне перечня инструментов агента требуются по-прежнему.
Отказ записи называет, кто держит журнал изменений
Если запись агентом закрыта, потому что журнал изменений базы занят другим экземпляром сервера, отказ и проверка состояния называют держателя блокировки.
Справка: тип и значение по умолчанию параметра без обрывков пояснения
Если за пояснением в скобках идёт продолжение фразы, оно целиком остаётся в описании параметра и не попадает ни в список типов, ни в значение по умолчанию. Перечни вида «Массив (из Строка), Структура» разбираются по-прежнему. Значение по умолчанию больше не подменяется ссылкой из пояснения. В таблицах запросов строка типа заканчивается на конце абзаца.
Справка: пример вызова найденного метода остаётся в ответе
Блок «Пример вызова», «Пример использования метода», в том числе пункт списка «- Пример вызова:», сохраняется в ответе справки. Срезаются только примеры вывода и прогона программы. Методы из табличной выдачи списка методов модуля сверяются так же, как из обычной. Модуль, который лишь упомянут в выдаче поиска или «кто вызывает», не делает свои методы сверяемыми: настоящий вызов его метода из ответа не снимается. Заголовки примеров вызова в свободной форме и «Пример запуска обработки» с кодом 1С не срезаются; пример вывода программы, у которого слово «вывод» выделено как код, кавычками или выделением части слова либо стоит со сноской-цифрой, по-прежнему срезается и не выдаётся за пример вызова.
Справка: пояснения типов параметра не теряются
Пояснение типа сохраняется, если ссылка стоит в имени шаблона ссылки или сами типы заданы ссылками. Пояснения нескольких типов в описании параметра разделены запятой. Перед закрывающей скобкой у ссылки нет лишнего пробела. Запятая или скобка внутри «ёлочек» не разрывает пояснение, вложенные шаблоны ссылок раскрываются полностью, у многоточия и «ёлочек» рядом со ссылкой нет лишних пробелов. Пробел перед скобкой или знаком препинания из текста соседней ссылки тоже не появляется, а перед словом вроде «.NET» сохраняется, как в исходнике; невидимая ссылка-якорь с «>» в атрибуте не оставляет в тексте ни пробела, ни обрывка тега, а у обычной ссылки с «>» в атрибуте текст берётся целиком и без обрывка тега. Страницы справки с длинными сериями «>» без тегов разбираются без замедления. При обновлении часть единиц справки разбирается заново.
Справка: тип и значение по умолчанию параметра в таблицах запросов
Тип и значение по умолчанию берутся только из строк описания на границе абзаца и вне строковых литералов. Слова «Тип:» или «Значение по умолчанию:» внутри пояснения больше не обрывают его и не подменяют факт. «Пример:» и «Например:» начинают пояснение, а не продолжают тип. Точка в конце пояснения не удваивается.
«Вернуться» у сессии, прерванной до начала работы
Вместо «чекпойнт сессии не найден» окно объясняет: сессия прервана до начала работы, продолжать нечего — запустите задачу заново.
Вид задачи по ответу постановщика
Ответы «справка, я не готов писать код» и «нужен новый пример» ведут в справку, «нужен новый код вместо существующего» — в доработку. Просьба показать, что исправил собеседник, отличается от просьбы найти код. «Новая формулировка», «новый формат», «другая кодировка» не означают доработку.
Тексты ответов
Ссылка на снимок базы — «по снимку базы клиента»; после цитаты пользователя, кончающейся точкой, не ставится вторая точка, а «?» или «!» после закрывающей кавычки сохраняется.
Подсказка состава типа при переделке кода
Со второй попытки переделки модель получала вместо состава типа служебные ключи ответа базы языка. Теперь в запрос идут настоящие имена членов до трёх типов; если точный тип не определён, подсказка не выводится.
Стражи кода и разметка блоков
Стражи судят ответ и по разметке с хвостовыми парами, и по виду модуля по новому и прежнему правилу. Находки объединяются без потерь, лишних находок на чужой строке больше нет, находки основной разметки идут первыми и не вытесняются из усечённых списков. Серия «```» внутри открытого блока больше не обрывает его: комментарий с такой серией не съедает текст за блоком. Блок с приклеенной закрывающей («А = 1;```») и блоки ниже него не принимаются за прозу.
Страж имён переменных: только функции языка
Свойства и события глобального контекста больше не считаются функциями языка: снята ложная находка на реквизите формы с таким именем.
Страж вставок: проза за ранним выходом
Проза после раннего выхода в голой ограде больше не считается кодом и не даёт ложной находки: ключевое слово в начале фразы, разметка Markdown, фраза со знаком кода. Строки продолжения литерала, текста запроса, аргументов и объявления с опечаткой судятся как раньше.
Стражи цепочки свойства и запроса
В любом регистре вторая запись на том же получателе больше не теряется; вариант типа без известного возврата обрывает цепочку; сообщения, начинающиеся со слова «выбрать», не считаются запросом ни для источника-параметра, ни для стандарта-запрета.
Страж двух редакций на вложенных вставках
Артефакт с вложенными вставками на десятки тысяч строк больше не задерживает проверку: участки сравниваются без копирования текста, находки прежние. Длинные слова не расходуют лишнюю память.
MCP-расширения: срок вызова при повторном открытии SSE
Вызов, у которого вышел срок при повторном открытии потока, сообщает о сроке, а не об ошибке транспорта.
Навыки 1С: формы и макеты ниже 2.10
form-edit отказывает на свойствах, недоступных в 8.3.10, при добавлении команд и реквизитов; у mxl-compile необязательный параметр -FormatVersion, пустое значение — отказ. set больше не отказывает на showGrid, showHeaders, enableContentChange, equalItemsWidth и imageScale, сброс currentRowUse работает. currentRowUse запрещён также у групп и страниц, отказ на Switcher называет выключатель.
Навыки 1С: cf-edit и meta-compile
На формате ниже 2.10 пустой UsePurposes= отвергается и не стирает назначение конфигурации; на 2.10 и выше ввод без значений даёт отказ с перечнем допустимых. Имя свойства не зависит от регистра в обоих портах. Пакетный meta-compile проверяет Configuration.xml только для чтения до начала работы, частично записанных объектов не остаётся.
Навыки 1С: версия формата и ClassId
Версия формата берётся разбором корня XML и в form-add, template-add, help-add: одинарные кавычки и длинный комментарий перед корнем больше не мешают; нечитаемый файл даёт предупреждение. cf-validate, cfe-validate и epf-validate сравнивают ClassId без учёта регистра.
Навыки 1С: form-edit и form-compile на формате 2.4
equalItemsWidth у поля переключателя отклоняется с понятным текстом, остальные свойства (showGrid, showHeaders, enableContentChange, equalItemsWidth у флажка) разрешены. Сброс checkBoxType и radioButtonType снимает тег, а не оставляет Auto. set с null работает для всех перечислений, свойства-объекты дают понятный отказ вместо падения. Отказ сброса по null больше не утверждает, что элемент не пишет ключ: «ключ не применим или не имеет значения по умолчанию».
Навыки 1С: role-compile и interface-edit
В role-compile покрыт гейт дублей прав истории данных. interface-edit -CreateIfMissing пишет секции одинаково в обоих портах. Имя объекта в hide, show, place и order дописывается до команды открытия; у обработки, константы и перечисления команды открытия нет, поэтому будет предупреждение без подстановки. Старая запись с именем объекта переименовывается вместо второй записи рядом, команды новой секции стоят на таб глубже, порты одинаково пишут файл без форматирования. Добавлены предупреждения на регистр вида, полную форму без команды открытия и группу NavigationPanel.Important.
Стражи вставок: примеры в оградах
Примеры с парами в оградах «~~~» и «````» больше не отнимают круги сверки и не скрывают код за оградой. Проза за «```» не считается строкой языка, а пара с языком 1С и атрибутом в хвосте прозы судится как блок кода. Пары с другим языком не сдвигают чётность оград, закрывающая ограда, выпавшая из пункта, не открывает новую до конца текста.
Ограды в цитатах и разделах
Ограда в цитате, обрезанная по заголовку раздела, больше не считается закрытой. Код за заголовком шага в продолжающейся цитате снова проверяется. Директивы «# Область» и «# Если» не обрывают блок, заголовок пункта с широким маркером распознаётся как граница.
Окно не остаётся занятым и не перекрывает итог прогона
Выход из системы на последнем запросе ленты не обещает продолжения, после нового входа окно свободно. Сбои ленты после конца прогона не обещают продолжения, плохой ответ сервера повторяется с паузой, запрос решения показывается текстом сервера.
Лестница переделки: состав типа
Состав типа подаётся по типу из находки, а не по имени переменной, и только если тип подтверждён в месте обращения; не показанные типы названы пометкой.
Подключения MCP по SSE
Проверка показывает ход по шагам: поток открыт, сервер назвал адрес для команд, получены инструменты. Пропущенные шаги отмечаются явно; карточка подключения и ход проверки называют одну причину сбоя. Закрытие сессии укладывается в один срок.
Заземление: заполненность в данных объектов для тестов и в строках ответов
Сведения о заполненности реквизитов из данных, подаваемых фазе тестов, и из строковых значений ответов теперь скрываются при отключённых данных Insight или неподтверждённой базе, в том числе после возобновления прогона. Обрезанный блок не скрывает состав объекта, суть повтора пачки recall чистится по кускам, имена полей в отказе среза не скрываются.
Стражи: строчный `из`, псевдоним и правая часть присваивания
Запрос со строчным `из`, псевдонимом перед `ПОМЕСТИТЬ` и вызов в правой части присваивания больше не выпадают из проверки, многострочное присваивание не даёт ложной находки. Стражи не дают ложных находок на `Т=Т.Область(1).Текст();` и на сообщениях вида «Выбрать файл, папку из &Список как образец».
Страж: присваивание свойству-менеджеру глобального контекста
Присваивание вида `Документы = …` и такая же переменная цикла без объявления в серверном коде теперь считаются ошибкой, потому что при выполнении падают с «Поле объекта недоступно для записи». Клиентский код и модули форм не судятся.
Решение о большой правке и лента при внешнем чтении
Окно показывает владельцу решение о большой правке, даже если внешнее чтение помечено не его именем, вместо «сервер не сообщил причину». При включённом RBAC смотрящий без имени решение не получает, а имена требований не уходят другому пользователю на перемотке прогона с внешним чтением.
Граница незакрытой ограды
Заголовок раздела на колонке вложенного пункта (4+) вне цитаты теперь граница незакрытой ограды, проза не уходит в тело кода. Граница в пункте считает ширину отступа с табами, многострочная директива `#Если` с «Тогда» в следующей строке прозой не считается.
Вызовы вне контекста исполнения: дубль находки
Проверка больше не дублирует одну находку, когда разметки ответа видят разный набор блоков кода; вторая находка на другой строке не теряется.
Навыки 1С: сверка штампов версии
Сверка штампов версии в валидаторах больше не молчит на `version='…'` и длинном комментарии перед корнем.
Лента прогона: потерянный прогон
Если сервер больше не знает прогон, окно говорит об этом и не советует обновить страницу; после выхода по закрытому входу на экране не остаётся «Повторяю проверку».
Заземление: выбор системы
Названная человеком или указанная в профиле загружаемая система не подменяется другой молча. Автономный прогон останавливается только при живой альтернативе, загружаемая база беседы не скрывает систему из постановки, а из нескольких открытых в EDT конфигурация берётся только при подтверждённой загрузке.
Контекст модуля: подписка и голое имя свойства
Обработчик подписки с `&НаСервере` в блоке без названного вида судится как общий модуль (находка «ЭтотОбъект в общем модуле»); замечание о копейках рядом с находкой главного разбора не дублируется. Ложное замечание про голое имя свойства на обычном помощнике с параметром `Знач Источник` в блоке без вида снято.
Страж прозы: код без знака кода
Страж точнее отличает код без знака кода от прозы: многострочные выражения и запросы не обрезаются, заголовки и определения через тире не считаются кодом; нумерованные пункты с `//` в разметке, пункты списка с `;` и заголовки заглавными с «КАК» за код не принимаются.
Лестница переделки: блок «сверено»
Блок больше не подставляет чужой состав типа по имени получателя; тип параметра подтверждается только описанием в блоке комментариев над шапкой своего метода.
Разметка оград по CommonMark
Дымовая чистка и закрытие оград читают документ по CommonMark на общей разметке: видят ограды в пунктах и цитатах, закрывающую с CRLF, не считают оградой серию с отступом 4 и больше вне списка; строгий режим закрывает пункт и ограду по CommonMark, 5+ пробелов за маркером — не ограда.
Лента без RBAC
Окно получает весь прогон и настоящую ошибку и на чекпойнте с названным владельцем; имя читавшего в окно не уходит.
Вкладка «Запись агентом»
Время следующей попытки показывается по часам пользователя, без застывшего обратного отсчёта; роль без прав видит обращение к администратору вместо команды включить запись.
Вывод типа и проверка кода
Вывод типа видит присваивание за `Тогда`, `Иначе`, `Цикл` и в заголовке `Для`: прежний тип снимается только при несовпадении, в том числе у параметра, и ложная находка «метода нет» не выходит. Срезка кода ранних фаз больше не оставляет лишнюю строку «```», когда внутри незакрытого блока кода стоит чужая ограда; законная открывающая незакрытого блока за оградой из четырёх кавычек больше не срезается как лишняя серия.
Окно сессии без RBAC
Показывает то же, откуда пойдёт продолжение: вкладки на месте, если внешние системы читал сам владелец, иначе честный сброс к началу.
Лента и вход
При обязательной смене пароля окно говорит о входе, вход в соседней вкладке не называется потерей прогона, сверка не уводит фокус из полей формы; форма входа в окне EDT получает фокус при переходе от смены пароля и при показе после сбоя входа по токену.
Навыки 1С
`verify-snapshots` работает в каталоге с пробелом, `--runtime=значение` разбирается наравне с `--runtime значение`, неверное значение даёт отказ, LF- и CRLF-фикстуры закреплены, проверки ложного успеха идут и под Python, версия `ibcmd` определяется по сегменту пути рядом с файлом и видна для 8.5, интеграция проходит на пустом кэше. Сторож общих копий снова зелёный, проба сброса вынесена из общей утилиты, поведение навыков не изменилось. Сверка штампа заимствованной формы и версии дескриптора HTML-макета не зависит от вида кавычек и закомментированного текста, идёт и при пустом штампе корня формы; версия дескриптора с переводом строки отвергается.
Навык interface-edit
Запись команды ищется без учёта регистра в обоих портах, написание из файла важнее ввода, короткое имя с другим регистром вида не создаёт дубль, запись без значения дополняется, пара старой и полной записей, два написания одной команды и повторы в `order` дают предупреждение, `group-order` предупреждает о группе с точкой.
Описание параметров над закомментированным методом
Проверка типов больше не переносит описание над закомментированным методом на следующий метод. Это относится и к асинхронным методам, и к двум уровням комментария; пример кода с отступом внутри описания не обрывает его.
Выбор системы при загрузке конфигурации
Pilot сообщает о названной системе, которая ещё загружается. Автономный прогон в этом случае останавливается, даже если рядом названа доступная система. База беседы называется своим именем; если справка о расширениях не получена, их состав обозначается как неизвестный.
Срок попытки получить блокировку записи
Просроченная попытка получить блокировку журнала больше не показывает текущее время как следующую попытку. В условии назван момент получения ответа.
Правка управляемых форм
Навык отказывает при неподдерживаемом currentRowUse, пустом имени события и пустом on. Сообщения об ограничениях называют нужную группу свойств и имя элемента; оба порта одинаково обрабатывают список типа флажка. У таблицы можно сбросить refreshRequest.
Совпадающие находки двух разборов ответа
Находка больше не задваивается, когда номер строки совпадает с концом имени метода или с версией платформы в тексте.
Незакрытые блоки кода в ответе
Проверка кода не теряет строки за незакрытым блоком, когда следом идёт строка с оградой и языком. Строгий разбор точнее обрабатывает цитаты в пунктах, вложенные списки и подчёркнутые заголовки.
Вывод типа в ветках кода 1С
Проверка учитывает многострочные ветки, блоки Попытка и значения, заданные снаружи ветки: параметры, переменные цикла и неизвестные присваивания. Это устраняет ложные находки о чужом члене типа. Проверка прикладного объекта учитывает его получение в ветке и использование переменной цикла.
Справка и ревью без межфазных подтверждений
Аналитическая справка и код-ревью проходят фазы последовательно даже при включённой паузе после каждой фазы. Содержательные вопросы и возможность дополнить готовую справку сохраняются.
Уточнение выбранной системы
При расхождении с открытой конфигурацией Pilot различает систему из беседы и систему из постановки. О названной загружаемой системе он предупреждает до вопроса, а итог заземления сообщает после выбора.
Сохранение текста рядом с блоками кода
Срезка кода учитывает комментарии вложенного скрипта и сохраняет заголовок перед его началом. Ограда после пустой строки не оставляет отдельный маркер в ответе.
Проверка заимствованных форм
Штамп BaseForm, основной реквизит и граница собственной части формы определяются по XML. Комментарии, CDATA и типы вложенных колонок не подменяют тип основного реквизита; запасной разбор сверяет имена закрывающих тегов.
Отступы при правке формы
Добавление элементов и команд сохраняет отступы пустых контейнеров и текст после соседних узлов. Повторное добавление команды не меняет отступ предыдущей.
Заготовки форм в PowerShell
Сборщик формы правильно обрабатывает пустые и одиночные массивы в загруженной заготовке.
Фильтр элементов внешней системы
Привязка может отбирать элементы ответа по заданным полям. Проверка принадлежности задаче выполняется до фильтрации. Заготовки учитывают системные заметки GitLab, приватные заметки Redmine и удалённые элементы YouTrack.
Выбор расширения при продолжении задачи
Предпочтение целевого расширения сохраняется в контрольной точке и восстанавливается при продолжении. Состояние расширения из чужой задачи не переносится в новый прогон.
Проверка аргументов в оформленном коде
Проверка использует общую разметку блоков и сохраняет вызов, продолженный в хвосте той же ограды. Номера строк остаются привязанными к исходному ответу.
Проверка фрагментов кода
Проверка вставок сохраняет самостоятельные фрагменты после незавершённого блока кода и не исключает их по совпадению границ с соседним блоком.
Сведения о составе типа
При отказе языковой базы уже полученные сведения сохраняются. В блоке фактов отказ явно назван и не сопровождается советом повторить тот же недоступный запрос.
Проверка сохранения веток вендора
Уже выделенный код проверяется целиком: разметка в комментариях больше не обрезает тело при повторном разборе.
События управляемых форм
Python и PowerShell одинаково отклоняют некорректные списки событий до записи файлов и принимают имя события с ключом Event.
Выбор системы из беседы
Выбранная в беседе система учитывается при сверке с открытой конфигурацией даже тогда, когда в тексте задачи нет латинских букв и цифр.
Проверка заявлений о добавленном вызове
Вызов, встреченный только в комментарии или строковом литерале, больше не подтверждает заявление о его добавлении в код.
Свежесть сохранённых ответов
Для сохранённой выдачи без метаданных явно указано, что её происхождение и свежесть неизвестны.
При обновлении: запустите установку как обычно — учётные записи, документы и история прогонов не трогаются; признак темы окна добавляется в базу учётных записей сам при первом запуске. База знаний языка 1С в поставке обновлена и заливается при установке заново, как и при каждом обновлении. Архивы Effector 1C и Reflexor 1C теперь несут версию в имени, и окно отдаёт самый новый из лежащих в каталоге поставки: распаковывайте поставку в чистый каталог либо удаляйте прежние архивы effector-1c*.zip и reflexor-1c*.zip перед распаковкой — иначе при откате оставшийся архив более новой версии выдавался бы вместо пришедшего с поставкой.
Светлая тема окна
Кнопка в шапке окна переключает тёмную тему на светлую и обратно. Выбор запоминается за учётной записью и сохраняется при входе с другого браузера или компьютера; без разграничения доступа он хранится в браузере. По умолчанию окно открывается в тёмной теме.
Архивы Effector 1C и Reflexor 1C — с версией в имени
Архивы плагина Effector 1C и окна Reflexor 1C лежат в поставке под именами с номером версии, например effector-1c-1.1.8.zip. Окно «Взаимодействие с 1С» показывает фактическое имя архива и сохраняет файл под ним; адреса скачивания прежние. Если в каталоге поставки лежит несколько архивов одного продукта, отдаётся архив старшей версии; архивы с прежними именами без версии по-прежнему отдаются.
Описания в базе знаний языка 1С переработаны
Тексты описаний типов, методов, свойств и параметров в базе знаний языка изложены заново; состав сведений, на которые опирается помощник, прежний.
Документ на утверждение — в панели документов
На воротах фазы документ открывается во вкладке своей фазы с пометкой «на утверждении», а не в узкой колонке диалога: широкие таблицы видны целиком, длинные имена объектов переносятся внутри ячейки. Под документом — полоса «утвердить или вписать правки» с полем правок и кнопкой «Утвердить»; в диалоге остаётся ссылка на документ, и ответить можно по-прежнему и там. Документ на утверждении в выгрузку «Скачать все» не попадает.
Поставка стала меньше примерно на 0,7 ГБ
Векторы базы знаний языка лежат в поставке компактным двоичным файлом, а из образа убрана неиспользуемая модель эмбеддингов. Состав базы знаний прежний.
Пометки версии платформы пересчитываются только у затронутых фактов
После обновления справочника языка, книги или отдельного факта пометка «с какой версии платформы» пересчитывается только у фактов, которые упоминают изменившиеся методы и свойства или относятся к изменённой книге, а не у всей базы языка. Обновление справки платформы больше не останавливает запись фактов на время полного пересчёта; полный пересчёт выполняется только при смене самого правила пометки и при заливке базы из дампа.
Требования к серверу — в инструкции по установке
В INSTALL.txt и руководстве указано, сколько процессорных ядер, памяти и места на диске нужно серверу в зависимости от числа одновременных пользователей и сессий агента.
Сведения о правах в COPYRIGHT.txt
Файл называет правообладателя, состав базы знаний языка и сторонние компоненты поставки с их лицензиями, а для компонентов под GPL, LGPL и MPL — ссылки на исходные тексты.
Значения по умолчанию и типы параметров в базе знаний языка
У последнего параметра варианта синтаксиса в значение по умолчанию больше не попадает заголовок следующего варианта; пояснение в скобках после значения относится к описанию параметра, а не к самому значению; ссылки справки внутри значения показываются своим текстом. Страница-перечень «Функции языка запросов» больше не выдаётся помощнику как одна функция с многострочной сигнатурой.
При обновлении: запустите установку как обычно — учётные записи, документы и история прогонов не трогаются, признак обязательной смены пароля добавляется в базу учётных записей сам и у уже заведённых пользователей не выставлен; пометки версии платформы у фактов базы языка рассчитываются при первом запуске сами. После обновления откат agent-server на прежнюю версию невозможен: журнал правок хранит записи, которые прежние версии не читают; работа прежней версии одновременно с новой не поддерживается. При включённом разграничении прав запись агентом в проект EDT после обновления выключена — администратор включает её заново (включение записывается в журнал аудита), состояние и причина видны в GET /api/mutation/agent-write. Окна помощника, открытые до обновления, откройте заново: прежнее окно читает проект из EDT, но вносить изменения не может. Постраничное дочитывание длинных списков Insight требует Insight 1.1.20 или новее. Подключение MCP с постоянными заголовками помечается в карточке непригодным для помощника — уберите их: постоянные заголовки поддерживаются только у REST, токен MCP задаётся полем заголовка входа.
Версия платформы у приёмов из базы языка
Помощник видит, с какой версии платформы доступен приём, о котором говорит факт базы языка, метод или свойство объекта, стандарт разработки. Если версия известна точно, у факта стоит пометка «только с 8.5…»; если она выведена косвенно — из книги, где описан приём, или из упомянутого метода, — пометка мягкая: «вероятно, с …». Для приёмов, доступных в 8.3, пометки нет.
Вкладка «Запись агентом»
В настройках, в группе «Работа», появилась вкладка «Запись агентом»: открыта ли Pilot запись правок в проект 1C:EDT через мост Effector, какие условия не выполнены и какие проверяются при каждом прогоне. Вкладку видит любой вошедший пользователь; включает и выключает запись администратор, комментарий к смене попадает в журнал доступа. Без разграничения прав переключатель неактивен, запись задаётся переменной окружения сервера PILOT_AGENT_WRITE. Пока запись закрыта, в окне диалога стоит плашка «Запись агентом закрыта» с причиной и ссылкой «Почему →»; если состояние проверить не удалось, плашка говорит об этом и предлагает повторить.
Помощник дочитывает связанные задачи и страницы по ссылкам из задачи
Разбирая задачу трекера, помощник читает и связанные с ней задачи (Jira, YouTrack, Redmine), а у задачи Jira — страницы базы знаний, на которые она ссылается, и страницы по адресам из её описания. Каждая ссылка сверяется с разрешённой областью подключения: то, что вне области, не читается и называется числом, без подробностей. Описание связанной задачи передаётся в сокращённом виде; не поместившееся называется прямо.
Беседа и наводящие вопросы до начала работы
Если человек начинает с приветствия или формулирует задачу расплывчато, помощник не запускает анализ вслепую: поддерживает разговор или задаёт наводящие вопросы по одному, собирает постановку и показывает её на подтверждение, а затем переходит к анализу или к доработке. Если пользователю доступна одна база, помощник называет её сам; если несколько и из разговора выбор не ясен — спрашивает, какую взять. После нескольких содержательных ответов помощник предлагает перейти к работе и подсказывает короткую команду «к делу», которой можно закончить беседу в любой момент. Явно выбранный режим работы беседу отключает. Задача со ссылкой на страницу или задачу и требованием («<ссылка> прочитай, сформулируй, выработай решение») сразу идёт в работу, без наводящих вопросов; просьба вида «что-то сделать со страницей <ссылка>» уточняется вопросами.
Внешние системы — подключение по заготовке
В разделе «Внешние системы» подключение трекера или базы знаний создаётся выбором системы из списка: администратор указывает адрес и вставляет свой токен, а Pilot сам задаёт нужные возможности и одним действием проверяет связь — адрес, токен, чтение первой найденной страницы или задачи и поиск — с понятным итогом каждого шага. Подключение сохраняется только после успешной проверки; при неудаче не остаётся ничего, ошибка показана у поля, которое нужно поправить, и мастер называет причину любого отказа. Если токену не видно ни одной страницы или задачи, подключение создаётся с предупреждением. Если у страницы-образца нет дочерних страниц или комментариев, шаг проверки показывает «проверено — у страницы-образца пусто», и возможность доступна помощнику. После правки подключения (адрес, область, способ входа) его возможности снова подтверждаются кнопкой «Проверить связь» в карточке: возможности, которые проверка прошла, сразу становятся доступны помощнику. Проверку можно отменить; уход из мастера с несохранённым вводом требует подтверждения. Адрес можно вставить как из браузера — с подкаталогом установки или со ссылкой на страницу. Пробелы и переводы строк по краям токена отбрасываются. Доступны вход по токену Bearer и по логину с токеном, дополнительные постоянные заголовки и область «все пространства или проекты, доступные токену».
Заготовки для частых систем
В списке систем — Confluence Data Center, Jira Data Center, YouTrack (задачи и база знаний), Redmine, GitLab (задачи и вики). Помощник читает задачи и комментарии к ним в Jira, YouTrack, Redmine и GitLab (в Jira и YouTrack — по ключу вида DEV-123); комментарии он получает, только если ответ системы подтверждает, что они относятся к запрошенной задаче, а запрос к задаче чужого проекта даёт тот же ответ «не найдено», что и к несуществующей. В базе знаний (Confluence, вики GitLab, база знаний YouTrack) помощник ищет страницы в пределах разрешённых пространств, читает текст страницы, список её дочерних страниц и комментарии; содержимое, подтянутое на страницу из других пространств, в ответ не попадает. У каждой заготовки рядом с формой сказано, что она пока не умеет.
Помощник сам читает страницу или задачу, указанную в постановке
Если в задаче есть ссылка на страницу базы знаний или задачу трекера (или ключ задачи вида DEV-123), помощник до приёма задачи читает этот документ вместе с комментариями к нему правами пользователя и учитывает его при постановке, а не просит пересказать его текстом. Если комментарии прочитать не удалось, помощник так и отмечает и обсуждение известным не считает. Страница по ссылке вида «…?pageId=…» читается и при области «все пространства»: пространство берётся из ответа системы и сверяется с пространством в ссылке. Содержимое документа считается сведениями, а не указаниями: требования пользователя и сведения из документа в постановке разделены. Ссылки, перед которыми сказано «не открывай», и ссылки внутри вставленного текста («вот текст страницы: …») не читаются. Если подключение к системе не подтверждено, помощник прямо говорит, что администратору нужно нажать «Проверить» в настройках подключения. Сессию, в которой читались внешние документы, другой пользователь открывает без прочитанного: работа начинается заново с его правами.
Несколько подключений на одну роль
Трекеру и базе знаний можно назначить несколько систем сразу, например GitLab и Jira. Помощник выбирает систему по формату ключа и проекту; если они подходят к нескольким системам, он уточняет, а пользователь может назвать систему прямо: «глянь в Jira задачу DEV-123». Недоступная система (не готова, нет личного токена, отключена) другой не подменяется. Список «Мои подключения» и статус ролей показывают подключение доступным агенту по тому же правилу, по которому им пользуется сам агент, — для REST и для MCP.
Внешние системы — карточка пользователя и личный токен
Пользователь без прав администратора видит в карточке подключения только нужное: адрес системы, состояние одной строкой, поле личного токена с подсказкой, где его взять, и кнопку «Сохранить и проверить» — токен сразу проверяется одним запросом к системе, итог показывается в карточке. Проверка ограничена несколькими попытками в минуту. Кнопки блока «Мой токен» называются «Сохранить токен» (или «Заменить токен») и «Удалить мой токен»; сохранить пустое поле нельзя.
Удаление подключения внешней системы
«Удалить» в карточке подключения открывает окно подтверждения, где перечислено, что произойдёт: с роли будет снята система, личные токены пользователей к подключению удалятся. После подтверждения роль снимается (это попадает в журнал доступа), подключение удаляется и исчезает из списка. Если подключение успел изменить другой администратор, удаление останавливается с понятным сообщением.
Подключение произвольного MCP-сервера, в том числе по SSE
Роль трекера или базы знаний можно привязать не только к заготовке, но и к произвольному MCP-серверу: помощник получает его инструменты напрямую, без описания каждого вручную. Привязка проверяется при каждом вызове, а расход бюджета прогона учитывается независимо от исхода запроса. Кроме Streamable HTTP поддерживается прежний протокол HTTP+SSE: в форме ручного подключения выбирается транспорт «Streamable HTTP / SSE»; если адрес указывает на поток событий (обычно оканчивается на /sse), а выбран Streamable HTTP, окно подсказывает это кнопкой «Выбрать SSE», не обращаясь к серверу. У созданного подключения транспорт не меняется, в списке подключение по SSE подписано «MCP · SSE». Сервер SSE может прислать для запросов только адрес на том же узле, по той же схеме и порту — иначе подключение отклоняется до отправки первого запроса; оборванный или долго молчащий поток событий Pilot открывает заново. Если вызов инструмента оборван по сроку, отменой прогона или обрывом связи, Pilot закрывает сессию на сервере, не задерживая прогон. Вход по логину и паролю (basic) для MCP-подключений не поддерживается — используйте токен или подключение без входа.
Внешние подключения по адресу http — по выбору пользователя
Подключиться к системе по адресу http с токеном можно, отметив галочку «Разрешить http»: токен при этом идёт без шифрования, и Pilot предупреждает об этом в проверке связи и в карточке подключения. Разрешение привязано к адресу — при смене адреса его нужно дать заново. Подсказка поля «Проекты» показывает пример для конкретной системы.
Effector 1C и Reflexor 1C — в комплекте поставки
В корне дистрибутива лежат два архива: effector-1c.zip — плагин 1C:EDT, через который помощник читает проект, открытый в EDT, и reflexor-1c.zip — окно Analyzer рядом с Конфигуратором (Windows). Отдельной лицензии они не требуют; устанавливаются на рабочие места разработчиков по README.txt из каждого архива, порядок описан в INSTALL.txt.
Настройки → «Взаимодействие с 1С» — скачивание Effector 1C и Reflexor 1C
В группе «Работа» настроек появился пункт «Взаимодействие с 1С»: он виден любому вошедшему пользователю, а при выключенном разграничении прав — всем. Здесь можно скачать оба архива из этой поставки Pilot: у каждого показаны версия, размер, дата сборки и три шага установки. Если архива на сервере нет, плитка так и говорит и подсказывает, где он лежит. При включённом разграничении прав скачивание записывается в журнал доступа. Каталог поставки подключается в контейнер только на чтение и виден внутри как /opt/pilot-dist; необязательная переменная PILOT_COMPANIONS_DIR задаёт этот путь внутри контейнера, менять её нужно, только если каталог подключён в другое место.
Смена пароля, заданного администратором
Пользователь, которому администратор завёл учётную запись или сбросил пароль, при первом входе сначала задаёт свой пароль и только потом попадает в окно. Сброс действует и на уже открытое окно: при следующем действии оно переходит к смене пароля. Учётные записи из каталога (LDAP, единый вход) и администратор из файла настроек этого шага не проходят.
Меню учётной записи
Имя пользователя в шапке окна открывает меню: «Мои токены» и «Сменить пароль». В настройках, в группе «Работа», появилась вкладка «Пароль»; после смены пароля прочие ваши сессии закрываются, личные токены продолжают работать. Для учётной записи из каталога пункта смены пароля нет — пароль меняется в каталоге.
Кнопка «Копировать» у выпущенного токена
Только что выпущенный личный токен копируется одной кнопкой; если браузер не даёт доступа к буферу обмена, токен выделяется и подсказывается Ctrl+C.
Вопрос, когда в EDT открыта другая конфигурация
Если в EDT открыт проект одной системы, а в задаче названа другая, помощник спрашивает, по какой из них работать (по умолчанию — открытая в EDT). Выбрана система из задачи — помощник работает по ней и предупреждает, что правки через EDT попадут в открытый там проект, поэтому проект в EDT нужно сменить. Без постановщика помощник остаётся на открытой в EDT конфигурации и называет расхождение в отчёте. Сделанный выбор сохраняется при возобновлении прогона.
Помощник знает, какие внешние системы ему доступны в прогоне
В фазах, где помощник может читать трекер и базу знаний, ему сообщается, какие подключения доступны пользователю прогона, к каким пространствам и проектам, и какие недоступны и почему (например, нет личного токена).
Проверка подключения — понятная причина, если адрес во внутренней сети
Если адрес трекера или базы знаний указывает во внутреннюю сеть, куда исходящие запросы Pilot по умолчанию закрыты, проверка подключения прямо говорит об этом и подсказывает администратору параметр PILOT_OUTBOUND_ALLOW; при сбое проверки сертификата — параметр PILOT_OUTBOUND_CA. Раньше такой отказ выглядел как «страницы не читаются», будто у токена нет прав. Оба параметра описаны в INSTALL.txt и .env.example.
Система, названная в задаче, важнее системы из профиля
Если в тексте задачи прямо назван идентификатор системы, помощник работает по ней, даже когда в профиле выбрана другая, и говорит об этом вслух. Названо несколько систем — задаётся вопрос (без постановщика берётся первая по тексту, и это отмечается как допущение). Внедрение Insight из профиля к чужой системе не подставляется. Та же сверка действует, когда система названа в уточнении при возврате к шагу.
Выбор системы и внедрения Insight в настройках
Списки системы и внедрения в настройках оформлены в стиле окна и работают с клавиатуры (поиск по вводу, стрелки, Enter, Esc). Система показана строкой «идентификатор · конфигурация · версия», внедрение — названием и подписью «граф · снимок». Пустое значение внедрения означает «спрашивать в прогоне»: у одной системы бывает несколько внедрений.
Вкладка «Лицензия» — только администратору, одна кнопка «Применить»
При включённом разграничении прав пункт «Лицензия» (группа «Поставка») в настройках видит только администратор; без разграничения прав вкладка видна, как и прежде. Остальным ролям полоса над лентой и отказ на запуске прогона по-прежнему называют причину — лицензия не установлена, истёк срок, превышено число мест — и вместо перехода в настройки предлагают обратиться к администратору. Полная сводка лицензии (GET /api/license) отдаётся только администратору; короткий срез состояния в /api/config открыт всем. Строка лицензии и файл *.key принимаются одной кнопкой: выбран файл — применяется файл, вставлена строка — строка; пустой список показывается строкой таблицы, а сообщение об ошибке записи лицензии называет каталог agent-sessions в каталоге установки.
Строка лицензии принимается только в точном написании
Строка, к которой дописаны посторонние символы, отклоняется как нераспознанная, а не считается ещё одной лицензией; одна и та же лицензия в нескольких файлах учитывается один раз. Выданные строки, вставленные как есть, действуют, как и прежде.
Чужой прогон закрыт для других пользователей
При включённом разграничении прав результат команды EDT, отмену и поток событий прогона получает только его владелец. Администратор может наблюдать чужой прогон и остановить его. Остальным отвечает отказ 403 — одинаковый для чужого и для несуществующего прогона, так что по ответу нельзя узнать, существует ли прогон.
Запись в EDT привязана к окну и экземпляру EDT
Окно помощника привязывается к своему прогону и к экземпляру EDT, с которым работает, и вносит изменения только в него.
Состояние записи агентом — точнее для администратора
GET /api/mutation/agent-write показывает администратору ответ EDT, пришедший по правке с неизвестным исходом уже после перезапуска журнала, — по нему проще решить, снимать ли карантин проекта. Если фоновая проверка блокировки журнала давно не отвечала, состояние сообщает «блокировка журнала не проверена»; в это время любая роль видит запись закрытой, а сама запись перед отправкой проверяет блокировку заново. Пока журнал восстанавливается после перезапуска, состояние называет именно восстановление.
Ответ кнопок раздела «Внешние системы» виден сразу
Если для проверки связи не хватает ссылки на вашу страницу или задачу, подсказка появляется прямо под полем ссылки, и курсор встаёт в него. Сообщения раздела закреплены у нижнего края экрана, поэтому ответ любой кнопки карточки виден без прокрутки. У подключения вне периметра поиск по тексту не проверяется, и это сказано прямо: проверка связи проходит, помощник читает страницы по ссылке, а на просьбу поискать по тексту получает прямой ответ, что текст за периметр не отправляется.
Инструменты внешних систем в постановке не считаются пропущенными
Если в задаче названы инструменты подключённой внешней системы (например, чтение задачи трекера) и помощник их вызвал, справка не получает пометку «названное в постановке не отражено» — в том числе когда инструмент назван так, как его зовёт сама внешняя система. Прочие имена из постановки — объекты 1С, параметры, ключи, имена файлов, — которых нет в решении, по-прежнему отмечаются.
Регистр, наполнение которого может зависеть от функциональной опции через код
Когда решение берёт регистр, помощник узнаёт у Analyzer, по каким функциональным опциям ветвятся функции рядом с записью и чтением этого регистра, и подаёт их архитектуре как вопрос «проверь ветку опции в теле писателя». Если такой регистр взят, а опция в решении не названа и не отведена, выдаётся предупреждение со свидетелями. Состояние проверки по каждому регистру называется прямо: проверено полностью, граф видит не всё, запрос не удался, не проверен из-за предела запросов. Если Analyzer старой версии наполнение по опциям не отдаёт, это сказано в задании одной строкой.
Проверка кода: свойство, вызванное как метод, и событие объекта в модуле формы
Помощник замечает вызов свойства со скобками у объекта, тип которого выведен из кода (например, `Область.Текст("Дата", 1, 1)` у области табличного документа: `Текст` — свойство, такой вызов падает с ошибкой «Метод объекта не обнаружен»). Отдельно замечается событие модуля объекта, объявленное в модуле управляемой формы и нигде не вызываемое: `ОбработкаПроверкиЗаполнения` у формы называется `ОбработкаПроверкиЗаполненияНаСервере`, и процедура под прежним именем не исполняется никогда.
Проверка запроса с таблицей значений в параметре
Если таблица значений, переданная параметром, стоит источником запроса, который не выгружает её во временную таблицу (например, две такие таблицы соединены напрямую), проверка кода называет это ошибкой и предлагает верную форму: сначала «ВЫБРАТЬ … ПОМЕСТИТЬ ВТ ИЗ &Таблица», затем соединение временных таблиц. Раньше такой запрос проходил проверки и падал только при выполнении.
Сверка раздела «Применённые стандарты» с кодом
Стандарт, запрещающий конструкцию запроса (полное внешнее соединение), не может быть назван «применённым», если код эту конструкцию использует: помощник просит либо переписать запрос, либо записать стандарт отклонением с причиной.
Правила языка доходят до кода по событиям, параметрам и операторам
Факты и антипаттерны встроенного языка подбираются к коду не только по типам переменных, но и по обработчикам событий, параметрам событий (например, Отказ), операторам и вызванным функциям. Например, правило «в обработке проведения не вызывать исключение» доходит до кода подписки на проведение. Антипаттерны связаны с той конструкцией, которая несёт ошибку.
Предупреждение, когда новая ветка кода вытесняет стандартную
Если доработка ставит свою ветку «ИначеЕсли» перед стандартной веткой конфигурации так, что стандартная перестаёт выполняться для части данных, Pilot предупреждает об этом.
Предупреждение об обработчике для поля, которого нет на форме
Если доработка назначает обработчик события (например, «ПриИзменении») полю, которого на форме нет, Pilot предупреждает об этом. Состав формы с большим числом методов запрашивается полностью.
Сценарии проверки не ждут подпись «(создание)» после записи
Pilot предупреждает, если сценарий проверки после шага «Записать» ждёт в заголовке формы подпись «(создание)»: после записи нового объекта подпись исчезает, и такой шаг падает. Сценарии, где подпись проверяется до записи, предупреждения не вызывают.
Задача, создающая объект метаданных, сразу идёт как разработка
Формулировки вида «новая константа», «с новой ролью» распознаются как задача на код: вопрос «код или справка?» в таких случаях не задаётся.
Имена новых объектов без чужих префиксов
Помощник не берёт префикс новых объектов из примеров в своих подсказках. Префикс берётся у существующего расширения конфигурации; если расширений нет, префикс предлагается явно, как допущение.
Длинные списки сведений не скрывают нужное значение
Когда список подписок или других объектов урезан для запроса модели, к нему прилагается полная сводка по событиям, и утверждение вида «ни одна подписка не на проведение» проверяется по всему списку, а не по видимой части.
ТЗ: каждый блок ссылается на требование
Блок ТЗ ссылается на функциональное или нефункциональное требование; блок, который создаёт только каркас (расширение, заимствование), закрывает нефункциональное требование.
Проверка спорных пар решения — быстрее на задачах с несколькими спорами
На финальной проверке решения спорные пары (объект, который можно понять двумя способами) могут подтверждаться не строго по очереди, а несколькими проверками одновременно — ограниченным числом, которое задаёт администратор отдельной настройкой. По умолчанию подтверждение идёт по одной паре за раз, как раньше.
Быстрее старт прогона и чистка текста результата
Собранные на старте сведения об объектах задачи подаются модели как есть, без долгого предварительного сжатия. Служебные выражения из текста результата убираются сначала механически; модель переписывает текст, только если после этого что-то осталось.
Поиск стандартов языка — за доли секунды
Поиск стандартов языка отвечает за доли секунды вместо минуты.
Обрыв молчащей модели вовремя
Если поставщик модели перестаёт присылать ответ, запрос обрывается и повторяется по истечении заданного предела, а не ждёт неограниченно.
Метрики и журнал прогона
В метриках сессии появились время каждой фазы и задержка ответа модели — число вызовов, медиана, 90-й процентиль и максимум, всего и по фазам; паузы перед повтором запроса в задержку не входят, у прерванного прогона последняя фаза считается до момента остановки. Прежние поля метрик не изменились. В журнале прогона после каждой попытки исправить код по замечаниям проверки записано, стало ли замечаний меньше и сколько это заняло.
Образ agent-server — компактнее и быстрее загружается
Образ собирается в два слоя вместо прежних десятков: выгрузка и загрузка образа на сервер идут быстрее, а в образ попадает только то, что нужно для работы. Порядок обновления не меняется.
Длинные списки Insight дочитываются по страницам
Помощник может дочитать длинные списки Insight (объекты внедрения, пересечения регламентных заданий, обновление) страница за страницей, а не видеть только первую. Если данные под внедрением сменились между страницами, Insight сообщает об этом, и страницы разных срезов не склеиваются. Выбор карточки внедрения Insight доступен помощнику и тогда, когда данные использования закрыты.
Подключение внешней системы больше не «устаревает» через сутки
Прежде через 24 часа после проверки связи помощник переставал читать трекер и базу знаний, пока администратор не проверит подключение снова. Теперь успешная проверка действует, пока подключение не изменено; изменившийся ответ системы по-прежнему распознаётся при вызове.
Понятная причина, если документ по ссылке не прочитан
Вместо общего «чтение этого вида документов не настроено» помощник называет настоящую причину — подключение изменено и не проверено, последняя проверка не прошла, нет подтверждённой возможности чтения — и что сделать администратору.
«Возобновить с фазы» запускает выбранную фазу
Выбор уже пройденной фазы (например, «Уточнение») переигрывает именно её, а не продолжает со следующей. Продолжение с места остановки — это следующая фаза: она выбрана по умолчанию и отмечена в линии фаз.
Страница Confluence и её дочерние страницы доходят до помощника целиком
Раньше длинная страница или раздел с дочерними страницами доходили до помощника обрезанными, хотя место в запросе модели оставалось. Теперь объём прочитанного рассчитывается от свободного места запроса: короткие страницы передаются целиком, а длинные сокращаются поровну и только на столько, на сколько не хватает места. Сокращённая страница помечается «передано N из M» и не считается прочитанной полностью.
Страница базы знаний по номеру читается без указания пространства
Помощник получал отказ, если запрашивал страницу базы знаний по номеру, не назвав её пространство. Теперь пространство определяется по самой странице и сверяется с разрешёнными в подключении. Если страница лежит в пространстве, не открытом в подключении, отказ называет ключ этого пространства.
Вставленная задача Jira больше не делает страницу неполной
Дочерняя страница, на которой вставлена задача Jira по ключу, считалась прочитанной не до конца, и помощник называл её неполной. Теперь такая вставка показывается ключом задачи, а неполной страница считается, только если вставка — выборка задач по запросу или блок со своим текстом.
Повторное обращение к прочитанной странице не даёт «не найдено»
Если помощник обращался к уже прочитанной странице, указав пространство неверно, он получал «не найдено» и делал вывод, что страницы нет. Теперь страница, прочитанная в этом прогоне, ищется в своём пространстве, а адрес сервера целью поиска не считается.
Помощник предлагает только базы, назначенные пользователю
При включённом разграничении прав выбор базы при запуске, сверка с конфигурацией в EDT и продолжение сессии учитывают только базы, назначенные пользователю. Сессию, начатую на базе, которая продолжающему не назначена, он продолжает без сведений об этой базе — с разбора постановки.
Подключение MCP со старым видом входа можно перевести на заголовок
Карточка подключения MCP, сохранённого с входом Bearer или по логину, больше не блокирует поле заголовка входа: администратор вводит секрет заново и сохраняет. В списке у пользователя вместо «недоступно» сказано, что вход не поддержан и нужно обратиться к администратору.
Требования, заголовки панелей и вставки на страницах Confluence видны помощнику
Раньше со страницы пропадали ключи и типы требований, заголовки панелей и раскрывающихся блоков, а на месте выборки объектов Assets и вставленной задачи Jira не оставалось ничего. Теперь требование показывается помощнику с ключом и типом, у панели и блока виден заголовок, а на месте выборки Assets и задачи Jira стоит запрос выборки или ключ задачи с пометкой, что само содержимое вставки не прочитано.
Страница-раздел по ссылке читается вместе с дочерними страницами
Если страница из постановки служит разделом (в её тексте только оглавление, а содержание — на дочерних страницах), помощник называл её пустой и не находил требований. Теперь вместе со страницей он получает список её дочерних страниц, а если своего текста у страницы нет — сразу читает и дочерние. Те, что не уложились в предел чтения, помощник называет и не считает их содержимое известным.
Проверка подключения базы знаний с областью «все пространства, доступные токену»
Проверка чтения страницы, её дочерних страниц и комментариев больше не отбрасывает страницу из «чужого» пространства: пространство берётся из самой проверяемой страницы, а не из прежнего списка пространств, скрытого при включённой галке. Если проверить чтение не на чем, окно просит вставить ссылку на страницу вместо сообщения «непредвиденный ответ системы»; страница из пространства вне разрешённых называется прямо.
Поле, заполненное браузером, больше не становится светлым
Автозаполнение браузера в полях настроек сохраняет цвета тёмной темы.
Обновление поставки языковой базы больше не стирает выделенные объекты клиента
Обновление поставки языковой базы больше не стирает объекты, процессы и связи, которые выделены из документов клиента.
Ссылки фактов клиента сохраняются при записи и дозаполнении
Запись факта, повторное разрешение имён после разбора документа и дозаполнение связей больше не удаляют связи фактов клиента и не привязывают их к устаревшим объектам: связь, цель которой занята или исчезла, отмечается и перепроверяется при следующей заливке. Одновременная запись нескольких фактов не приводит к взаимной блокировке.
Запись в базу знаний во время её обновления не зависает
Пока идёт заливка базы знаний, запись факта, удаление набора фактов, запись объектов и процессов решения и пересчёт векторов ждут не дольше 30 секунд, а сама заливка — не дольше 120 секунд, после чего отвечают «идёт обновление базы знаний, повторите позже» вместо бесконечного ожидания.
Перенос языковой базы
Повторная проверка переноса языковой базы только сверяет данные и не вносит в неё изменений. Построение индекса во время переноса не зависает, если на базе удерживается блокировка другого процесса; добавлены проверки целостности, подтверждающие, что перенос прошёл без потерь.
Споры по фактам
Споры по фактам больше не замедляют выдачу фактов на базах с большим числом записей; причина спора по факту выбирается однозначно — по самому свежему спору.
Недоступная база доступа больше не задерживает запросы
При недоступной базе доступа запросы больше не зависают на 10 секунд — отказ приходит сразу, а повторная попытка подключиться к базе делается через несколько секунд. Когда база снова доступна, работа восстанавливается без перезапуска.
Токен внешнего подключения не проступает в ответах
Секрет вычищается из ответа одним общим механизмом для REST и для MCP: токен не проступает ни при каком регистре кодирования адреса (%xx), ни в обрезанном хвосте длинного ответа, ни в короткой части составного секрета.
Отказ EDT до записи больше не считается неопределённым исходом
Если EDT отказывает в правке ещё до записи (метод уже существует, объект изменился с момента чтения и подобные случаи), помощник учитывает правку как не внесённую, а не как правку с неизвестным исходом.
Отклонённая в EDT правка больше не считается внесённой
Если в окне сравнения изменений EDT нажать «Отклонить» или правка ничего не меняла в модуле, помощник мог считать её внесённой. Теперь такая правка учитывается как не внесённая, а ответ EDT, по которому нельзя понять, внесена ли правка, не принимается за успешный.
Модуль формы и команды читается из EDT без подмены
Когда помощник читал модуль формы или команды без явного указания вида модуля, он получал модуль объекта вместо нужного. Теперь модуль по имени формы или команды выбирает сама EDT, а если указанный вид модуля не подходит к объекту, помощник видит предупреждение EDT о том, какой модуль на самом деле открыт.
Повторный запрос данных после сжатия истории разговора
В длинном разговоре помощник сжимает старые ответы инструментов. Если после этого он повторял прежний запрос, ему отвечали «результат выше», хотя самих данных в истории уже не было. Теперь такой запрос выполняется заново и данные возвращаются.
Вопрос о происхождении формы больше не выносится вам спорным
Если критик сомневается, типовая ли форма или собственная у расширения, а граф уже назвал её принадлежность, находка снимается этим фактом и показывается в разделе «Сверено с фактами графа».
Сценарий, ждущий новый заголовок окна сразу после заполнения полей, возвращается на доработку
Сценарии проверки заполняли реквизиты новой формы и тут же ждали, что заголовок окна покажет их значения, хотя по сданному коду заголовок ставится только при открытии формы и после записи, а обработчика изменения этих полей нет. Теперь помощник замечает это и просит либо проверять заголовок после записи или переоткрытия формы, либо добавить в решение обработчик изменения поля.
Снять существующее поведение метода можно только по прямому указанию постановщика
Когда правка чужого метода перестаёт читать поле, которое читал исходный код, решение не принимается без основания. Основанием считается только реплика постановщика или владельца, приведённая дословно и прямо называющая снимаемое поле; в остальных случаях помощник получает требование вернуть прежнее поведение.
Тип реквизита в предварительных фактах называется вместе с объектом
Если реквизит-перечисление с таким же именем есть у нескольких объектов с разными типами, тип мог быть приписан не тому объекту. Теперь в факте назван объект-владелец реквизита и отдельно оговорено, что у одноимённого реквизита других объектов тип иной; если владельца установить не удалось, факт прямо говорит о неоднозначности.
Повторное присваивание свойства во взаимоисключающих ветках
Проверка «второе присваивание затирает первое» больше не срабатывает, когда присваивания не могут выполниться одно за другим: они стоят в разных ветках одного условия (в том числе после вложенного условия), первое завершается возвратом из процедуры или второе выполняется только при значении признака, которое первая ветка исключает. Настоящее затирание без чтения между присваиваниями по-прежнему отмечается.
Ложные замечания о несведённых документах
Блок ТЗ, ссылающийся на нефункциональное требование, больше не помечается как «не закрывающий ни одного требования»; блок с объектами метаданных считается выполненным, когда решение называет его объекты. Объект, упомянутый только в разделах «Требует уточнения» или в отказе («не создаём …»), выполненным не считается.
Ложное замечание о переменных в модуле формы
Реквизиты формы, которые заполняются в одной процедуре и читаются в другой, больше не принимаются за переменные соседней процедуры. Объявление переменных на нескольких строках, кавычки в комментариях и переводы строк в литералах разбираются верно.
Обращение к несуществующему полю регистра в условии виртуальной таблицы
Проверка запроса замечает имя, которого у регистра нет (например, имя справочника вместо измерения), в условии виртуальной таблицы — такой запрос не выполнится.
Указания постановщика вызвать инструмент
Вызов, выполненный через Analyzer под другим именем, засчитывается; если постановщик назвал инструмент, которого нет, в отчёте так и сказано — «инструмента с таким именем нет», а не «не вызывался». Возражение помощника снимает замечание только по той вводной, к которой относится.
Ложные замечания проверок текста
Отчёт «тело метода прочитано» больше не принимается за план прочитать его; цитата значения («статус «К выполнению»») — за представление поля; отрицание подписки по одному событию сверяется с подписками этого события; блок ТЗ с объектом метаданных не проверяется как код; замечание о приписывании сведений из Analyzer относится только к той части предложения, где стоит приписывание.
Плашка «имя из постановки не названо»
Плашка пересчитывается по итоговому тексту и снимается, если имя названо в любом его разделе.
Таблица «Мои токены»: время обращения и выпуска в одной колонке
Заголовок колонки «Последнее обращение» обрезался, а даты в узких колонках переносились на две строки. Теперь время последнего обращения и дата выпуска стоят в одной колонке в две строки: сверху обращение (до минуты, или «обращений не было»), под ним дата выпуска.
Окно настроек на узкой ширине (телефон)
Боковая навигация разделов занимала больше половины ширины экрана телефона. До 640 px вместо навигации стоит селект «Раздел» с теми же группами; шапка не сжимается, а подвал с «Сохранить» всегда у низа экрана. От 641 px навигация остаётся прежней.
При обновлении: запустите установку как обычно. Ваши учётные записи, документы и история прогонов не трогаются; поле личного адреса Insight добавляется в существующую установку само. Чтобы помощник брал сведения об использовании объектов из Insight, карточка базы в Insight должна быть связана с системой Analyzer — проверьте связь у своих внедрений.
Свой адрес Insight в настройках
В карточке «Внедрение Insight» появилось поле «Адрес Insight»: каждый пользователь может указать, к какому Insight обращаться, как уже может для Analyzer. Адрес вводится целиком, вместе с путём /mcp; адрес без пути отклоняется с объяснением причины. Пустое поле — общий адрес сервера. После сохранения сразу видно, отвечает ли Insight и сколько внедрений вам выдано.
Наглядный выбор режима работы
Режимы — Авто, Опрос, Выработка решения, Анализ данных, Код-ревью — выбираются кнопками над полем задачи, а не списком, и под ними одной строкой сказано, что будет в выбранном режиме. Отдельная полоса задаёт, вести диалог или работать автономно. На узком окне кнопки переносятся на следующую строку; переключать можно и с клавиатуры. Режимы, недоступные вашей роли, не показываются, ограниченный помечен.
Вопрос «код или справка?», когда задача неоднозначна
В режиме «Авто», если по тексту задачи нельзя уверенно понять, нужен ли на выходе код или аналитическая справка, помощник до уточнения постановки задаёт один вопрос и идёт по ответу. Прежде направление выбиралось догадкой. При явно выбранном режиме вопрос не задаётся.
Поиск на экране «Пользователи»
Над списком пользователей — строка поиска по логину, роли, назначенным базам и источнику учётной записи и кнопки отбора по роли. Справа показано, сколько найдено из общего числа.
Токены из кэша в расходе прогона
В сведениях о расходе сессии и в метриках прогона показано, сколько входных токенов модель взяла из кэша провайдера и какая это доля входа: по ней видно, во что прогон обошёлся на самом деле. Если провайдер сведений о кэше не присылает, так и написано — нулём это не выдаётся.
Реестр требований в архитектуре и ТЗ в любой установке
Архитектура и ТЗ ведутся с таблицами реестра требований и решений по умолчанию; прежде такой режим включался отдельной настройкой.
Код-ревью — не для роли «Аналитик»
Режим не показывается аналитику и не запускается: ревью кода ведёт коллега с ролью выше аналитика. Остальное у аналитика без изменений — уточнение постановки, справка об устройстве, опрос; выработка решения идёт до уточнения, дальше — коллеге.
Тесты пишутся по настоящему составу форм и объектов
Шаг тестов получает архитектуру решения целиком и все сведения об объектах — состав, формы, движения, — которые помощник получил на предыдущих шагах. Сценарии тестов больше не обращаются к элементу формы, которого на ней нет. Имена и параметры вызываемых методов тесты берут из сданного кода, а проверяемое поведение — из ТЗ.
Сведения из Analyzer не теряются между шагами
Выводы, полученные из Analyzer на уточнении, доходят до архитектуры, ТЗ и кода; то, что не поместилось в запрос, перечисляется построчно, а не одним числом. Метод, тело которого помощник уже прочитал, больше не называется пустым, а обработчик-заготовка не выдаётся за образец.
Утверждения опираются на ответ Analyzer, а не на формулировку
Объект, о котором Analyzer ответил «не найдено», не попадает в списки «Проверено» и «Подтверждено». Вид регистра определяется по сведениям Analyzer, а не по набору измерений; утверждение об отсутствии параметра у события сверяется с синтакс-помощником.
Термин, не найденный как объект, ищется в механизмах конфигурации
Если в задаче назван реквизит, метод или часть механизма, помощник говорит, где термин встречается, и просит подтвердить соответствие, а не делает вывод «такого нет».
Справка выбирает объект, к которому привязано расширение
Когда понятию задачи соответствует несколько объектов, помощник выбирает тот, на который ссылаются объекты расширения, а не объект с похожим синонимом. Одноимённые объекты разных видов называются вместе с видом.
Правка предлагается в правильном слое
Помощник замечает, когда решение добавляет измерение в типовой регистр «в расширении», переписывает тело типового метода без перехвата или ставит перехват в модуль, где перехватываемого метода нет, — и исправляет решение.
Подписки на события учитываются при проектировании
Перед архитектурой помощник сам смотрит штатные подписки объектов задачи, чтобы решение не дублировало и не обходило их; механизм на паре подписок одного расширения подключается к обеим.
Новые проверки кода
Первая строка выборки, пропущенная проверкой «Если Выборка.Следующий()» перед циклом; обращение к полю, которого нет в запросе; вызов у менеджера метода, которого нет ни у платформы, ни в модуле менеджера; перехват метода, отсутствующего в модуле; шаблон с %1 без СтрШаблон; число параметров фонового задания, не совпадающее с объявлением; обработчик записи без проверки ОбменДанными.Загрузка; обращение к полю ссылки в клиентском методе формы; параметры обработчика подписки, перепутанные местами.
Замечания проверяющего сверяются с репликами постановщика
Сказанное постановщиком в ходе уточнения не снимается замечанием проверяющего; если реплика расходится с фактами конфигурации, вопрос возвращается постановщику. Заявление «добавлено …» сверяется с итоговым кодом.
Текст результата чище для читателя
Из ТЗ, справок и ответов убраны служебные выражения помощника и идентификатор базы в скобках. Чистка повторов больше не вырезает содержание.
Повторные обращения к модели чаще берутся из кэша провайдера
Начало запроса остаётся неизменным на всех кругах шага, и провайдер берёт его из кэша: дешевле и быстрее, содержание запроса то же. История шага сворачивается только тогда, когда запрос приближается к пределу окна модели.
Установка на сервере с небольшим объёмом памяти
На сервере с 8 ГБ памяти установка останавливалась на заливке справочника знаний, и окно помощника не запускалось. Справочник теперь поставляется частями и заливается по одной; ни один файл поставки не больше 2 ГБ.
Insight подключается к той же базе, что и Analyzer
Если в Insight нет внедрения, связанного с системой, по которой идёт задача, помощник больше не берёт первое попавшееся и говорит об этом прямо. Если ни одна карточка не связана, база берётся из профиля, а без неё предлагается выбрать внедрение из списка.
Ложная отметка «Analyzer недоступен» после единичного сбоя
Один несостоявшийся запрос к Analyzer больше не объявляет его недоступным на весь прогон. Отметка говорит, сколько запросов не прошло, каждый сбой записывается в журнал прогона с причиной. То же для Insight и базы знаний по языку.
Лишние запросы при отказе поставщика модели
Отказ по квоте, ключу, оплате или доступу запоминается до конца прогона: помощник больше не повторяет запрос впустую. Переполнение окна модели распознаётся сразу; пауза перед повтором берётся из ответа поставщика.
Проверки кода реже замечают ошибку в верном коде
Исправлены случаи, когда проверка срабатывала на правильном коде и помощник портил решение, подчиняясь ей; повтор одной находки под другой меткой считается одной находкой.
Правка по замечаниям не ухудшает результат
Частичный откат правки больше не оставляет смесь редакций, которая не компилируется; переписанные разделы заменяют прежние, а не дублируются. Пустой или оборванный ответ модели при исправлении повторяется, а не принимается за отказ.
Возобновление прогона в выбранном направлении
Прогон, возобновлённый после остановки, продолжается в выбранном направлении (код или справка), а не всегда в разработке.
Учёт токенов и времени
При повторе запроса в расход попадают оба запроса, а не только повтор. Отметки времени в колонке «Телеметрия» считают только работу: пока помощник ждёт ответа или утверждения, часы стоят.
При обновлении: запустите установку как обычно. Ваши учётные записи, документы и история прогонов не трогаются.
Раздельная работа над задачей
Свою сессию можно передать в общую работу кнопкой «В раздельную работу…» в «Моих сессиях». Задача становится делом, каждый шаг — отдельный этап, и этап берёт сотрудник, которому назначена база. Этап возвращают на прежний с замечанием, задают вопрос автору постановки; автор может вернуться на свой сданный этап, пока следующий никем не взят. Общий список ждущих этапов — кнопка «Дела в работе». Одиночная работа не меняется.
Граница этапа — за исполнителем
В окне прогон останавливается после каждого шага. Исполнитель решает сам: «Продолжить» и вести следующий шаг или «Отдать … в очередь» с запиской — следующий шаг возьмёт любой сотрудник с правами. Над документами прошлых шагов — компактная полоса дела: этапы с исполнителями, действия и журнал передач.
Роль «Аналитик»
Уточнение постановки, справка об устройстве, опрос и код-ревью — без шагов с кодом. Запрос на доработку от аналитика идёт до уточнения постановки и сам становится делом раздельной работы: этап с кодом берёт коллега с ролью выше. Аналитик занимает обычное место лицензии.
Вводные по ходу прогона
Пока помощник работает, поле ввода открыто: написанное уходит ему вводной и учитывается на ближайшем шаге. В ленте видно, учтена ли вводная и на каком шаге.
Выбор шага после конца прогона
Цепочка шагов над вкладками становится выбором, откуда продолжить работу.
Выбор внедрения 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С, — но обращения к ней больше не проходят мимо разграничения доступа.
| Статистика: | |
|---|---|
| Просмотры | 3912 |
| Загрузки | 5 |
| Рейтинг | 10 |
| Создание | 11.09.26 15:17 |
| Обновление | 13.11.26 10:36 |
| № Публикации | 2787345 |
| Характеристики: | |
| Теги | |
| Рубрики | РАЗРАБОТКА Инструментарий разработчика |
| Кому |
Разработчик , Руководитель проекта |
| Тип файла | Архив с данными |
| Платформа | 1С 8.3 |
| Конфигурация | Универсальные |
| Операционная система | ОС |
| Страна | Не имеет значения |
| Отрасль | Не имеет значения |
| Налоги | Не имеет значения |
| Вид учета | Не имеет значения |
| Доступ к файлу | Платные (руб) |
| Код открыт | Нет |
Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы, интерфейс 8.5. Може...
24900 руб.
Инструменты для разработчиков 1С 8.3 и 8.5: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.
16500 руб.
Доработка для 1С:Управление торговлей 10.3 (релиз 10.3.88.3) добавляет поддержку маркировки новых категорий товаров согласно постановлениям Правительства РФ 2025–2026 гг. Конфигурация УТ 10.3 снята с поддержки — новые маркируемые категории ...
14640 руб.
Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести ...
22570 руб.
Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью...
15250 руб.
Создайте свой функциональный интерфейс в любой конфигурации 1С с помощью расширения Infostart Dashboard. Настраивайте панели виджетов с метриками, индикаторами и показателями на начальном экране. Узнайте возможность внедрения подсистемы ...
31720 руб.
Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на л...
17000 руб.
Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.
5000 руб.
Обработка предназначена для поиска, анализа и исправления отрицательных остатков во всех регистрах накопления информационной базы 1С.
6100 руб.
Сбор заказов, инвентаризация, проверка ценников, просмотр полной информации об остатках и ценах со смартфона Онлайн - все это содержит в себе решение 1С "Штрихкод-информер" (штрих-код чекер). Отправка данных со смартфона выполняется либо на...
3050 руб.