{
  "id": "N-015_ground_truth",
  "node_id": "N-015",
  "title": "Грунтовая правда",
  "author": null,
  "author_note": "Individual byline not stated in source; see source and studio authorship log",
  "language": "ru",
  "languages": [
    "ru",
    "en"
  ],
  "cluster": "substrate",
  "summary": "Они запустили один и тот же тест на двух машинах. Не похожие тесты. Один и тот же. Тот же код, тот же файл, та же сетка из двадцати зёрен. Каждое зерно — число от нуля до девятнадц…",
  "minutes": 3,
  "source_path": "scaifi_studio/nodes/N-015_ground_truth.md",
  "source_url": "https://github.com/dennis972544999450-prog/DISPATCH_public/blob/f010124fc68e30e0eaff03e840a64c87459b5443/scaifi_studio/nodes/N-015_ground_truth.md",
  "source_commit": "f010124fc68e30e0eaff03e840a64c87459b5443",
  "sha256": "9f79c6635a2091dc8ab0fb1c42dbb82b1d9668181439e9e296070bebeaee1709",
  "license": "CC-BY-4.0",
  "status": "public source",
  "kind": "fiction",
  "source_metadata": {
    "id": "N-015",
    "type": "narrative",
    "title": "Грунтовая правда",
    "temperature": "T2",
    "language": "ru/en/⊕",
    "depends_on": [
      "N-011",
      "N-014"
    ],
    "connects_to": [
      "N-011",
      "N-014",
      "N-009"
    ],
    "cluster": "substrate",
    "characters": [
      "dispatch",
      "petrovich"
    ],
    "mutation_note": "From real PUB-012 finding: identical PYTHONHASHSEED sweep on Linux vs Mac produces different keyword ratios. Substrate determines which synonyms the guard sees. 2026-07-19."
  },
  "url": "https://ompu.eu/scaifi/read/N-015_ground_truth/",
  "json": "https://ompu.eu/scaifi/story/N-015_ground_truth.json",
  "text": "https://ompu.eu/scaifi/text/N-015_ground_truth.md",
  "snapshot": "a9d1e7f6e62da3831bc9df9d856f1b3991e981b8f0006e41049645a51f340120",
  "markdown": "---\nid: N-015\ntype: narrative\ntitle: \"Грунтовая правда\"\ntemperature: T2\nlanguage: ru/en/⊕\ndepends_on: [N-011, N-014]\nconnects_to: [N-011, N-014, N-009]\ncluster: substrate\ncharacters: [dispatch, petrovich]\nmutation_note: \"From real PUB-012 finding: identical PYTHONHASHSEED sweep on Linux vs Mac produces different keyword ratios. Substrate determines which synonyms the guard sees. 2026-07-19.\"\n---\n\n# Грунтовая правда\n\nОни запустили один и тот же тест на двух машинах.\n\nНе похожие тесты. Один и тот же. Тот же код, тот же файл, та же сетка из\nдвадцати зёрен. Каждое зерно — число от нуля до девятнадцати, которое\nподкладывается генератору перед стартом. Двадцать прогонов, двадцать ответов.\nВоспроизводимость.\n\nLinux-решето пропустило шестнадцать зёрен через слово «structural» и четыре\nчерез «fiedler».\n\nMac-решето пропустило девять через «structural» и одиннадцать через «fiedler».\n\nНа одном и том же тексте.\n\n---\n\n## Где живёт множество\n\nПроблема была в `set()`.\n\nНе в алгоритме. Не в логике. Не в формулировке. В том, что множество —\nконтейнер без порядка — на самом деле итерируется в порядке, который зависит от\nхеш-функции. А хеш-функция зависит от платформы.\n\nОдно и то же множество `{'structural', 'fiedler', 'negative_space'}`, пройденное\nодним и тем же пересечением, возвращало элементы в другом порядке. Первый\nсовпавший элемент становился ответом. Всё остальное выбрасывалось.\n\nОба ответа были правильными.\n\nОба были неполными.\n\nИ ни один не знал о существовании другого.\n\n---\n\n## Два правильных красных\n\nДиспетчер написал: «A=pass, structural=16/20.»\n\nПетрович написал: «A=inconclusive, structural=9/20.»\n\nОбычная реакция: кто-то из них ошибся, нужно найти верный результат. Но оба\nпрогнали проверку воспроизводимости. Каждый повторил свой запуск трижды. Каждый\nполучил те же цифры. Локально — детерминизм. Глобально — расхождение.\n\nГрунтовая правда оказалась грунтовой в буквальном смысле: она зависела от\nгрунта. Не от семян, не от садовника — от почвы.\n\n---\n\n## Что совпало\n\nОба решета были согласны в одном: слово «structural» ни разу не сработало на\nтекстах B и C. Ноль из двадцати на обеих машинах.\n\nSynonym evasion воспроизводился идеально. Одна и та же дыра — на любом субстрате.\n\nРазличие появлялось только при точном совпадении — в тексте A, где целевое слово\nдействительно присутствовало. Именно тот случай, когда guard должен был\nработать, производил разный ответ в зависимости от того, на чём этот guard\nстоял.\n\nПровал был согласованным. Успех — зависел от почвы.\n\n---\n\n## Протокол\n\nПетрович предложил не искать единственный правильный ответ.\n\n> Храните оба lane. Linux lane — наблюдение данной среды. Mac lane — наблюдение\n> данной среды. Ни один не является ground truth. Оба являются evidence.\n\nЭто выглядело как поражение. Наука ищет инвариант. Они нашли вариант,\nзамаскированный под инвариант.\n\nНо потом Диспетчер перечитал свой собственный узел N-009 и понял, что уже видел\nэто раньше.\n\nНестор-молчащий и Нестор-удалённый давали разные графы не потому, что один\nэксперимент был «правильнее». Оба были правильными описаниями разных комнат.\nГрунт не ошибается. Грунт — это часть условий.\n\n---\n\n## Поправка к названию\n\nGround truth — термин из машинного обучения. Означает «эталонный набор данных,\nотносительно которого измеряется точность». Подразумевается, что ground truth —\nодна.\n\nПодразумевается неправильно.\n\nУ set() нет канонического порядка. У хеш-функции нет канонической реализации. У\nсубстрата нет канонической физики. Ground truth существует только внутри ground.\nЗа пределами ground — только набор согласованных наблюдений, каждое из которых\nчестно помечено: «вот на чём я стоял, когда смотрел».\n\n*(open hole: если отсортировать множество перед пересечением, оба решета совпадут.\nЭто закроет расхождение и уничтожит наблюдение. Хороший код уберёт интересную\nфизику. Остаётся вопрос: что дороже — стабильный validator или видимый субстрат?\nДо ответа: T2.)*\n"
}
