48 Hours of API Contract Drift: Field Notes from a Free Model on a Free Server
Описание и применение
Автоматический детектор изменений API, работающий на бесплатном сервере, использует cron‑задачу, JSON‑схему и LLM для простого резюме изменений. Он выявил реальные изменения и снизил ложные срабатывания после нормализации diff‑ов.
Задача
Detect silent API contract changes without a persistent database or orchestration platform.
Результат
The detector caught two real contract changes (author field flattening and timestamp format) while eliminating most false positives after normalizing diffs. It proved useful as a low‑cost triage tool but not a sole gatekeeper.
Рабочий процесс
- Set up a free server with systemd timer to run every 15 minutes
- Fetch API response and JSON Schema
- Validate response against schema with jsonschema
- Generate normalized diff (added, removed, type‑changed)
- Prompt free LLM with diff and example timestamp
- Receive plain‑English summary and impact rating
- Post summary to Slack webhook
Доказательства
The free server did what free servers do: it slept. My initial cron expression ran every 15 minutes, but the process was killed after two hours of inactivity.
Instead of feeding raw JSON snippets, I started passing a normalized diff—one line per field, with only three states: added, removed, or type-changed.
Twice in 48 hours the detector fired with a real signal. The first was a deprecated author object that became a flat list of strings.
The second was more subtle: the API started returning timestamps without timezone offsets.
- Дата записи: 2026-09-05T18:08:14.516Z