Заменить копирование непосредственно с домена именованными сохранёнными UTM-настройками в приватном хранилище админки, независимо от Git. Перед значком скрытия домена — значок сохранения; имя обязательно. В блоке копирования выбирать сохранённый набор, получателей по-прежнему отмечать чекбоксами. Предусмотреть удаление сохранённых наборов.
Уточнение владельца: набор включает исключительно UTM (варианты, веса, default). Не включает host, заметки и файлы сетов; заметки не меняются при сохранении/применении. Прежнее правило сохраняется: отсутствующая группа источника не удаляет группу получателя.
До реализации согласовать существенные развилки и эскиз. Сопоставить все пути редактора/копирования/очереди/CAS/ошибок/скрытых доменов; после реализации выполнить реальный UI-сценарий создания→выбора→применения→удаления и регрессию. Спецификацию/план и итог записать в KB, решения — комментариями сюда. Отдельная открытая #27 касается воспроизводимости clean-build, не меняет требования этой задачи.
Заменить копирование непосредственно с домена именованными сохранёнными UTM-настройками в приватном хранилище админки, независимо от Git. Перед значком скрытия домена — значок сохранения; имя обязательно. В блоке копирования выбирать сохранённый набор, получателей по-прежнему отмечать чекбоксами. Предусмотреть удаление сохранённых наборов.
Уточнение владельца: набор включает исключительно UTM (варианты, веса, default). Не включает host, заметки и файлы сетов; заметки не меняются при сохранении/применении. Прежнее правило сохраняется: отсутствующая группа источника не удаляет группу получателя.
До реализации согласовать существенные развилки и эскиз. Сопоставить все пути редактора/копирования/очереди/CAS/ошибок/скрытых доменов; после реализации выполнить реальный UI-сценарий создания→выбора→применения→удаления и регрессию. Спецификацию/план и итог записать в KB, решения — комментариями сюда. Отдельная открытая #27 касается воспроизводимости clean-build, не меняет требования этой задачи.
Уточнение владельца принято: сохраняемые настройки содержат исключительно UTM (варианты, проценты, default). Host, заметки, файлы сетов исключаются; при сохранении/применении заметки остаются неизменными. Текущий Copy::project включает host, поэтому новый поток должен явно его исключать; очередь/CAS/backup/readback и сохранение отсутствующих групп получателя остаются. Создан черновик KB «2026-10-26 Именованные UTM-настройки — 32». Уточняется единственная существенная развилка: снимок текущих полей, включая неопубликованные правки, или только сохранённый на хостинге конфиг. Реализация зависимой части не начата.
Уточнение владельца принято: сохраняемые настройки содержат исключительно UTM (варианты, проценты, default). Host, заметки, файлы сетов исключаются; при сохранении/применении заметки остаются неизменными. Текущий Copy::project включает host, поэтому новый поток должен явно его исключать; очередь/CAS/backup/readback и сохранение отсутствующих групп получателя остаются. Создан черновик KB «2026-10-26 Именованные UTM-настройки — 32». Уточняется единственная существенная развилка: снимок текущих полей, включая неопубликованные правки, или только сохранённый на хостинге конфиг. Реализация зависимой части не начата.
Владелец выбрал сохранение текущих полей таблицы, включая неопубликованные правки. Сохранение набора не пишет config на хостинг. Альтернатива брать только сохранённый конфиг отклонена. Короткий дизайн добавлен в KB: дискета перед глазиком→обязательное имя; выбор набора вместо домена, рядом удаление; получатели/очередь/CAS/резерв сохраняются. Для согласования предлагаются запрет дублирующихся имён без молчаливой перезаписи и подтверждение удаления выбранного набора; удаление не меняет сайты и уже запущенные задания. Продуктовый код пока не менялся.
Владелец выбрал сохранение текущих полей таблицы, включая неопубликованные правки. Сохранение набора не пишет config на хостинг. Альтернатива брать только сохранённый конфиг отклонена. Короткий дизайн добавлен в KB: дискета перед глазиком→обязательное имя; выбор набора вместо домена, рядом удаление; получатели/очередь/CAS/резерв сохраняются. Для согласования предлагаются запрет дублирующихся имён без молчаливой перезаписи и подтверждение удаления выбранного набора; удаление не меняет сайты и уже запущенные задания. Продуктовый код пока не менялся.
Владелец согласовал короткий дизайн и поручил реализацию. Дополнение: набор — настройки в вакууме. Никакой связи с доменом в хранилище: не сохранять source_domain, target_id, происхождение или ссылку на подключение. Только собственные ID/название и UTM. Подготовка берёт текущие поля таблицы, но API создания принимает лишь имя и объект UTM, без source. Получатели выбираются только в момент применения; очередь фиксирует значения независимо от жизненного цикла набора. План исполнения #32: тесты RED→хранилище/API/копирование→UI→backend+native регрессия→review→production→KB/закрытие.
Владелец согласовал короткий дизайн и поручил реализацию. Дополнение: набор — настройки в вакууме. Никакой связи с доменом в хранилище: не сохранять source_domain, target_id, происхождение или ссылку на подключение. Только собственные ID/название и UTM. Подготовка берёт текущие поля таблицы, но API создания принимает лишь имя и объект UTM, без source. Получатели выбираются только в момент применения; очередь фиксирует значения независимо от жизненного цикла набора. План исполнения #32: тесты RED→хранилище/API/копирование→UI→backend+native регрессия→review→production→KB/закрытие.
Реализован независимый реестр id/name/utm без происхождения/привязок. API получает только имя+UTM; Copy получает preset и версии получателей. Только UTM, host/notes/metadata/отсутствующие группы сохраняются. Backend RED→GREEN, composer test PASS (483 строки). Native CUA: пустое имя/ошибка/исправление, черновик80/20 при невалидном host без публикации, применение b, дубликат с сохранённым вводом. Новый Docker UI-test: draft→save→apply2→reload, anyrecipient, canceldelete+actualAPIdelete, мобильная ширина.
Независимый review нашёл две Important UI-гонки: 401 во время сохранения оставлял controls disabled; GET списка+DELETE мог оставить loading навсегда. Обе воспроизведены RED в браузерном тесте, исправлены (reenable при openPreset; delete disabled+guard во время loading), полный тест GREEN. Повторный review: существенных замечаний нет.
Регрессии PASS: manual variants, percent, matrix (lateGET/CAS/offline/partialcopy/notes), targetvisibility/order/drag, session-jobs, read-status, linkbuilder, notes, ZIP new+replace, verifiedrefresh. Две ошибки запуска были только harness: неверный путь Chromium и отсутствующий VALID_ZIP, исправлены и сценарии повторены успешно. Диагностический root-worker создал root-only job на локальном стенде; владелец только тестового state восстановлен997:987, production не затрагивался. Готовится выпуск с прежним точным runtime+lock; clean-build#27 отдельно открыт.
Реализован независимый реестр id/name/utm без происхождения/привязок. API получает только имя+UTM; Copy получает preset и версии получателей. Только UTM, host/notes/metadata/отсутствующие группы сохраняются. Backend RED→GREEN, composer test PASS (483 строки). Native CUA: пустое имя/ошибка/исправление, черновик80/20 при невалидном host без публикации, применение b, дубликат с сохранённым вводом. Новый Docker UI-test: draft→save→apply2→reload, anyrecipient, canceldelete+actualAPIdelete, мобильная ширина.
Независимый review нашёл две Important UI-гонки: 401 во время сохранения оставлял controls disabled; GET списка+DELETE мог оставить loading навсегда. Обе воспроизведены RED в браузерном тесте, исправлены (reenable при openPreset; delete disabled+guard во время loading), полный тест GREEN. Повторный review: существенных замечаний нет.
Регрессии PASS: manual variants, percent, matrix (lateGET/CAS/offline/partialcopy/notes), targetvisibility/order/drag, session-jobs, read-status, linkbuilder, notes, ZIP new+replace, verifiedrefresh. Две ошибки запуска были только harness: неверный путь Chromium и отсутствующий VALID_ZIP, исправлены и сценарии повторены успешно. Диагностический root-worker создал root-only job на локальном стенде; владелец только тестового state восстановлен997:987, production не затрагивался. Готовится выпуск с прежним точным runtime+lock; clean-build#27 отдельно открыт.
Ретроспективная сверка04.11.2026 в known-base#17 после восстановления Gitea из бэкапа. Последний turn чата «Админка прелендов»01a178c5-83d4-7a71-90e2-82fcb3af58a6 interrupted, но ПОСЛЕ сохранённого комментария «готовится выпуск» в нём есть успешный push9461943 в main, production-команды и сообщение об actualUI создании/применении набора на Stage. За неуспешным verify последовала успешная restore-stage+cleanup-preset+verify(exit0); сообщено точное восстановление5конфигов и приватного state. Сегодня подтверждено:9461943 предок восстановленного mainb4c4a2c; UtmPresets.php действительно хранит независимые id/name/utm без доменных связей. В базу добавляется отдельный восстановленный итог с точными границами. Это исторические сведения, не новая runtime/UI-проверка; задача остаётся OPEN до актуального postflight/итога, повторно реализовывать наборы не нужно. Секреты/production/конфиги сегодня не менялись.
Ретроспективная сверка04.11.2026 в known-base#17 после восстановления Gitea из бэкапа. Последний turn чата «Админка прелендов»01a178c5-83d4-7a71-90e2-82fcb3af58a6 interrupted, но ПОСЛЕ сохранённого комментария «готовится выпуск» в нём есть успешный push9461943 в main, production-команды и сообщение об actualUI создании/применении набора на Stage. За неуспешным verify последовала успешная restore-stage+cleanup-preset+verify(exit0); сообщено точное восстановление5конфигов и приватного state. Сегодня подтверждено:9461943 предок восстановленного mainb4c4a2c; UtmPresets.php действительно хранит независимые id/name/utm без доменных связей. В базу добавляется отдельный восстановленный итог с точными границами. Это исторические сведения, не новая runtime/UI-проверка; задача остаётся OPEN до актуального postflight/итога, повторно реализовывать наборы не нужно. Секреты/production/конфиги сегодня не менялись.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Заменить копирование непосредственно с домена именованными сохранёнными UTM-настройками в приватном хранилище админки, независимо от Git. Перед значком скрытия домена — значок сохранения; имя обязательно. В блоке копирования выбирать сохранённый набор, получателей по-прежнему отмечать чекбоксами. Предусмотреть удаление сохранённых наборов.
Уточнение владельца: набор включает исключительно UTM (варианты, веса, default). Не включает host, заметки и файлы сетов; заметки не меняются при сохранении/применении. Прежнее правило сохраняется: отсутствующая группа источника не удаляет группу получателя.
До реализации согласовать существенные развилки и эскиз. Сопоставить все пути редактора/копирования/очереди/CAS/ошибок/скрытых доменов; после реализации выполнить реальный UI-сценарий создания→выбора→применения→удаления и регрессию. Спецификацию/план и итог записать в KB, решения — комментариями сюда. Отдельная открытая #27 касается воспроизводимости clean-build, не меняет требования этой задачи.
Уточнение владельца принято: сохраняемые настройки содержат исключительно UTM (варианты, проценты, default). Host, заметки, файлы сетов исключаются; при сохранении/применении заметки остаются неизменными. Текущий Copy::project включает host, поэтому новый поток должен явно его исключать; очередь/CAS/backup/readback и сохранение отсутствующих групп получателя остаются. Создан черновик KB «2026-10-26 Именованные UTM-настройки — 32». Уточняется единственная существенная развилка: снимок текущих полей, включая неопубликованные правки, или только сохранённый на хостинге конфиг. Реализация зависимой части не начата.
Владелец выбрал сохранение текущих полей таблицы, включая неопубликованные правки. Сохранение набора не пишет config на хостинг. Альтернатива брать только сохранённый конфиг отклонена. Короткий дизайн добавлен в KB: дискета перед глазиком→обязательное имя; выбор набора вместо домена, рядом удаление; получатели/очередь/CAS/резерв сохраняются. Для согласования предлагаются запрет дублирующихся имён без молчаливой перезаписи и подтверждение удаления выбранного набора; удаление не меняет сайты и уже запущенные задания. Продуктовый код пока не менялся.
Владелец согласовал короткий дизайн и поручил реализацию. Дополнение: набор — настройки в вакууме. Никакой связи с доменом в хранилище: не сохранять source_domain, target_id, происхождение или ссылку на подключение. Только собственные ID/название и UTM. Подготовка берёт текущие поля таблицы, но API создания принимает лишь имя и объект UTM, без source. Получатели выбираются только в момент применения; очередь фиксирует значения независимо от жизненного цикла набора. План исполнения #32: тесты RED→хранилище/API/копирование→UI→backend+native регрессия→review→production→KB/закрытие.
Реализован независимый реестр id/name/utm без происхождения/привязок. API получает только имя+UTM; Copy получает preset и версии получателей. Только UTM, host/notes/metadata/отсутствующие группы сохраняются. Backend RED→GREEN, composer test PASS (483 строки). Native CUA: пустое имя/ошибка/исправление, черновик80/20 при невалидном host без публикации, применение b, дубликат с сохранённым вводом. Новый Docker UI-test: draft→save→apply2→reload, anyrecipient, canceldelete+actualAPIdelete, мобильная ширина.
Независимый review нашёл две Important UI-гонки: 401 во время сохранения оставлял controls disabled; GET списка+DELETE мог оставить loading навсегда. Обе воспроизведены RED в браузерном тесте, исправлены (reenable при openPreset; delete disabled+guard во время loading), полный тест GREEN. Повторный review: существенных замечаний нет.
Регрессии PASS: manual variants, percent, matrix (lateGET/CAS/offline/partialcopy/notes), targetvisibility/order/drag, session-jobs, read-status, linkbuilder, notes, ZIP new+replace, verifiedrefresh. Две ошибки запуска были только harness: неверный путь Chromium и отсутствующий VALID_ZIP, исправлены и сценарии повторены успешно. Диагностический root-worker создал root-only job на локальном стенде; владелец только тестового state восстановлен997:987, production не затрагивался. Готовится выпуск с прежним точным runtime+lock; clean-build#27 отдельно открыт.
Ретроспективная сверка04.11.2026 в known-base#17 после восстановления Gitea из бэкапа. Последний turn чата «Админка прелендов»01a178c5-83d4-7a71-90e2-82fcb3af58a6 interrupted, но ПОСЛЕ сохранённого комментария «готовится выпуск» в нём есть успешный push9461943 в main, production-команды и сообщение об actualUI создании/применении набора на Stage. За неуспешным verify последовала успешная restore-stage+cleanup-preset+verify(exit0); сообщено точное восстановление5конфигов и приватного state. Сегодня подтверждено:9461943 предок восстановленного mainb4c4a2c; UtmPresets.php действительно хранит независимые id/name/utm без доменных связей. В базу добавляется отдельный восстановленный итог с точными границами. Это исторические сведения, не новая runtime/UI-проверка; задача остаётся OPEN до актуального postflight/итога, повторно реализовывать наборы не нужно. Секреты/production/конфиги сегодня не менялись.