[2026-11-14] eagle: personal/projects/personal-os/personal-os-action-plan-2026-10-05.md personal/projects/personal-os/personal-os-fixes-2026-11-13.md personal/projects/personal-os/personal-os-production-acceptance.md personal/projects/personal-os/personal-os-repeat-audit-2026-11-13.md
This commit is contained in:
1 parent
f908f9aebb
commit
4d1f64562f
4 files changed
+49
-32
No files matched your search
@@ -1,6 +1,6 @@
|
||||
# Personal OS — план действий E1–E5
|
||||
|
||||
Текущее исполнение A01–A17: [журнал исправлений и оставшаяся приёмка](personal-os-fixes-2026-11-13.md), [повторный независимый аудит](personal-os-repeat-audit-2026-11-13.md). E4/E5 182/184 опубликованы; последний job `01a1d560-18e7-a2f1-c56f-e6658578b44d` завершён, результат ограничен устаревшим входом и закрытым рабочим днём. Выполняется устранение обнаруженного архитектурного отклонения: новые бизнес-правила переносятся в Python, оркестрация — в Windmill с сохранением состояний. Полная приёмка пока не подтверждена.
|
||||
Текущее исполнение A01–A17: [журнал исправлений и оставшаяся приёмка](personal-os-fixes-2026-11-13.md), [повторный независимый аудит](personal-os-repeat-audit-2026-11-13.md), [актуальная приёмка](personal-os-production-acceptance.md). E4v186/E5v185 опубликованы; четыре расписания переключены на Windmill13ноября. Штатный production `22b4e60b-974a-4fe2-ae64-2b8f74ec3420` без подставленного proposal завершён: ranked, rejected0, все39 действий обсуждений сохранены. Python/SQL-домен и Windmill-оркестрация подтверждены. Полная рабочая приёмка остаётся открытой: финальная UI-проверка, Outlook, сценарии открытого дня/доставки и пять реальных дней. Ниже сохранён план и история его уточнений.
|
||||
|
||||
## Уточнение плана после независимого аудита 13 ноября
|
||||
|
||||
|
||||
@@ -2,16 +2,14 @@
|
||||
|
||||
Состояние: **исполнение продолжается; полная приёмка пока не подтверждена**. Основание — [аудит 17 проблем](personal-os-implementation-audit-2026-11-13.md). Этот журнал описывает исправления после исходного аудита; старые проверки сохранены как история.
|
||||
|
||||
## Текущий контрольный срез — после E5 184
|
||||
## Текущий контрольный срез — E4v186/E5v185, 14 ноября
|
||||
|
||||
- E5 183 `01a1d540-9d02-97e0-627a-7804a314bb20` завершён с полным refresh_sources=true за1201,6с. Признак success не стал зачётом: фактический результат ошибочно отклонил10 подтверждённых запросов. Причина — вложенные сырые комментарии перезаписывали типизированные доказательства в индексе. Исправлены приоритет явных коллекций, независимость от порядка и отклонение конфликтующих привязок, включая waiting.
|
||||
- Проверенный replay в Windmill: ranked, rejected=[], planning_errors=[]. Опубликован E5 **184**,14:46:21Z. Настоящий повтор без packet/proposal `01a1d560-18e7-a2f1-c56f-e6658578b44d` завершён за34,9с: ranked, rejected=[], planning_errors=[]. Повтор использовал refresh_sources=false после полного прогона183. В нём Asana/GitHub уже устарели в локальном shadow, поэтому действия удержаны; этот запуск не закрывает проверку полноценного дневного плана. Обсуждения глобально свежие, но старые результаты метода удержаны до пересборки. После19:00 личный бюджет равен0.
|
||||
- Полный набор до следующих исправлений независимого аудита: **272 Node +106 Python, PASS, ноль пропусков**. Артефакты `/private/tmp/personalos-node-full-final.log`, `/private/tmp/personalos-python-full-final.log`. Повторный аудит затем воспроизвёл ложный зачёт дня при непринятом плане, отсутствие повторной проверки часов/версий Asana/GitHub при допуске плана и лишний grace для уведомлений. Эти случаи исправляются и проходят отдельное перекрёстное ревью.
|
||||
- Источники обсуждений перечитывает отдельный лёгкий observer каждые300с. Настоящий автоматический запуск подтверждён exit0. Receipt содержит точную версию пакета и метода; неизменный подтверждённый результат обновляется только после фактического перечитывания. Старый метод не становится новым. Текущий publisher начат14:36:34Z, PID28529, exec32742; не создавать дубликат. Очередь общей модели сериализована;65K-token запрос нельзя приписывать publisher без корреляции.
|
||||
- **Обязательный архитектурный пробел:** план18.10 требует Windmill и Python/SQL; отмены не найдено. Новые Node businesshandlers/оркестрация launchd не удовлетворяют этому требованию. Выполняется перенос доменных правил в Python при сохранении SQLite, IDs, history, решений и leases; существующий Node UI/API остаётся транспортом. Переключение расписаний — только после проверки Python-паритета и реального Windmill preview. До переключения старые расписания сохраняются, чтобы не создавать разрыв.
|
||||
- Python Clarify:19 проверок, сравнение рабочего источника166 записей полностью совпало с прежним алгоритмом. Python GTD:21 проверка прошла. Эти проверки не заменяют сквозную приёмку после смены оркестрации.
|
||||
Публикация, переключение четырёх расписаний и штатный production подтверждены. Полная приёмка открыта; актуальные критерии и ограничения — в [журнале приёмки](personal-os-production-acceptance.md). Независимый аудит всех A01–A17 и опубликованного прогона завершён; завершается отдельная UI-регрессия пересчёта.
|
||||
|
||||
Остаётся выполнить перенос новых обработчиков/оркестрации, проверить свежие Next TP и обязательства безAsana в опубликованном процессе, повторить полный набор и независимый аудит, сверить Outlook после разблокировки, затем принять5 настоящих рабочих дней. Автоматическое продолжение `personal-os` остаётся активным; зачёт пилота0/5 не изменён.
|
||||
- Job22b4e60b-974a-4fe2-ae64-2b8f74ec3420: success=true,67,822с, только mode=production. Ranked, rejected0;39 действий обсуждений,23 безAsana, ни одно не потеряно. NextTP присутствует; после19:00 назначено0мин.
|
||||
- Первый автоматический observer01a1d5b4-9289-5b45-54a2-d44c3741491a:26/26 текущих работ проверены. Пять исторических пустых тредов остаются missing; открытые обязательства этим выпадением не утрачены.
|
||||
- Deadline projection и устранение artifact-budget churn приняты независимой проверкой. Последний backend набор172Python PASS; Node283 PASS до последнейUI-правки. Методpublisher/state неизменёнe381eeee…; действия и человеческие решения не подменялись.
|
||||
- Остаются финальный UI/Node, безопасная загрузка последней правки отмены host subprocess, анализ ночных ошибок, живой Outlook, рабочие сценарии нового артефакта/доставки/отклонения и0/5реальныхдней. Слежениеactive15мин.
|
||||
|
||||
## Реализованные изменения
|
||||
|
||||
@@ -97,3 +95,15 @@ Dry-run и push ограничены `f/attend/attention_loop_e5__flow/**`, вк
|
||||
Следующий обязательный шаг: после завершения A12 и перезапуска только локальногоUI/API — опубликованный E5 безpacket/proposal/profile/policy, `refresh_sources=true`. Состояние самостоятельной очереди обсуждений после настоящего нового сбора также должно быть проверено; завершение старого анализа не засчитывается как свежесть.
|
||||
|
||||
Финальный живой E5 183 запущен: **01a1d540-9d02-97e0-627a-7804a314bb20**; вход `/private/tmp/personalos-e5-final-live-input.json`, `refresh_sources=true`, без packet/proposal/profile/policy. CLI session59853, журнал `/private/tmp/personalos-e5-final-live-run.log`. До завершения повтор не запускать.
|
||||
|
||||
|
||||
## Повторный аудит оркестрации и общей очереди — 13 ноября, вечер
|
||||
|
||||
- Полный прогон после переноса доменных правил и исправлений общего бюджета: 283 Node +157 Python, PASS, ноль пропусков. Последующие целевые тесты фиксируются отдельно до финального прогона.
|
||||
- E4 ранжирует сверки и действия одной очередью: 7, 12 и 30 обычных сверок больше не вытесняют срочный 1-Must. В committed входят только назначенные интервалы; backlog отражается отдельно. Сверка зависимости не считается выполненной без решения пользователя. Общий недельный остаток AoR применяется к сверкам и работе.
|
||||
- Три самостоятельных обязательства Zoom при закрытом Asana-parent сохранены. Неизвестная оценка времени ведёт в конкретную revision-bound форму уточнения с уведомлением; решение проверено на копии, рабочие решения пользователя не подменялись.
|
||||
- Реальные preview вне рабочих часов: production 01a1d5a2-09e7-a571-252d-8f04be0bc712 и clarify 01a1d5a6-7e64-00c5-65ad-03b6ca1ab888 вернули outside_working_hours без запуска модели. Host begin выполнен выделенным wk-planning-1542d1a3d695-q8qyT, tag personalos_planning, success=true, 194мс.
|
||||
- Реальный Windmill preview 01a1d5aa-59c2-23ff-7697-3d29151c5922 прошёл обе ветви планирования pass0/pass1 и точную проверку возвращённых E4/E5 результатов. Host был изолированным синтетическим стендом: это проверка маршрутизации второй ветви, а не возникновение настоящего пользовательского артефакта.
|
||||
- Занятый lock discussion-refresh больше не выдаётся обёрткой за completed analysis; observer сохраняет busy/already_running/superseded. Независимая проверка и четыре focused runtime-теста пройдены.
|
||||
- A07 дополнительно воспроизведён на обязательстве обсуждения с однозначным ISO-сроком: ранее срок терялся до E4. Отдельно доказан artifact-budget churn на пяти неизменившихся пакетах. Оба исправления и их независимая проверка выполняются до новой публикации.
|
||||
- Предыдущие E4v182/E5v184 и четыре LaunchAgent сохранены в .local/acceptance-pilot/cutover-2026-11-13. Публикация и переключение ещё не подтверждены этим разделом.
|
||||
@@ -1,20 +1,22 @@
|
||||
# Personal OS — аудит и приёмка
|
||||
|
||||
## Текущее состояние 13 ноября 2026
|
||||
## Текущее состояние 14 ноября 2026
|
||||
|
||||
**Полная приёмка открыта.** Факты, дефекты и проверки: [журнал исправлений](personal-os-fixes-2026-11-13.md), [повторный независимый аудит](personal-os-repeat-audit-2026-11-13.md), [исходные17 находок](personal-os-implementation-audit-2026-11-13.md).
|
||||
**Полная приёмка открыта.** Исходные A01–A17 исправлены в реализации и прошли повторные проверки; незавершённые рабочие сценарии перечислены ниже. Доказательства: [журнал исправлений](personal-os-fixes-2026-11-13.md), [повторный независимый аудит](personal-os-repeat-audit-2026-11-13.md), [исходный аудит](personal-os-implementation-audit-2026-11-13.md).
|
||||
|
||||
Опубликованы E4 version182 и E5 version184. Исправленная оркестрация находится в локальном E5 и проверяется до публикации; старые расписания ещё не переключены. Требование Windmill/Python/SQL не отменялось: новые доменные правила перенесены в Python, Node UI/API сохраняет транспорт к существующим источникам. История SQLite, IDs обязательств и решения пользователя сохраняются.
|
||||
Опубликованы **E4 v186 и E5 v185**. GET опубликованных flows подтвердил совпадение всех inline-скриптов и lockfiles с проверенным кодом. Зависимости не изменены: psycopg/psycopg-binary3.3.6, typing-extensions4.16.0. Новые доменные правила выполняются в Python/SQL; Windmill владеет порядком шагов и UUID, существующие Node API/UI обслуживают транспорт. История SQLite, ID обязательств и решения пользователя сохранены.
|
||||
|
||||
- Полный набор после основного переноса: **281 Node +130 Python, PASS, ноль пропусков**. После этого добавлены регрессии завершённой связанной задачи, рабочего окна и публикации; финальный набор после всех правок требуется повторить.
|
||||
- Реальный production-preview **01a1d57f-5a2a-3854-bf18-93909a5a9166** завершён с success=true за76,4с. Выполнены живое чтение источников, E4/E5, сохранение latest-plan, GTD, подготовка, наблюдение и уведомления. Сохранённый план имеет execution_owner=windmill и тот же runID. Asana, GitHub и глобальная коллекция обсуждений свежие. Это настоящий новый production-путь, но ещё локальный preview до замены опубликованной версии.
|
||||
- Прогон состоялся в21:22 Бишкек, после подтверждённой границы19:00: личный бюджет0, рабочих слотов0, ожидается одна ручная сверка5мин. Подготовка не создала нового черновика, поэтому второй проход этим прогоном не проверен. План не выдаётся за принятый рабочий день.
|
||||
- В результате воспроизведена потеря трёх самостоятельных обязательств Zoom из-за завершённого родительского таска. Исправление сохраняет их; повтор на том же входе дал rejected0. Неизвестная оценка времени остаётся неизвестной. Дорабатывается явный путь уточнения таких действий и уведомления о нём; придуманная оценка не подставляется.
|
||||
- Обсуждения обрабатываются текущим методом по частям. Оба связанных Next Top Priority уже повторно подтверждены; старые/изменённые результаты сохраняются с причиной удержания. Полнота всех пакетов не объявляется по глобально свежему времени коллекции. Лёгкий observer сверяет точный source revision без повторного вывода модели.
|
||||
- Zoom: Owned84 на5страницах, Shared0, Starred0;29 импортов в проверяемом периоде сопоставлены поSHA256, gaps=[]. UI MyTasks/WeeklyReview/WorkHistory проверен headless Chrome; доставка macOS уведомления подтверждена receipt. Эти проверки не означают, что пользователь просмотрел баннер.
|
||||
- Outlook free/busy ещё не принят на живом ответе: Mac заблокирован. Apple Calendar/EventKit не используется. Пилот — **0/5 настоящих принятых дней**. Субъективные решения пользователя не подменяются автоматическими.
|
||||
- В22:19 Бишкек13ноября четыре прежних LaunchAgent отключены и выгружены после проверки отсутствия работающих PID. Включены четыре расписания E5 с no_flow_overlap: production15мин, Clarify15мин по будням08:00–18:45, source-observer5мин, discussion-refresh30мин. Production дополнительно проверяет рабочее окно; автоматический Clarify повторно проверяет часы до модели. Сборщики Asana, claims, Zoom и Mattermost не отключались. Резервные копии и квитанции: `.local/acceptance-pilot/cutover-2026-11-13/`.
|
||||
- Настоящий опубликованный production job **22b4e60b-974a-4fe2-ae64-2b8f74ec3420** завершён success=true за67,822с. Единственный аргумент — mode=production, без подставленных packet/proposal. Штатный dispatcher создал UUID; latest-plan и квитанции содержат тот же UUID и execution_owner=windmill. E4 ranked, rejected0. Все39 действий обсуждений сохранены;23 безAsana:6 в отложенном списке и17 в удержании. NextTopPriority присутствует. После19:00 запланировано и committed0мин;150мин очереди сверок отражены как backlog, а не выполненная работа.
|
||||
- Текущая общая очередь ранжирует сверки и действия через E4. Обычные сверки не вытесняют срочный1-Must; применяется общий недельный остаток AoR. Непринятое человеческое решение не считается выполненной зависимостью. Незнакомое время участия ведёт к явному revision-bound уточнению.
|
||||
- Собственные сроки Zoom/MM доходят до E4/E5 с доказательством. Точные подтверждённые timestamps ограничивают окно; относительные, условные, отрицаемые и конфликтующие сроки требуют сверки. На настоящем входе указанного запуска было11 таких удержаний. Срок закрытой родительской задачи не переносится на самостоятельное обещание.
|
||||
- Обработка обсуждений завершила текущий метод; первый автоматический observer **01a1d5b4-9289-5b45-54a2-d44c3741491a** подтвердил26/26 обнаруженных работ, held_changed/input/method0. Исправлена нестабильность отрицательных проверок артефакта из-за лимита и порядка: неизвестный/неполный источник не становится подтверждённым. Пять исторических пустых MM-тредов вышли из14-дневного окна; они не содержали опубликованных действий и остаются отмеченными missing. Это не доказательство полного доступа ко всем историческим тредам.
|
||||
- Выделенный worker personalos_planning подтверждён реальными job receipts. Долгая модель работает в обычном python3 pool. Двухпроходный маршрут подтверждён настоящим Windmill preview **01a1d5aa-59c2-23ff-7697-3d29151c5922** с изолированным синтетическим host; рабочий production не создал новый артефакт и вернул prepare.changed=false. Синтетический стенд не выдаётся за рабочую проверку нового черновика.
|
||||
- Финальная UI-правка принята:8 браузерных сценариев и независимое ревью. Полный Node-набор14ноября:290/290 PASS, ноль пропусков; PostgreSQL-интеграции включены. Python после deadline/artifact fixes:172/172 PASS. Устаревшие рекомендации скрываются сразу; завершение пересчёта проверяется по актуальности и UUID, чужой/старый ответ не заменяет план, незаполненные другие формы сохраняются. Логи сохранены в `.local/acceptance-pilot/checks-2026-11-14/`.
|
||||
- Zoom: Owned84/5страниц, Shared0, Starred0;29 импортов проверены SHA256, gaps=[]. MyTasks/WeeklyReview/WorkHistory проверялись headless Chrome. Реальная macOS-доставка прежнего тестового уведомления подтверждена receipt; новая production-ветка вне рабочего окна не должна отправлять уведомление. Просмотр баннера пользователем не утверждается.
|
||||
- Outlook free/busy не принят на живом ответе: текущая проверка CGSSessionScreenIsLocked=true. Apple Calendar/EventKit не используется. Пилот — **0/5 настоящих принятых дней**; субъективные решения пользователя не подменяются автоматическими.
|
||||
|
||||
Автоматизация **personal-os** активна каждые15мин в этом чате, читает актуальный журнал, проверяет реальные jobs, исправляет дефекты и обновляет Obsidian. Завершение текущих анализов, публикация, переключение расписаний и сквозная приёмка ещё входят в работу; только ожиданием пяти дней состояние не объясняется.
|
||||
Автоматизация **personal-os** активна каждые15мин в этом чате. После переключения расписания Windmill продолжили работать. Повторная агентная UI-проверка прерывалась лимитом использования и возобновлена14ноября. Отсутствие ответа на heartbeat не является подтверждением выполненного аудита. Слежение сохраняется до фактической полной приёмки.
|
||||
|
||||
## Процесс и границы исполнения
|
||||
|
||||
@@ -30,11 +32,10 @@
|
||||
|
||||
## Что ещё требуется до зачёта
|
||||
|
||||
- Завершить текущую обработку обсуждений и проверить все сохраняемые обязательства, включая самостоятельные действия безAsana; уточнения должны иметь путь решения и уведомление.
|
||||
- Пройти финальный опубликованный E4/E5 после всех регрессий и фактический второй проход после черновика; переключить только заменяемые расписания, проверить отсутствие двух владельцев исполнения.
|
||||
- Подтвердить выделенную очередь исполнения для планирования, чтобы долгие сборщики/модель не занимали все исполнители. Старые контейнеры и чужие задания не останавливаются.
|
||||
- Повторить полный тестовый набор, независимый аудит и фактический UI после переключения. Проверить Outlook после разблокировки.
|
||||
- Пройти пять настоящих рабочих дней и оценить своевременность действий, закрытие открытых циклов, баланс направлений, цену обслуживания системы и субъективную посильность.
|
||||
- Догрузить последнюю правку отмены дочерних процессов host transport в безопасное окно без активных запросов. Завершить исправление диагностики ошибок host transport, проверить и опубликовать E5.
|
||||
- Зафиксировано7 исторических ошибок source-расписаний:5 observer и2 refresh. Четыре проверенных дочерних задания показываютHTTP400 без причины; точную причину задним числом подтвердить нельзя. После них чтение иrefresh восстановились,26/26работ подтверждены. Исправляется потеря диагностического ответа, а не выдумывается причина. Очередь claims/Clarify требует дальнейшего наблюдения; зелёный flow сам по себе не доказывает семантическую полноту.
|
||||
- Подтвердить Outlook после разблокировки. Пройти рабочий день с размещёнными действиями, подтверждённым сроком, новым черновиком и вторым пересчётом; проверить новую доставку запроса ревью и переработку отклонённого артефакта.
|
||||
- Пройти пять настоящих рабочих дней и оценить своевременность действий, закрытие открытых циклов, баланс направлений, цену обслуживания системы и субъективную посильность. Пропущенные наблюдения не засчитываются автоматически.
|
||||
|
||||
Ниже сохранена история. Старые сведения о заглушках, отдельном локальном planner, пропущенных тестах и прежних часах не описывают текущий код или подтверждённый production-preview.
|
||||
|
||||
|
||||
@@ -1,18 +1,24 @@
|
||||
# Повторный независимый аудит Personal OS
|
||||
|
||||
Срез от 13 ноября 2026 года, Asia/Bishkek. Номера соответствуют [первичному аудиту](personal-os-implementation-audit-2026-11-13.md).
|
||||
Срез от 13 ноября 2026 года, дополнен 14 ноября, Asia/Bishkek. Номера соответствуют [первичному аудиту](personal-os-implementation-audit-2026-11-13.md).
|
||||
|
||||
## Текущий независимый вердикт
|
||||
|
||||
**Полная приёмка открыта.** Новый маршрут Windmill записал рабочий снимок плана в production-preview на реальных источниках после закрытия дня. Штатный запуск опубликованной версии по расписанию, размещение действий в открытом дне, второй проход на реальном черновике, полнота разбора обязательств, Outlook и пилот **0 из 5** остаются открытыми.
|
||||
**E4 v186 и E5 v185 опубликованы, четыре расписания переключены на Windmill.** Опубликованный E5 записал план на реальных источниках после закрытия дня. Полная приёмка открыта. Размещение действий в открытом дне, второй проход на реальном черновике, полнота разбора обязательств, Outlook и пилот **0 из 5** остаются открытыми.
|
||||
|
||||
- **Штатный запуск опубликованного E5.** Диспетчер запустил `22b4e60b-974a-4fe2-ae64-2b8f74ec3420` с единственным аргументом `mode=production`. Windmill подтвердил успех за 67,8 секунды и версию 185. Записанный в 22:20 план побайтово совпал с копией запуска. UUID и ревизии обсуждений, уточнений и очереди проверок совпали с квитанцией и входом. Во входе 219 записей задач, 213 сигналов Asana, 39 карточек обсуждений и 9 запросов GitHub-ревью. Asana, GitHub и коллекция обсуждений прошли проверку свежести. Календарь остался частичным.
|
||||
- **Результат после 19:00.** Назначено 0 минут работы, 0 минут ревью и 0 суммарных минут с резервом. Очередь сохранила 150 минут на потом: 29 сверок обсуждений и 1 Asana Clarify. В плане 239 удержаний, 36 действий сверх ёмкости, 13 ожиданий и 0 отклонений. Видны 23 действия без привязки к Asana. Из трёх Next TP два ждут уточнения срока, одно — следующего окна. Одиннадцать актуальных карточек удержаны с причиной неоднозначного срока. Подготовка не изменила очередь, второй проход не потребовался. Квитанции GTD, наблюдения, проверки уведомлений и завершения присутствуют.
|
||||
- **Рабочий E5.** Production-preview `01a1d57f-5a2a-3854-bf18-93909a5a9166` завершился в 21:22 по Бишкеку. По квитанциям выполнены sync, snapshot, attention, фиксация входа, запись плана, GTD, подготовка, наблюдение, проверка уведомлений и завершение. `latest-plan.json`, `plan.json` и `published-plan.json` побайтово совпали и содержат этот UUID и `execution_owner=windmill`. Во входе было 217 записей задач, 213 назначений и сигналов Asana, 36 действий обсуждений и 8 запросов GitHub-ревью. Ревизии обсуждений, уточнений и очереди проверок совпали с закреплённым входом. Свежесть Asana и GitHub подтверждена. Календарь частичный. После 19:00 план выделил 0 минут и 0 слотов, 5 минут одного Clarify-ревью остались в перегрузке. В итоговом снимке видны 35 действий сверх бюджета, 233 удержанных, 13 ожиданий и 2 конфликта. Опубликованный ранее v184 и два диагностических preview также завершились с исчерпанным бюджетом.
|
||||
- **Архитектура.** В репозитории E5 управляет порядком шагов. Python обрабатывает канонический вход, правила допуска и версии источников, очередь обсуждений, бюджет проверок, Clarify, Weekly Review и проекцию принятых проектных утверждений. Существующие Node-модули передают запросы и читают источники. Пересчёт из UI направляется в Windmill с закреплённым UUID; запросы во время активного цикла сохраняются для следующего запуска. Рабочая запись подтверждена для запуска из preview. Опубликованная версия без режима `production` блокируется диспетчером. Публикация новой конфигурации, фактический запуск пересчёта из UI и переключение прежних LaunchAgents требуют проверки. [E5](../windmill/workspace/f/attend/attention_loop_e5__flow/flow.yaml) · [Порт входа](../scripts/acceptance-plan-input.py) · [Диспетчер](../scripts/windmill-dispatch.py)
|
||||
- **Два прохода E5.** Первый фиксирует снимок, E4 и ограничения дня. Хост сверяет фактический результат с этим входом и текущими ревизиями. При изменении очереди после подготовки черновика второй проход пересобирает вход и план до наблюдения и уведомления. В production-preview квитанция подготовки показала `changed=false`, второй проход не запускался. Квитанция уведомлений подтверждает вызов проверки доставки. Изолированные тесты покрывают два снимка, повтор, отмену, совпадение входа и отклонение устаревшего состояния. Найденный допуск прошедшего интервала исправлен: повтор исходного сценария удерживает план перед записью. [Хост](../scripts/planning-runtime.py) · [Тесты записи](../test/test_planning_runtime_publication.py) · [Проверка интервалов](../test/test_plan_state_windows.py) · [Тест отмены](../test/work-evidence-planning.test.js)
|
||||
- **Архитектура.** Опубликованный E5 управляет порядком шагов. Python обрабатывает канонический вход, правила допуска и версии источников, очередь обсуждений, бюджет проверок, Clarify, Weekly Review и проекцию принятых проектных утверждений. Существующие Node-модули передают запросы и читают источники. Сверка опубликованного кода и lock-файлов с рабочей копией прошла. Пересчёт из UI направляется в Windmill с закреплённым UUID. Запросы во время активного цикла сохраняются для следующего запуска. [E5](../windmill/workspace/f/attend/attention_loop_e5__flow/flow.yaml) · [Порт входа](../scripts/acceptance-plan-input.py) · [Диспетчер](../scripts/windmill-dispatch.py)
|
||||
- **Переключение расписаний.** В 22:19 по Бишкеку прежние LaunchAgents планировщика, Clarify, обновления обсуждений и наблюдения источников выгружены и отключены. Независимый GET подтвердил четыре включённых расписания Windmill в Asia/Bishkek с запретом перекрытия. После переключения `launchctl` подтвердил отсутствие этих четырёх агентов и наличие host runner, Zoom и Mattermost. Отдельные расписания Asana и claims сохранены. Внеурочные preview показали, что планировщик завершает запуск до открытия цикла, а Clarify не берёт назначение. Срабатывание расписаний в обычный рабочий день ещё предстоит наблюдать. [Расписание E5](../windmill/workspace/f/attend/attention_loop_e5_production.schedule.yaml) · [Расписание Clarify](../windmill/workspace/f/attend/attention_loop_e5_clarify.schedule.yaml) · [Граница запуска](../scripts/planning-runtime.py)
|
||||
- **Проверка 14 ноября.** Host runner и API плана ответили HTTP 200. В субботу API скрыл план предыдущего дня как устаревший. Последний завершённый запуск планировщика по расписанию вернул `outside_working_hours`, Clarify ожидает понедельника 08:00. За срез после переключения найдены пять неуспешных наблюдений и два неуспешных обновления обсуждений. В четырёх отдельно сверенных заданиях шаг хоста получил HTTP 400, текст ошибки не сохранился в результате Windmill. Причина отказов не установлена. После отказов обновление завершилось в 19:39, наблюдатель в 19:40 подтвердил 26 из 26 обнаруженных работ. [Шаг хоста](../windmill/workspace/f/attend/attention_loop_e5__flow/host_step.py) · [Наблюдатель](../scripts/observe-discussion-sources.py)
|
||||
- **Два прохода E5.** Первый фиксирует снимок, E4 и ограничения дня. Хост сверяет результат с этим входом и текущими ревизиями. При изменении очереди после подготовки черновика второй проход пересобирает вход и план до наблюдения и уведомления. В production-preview с рабочими данными квитанция подготовки показала `changed=false`, второй проход не запускался. Отдельный Windmill preview `01a1d5aa-59c2-23ff-7697-3d29151c5922` на тестовом хосте проверил порядок обоих расчётов: первая запись, изменение очереди, второй снимок и запись, затем GTD, наблюдение, уведомления и завершение. Реальный черновик в этой проверке не менялся. Повтор сценария с истёкшим интервалом удерживает план перед записью. [Хост](../scripts/planning-runtime.py) · [Тесты записи](../test/test_planning_runtime_publication.py) · [Проверка интервалов](../test/test_plan_state_windows.py) · [Тест отмены](../test/work-evidence-planning.test.js)
|
||||
- **A02/A03, дефект из production-preview и повтор на его сохранённом входе.** E5 отверг три открытых действия Zoom из-за признака завершения связанной задачи Asana. Одно действие включало постмортем на следующей неделе. После исправления все три исходных ID видны в удержаниях с причиной отсутствия оценки времени. Срок завершённой задачи больше не переносится на эти действия. Бюджет остался нулевым. Адресные Asana-комментарии к завершённой задаче сохраняются отдельно. Более ранний запрос без подтверждённого исхода ждёт сверки. Повтор на сохранённом рабочем входе и тесты подтвердили исправление. Рабочий повтор опубликованной версии открыт. [Ограничения E5](../windmill/workspace/f/attend/attention_loop_e5__flow/day_constraints.py) · [Сбор Asana](../work-demand.js#L108) · [Регрессия](../test/test_daily_planner.py)
|
||||
- **Обсуждения, фактический остаток.** Снимок источников в 21:15:28 по Бишкеку обнаружил 26 работ, сверил 5, отметил 21 изменившуюся и 5 пропавших. Причины пересекаются: у 21 менялся метод, у 4 вход. В сохранённом наборе из 31 работы только 6 записей имели точный хеш текущего метода, 5 из них содержали действия. Из 37 сохранённых действий проекция показала 12 открытых с актуальным источником, 23 удержанных после изменения источника, 1 удержанное после изменения метода и 1 закрытое. Очередь ревью показывала 0 минут при частично устаревших источниках. Это результат фильтра допуска. Статус обновления был `running`; подтверждения обработки оставшихся обязательств и измерения пропусков извлечения нет. [Наблюдатель источников](../scripts/observe-discussion-sources.py) · [Проекция](../scripts/discussion_queue.py) · [Бюджет](../scripts/pending_reviews.py)
|
||||
- **A06/A08, приоритет и общий бюджет.** В изолированном воспроизведении 7 обычных уточнений сорвали срок подтверждённого 1‑Must, а 12 вытеснили его из 90-минутного плана. После исправления 7, 12 и 30 уточнений оставляют 25-минутное окно для 1‑Must. Доказанное срочное ревью может идти раньше через E4. Зависимый шаг ждёт принятого результата. В занятые минуты входят только назначенные работа и ревью плюс резерв. Недельный остаток AoR общий, при нуле обычное ревью удерживается. Сохранённый после 19:00 рабочий вход дал 5 минут ожидающего ревью и 0 назначенных минут. [Рейтинг](../windmill/workspace/f/attend/roles_importance_e4__flow/rank.py) · [Размещение](../windmill/workspace/f/attend/attention_loop_e5__flow/day_constraints.py) · [Регрессии](../test/test_daily_planner.py)
|
||||
- **A07, срок из источника.** Точная дата и время с часовым поясом проходят от цитаты и ревизии обязательства до E4/E5. Подмена времени при неизменной цитате отклоняется. Относительное, условное и отрицаемое время направляется на ручное решение. На копии рабочих источников в 22:14 обнаружено 13 актуальных карточек с неоднозначным временем. Опубликованный E5 в 22:20 удержал 11 актуальных карточек на собственном закреплённом входе. В обоих срезах такие карточки не получили точный срок автоматически. Положительный сквозной сценарий точного срока проверен на тестовом обязательстве. [Правило](../scripts/discussion_temporal.py) · [Решение](../scripts/discussion_clarification.py) · [Проверки E4/E5](../test/test_discussion_temporal.py)
|
||||
- **Обсуждения, проверка артефактов.** В 22:00 наблюдатель сверил 21 из 26 обнаруженных работ. Пять удерживались из-за исчерпания бюджета чтения, формулировки отрицательного результата или порядка проверок. После исправления реальное перечитывание в 22:14:36 на временной копии сверило 26 из 26. Пять отрицательных результатов признаны эквивалентными при точном совпадении источника, обязательства и метода. Все 31 сохранённая модельная ревизия и действия сохранились без изменений. Пять прежних работ отсутствовали в текущем обходе и остались явно отмеченными. Пропущенные и недоступные проверки удерживаются, положительный результат требует полного доказательства. Проверен охват данного снимка. Полнота распознавания обязательств и качество модели требуют отдельной оценки. [Наблюдатель источников](../scripts/observe-discussion-sources.py) · [Доказательство артефакта](../scripts/artifact_observation.py) · [Проекция](../scripts/discussion_queue.py)
|
||||
- **Уточнение и claims.** В рабочем SQLite сохранён один исход Clarify `needs_review` с причиной `no_verified_next_action`. В позднем чтении 166 назначений были `source_unavailable`, текущих подтверждённых действий было 0. Есть проверенный путь до ручной сверки и изолированный положительный тест через E4/E5. Реальный автономный допуск конкретного модельного шага и обработка всей очереди пока не показаны. Рабочий повторный scan claims принял в очередь все 597 работ, после чего проверка обработчика вернула `busy`. 597 — объём поставленных работ. Полное применение и качество утверждений предстоит проверить. [Clarify](../scripts/clarification-runtime.py) · [Очередь](../scripts/clarification-queue.py) · [Claims](../scripts/work-claim-updates.js)
|
||||
- **Проверки этого среза.** Прошли 134 Python-теста и 48 целевых Node-тестов, включая паритет хеша и SQLite, перенос правил GTD, актуальность источников, бюджет ревью и устойчивые UUID. TCP-тест отмены также прошёл на временном порту. Рабочий Outlook, обычное окно доставки уведомлений, переключение расписаний и результат пятидневного пилота в этих прогонах не измерены.
|
||||
- **Проверки этого среза.** Независимый полный Python-прогон прошёл 172 теста. Полный Node-прогон перед двумя последними исправлениями прошёл 283 теста. Артефакты дополнительно прошли 12 целевых Node-тестов после правки. Фактический Windmill preview подтвердил выделенный worker `personalos_planning`. Рабочий Outlook, доставка в обычное рабочее окно и результат пятидневного пилота в этих прогонах не измерены.
|
||||
|
||||
### Предыдущий срез после перекрёстного ревью
|
||||
|
||||
@@ -49,7 +55,7 @@
|
||||
- **A04 — исправлено, рабочие чтения и локальный пересчёт.** При подтверждённых 90 минутах облегчённый день дал 45 минут. «Перенести» останавливает подбор, «слишком много» уменьшает объём, «не тот фокус» допускает явно выбранное действие. Граница буднего дня сохранена. [Ограничения](../windmill/workspace/f/attend/attention_loop_e5__flow/day_constraints.py#L114) · [Тесты](../test/test_daily_planner.py)
|
||||
- **A05 — непрерывное размещение проверено, календарная приёмка открыта.** 25-минутное действие не помещается в два раздельных окна по 20 минут. В рабочем чтении Asana подтверждён интервал отдельной встречи. Повторное ревью добавило проверку окна, истёкшего между расчётом и записью. Чтение Outlook и полный охват рабочих встреч требуют подтверждения. [Интервалы](../scripts/acceptance-plan.py#L16) · [Размещение](../windmill/workspace/f/attend/attention_loop_e5__flow/day_constraints.py#L341) · [Запись](../scripts/planning-runtime.py)
|
||||
- **A06 — правила реализованы, измеряемые входы частичны.** E4 использует подтверждённую цепочку родителей для AoR, версионированные карьерные правила, роль и ответственность. DDG SAM применяется в согласованной области Native Apps. Недельные доли и фактический WIP учитываются при наличии подтверждённых данных. Точность карьерного сопоставления и недельное соблюдение долей не измерены. [Вход E4](../windmill/workspace/f/attend/attention_loop_e5__flow/priority_input.py) · [Рейтинг](../windmill/workspace/f/attend/roles_importance_e4__flow/rank.py) · [Политика](priority-policy.json)
|
||||
- **A07 — исправлено в E4/E5, синтетические конфликты.** Подтверждённый срок и просрочка выделены, невместимое обязательство остаётся видимым с причиной. Next TP не наследует срок исходной оценки. Обещания без структурированного подтверждённого времени остаются ограничением источника. [Сроки](../windmill/workspace/f/attend/attention_loop_e5__flow/priority_input.py#L78) · [Конфликты](../windmill/workspace/f/attend/attention_loop_e5__flow/day_constraints.py#L361)
|
||||
- **A07 — сроки проходят от источника до E4/E5, реальные относительные обещания удерживаются.** Точная цитата либо явное решение пользователя определяют срок и его основание. Проверены подмена времени, просрочка, конфликт окна и отсутствие переноса срока завершённой задачи на самостоятельное обещание. Невместимое обязательство видно с причиной. В опубликованном запуске 11 карточек с неоднозначным временем направлены на сверку. Рабочий прогон с точным подтверждённым сроком остаётся открытым. [Сроки](../windmill/workspace/f/attend/attention_loop_e5__flow/priority_input.py) · [Проверки](../test/test_discussion_temporal.py)
|
||||
|
||||
## A08–A10. Доставка и критерии приёмки
|
||||
|
||||
|
||||
Reference in new issue
Block a user