DA-EX-001 / ПУБЛІЧНИЙ ПРИКЛАД
Один запит. Одна квитанція.
Історичний знімок обробника форми від 12 жовтня 2026: код, властивість і зафіксований результат. Поточний обробник має додатковий захист і перевіряється окремо.
13.10.2026 / УТОЧНЕННЯ ДО СПЕЦИФІКАЦІЇ
F-1 / F-2: прогалини покриття усунено.
У початковому прогоні 347 запитів гілка insert-race fallback не виконувалася. Також усі вхідні дані мали language = en. Твердження про перевірку цих шляхів у SPEC.md історичного пакета було надмірним. Нижче — результати додаткових регресійних перевірок; вони не приписуються старому прогону.
F-1 / Примусова гонка
Бар’єр затримує результати двох справжніх SELECT, доки обидва не прочитають відсутній запис. Потім один INSERT створює рядок, другий не змінює базу, а його обробник виконує повторний SELECT. Перевірено однакові й різні дані з кожним із двох можливих переможців: 201/200 або 201/409, одна збережена квитанція, незмінені дані переможця.
F-2 / Нормалізація мови
В історичному обробнику перевірено 14 варіантів: en, uk, відсутнє значення, null, порожній рядок, невідома мова, EN, en з пробілами, en-US, false, true, число, масив та об’єкт. Лише точне en зберігається як en; інші значення стають uk. Для кожного варіанта перевірено запис, повтор із канонічною мовою та конфлікт при її зміні. Поточний обробник додатково перевірено для de, DE, de-DE та de з пробілами: лише точне de зберігається як de; інші три варіанти стають uk. Так само перевірено fr, FR, fr-FR та fr із пробілами: лише точне fr зберігається як fr.
| Перевірка | Історичний обробник | Поточний обробник |
|---|---|---|
| Сценарії з бар’єром | 4 | 4 |
| Виконання гілки fallback / V8 | 4 | 4 |
| Варіанти мови | 14 | 22 |
| Додаткові запити | 50 | 74 |
| Перевірки тверджень у додаткових групах | 188 | 268 |
Негативні контролі: Нові перевірки відхилили три навмисні дефекти: видалення fallback, прийняття конфліктних даних і нормалізацію всіх мов до en.
Перевірки виконані локально на справжній SQLite з керованим порядком SQL-операцій в одному процесі. Це не перевірка розподіленої конкуренції чи Cloudflare D1. Робочий API не викликався. Початковий ZIP, маніфест, підписи та звіт від 12 жовтня залишені без змін.
Додатковий прогін: PASS · v24.19.0 ·
Точні результати та SHA-256 перевірених джерел
Команда регресійної перевірки у вихідному проєкті:
node scripts/verify-evidence-coverage.mjs{
"schema": "DA-EX-001/coverage-correction/v1",
"status": "PASS",
"finished_at": "2026-10-14T00:08:46.088Z",
"node": "v24.19.0",
"artifact_id": "924bcddb97a58f886a7e4bdd8b3165aae6e05a4ca3b8f91184ce559ab4e9a07b",
"baseline": {
"handler_requests": 347,
"checks": 1773,
"journal_events": 332,
"insert_race_fallback_executions": 0
},
"historical": {
"status": "PASS",
"checks": 188,
"handler_requests": 50,
"forced_race": {
"cases": 4,
"requests": 8,
"scenarios": [
{
"case": "identical_payloads",
"winner": 0,
"statuses": [
201,
200
],
"initial_reads_absent": 2,
"insert_changes": [
1,
0
],
"fallback_reads": 1,
"rows": 1,
"status": "PASS"
},
{
"case": "identical_payloads",
"winner": 1,
"statuses": [
200,
201
],
"initial_reads_absent": 2,
"insert_changes": [
1,
0
],
"fallback_reads": 1,
"rows": 1,
"status": "PASS"
},
{
"case": "conflicting_payloads",
"winner": 0,
"statuses": [
201,
409
],
"initial_reads_absent": 2,
"insert_changes": [
1,
0
],
"fallback_reads": 1,
"rows": 1,
"status": "PASS"
},
{
"case": "conflicting_payloads",
"winner": 1,
"statuses": [
409,
201
],
"initial_reads_absent": 2,
"insert_changes": [
1,
0
],
"fallback_reads": 1,
"rows": 1,
"status": "PASS"
}
]
},
"language_normalization": {
"cases": 14,
"requests": 42,
"scenarios": [
{
"input": "en",
"normalized": "en",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "uk",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "missing",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "null",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "empty",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "unknown",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "uppercase_en",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "padded_en",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "regional_en",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "false",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "true",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "number",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "array",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "object",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
}
]
},
"insert_race_fallback_executions": 4
},
"current": {
"status": "PASS",
"checks": 268,
"handler_requests": 74,
"forced_race": {
"cases": 4,
"requests": 8,
"scenarios": [
{
"case": "identical_payloads",
"winner": 0,
"statuses": [
201,
200
],
"initial_reads_absent": 2,
"insert_changes": [
1,
0
],
"fallback_reads": 1,
"rows": 1,
"status": "PASS"
},
{
"case": "identical_payloads",
"winner": 1,
"statuses": [
200,
201
],
"initial_reads_absent": 2,
"insert_changes": [
1,
0
],
"fallback_reads": 1,
"rows": 1,
"status": "PASS"
},
{
"case": "conflicting_payloads",
"winner": 0,
"statuses": [
201,
409
],
"initial_reads_absent": 2,
"insert_changes": [
1,
0
],
"fallback_reads": 1,
"rows": 1,
"status": "PASS"
},
{
"case": "conflicting_payloads",
"winner": 1,
"statuses": [
409,
201
],
"initial_reads_absent": 2,
"insert_changes": [
1,
0
],
"fallback_reads": 1,
"rows": 1,
"status": "PASS"
}
]
},
"language_normalization": {
"cases": 22,
"requests": 66,
"scenarios": [
{
"input": "en",
"normalized": "en",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "uk",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "missing",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "null",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "empty",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "unknown",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "uppercase_en",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "padded_en",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "regional_en",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "false",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "true",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "number",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "array",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "object",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "de",
"normalized": "de",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "uppercase_de",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "regional_de",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "padded_de",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "fr",
"normalized": "fr",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "uppercase_fr",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "regional_fr",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
},
{
"input": "padded_fr",
"normalized": "uk",
"statuses": [
201,
200,
409
],
"status": "PASS"
}
]
},
"insert_race_fallback_executions": 4
},
"mutation_controls": [
{
"id": "fallback_removed",
"result": "DETECTED",
"reason": "One real no-op insert followed by the fallback SELECT"
},
{
"id": "conflict_accepted",
"result": "DETECTED",
"reason": "Fallback response"
},
{
"id": "language_always_en",
"result": "DETECTED",
"reason": "en: different normalized language conflicts"
}
],
"bindings": [
{
"role": "historical_handler",
"sha256": "ecec0fe67f3df9658c4a42e20d9e2c8f0aabf60d9584ec225f877c57b4302cd0"
},
{
"role": "current_handler",
"sha256": "dacc2952c2876497a49d1c86394ad601c30430df551936d71d3b1418c9ef3b8d"
},
{
"role": "current_security",
"sha256": "c3b0adb9b8e4950edc72beb70719028e0387a48b2c4f635cecee9438759039b3"
},
{
"role": "current_body_reader",
"sha256": "4669c3ec9eed91a0d082a95a11433693481f073e39cb1878f325abcddc449c25"
},
{
"role": "current_fields",
"sha256": "62941d820fea3b01467c769a2e4f48bb2e28710e3e91c27ee30241badd565385"
},
{
"role": "current_migration",
"sha256": "9998207ea659d29bbb9ef501f835c68a22612244306bec5f07df85b1c78c415d"
},
{
"role": "probes",
"sha256": "71890850c625a796cce034edb4198d57f9e3cf4e8d0ed3989a063d940f9e310f"
},
{
"role": "runner",
"sha256": "b0eb82555abb59927d67d530e369c492f5975bf60c1bf2bf423b3e66dbc24f29"
}
],
"production_requests": 0,
"limits": [
"Deterministically scheduled SQL statements in one process and one SQLite connection.",
"No claim about distributed scheduling, Cloudflare D1 or physical effects.",
"The original package and report are retained unchanged; these are additional probes.",
"Only the runtime shown in this result was executed here."
]
}01Твердження
Повтор не створює другого запису.
Поки запис збережено й не змінено, повтор валідного звернення з тим самим requestId і нормалізованим вмістом повертає початкову квитанцію. Інший вміст під тим самим ID відхиляється як конфлікт.
НОМЕР ЗВЕРНЕННЯ7a345678-1234-4234-9234-123456789abc
02Артефакт
Код, який можна відкрити.
Опубліковані файли зафіксовані в пакеті від 12 жовтня 2026. Вони не є поточною версією API після додавання HMAC, обмеження за IP та видалення через підтверджену сесію.
SHA-256 АРТЕФАКТУ
924bcddb97a58f886a7e4bdd8b3165aae6e05a4ca3b8f91184ce559ab4e9a07b03Властивість
Не більше одного запису на ключ.
∀ k · count(rows[k]) ≤ 1
Унікальний ключ PRIMARY KEY NOT NULL не дозволяє двом рядкам мати один ID. Обробник повертає збережену квитанцію лише за збігу полів; за розбіжності повертає 409.
Це інваріант за умови виконання обмежень SQLite. Результати нижче — обмежена перевірка реалізації, а не формальний доказ усього коду.
Архівна SPEC.md — з уточненням F-1 / F-2 вище → ↗04Перевірка
Результат фактичного запуску.
347викликів обробника
81послідовність × 4 запити
16одночасних викликів в одному процесі
1перевірка після повторного відкриття бази
Повний перебір слів довжини 4 над A / B / C: два різні валідні звернення з одним ID та звернення без згоди. 347 = 5 + 324 + 16 + 2. Контрольні запити + 81 × 4 запити + одночасні виклики + створення й повтор після відкриття бази.
| Контрольний крок | HTTP | Записів до → після | Спостереження |
|---|---|---|---|
| Перше надсилання | 201 | 0 → 1 | Створено один запис |
| Точний повтор | 200 | 1 → 1 | Та сама квитанція |
| Повтор після нормалізації | 200 | 1 → 1 | Та сама квитанція |
| Зміна вмісту, той самий ID | 409 | 1 → 1 | Конфлікт, запис збережено |
| Відсутня згода | 400 | 1 → 1 | Відхилено, запис збережено |
Перевірте зв’язок із файлами.
Кнопка заново обчислює SHA-256 отриманих файлів і порівнює їх із зафіксованим маніфестом. Це перевірка цілісності у вашому браузері; серверні тести повторюються командою нижче.
У цьому браузері ще не перевірено.
10 файлів вмісту + manifest.json = 11 файлів ZIP
- README.md—
- SPEC.md—
- artifact/app/api/inquiries/route.ts—
- artifact/drizzle/0000_parallel_swordsman.sql—
- artifact/lib/inquiries.js—
- artifact/lib/inquiry-fields.js—
- fixtures.json—
- package.json—
- report.json—
- verify.mjs—
SHA-256 МАНІФЕСТУ
797f9a0c63a718c324f25f58b12a70c3441675358321b4d3c505b078c14954c0Виберіть оригінал або відредаговану копію. Файл обробляється на вашому пристрої та не завантажується на сервер.
Файл ще не вибрано.
Очікуваний SHA-256 обробника
ecec0fe67f3df9658c4a42e20d9e2c8f0aabf60d9584ec225f877c57b4302cd0SHA-256 вибраного файлу
Відтворіть результат самостійно.
Розпакуйте ZIP у нову папку й запустіть команду. Потрібен Node.js 24 або новіший. Залежностей npm немає. Запуск використовує тимчасові SQLite-бази та створює verification.local.json.
node verify.mjsZIP SHA-256
4dba2dd9b34e0e39bbc859e5ac7f4cd9bb8b42ab12246736edbdafe919de57daВІДТВОРЕННЯ / ТИМ САМИМ ВИКОНАВЦЕМ
Той самий пакет. Той самий метод.
Публічний ZIP завантажено й повторно запущено без змін. Підтверджено цілісність пакета та відтворюваність наявного прогону в зазначеному середовищі.
- Незалежна зовнішня перевірка
- Не виконана
- Поведінкове покриття
- Ті самі 347 запитів; нових сценаріїв немає
- Завантажений ZIP
- Точний збіг SHA-256
- Початкові файли
- 11 із 11 без змін
Цей повтор не встановлює повноту тестів, новизну чи складність властивості та не посилює висновки щодо готовності програм.
Повторення під час розробки сайту ·
Виконавець — Codex у процесі розробки сайту. Нова папка на тому самому хості; перевірка на іншій машині та ізоляція мережі не заявляються.
Як пораховано перевірки тверджень і що означає PASS?
Статус збереженого звіту: PASS.
1 773 перевірки тверджень (assertions) = 1 763 перевірки початкового прогону + 10 перевірок хешів файлів. Це кількість виконаних перевірок тверджень, а не унікальних сценаріїв. PASS означає, що цей набір завершився без порушення своїх перевірок; він не засвідчує повноту набору.
Чому перший порівнювач повернув FAIL?
Час виконання змінюється. У групі одночасних запитів також може змінюватися індекс запиту, що створив запис. В обох прогонах збережено один рядок: одна відповідь 201 та п’ятнадцять 200. Послідовні сценарії порівнюються зі збереженням порядку.
Перший порівнювач помилково вимагав однакового переможця. Він повернув FAIL, хоча незмінений перевіряльник пройшов усі перевірки. Критерій уточнено відповідно до заявленої властивості; початковий результат збережено.
ZIP SHA-256
33e792457b56f56f4ef2a5ad9971deaa2133eb2ca4f30604f6baf4962329dfdeНаступний крок — відтворення іншою людиною на іншій машині з атрибутованим звітом: виконавець, середовище, команда, хеш пакета, результат і межі. Такого звіту тут ще немає. Оцінка повноти тестів і змістовності властивості потребує окремого аналізу специфікації та сценаріїв.
05Межі
Що саме цей результат встановлює.
- Перевірено наведені файли на 347 контрольних запитах. Це не перебір усіх довільних HTTP-входів.
- Початкові 16 одночасних викликів не ввійшли в insert-race fallback; усі дані мали en. Додаткові проби F-1 / F-2 наведені вище. Розподілена конкуренція й Cloudflare D1 не перевірялися.
- Базу закрито й відкрито штатно. Аварійне вимкнення, втрата живлення та відновлення після збою не перевірялися.
- Квитанція підтверджує запис у базі, але не прочитання звернення, доставку повідомлення чи фізичну дію.
Перевірку підготовлено й виконано під час розробки цього прикладу. Незалежний зовнішній аудит не проводився.
Хеші пов’язують байти з опублікованим маніфестом. Вони не замінюють незалежний підпис видавця.
Приклад стосується механізму цього сайту й не є підтвердженням готовності інших програм.
