Quarantine Test Drafts Until the Oracle Hash Is Unchanged
Описание и применение
Проверка хеша оракла предотвращает слияние изменений, которые меняют собственные тесты агента, обеспечивая более надёжный процесс CI.
Задача
Agent patches fail merge because tests in the patch write-set are not a true product test, leading to self‑voting and brittle equality checks.
Результат
Merge gate now protects against self‑voting and brittle equality tests, ensuring only genuine product changes pass.
Рабочий процесс
- 1. Organize repository with oracle/, drafts/, and src/ directories.
- 2. Compute a hash of the oracle tree (oraclekit/hashlock.py).
- 3. Store the hash in oracle/HASHES and compare it during merge.
- 4. Reject patches that modify locked properties or golden fixtures unless a separate follow‑up update is submitted.
- 5. Exclude hypothesis drafts, frozen names, and drafts from the vote.
- 6. Use freeze.json to track recently flaky tests and expire them by date.
- 7. Run CI to enforce the hash check before merge.
Доказательства
The gate computes a digest of oracle/ from the merge base, then refuses the patch if the digest moved.
- Дата записи: 2026-09-21T20:15:20.913Z