Four verbs

A worked run

Someone asked four different AI assistants what they thought of these four skills, collected the answers, and brought them back to be audited. This page is what happened — including the two findings the audit got wrong and had to reverse, and the defect the generator found in a proposal that three of the four assistants had praised.

Session date 2026-09-06 · Mizan v2.6.0 · Kıyas v1.4.0 · the entries behind this page are published as an excerpt; what is withheld is named — see The artefacts at the end.

The material

Four AI assessments, ~40 atomized claims.

The input was ordinary: four long, fluent, complimentary write-ups about this family of skills — one reading the architecture, two proposing ways to use Mizan's evidence tiers as a reward signal in LLM training, one reporting on the contents of this page. This is exactly the You → Mizan arrow on the front page: material that already exists, entering at the audit.

Atomization produced roughly forty checkable claims. In the first pass only fourteen were verifiable, because the audit ran against one repository and could not see the others. That number is a coverage statement, not a footnote: an audit that checks a third of the claims and reports like a full audit is the failure this method is named after.

Pass one — what the audit found

ClaimTierEvidence
Mizan is v2.5.0[R] SKILL.md declares 2.6. All four write-ups were one release behind.
The validator enforces R1–R21[R] The rule set is R1–R22. Off by one, in all four.
Identifier GEN:CIFT[Y] Appears in no file in any repository. The real identifier is G13.
The methodology audits itself; [R] rows survive[K] Two refuted rows in the product registry, undeleted.

The interesting part is not that four assistants were wrong. It is that they were wrong in the same direction by the same amount. Four independent sources do not drift one release stale together; a shared stale source does. The pattern reclassified the error: not fabrication, but a reconstruction presented as a reading.

The denominator

Across four long documents, the core claims of the project were refuted zero times in three of them. The negatives on offer were "add a diagram", "add a demo", "the theme could be more modern". One of the four was different, and said the sharp things: that Mizan is not a loss function but a labelling layer feeding one; that a [K] = 1.0 weight does not follow from Mizan mathematically; that a refuted registry row is not automatically a preference pair. Reporting one in four is worth more than quoting the three.

Pass two — the audit was wrong twice

This is the part worth reading.

The owner then pointed out that the live page and the other three repositories were available locally. Coverage went from 14 checkable claims to 31 — and two of the audit's own findings did not survive.

The audit saidWhat was true
[R] "there is no version table on the page" There is. The audit looked in Mizan/docs/index.md; the table lives in a different repository, the one that builds this site. Wrong artefact, confident verdict.
[Y] "U13 is fabricated" U13 is real — it is ux-mizan's conjunction rule, on this page. The reviewer was right and the auditor was not.

Both were demoted in place, dated and appended, with the original lines left standing. That is RR-11, and it is not decoration: an audit's own output is a claim set, and a method that exempts its own verdicts from the rule it enforces on everyone else has stopped being a method. Two findings out of three in that group were mine to withdraw.

What the second pass also produced was stronger evidence for the project than the four write-ups had assembled: the feedback loop from Mizan to Kıyas has actually fired (six real entries in refuted-patterns.yaml, each with a reason); ux-mizan carries an [R] on one of its own design decisions; and iskele_to_registry.py defaults its arbiter class to author, which under R8 permanently blocks promotion to [K]. That default is in code, not in prose — which is the whole point of the rule that says the script is what travels.

The uncomfortable finding: the repositories audit themselves more harshly than any of the four assistants audited them. Kıyas refuses to claim that it works. ux-mizan refutes its own design. İskele defaults to the arbiter that forbids proof. The praise was the part that violated the method.

The escape, and the control it produced

Counting a miss is not learning from one.

The stale-version error was recorded as an escape, ESC-M003 — and its class already existed. Two earlier entries in the same registry had recorded the identical lesson: an external AI's claim to have "read" or "researched" something is not evidence. Both entries are in the same registry, both predate this session. The lesson had been written down twice and never turned into a control. So it escaped a third time, in four places at once.

The control now exists: this page carries a build stamp in its footer — a date and a commit hash. It does not stop anyone from reading a cached copy. What it does is make the version part of the claim, so that "I read the page" becomes checkable instead of unfalsifiable. It is preregistered as YZ-004 with its own refutation condition: if reviews written after the stamp still repeat old numbers without naming a version, the stamp is not being read and the entry is refuted.

Handoff — Mizan to Kıyas

Five seeds, three discards, three independent bets.

The audit left two claims alive but untestable: that an evidence-gated loop outproduces a free one, and that mapping evidence tiers to fixed reward values improves reasoning. Both were registered as [S] with no refutation condition — which is where Kıyas is for. The negative constraints came from the registry itself: three candidates were discarded before generation finished, two of them as [GB] — relatives of patterns already refuted (a productised "epistemic dashboard"; a tier-native pretrained model, which falls in the same class as a kill-condition-free scaling ladder the registry had already refused).

SeedMoveCheapest refutation
K-01 six tiers give nothing a binary verdict does notlimitThree arms at equal compute: binary / three-valued / six-tier.
K-02 reward correct self-labelling, not the label's valueinversionCalibration error plus a capacity-matched generic auxiliary head.
K-03 run the pair pass at decoding, not in the losssubstrate swapAgainst equal-compute best-of-n — not against greedy.
K-04 test the gate by blinded replay of past hypothesesconstraint relaxationRanking AUC against a plausibility-only ranker.
K-05 the proposed constants open a safe harbourinversion (symmetry)Read off K-01's own run at zero extra cost.

The pair pass reports the number that matters: five seeds, three independent bets. K-01, K-02 and K-05 share one premise and one experiment. Listed as five they read as five; counted honestly they are three.

K-05 — the seed that cuts against the thesis

Every batch must carry one candidate that damages the position being argued for. Here it turned out to be the most load-bearing result of the session.

The reward mapping the assistants proposed assigns [S] — speculative — a value of 0.0. In a scheme whose other negatives carry real penalties, that leaves exactly one action that is always available and never punished. A policy under pressure converges on it: emit speculative steps, commit to nothing. The failure mode looks like epistemic humility, which is precisely why it would be hard to catch by reading outputs.

The mechanism follows directly from the proposed constants, so if it holds, the proposal is refuted as specified — the tier idea survives, the numbers do not. It costs nothing to measure: it is a second reading of an experiment already being run. None of the four assessments noticed it; two of them defended the constants.

Back to Mizan

The seeds returned as refutation conditions on the entries that lacked them. YZ-002 went from "threshold: none" to a locked numeric threshold calibrated against the harness's own seed-to-seed spread, plus two refutation conditions — K-01's and K-05's. YZ-001 received K-04's design and its precondition: the experiment cannot be run today, because it needs thirty settled hypotheses and the ledger holds six, none of them scored. Recording a test that cannot run yet is not a failure; pretending it can is.

The registry passes its own validator — R1–R22, no violations — and the seed batch passes Kıyas's, G1–G14, with one warning that is worth repeating rather than hiding: every seed in the batch landed at [H-aday], and a batch where nothing lands lower is usually a batch that skipped the sweep. Here the sweep did run — three discards and one symmetry seed are the evidence — but the warning is fair and stays on the record.

What this does not show

The section the four assessments did not have.

  • n = 1. One session, one claim set. Nothing here is a hit rate, and no rate can be computed from it.
  • The arbiter was the author. Every verdict on this page was returned by the same party that ran the audit. Under R8 that carries a permanent [KKE], and no amount of format makes it [K]. The exceptions are the two mechanical checks — the two validators — which is exactly why they exist.
  • Kıyas still cannot claim it works. Its survival ledger holds six unscored seeds from one draw and prints a permanent [KKE]. A control arm has now been preregistered — matched arms, a locked threshold, a stopping rule, and the author's own prediction that the result will land in the underpowered band — but nothing has been measured. The rate is undefined, not favourable.
  • One of the five seeds has now been run, and it was refuted. K-03 — run the pair pass at decoding instead of in the loss — was tested on GSM8K against an equal-compute majority-vote control. The filter cut the contradiction rate of the selected trace by 72.5%, far past its threshold, and did not buy accuracy: −3.3 points, confidence interval crossing zero, two answers fixed and four broken. The preregistered condition was a conjunction and the conjunction failed, so the entry is [R]. Its mechanism is worth more than its verdict: internal consistency is not correctness, and a trace that is consistently wrong is the one a consistency filter prefers. The other four remain unrun. The accumulation of unrun preregistrations is still this family's risk.
  • No third-party arbiter exists anywhere in the four repositories. Every arbiter class is runtime or author. That empty cell is the only place this project could earn a [K], and it is still empty.

The artefacts

  • kiyas-ledger.yaml — tracked and public: six unscored seeds, the permanent [KKE], and the newly preregistered control arm.
  • registry-excerpt.yaml — the entries this page is about: YZ-001…YZ-004 with their thresholds and refutation conditions, and the escape ESC-M003. It is an excerpt, and its own header says so and prints the ratio: nine of twenty-three entries. The registry it comes from is gitignored — it carries pricing and roadmap notes — and the export is an allowlist, so an entry that is not explicitly marked public stays private. Generated by mizan_export_public.py; it passes the same validator as the source.
  • refuted-patterns-excerpt.yaml — the negative constraints, generated from the excerpt above by the export that already existed. It declares partial: true, because a list derived from an excerpt is a partial list of constraints; Kıyas's validator reads that flag and warns that a sweep against it may record "no match found" and may not record "clear". Two of the six patterns the batch was actually generated against are here. The other four are the ones about pricing and roadmap, and they stay private — so the claim that those two discards were checked against six patterns is still author-reported.
  • The two mechanical results are reproducible by anyone who runs the tools on their own registry: mizan_validate.py (R1–R22) and kiyas_validate.py (G1–G14). Those are the only verdicts here that do not depend on trusting the author.
  • Back to the four verbs

Çalışılmış bir koşum

Biri bu dört skill hakkında dört ayrı yapay zekâya ne düşündüklerini sordu, cevapları topladı ve denetlenmek üzere geri getirdi. Bu sayfa olanları anlatıyor — denetimin yanlış çıkıp geri aldığı iki bulgu ve dört asistandan üçünün övdüğü bir öneride üretecin bulduğu kusur dahil.

Oturum tarihi 2026-09-06 · Mizan v2.6.0 · Kıyas v1.4.0 · bu sayfanın dayandığı girdiler alıntı olarak yayınlandı; dışarıda kalan adlandırıldı — sondaki Artefaktlar bölümüne bakın.

Malzeme

Dört YZ değerlendirmesi, ~40 atomlanmış iddia.

Girdi sıradandı: bu skill ailesi hakkında dört uzun, akıcı ve iltifatkâr metin — biri mimariyi okuyan, ikisi Mizan'ın kanıt katmanlarını LLM eğitiminde ödül sinyaline çevirmeyi öneren, biri bu sayfanın içeriğini aktaran. Ön sayfadaki Siz → Mizan oku tam olarak budur: elde zaten var olan malzeme, denetimden giriyor.

Atomlama yaklaşık kırk denetlenebilir iddia üretti. İlk pasta bunların yalnızca on dördü doğrulanabilirdi, çünkü denetim tek bir depoya karşı koşuyordu ve diğerlerini göremiyordu. Bu sayı bir dipnot değil, bir kapsam beyanıdır: iddiaların üçte birini denetleyip tam denetim gibi rapor eden bir çıktı, bu yöntemin adını taşıdığı başarısızlığın kendisidir.

Birinci pas — denetim ne buldu

İddiaKatmanKanıt
Mizan v2.5.0[R] SKILL.md 2.6 diyor. Dört metin de tam bir sürüm geride.
Doğrulayıcı R1–R21'i uyguluyor[R] Kural seti R1–R22. Bir eksik, dördünde de.
GEN:CIFT tanımlayıcısı[Y] Hiçbir depoda hiçbir dosyada geçmiyor. Gerçek tanımlayıcı G13.
Yöntem kendini denetliyor; [R] satırları duruyor[K] Ürün registry'sinde iki çürütülmüş satır, silinmemiş.

İlginç olan dört asistanın yanılmış olması değil. Aynı yönde, aynı büyüklükte yanılmış olmaları. Dört bağımsız kaynak birlikte tam bir sürüm bayatlamaz; ortak bir bayat kaynak bayatlar. Örüntü hatayı yeniden sınıflandırdı: uydurma değil, okuma diye sunulmuş bir rekonstrüksiyon.

Payda

Dört uzun metin boyunca, projenin çekirdek iddiaları üçünde sıfır kez çürütüldü. Sunulan olumsuzluklar "diyagram ekleyin", "demo ekleyin", "tema daha modern olabilir"di. Dördüncüsü farklıydı ve keskin şeyleri söyledi: Mizan bir loss fonksiyonu değil, ona girdi veren bir etiketleme katmanıdır; [K] = 1.0 ağırlığı Mizan'dan matematiksel olarak çıkmaz; çürütülmüş bir registry satırı kendiliğinden bir tercih çifti değildir. Dörtte bir demek, üçünü alıntılamaktan daha bilgilendirici.

İkinci pas — denetim iki kez yanıldı

Okunmaya değer kısım burası.

Sonra sahibi, canlı sayfanın ve diğer üç deponun yerelde bulunduğunu söyledi. Kapsam 14 denetlenebilir iddiadan 31'e çıktı — ve denetimin kendi bulgularından ikisi ayakta kalmadı.

Denetim şunu dediDoğrusu
[R] "sayfada sürüm tablosu yok" Var. Denetim Mizan/docs/index.md'ye baktı; tablo başka bir depoda, bu siteyi kuran depoda duruyor. Yanlış artefakt, kendinden emin hüküm.
[Y] "U13 uydurma" U13 gerçek — ux-mizan'ın bileşim kuralı, bu sayfada. Değerlendiren haklıydı, denetçi değil.

İkisi de yerinde düşürüldü: tarihli, eklenerek, özgün satırlar ayakta bırakılarak. Bu RR-11'dir ve süs değildir: bir denetimin kendi çıktısı da bir iddia kümesidir, ve kendi hükümlerini herkese uyguladığı kuraldan muaf tutan bir yöntem yöntem olmaktan çıkmıştır. O gruptaki üç bulgudan ikisi geri alınacaktı ve benimdi.

İkinci pas ayrıca proje lehine, dört metnin toplayabildiğinden daha güçlü kanıt üretti: Mizan'dan Kıyas'a giden geri besleme gerçekten çalışmış (refuted-patterns.yaml'da altı gerçek girdi, her biri gerekçeli); ux-mizan kendi tasarım kararlarından birine [R] vermiş; ve iskele_to_registry.py hakem sınıfını varsayılan olarak author yapıyor — ki bu R8 gereği [K]'ye terfiyi kalıcı olarak kapatır. O varsayılan düzyazıda değil kodda; "kuralı taşıyan şey betiktir" kuralının bütün anlamı bu.

Rahatsız edici bulgu: depolar kendilerini, dört asistanın hiçbirinin denetlediğinden daha sert denetliyor. Kıyas işe yaradığını iddia etmeyi reddediyor. ux-mizan kendi tasarımını çürütüyor. İskele, kanıtlamayı yasaklayan hakemi varsayılan yapıyor. Yöntemi ihlal eden kısım övgüydü.

Kaçak, ve doğurduğu kontrol

Kaçanı saymak, ondan öğrenmek değildir.

Bayat sürüm hatası bir kaçak olarak kaydedildi: ESC-M003 — ve sınıfı zaten vardı. Aynı registry'deki iki eski girdi tam olarak aynı dersi kaydetmişti: dış bir YZ'nin bir şeyi "okudum" ya da "araştırdım" beyanı kanıt değildir. İki girdi de aynı registry'de, ikisi de bu oturumdan eski. Ders iki kez yazılmış, hiç kontrole çevrilmemişti. Bu yüzden üçüncü kez kaçtı, üstelik aynı anda dört yerden.

Kontrol artık var: bu sayfa altbilgisinde bir yapı damgası taşıyor — bir tarih ve bir commit hash. Kimseyi önbellekten okumaktan alıkoymuyor. Yaptığı şey sürümü iddianın parçası hâline getirmek; böylece "sayfayı okudum" cümlesi yanlışlanamaz olmaktan çıkıp denetlenebilir oluyor. YZ-004 olarak, kendi çürütme koşuluyla önkayıtlı: damgadan sonra yazılan değerlendirmeler hâlâ sürüm belirtmeden eski numaraları tekrarlıyorsa damga okunmuyor demektir ve girdi çürür.

Devir — Mizan'dan Kıyas'a

Beş tohum, üç eleme, üç bağımsız bahis.

Denetim iki iddiayı canlı ama test edilemez bıraktı: kanıt-kapılı bir döngünün serbest olandan daha çok üretmesi, ve kanıt katmanlarının sabit ödül değerlerine eşlenmesinin akıl yürütmeyi iyileştirmesi. İkisi de çürütme koşulu olmadan [S] kaydedildi — Kıyas tam da bunun için var. Negatif kısıtlar registry'nin kendisinden geldi: üretim bitmeden üç aday elendi, ikisi [GB] olarak — çürütülmüş örüntülerin akrabaları (ürünleştirilmiş bir "epistemik gösterge paneli"; katman-yerlisi bir ön-eğitimli model, ki bu registry'nin zaten reddettiği kill-condition'sız ölçek merdiveniyle aynı sınıfa düşüyor).

TohumHamleEn ucuz çürütme
K-01 altı katman, ikili yargının vermediği bir şey vermiyorlimitEşit compute'ta üç kol: ikili / üç değerli / altı katman.
K-02 etiketin değerini değil, doğru öz-etiketlemeyi ödüllendirterslemeKalibrasyon hatası + kapasite-eşli generik yardımcı başlık.
K-03 çift pasını loss'ta değil dekodlamada koşsubstrat değişimiEşit compute'lu best-of-n'e karşı — greedy'ye değil.
K-04 kapıyı geçmiş hipotezlerin körlenmiş tekrarıyla test etkısıt gevşetmeYalnızca makullüğe bakan sıralayıcıya karşı AUC.
K-05 önerilen sabitler bir güvenli liman açıyortersleme (simetri)K-01'in kendi koşumundan sıfır ek maliyetle okunur.

Çift pası asıl sayıyı veriyor: beş tohum, üç bağımsız bahis. K-01, K-02 ve K-05 tek bir öncülü ve tek bir deneyi paylaşıyor. Beş diye listelenince beş okunuyorlar; dürüstçe sayılınca üçler.

K-05 — tezi kesen tohum

Her parti, savunulan konumu hasar veren bir aday taşımak zorundadır. Burada oturumun en yük taşıyan sonucu o çıktı.

Asistanların önerdiği ödül eşlemesi [S]'ye — spekülatif — 0.0 değeri veriyor. Diğer negatiflerinin gerçek cezalar taşıdığı bir şemada bu, her zaman erişilebilir ve asla cezalandırılmayan tek bir eylem bırakır. Baskı altındaki bir politika ona yakınsar: spekülatif adım üret, hiçbir şeye taahhüt etme. Ve bu hata biçimi epistemik alçakgönüllülük gibi görünür — çıktılara bakarak yakalanmasının bu kadar zor olmasının sebebi tam olarak budur.

Mekanizma doğrudan önerilen sabitlerden çıkıyor; dolayısıyla doğrularsa öneri belirtildiği haliyle çürür — katman fikri ayakta kalır, sayılar kalmaz. Ölçmesi bedava: zaten koşulan bir deneyin ikinci okuması. Dört değerlendirmenin hiçbiri bunu görmedi; ikisi sabitleri savundu.

Mizan'a dönüş

Tohumlar, çürütme koşulu olmayan girdilere o koşul olarak döndü. YZ-002 "eşik: yok"tan, koşum hattının kendi tohum-arası yayılımına göre kalibre edilmiş sayısal bir eşiğe ve iki çürütme koşuluna geçti — K-01'inki ve K-05'inki. YZ-001 K-04'ün tasarımını ve ön koşulunu aldı: bu deney bugün koşulamaz, çünkü otuz kesinleşmiş hipotez istiyor ve ledger'da altı var, hiçbiri puanlanmamış. Henüz koşulamayan bir testi kaydetmek başarısızlık değildir; koşulabilirmiş gibi yapmak başarısızlıktır.

Registry kendi doğrulayıcısından geçiyor — R1–R22, ihlal yok — ve tohum partisi Kıyas'ınkinden, G1–G14, gizlenmek yerine tekrarlanmayı hak eden bir uyarıyla: partideki her tohum [H-aday]'a düştü, ve hiçbir şeyin daha aşağı düşmediği bir parti genellikle süpürgeyi atlamış bir partidir. Burada süpürge koştu — üç eleme ve bir simetri tohumu bunun kanıtı — ama uyarı adil ve kayıtta kalıyor.

Bunun göstermediği şeyler

Dört değerlendirmede bulunmayan bölüm.

  • n = 1. Tek oturum, tek iddia kümesi. Buradaki hiçbir şey bir isabet oranı değildir ve bundan oran hesaplanamaz.
  • Hakem yazardı. Bu sayfadaki her hüküm, denetimi koşan tarafça verildi. R8 gereği bu kalıcı bir [KKE] taşır ve hiçbir biçim onu [K] yapmaz. İstisna iki mekanik denetim — iki doğrulayıcı — ki var olma sebepleri tam olarak budur.
  • Kıyas hâlâ işe yaradığını iddia edemiyor. Sağ-kalım ledger'ı tek bir çekilişten altı puanlanmamış tohum taşıyor ve kalıcı bir [KKE] basıyor. Bir kontrol kolu artık önkayıtlı — eşli kollar, kilitli eşik, durdurma kuralı ve yazarın sonucun güç-yetersiz bandında çıkacağına dair kendi tahmini — ama hiçbir şey ölçülmedi. Oran elverişli değil, tanımsız.
  • Beş tohumdan biri artık koşuldu ve çürüdü. K-03 — çift pasını loss yerine dekodlamada koş — GSM8K üzerinde, eşit compute'lu çoğunluk-oyu kontrolüne karşı test edildi. Filtre seçilen izin çelişki oranını %72.5 düşürdü (eşiğin çok üstünde) ve doğruluk kazandırmadı: −3.3 puan, güven aralığı sıfırı kesiyor, iki cevap düzeldi dört cevap bozuldu. Önkayıtlı koşul bir bileşikti ve bileşik sağlanmadı; girdi [R]. Mekanizması hükmünden değerli: iç tutarlılık doğruluk değildir, ve baştan sona tutarlı biçimde yanlış olan iz, tutarlılık filtresinin tercih ettiği izdir. Diğer dördü koşulmadı. Koşulmamış önkayıtların birikmesi hâlâ bu ailenin riski.
  • Dört deponun hiçbirinde üçüncü-taraf hakem yok. Her hakem sınıfı ya runtime ya author. O boş hücre bu projenin [K] kazanabileceği tek yer, ve hâlâ boş.

Artefaktlar

  • kiyas-ledger.yaml — izlenen ve açık: altı puanlanmamış tohum, kalıcı [KKE] ve yeni önkayıtlı kontrol kolu.
  • registry-excerpt.yaml — bu sayfanın konusu olan girdiler: eşikleri ve çürütme koşullarıyla YZ-001…YZ-004, ve ESC-M003 kaçağı. Bir alıntıdır; kendi başlığı bunu söylüyor ve oranı basıyor: yirmi üç girdinin dokuzu. Geldiği registry gitignore'lu — fiyat ve yol haritası notları taşıyor — ve export bir izin listesi: açıkça işaretlenmemiş girdi özel kalır. mizan_export_public.py üretiyor; kaynağıyla aynı doğrulayıcıdan geçiyor.
  • refuted-patterns-excerpt.yaml — negatif kısıtlar; yukarıdaki alıntıdan, zaten var olan ihraç betiğiyle üretildi. partial: true ilan ediyor, çünkü bir alıntıdan türeyen liste kısmi bir kısıt listesidir; Kıyas'ın doğrulayıcısı bu bayrağı okuyup, buna karşı yapılan taramanın "eşleşme bulunamadı" yazabileceğini ama "temiz" yazamayacağını uyarıyor. Partinin gerçekten karşısında üretildiği altı örüntünün ikisi burada. Diğer dördü fiyat ve yol haritasıyla ilgili olanlar, ve özel kalıyor — dolayısıyla o iki elemenin altı örüntüye karşı denetlendiği iddiası hâlâ yazar-beyanı.
  • İki mekanik sonuç, araçları kendi registry'sinde koşan herkes tarafından tekrarlanabilir: mizan_validate.py (R1–R22) ve kiyas_validate.py (G1–G14). Buradaki, yazara güvenmeyi gerektirmeyen tek hükümler bunlar.
  • Dört fiile dön