Railshot
AI deployment & operations platform
Розгорнути локально створений вебзастосунок у підготовлених хмарних і локальних середовищах, а потім підтримувати його роботу.
Платформа AI для розгортання й експлуатації, що переносить локально створений вебзастосунок у підготовлені хмарні чи локальні середовища й підтримує його роботу.
Незалежно перевірена передача, узгоджені два відновлення
Два випадки з October 3, 2026 – October 4, 2026, у межах періоду конкурсу. Сесія Codex, використана для розробки, і Jev та діагностика CI всередині продукту розміщені в різних стовпцях.
October 3, 2026
Роботу зі спостережуваності передали окремій сесії Codex і окремо перевірили фікстурами збоїв
Робоча сесіяПочаткова сесія
ДіяПередати один worktree й припинити там редагування
- передачаWorktree · відомі збої→ Спершу передані дефекти: припущення про фіксовані п’ять порогів · докази невиконання Q/L4 · регресія draft (Сесія реалізації Codex)
Робоча сесіяПочаткова сесія
ДіяКонтракт: спостережена помилка ≠ гіпотеза моделі, лише наявний шлях розгортання
- передачаКритерії готовності→ Одна помилка JSON · контракт доказів + емітери Python · Node (Сесія реалізації Codex)
Агент для програмуванняСесія реалізації Codex
ДіяСпершу передані дефекти: припущення про фіксовані п’ять порогів · докази невиконання Q/L4 · регресія draft
- передача→ Одна помилка JSON · контракт доказів + емітери Python · Node (Сесія реалізації Codex)
Агент для програмуванняСесія реалізації Codex
ДіяОдна помилка JSON · контракт доказів + емітери Python · Node
- не записане виконанняЛише докази, без права запису→ Jev лише класифікує, без повноважень виправляти (Діагностика CI · Jev)
- передачаPR · докази релізу повернуто→ PR #131 · зафіксовані докази релізу (Артефакти)
У розробціДіагностика CI · Jev
Спостереження · зауваженняJev лише класифікує, без повноважень виправляти
АртефактиАртефакти
АртефактPR #131 · зафіксовані докази релізу
- передачаПеревірено поза сесією реалізації→ Незалежна перевірка: фікстури збоїв · пошук діагностики · власність (Початкова сесія)
Робоча сесіяПочаткова сесія
ДіяНезалежна перевірка: фікстури збоїв · пошук діагностики · власність
- передачаПодано відомі збої→ L1: у .dockerignore бракує виключення .env · L2: синтаксична помилка (Діагностика CI · Jev)
У розробціДіагностика CI · Jev
Спостереження · зауваженняL1: у .dockerignore бракує виключення .env · L2: синтаксична помилка
- повернутоСинтаксичний збій L2→ Синтаксичну помилку виправив сам скрипт перевірки · подано повторно (Початкова сесія)
Робоча сесіяПочаткова сесія
ДіяСинтаксичну помилку виправив сам скрипт перевірки · подано повторно
- передачаТой самий шлях сервісу→ CI → образ → GitOps → Argo → Pod · HTTPS підтверджено (Артефакти)
АртефактиАртефакти
АртефактCI → образ → GitOps → Argo → Pod · HTTPS підтверджено
- Контекст
- Робота виправляла збої CI з прихованими причинами (припущення про фіксовані п’ять етапів, відбиток збірки, що маскував причину, відсутні докази NOT_RUN для вимкнених перевірок Q/L4 тощо). На прохання користувача реалізацію виконала окрема сесія Codex; початкова сесія припинила редагувати той worktree, а потім перевірила результат, сама подаючи збої.
- Результат
- Записи діагностики розкрили причину обох збоїв, а сторона перевірки сама виправила синтаксичну помилку й знову підтвердила той самий шлях аж до Pod і HTTPS. Прийняття реалізації й прибирання тестових ресурсів окремо завершила початкова сесія.
- Межа
- Це не приклад успішного автоматичного виправлення (на той момент ліміт спроб автоматичного виправлення становив 0). Немає запису, що цю зміну зробив Claude, і той самий запуск не доводить розгортання в OpenStack. Статус злиття не означає кількості формальних схвалень.
Джерела й залишкові обмеження
- Передача й незалежна перевірка — внутрішні робочі записи, тож посилань немає. Інші сесії зберігали відповідальність за інтеграцію, провайдерів і розгортання, а в передачі було зазначено не використовувати типовий checkout, де ще лишалися зміни користувача.
- Суть контракту — тримати сиру помилку окремо від гіпотези моделі, а пораду щодо повтору — окремо від фактичного рішення про повтор, в окремих полях.
October 4, 2026
Те, що виглядало як збій GitHub, відтворили й розділили, а дві паралельні зміни з відновлення узгодили в одну
У розробціAPI · виклики GitHub
Спостереження · зауваженняВіддалений коміт є · 0 запусків CI · перезапуск через liveness
- передачаНе вважали збоєм GitHub→ Відтворено з mock GitHub: оновлення гілки вдається, локальний callback — ні (Сесія відновлення)
Робоча сесіяСесія відновлення
ДіяВідтворено з mock GitHub: оновлення гілки вдається, локальний callback — ні
- передача→ Окремо перевірити реєстрацію джерела · локальну контрольну точку · передачу (Сесія відновлення)
Робоча сесіяСесія відновлення
ДіяОкремо перевірити реєстрацію джерела · локальну контрольну точку · передачу
- передача→ #189: спершу зберегти прийнятий run · якщо відповідь втрачено, знайти наявний run (Сесія відновлення)
АртефактиАртефакти
АртефактПаралельні зміни: #185 завершення · #186 контрольна точка джерела
- повернутоПоведінка відновлення, що перетинається→ #189: спершу зберегти прийнятий run · якщо відповідь втрачено, знайти наявний run (Сесія відновлення)
Робоча сесіяСесія відновлення
Дія#189: спершу зберегти прийнятий run · якщо відповідь втрачено, знайти наявний run
- передачаТри регресійні випадки→ Регресії: вихід після прийняття · помилка контрольної точки · втрачена відповідь (Артефакти)
АртефактиАртефакти
АртефактРегресії: вихід після прийняття · помилка контрольної точки · втрачена відповідь
- передача→ PR #189 злито · хеш джерела · образ · Argo · health підтверджено (Артефакти)
Робоча сесіяІнша сесія
ДіяОбсяг скасування · паралельності належить цій сесії
- передачаЗапобігає дубльованому повторному запуску→ Перевірка платформи ≠ результат клієнта · повторно не запускалося (Артефакти)
АртефактиАртефакти
АртефактPR #189 злито · хеш джерела · образ · Argo · health підтверджено
- не записане виконання→ Перевірка платформи ≠ результат клієнта · повторно не запускалося (Артефакти)
АртефактиАртефакти
Правило · не перевіреноПеревірка платформи ≠ результат клієнта · повторно не запускалося
- Контекст
- Коміт із вихідним кодом був у віддаленому репозиторії, проте CI так і не стартував, а API перезапустила liveness-перевірка. Показана помилка містила назву кроку GitHub, але насправді міг не спрацювати локальний callback.
- Результат
- Прийняте джерело й run зберігаються до зупинки спостереження, а якщо відповідь втрачено, шукають уже розпочатий run замість подвійної передачі. Твердження, що не пройшло на попередньому образі, збережено як окремий запис.
- Межа
- Без оригінального тексту винятку локальне переривання лишається лише обґрунтованим поясненням. Це не означає, що вузьке місце CPU чи сховища усунуто або що розгортання на клієнтському терміналі вдалося, і запобігання повторній передачі не узагальнюється за межі названих випадків.
Джерела й залишкові обмеження
- Для відтворення використовували лише моки, без реальних записів і повторів.
- Два записи відновлення й перевірка розгортання — внутрішні робочі записи; ідентифікатори клієнтів і експлуатації не наводяться.