Перейти к содержимому

6. Представление поведения

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

Начало: пользователь или другая отдельно разрешённая операция запрашивает установку либо обновление расширения.

Поиск, установка, активация и вызов имеют отдельные проверки. Видимый кандидат ещё не является проверенным артефактом или разрешением на все команды. Доставка каталога независима от доставки файлов: адаптеры OCI, HTTPS и Git возвращают общий выпуск для проверки. ADR-0005, ADR-0007, ADR-0009

От записи каталога к активным командам
От записи каталога к активным командамПроверить полные представления CLI и допустимого MCP до атомарной публикации профиля. Установленные файлы сами по себе не разрешают предоставление инструментов или исполнение.Состояние профиля и ресурсовДоверенные источники артефактовSecurity Broker и допуск действийЗагрузчик расширенийСостояние профиля и ресурсовДоверенные источники артефактовSecurity Broker и допуск действийЗагрузчик расширений1. Получить допустимые ссылки на выпуски2. Определить точные данные выпуска3. Проверить допустимость установки4. Получить, проверить и подготовить неизменяемые артефакты5. Проверить допуск активации после проверки всего кандидата6. Опубликовать целостную ревизию с проверенными представлениями CLI и MCPОт записи каталога к активным командамПроверить полные представления CLI и допустимого MCP до атомарной публикации профиля. Установленные файлы сами по себе не разрешают предоставление инструментов или исполнение.Состояние профиля и ресурсовДоверенные источники артефактовSecurity Broker и допуск действийЗагрузчик расширенийСостояние профиля и ресурсовДоверенные источники артефактовSecurity Broker и допуск действийЗагрузчик расширений1. Получить допустимые ссылки на выпуски2. Определить точные данные выпуска3. Проверить допустимость установки4. Получить, проверить и подготовить неизменяемые артефакты5. Проверить допуск активации после проверки всего кандидата6. Опубликовать целостную ревизию с проверенными представлениями CLI и MCP
Компоненты и основания

Загрузчик расширений · Security Broker и допуск действий · Состояние профиля и ресурсов · Доверенные источники артефактов

ADR-0005 · ADR-0007 · ADR-0009 · ADR-0012 · ADR-0013

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

Путь установки также охватывает следующие отклонения:

СобытиеНеобходимое продолжение
Вызов совпал по времени с обновлениемЗахватить зафиксированную ревизию и ссылки на её ресурсы вместе. Вызов сохраняет выпуск и среду; новую ревизию могут использовать только последующие обращения, а текущие проверки доступа продолжают действовать
Два изменения начались от одной ревизии профиляФиксировать только относительно ожидаемой ревизии. Конфликт не смешивает части деревьев команд и не заменяет победившую конфигурацию
Не прошли проверка, распаковка или проверка вместимостиНе публиковать неполный выпуск или поколение-кандидат; сохранить текущий зафиксированный профиль без продления его действительности
Приложение остановилось во время публикации профиляВосстановить надёжно записанную транзакцию и установить её исход перед следующим изменением; отсутствие подтверждения не доказывает неудачу публикации

Это правила хранения и публикации из ADR-0007. Установка из Git или OCI не запускает сборочные скрипты издателя, обработчики checkout или контейнеры; требующему сборки расширению нужны подготовленные артефакты или отдельно разрешённый путь сборки.

Начало: вызывающая сторона обращается к объявленной команде активного профиля.

Управляемая команда получает типизированный ввод, один раз разобранный ядром. Явная прямая передача сохраняет массив аргументов без обработки оболочкой; при произвольных аргументах нужны права на всю программу. Альтернативные имена сохраняют каноническую идентичность и область доступа. ADR-0002, ADR-0006

Последовательность показывает успешный управляемый execute. Отказ проверки или принятая отмена ведёт к ограниченному завершению вместо следующих стрелок.

Управляемый вызов команды
Управляемый вызов командыУспешный execute с необязательной подготовкой языковой среды и запросом операции ядра. Окончательное завершение даёт один результат; ошибка или отмена останавливают успешный путь.Средства ядраПроцесс расширенияИсполнительSecurity Broker и допуск действийПоставщик среды выполненияВладелец жизненного циклаСостояние профиля и ресурсовМодель команд и диспетчерСредства ядраПроцесс расширенияИсполнительSecurity Broker и допуск действийПоставщик среды выполненияВладелец жизненного циклаСостояние профиля и ресурсовМодель команд и диспетчер1. Закрепить команду, выпуск и профиль; нормализовать объявленный вход один раз2. Создать проверенный неизменяемый вызов3. При необходимости: определить точный план среды4. Если нужна подготовка: проверить допустимость её действий5. При необходимости: подготовить, проверить и закрепить среду6. Проверить обязательный профиль исполнения; запустить и подтвердить сеанс7. Передать execute один раз в подтверждённом сеансе8. При запросе: передать операцию в рамках вызова9. Проверить область, задачу, расход и аудит; действие следует своему контракту фиксации10. Для этого запроса: передать разрешённую операцию11. Передать завершение и свидетельства остановки12. Вернуть свидетельства исполнения для окончательного завершения13. После ограниченной очистки и аудита: один неизменяемый результатУправляемый вызов командыУспешный execute с необязательной подготовкой языковой среды и запросом операции ядра. Окончательное завершение даёт один результат; ошибка или отмена останавливают успешный путь.Средства ядраПроцесс расширенияИсполнительSecurity Broker и допуск действийПоставщик среды выполненияВладелец жизненного циклаСостояние профиля и ресурсовМодель команд и диспетчерСредства ядраПроцесс расширенияИсполнительSecurity Broker и допуск действийПоставщик среды выполненияВладелец жизненного циклаСостояние профиля и ресурсовМодель команд и диспетчер1. Закрепить команду, выпуск и профиль; нормализовать объявленный вход один раз2. Создать проверенный неизменяемый вызов3. При необходимости: определить точный план среды4. Если нужна подготовка: проверить допустимость её действий5. При необходимости: подготовить, проверить и закрепить среду6. Проверить обязательный профиль исполнения; запустить и подтвердить сеанс7. Передать execute один раз в подтверждённом сеансе8. При запросе: передать операцию в рамках вызова9. Проверить область, задачу, расход и аудит; действие следует своему контракту фиксации10. Для этого запроса: передать разрешённую операцию11. Передать завершение и свидетельства остановки12. Вернуть свидетельства исполнения для окончательного завершения13. После ограниченной очистки и аудита: один неизменяемый результат
Компоненты и основания

Модель команд и диспетчер · Владелец жизненного цикла · Исполнитель · Поставщик среды выполнения · Security Broker и допуск действий · Средства ядра · Состояние профиля и ресурсов · Процесс расширения

ADR-0001 · ADR-0002 · ADR-0003 · ADR-0004 · ADR-0005 · ADR-0007 · ADR-0008 · ADR-0010 · ADR-0012 · ADR-0013 · ADR-0014 · ADR-0015 · ADR-0016

Нативное исполнение не требует языкового поставщика, если его привязке не нужен движок. Готовую среду скрипта поставщик проверяет и удерживает ссылкой; только отсутствующая поддерживаемая среда проходит разрешённую подготовку. ADR-0008

Если двум допущенным вызовам нужна одна отсутствующая среда, поддерживающий это поставщик может объединить подготовку в одну работу с собственными закреплёнными планом и сроком. Каждый ожидающий сохраняет свои права и срок; отмена одного не отменяет действующий запрос другого. Потеря владельца подготовки оставляет незавершённое состояние для сверки, а не готовую запись кэша или автоматически повторяемую установку. Объединение между процессами ядра требует объявленной поддержки координатора; иначе конкурирующий запрос получает предусмотренный ограниченный отказ из-за занятости. ADR-0008

Для управляемого процесса в Windows средство запуска должно подготовить закрытый канал, разрешённое наследование дескрипторов и надзор за процессом до продолжения приостановленного дочернего процесса. Если выбранное окружение не допускает такой подготовки, дочерний процесс останавливается, а канал закрывается; переход к незащищённому исполнению, управляющим сообщениям в stdout или неутверждённому транспорту недопустим. ADR-0003

Окружение вызывающегоПуть данных и взаимодействия
Интерактивный CLIЯдро владеет терминалом и передаёт ввод допущенному диалогу или представлению; конкурирующий запрос не забирает ввод другого вызова
CLI в конвейере или без терминалаПеренаправленные байты остаются данными команды, диагностика идёт отдельно, конец ввода обрабатывается по объявленному контракту. Обязательное неподдерживаемое взаимодействие завершается отказом без скрытого диалога или придуманного ответа
MCPПротокольные потоки принадлежат адаптеру приложения; расширение получает объявленные программные данные и возвращает согласованный результат. Его обычный вывод считывается в пределах программного профиля, а не добавляется в контекст агента как угаданный результат инструмента

Пути сохраняют смысл команды, но не делят владение терминалом и не предполагают одинаковой привязки потоков. ADR-0002, ADR-0010, ADR-0013

Начало: вызывающая сторона запрашивает справку или статическое дополнение. Базовая справка и статическое дополнение читают объявления без попытки исполнения. Необязательная контекстная справка — отдельный describe со своими правами, уже готовой средой и проверяемым структурированным ответом. Он не передаёт execute, не устанавливает среду и не обновляет учётные данные. Возврат к базовой справке, отмена и ошибки сохраняют смысл ADR-0002.

6.4 Установление и аннулирование полномочий

Заголовок раздела «6.4 Установление и аннулирование полномочий»

Начало: явный вход или выход, обновление учётных данных, защищаемая операция либо наблюдаемое изменение политики.

Вход устанавливает подтверждённую связь доверенной стороны и субъекта, а не разрешение на команду. Обновление токена не заменяет эту личность и не продлевает закреплённый срок её подтверждения. Выход фиксирует аннулирование перед очисткой; позднее обновление не восстанавливает сеанс. ADR-0011

У каждого защищаемого действия есть окончательная точка допуска после долгих проверок и обязательного аудита. Локальная закреплённая политика, однократные внешние решения и явно ограниченное повторное использование проходят эту точку. Наблюдённый отзыв запрещает новые допуски; устаревший ответ не снимает сохранённое требование актуальности источника. Уже допущенный внешний эффект нельзя считать отменённым. ADR-0012

При сбое обязательного поиска вызывающий получает недоступный или неполный результат, а не пустой успешный каталог. При сбое поставщика доступа новым защищаемым действиям нужны подтверждения, допустимые по уже выбранному контракту действительности; сбой не разрешает устаревшее повторное использование и не заменяет его локальными правилами. Заблокированное или недоступное обязательное хранилище учётных данных также даёт явный отказ; неинтерактивный вызов не может неожиданно открыть запрос разблокировки или входа. Запрет, невозможность установить решение и явное требование аутентификации сохраняют разный смысл. ADR-0005, ADR-0011, ADR-0012

Начало: допущенный клиент получает текущий список инструментов и вызывает одну точную объявленную привязку.

От поиска инструментов MCP к результату команды
От поиска инструментов MCP к результату командыПоиск не запускает код расширений. Точная привязка инструмента и актуальные полномочия вызывающего и задачи проверяются для каждого вызова.Владелец жизненного циклаПолномочия задач и общий расходМодель команд и диспетчерАдаптер MCPАгент или программный клиентВладелец жизненного циклаПолномочия задач и общий расходМодель команд и диспетчерАдаптер MCPАгент или программный клиент1. Запросить текущий допустимый список инструментов2. Прочитать одобренное представление без запуска расширений3. Вернуть имена точных привязок и схемы4. Вернуть ограниченный список инструментов5. Вызвать одну объявленную привязку с данными6. Закрепить независимо установленные полномочия и область задачи7. Отклонить устаревшую привязку; проверить общий типизированный вход8. Войти в тот же проверяемый синхронный жизненный цикл9. После исполнения и завершения: сохранить один исход и необязательные данные результата10. Вернуть адаптеру зафиксированный программный результат11. Если запрос ещё действует и его отмена клиентом не принята: отобразить результат без повтораОт поиска инструментов MCP к результату командыПоиск не запускает код расширений. Точная привязка инструмента и актуальные полномочия вызывающего и задачи проверяются для каждого вызова.Владелец жизненного циклаПолномочия задач и общий расходМодель команд и диспетчерАдаптер MCPАгент или программный клиентВладелец жизненного циклаПолномочия задач и общий расходМодель команд и диспетчерАдаптер MCPАгент или программный клиент1. Запросить текущий допустимый список инструментов2. Прочитать одобренное представление без запуска расширений3. Вернуть имена точных привязок и схемы4. Вернуть ограниченный список инструментов5. Вызвать одну объявленную привязку с данными6. Закрепить независимо установленные полномочия и область задачи7. Отклонить устаревшую привязку; проверить общий типизированный вход8. Войти в тот же проверяемый синхронный жизненный цикл9. После исполнения и завершения: сохранить один исход и необязательные данные результата10. Вернуть адаптеру зафиксированный программный результат11. Если запрос ещё действует и его отмена клиентом не принята: отобразить результат без повтора
Компоненты и основания

Модель команд и диспетчер · Владелец жизненного цикла · Агент или программный клиент · Адаптер MCP · Полномочия задач и общий расход

ADR-0002 · ADR-0004 · ADR-0007 · ADR-0010 · ADR-0013 · ADR-0014

Список возвращает текущее одобренное представление без запуска кода расширения. Вызов разрешает точную привязку инструмента, проверяет структурированные данные и связывает независимо установленную вызывающую сторону с задачей. Далее используется тот же синхронный жизненный цикл, что и для CLI. Метаданные соединения и текст модели не заменяют проверку личности. ADR-0013, ADR-0014

Устаревшая привязка, недостаточные полномочия или неподдерживаемое взаимодействие останавливают путь. При отмене транспорт прекращает ответ по правилам выбранного транспорта MCP, а ядро выполняет ограниченное по времени завершение и сохраняет результат. Повторное соединение не повторяет вызов. Постоянно работающий узел MCP не означает фоновых задач расширений. ADR-0004, ADR-0013

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

Действие с ограниченными последствиями
Действие с ограниченными последствиямиАктуальный допуск, общий резерв и устойчивое состояние согласуют отправку. Неизвестный внешний результат выясняется без слепого повторения действия.Защищённые ресурсыСредства ядраПолномочия задач и общий расходSecurity Broker и допуск действийСостояние профиля и ресурсовФиксация действий и сверка результатовВладелец жизненного циклаЗащищённые ресурсыСредства ядраПолномочия задач и общий расходSecurity Broker и допуск действийСостояние профиля и ресурсовФиксация действий и сверка результатовВладелец жизненного цикла1. Подготовить точное действие и получить связанное разрешение или согласие2. Сохранить подготовленную привязку; это ещё не допуск отправки3. Собрать текущие проверки прав, согласия, ресурса и аудита для окончательного допуска4. Проверить привязки задачи и общие пределы в той же операции допуска5. Согласовать барьеры задачи и отзыва в той же операции; не фиксировать отдельно6. Атомарно перепроверить допуск и устойчиво закрепить расход разрешения, резерв задачи и намерение отправки7. Только после подтверждённого совместного допуска: отправить точное действие8. Выполнить с условиями, обеспечиваемыми ресурсом9. Вернуть достоверные сведения либо сохранить неопределённость10. Учесть известный расход либо сохранить неизвестное состояние и резервы11. Необязательная отдельно разрешённая сверка существующего действия чтением состоянияДействие с ограниченными последствиямиАктуальный допуск, общий резерв и устойчивое состояние согласуют отправку. Неизвестный внешний результат выясняется без слепого повторения действия.Защищённые ресурсыСредства ядраПолномочия задач и общий расходSecurity Broker и допуск действийСостояние профиля и ресурсовФиксация действий и сверка результатовВладелец жизненного циклаЗащищённые ресурсыСредства ядраПолномочия задач и общий расходSecurity Broker и допуск действийСостояние профиля и ресурсовФиксация действий и сверка результатовВладелец жизненного цикла1. Подготовить точное действие и получить связанное разрешение или согласие2. Сохранить подготовленную привязку; это ещё не допуск отправки3. Собрать текущие проверки прав, согласия, ресурса и аудита для окончательного допуска4. Проверить привязки задачи и общие пределы в той же операции допуска5. Согласовать барьеры задачи и отзыва в той же операции; не фиксировать отдельно6. Атомарно перепроверить допуск и устойчиво закрепить расход разрешения, резерв задачи и намерение отправки7. Только после подтверждённого совместного допуска: отправить точное действие8. Выполнить с условиями, обеспечиваемыми ресурсом9. Вернуть достоверные сведения либо сохранить неопределённость10. Учесть известный расход либо сохранить неизвестное состояние и резервы11. Необязательная отдельно разрешённая сверка существующего действия чтением состояния
Компоненты и основания

Владелец жизненного цикла · Security Broker и допуск действий · Средства ядра · Состояние профиля и ресурсов · Защищённые ресурсы · Полномочия задач и общий расход · Фиксация действий и сверка результатов

ADR-0002 · ADR-0004 · ADR-0005 · ADR-0012 · ADR-0014 · ADR-0016

Подготовка связывает конкретные ресурсы и данные, не резервируя неограниченных будущих прав. При окончательном допуске ядро повторно проверяет полномочия и условия ресурса и резервирует общий расход задачи. Отправка и сверка используют идентификатор действия, выданный ядром, а не ID транспортного запроса. ADR-0014, ADR-0016

После потери ответа ресурс уже мог измениться. Ядро фиксирует неопределённость, предотвращает автоматический повтор и при наличии поддержки использует отдельно разрешённую операцию чтения состояния. Общая гарантия однократного исполнения или отката не подразумевается. Неподдерживаемые обязательные требования приводят к отказу до действия.

Начало: отмена вызывающей стороной, закрытие области владельца, истечение срока вызова или сбой в любом сценарии исполнения. Жизненный цикл: Подготовка → Запуск → Работа → Завершение → Завершено; более ранние отказ, сбой и отмена также ведут к завершению. Первая принятая причина отмены сохраняется. Срок завершения один и не возобновляется. Результат — succeeded, command_failed, rejected, execution_failed либо cancelled. Неполная очистка и неопределённые эффекты остаются явными; автоматического повтора команды нет. ADR-0004

Завершение закрывает допуск новых защищаемых действий. Ядро учитывает оставшийся вывод, обязательный аудит и использование ресурсов в первоначальном бюджете. Последующая сверка может уточнить внешнее действие, но не открыть завершённый вызов заново и не изменить его зафиксированный исход. ADR-0002, ADR-0016

Лимит одновременной работы может быть исчерпан до создания вызова; приложение получает ошибку допуска, а не выдуманный исход команды или запись в неограниченной очереди. В допущенном вызове очереди вывода и наблюдения не могут занять ресурсы, отведённые отмене и завершению. Если управление перестало продвигаться, сеанс завершается ошибкой, а надзор ограничивает остановку. Закрытие владеющей области приложения прекращает новые вызовы, завершает допущенную работу, затем освобождает зависимые собственные экземпляры в оставшийся срок закрытия. Неподтверждённая очистка остаётся явной и сохраняет защитные ссылки. ADR-0003, ADR-0010

Диаграмма

Перетаскивайте схему · + / − — масштаб · 0 — целиком · Esc — закрытьПеремещайте и увеличивайте схему двумя пальцами

100%