Wikimedia collected under its robot policy, as a candidate for Qt's place
Collected now, whatever Qt and Chromium answer, so the dev-window pilot can run on it before 2026-11-20. If both grant permission, the study has four organizations.
Collected now, whatever Qt and Chromium answer, so the dev-window pilot can run on it before 2026-11-20. If both grant permission, the study has four organizations.
The test window is collected fresh after in-principle acceptance, on every organization. On
2026-09-26 neither permission request had an answer: Qt's ticket QTQAINFRA-8064 is open with no
comment, and nothing has come back from Chromium's infra-dev list. codereview.qt-project.org and
code.qt.io both serve Disallow: /, so the fallback registered on 2026-09-22 (H1 on OpenStack and
Qt) still depends on a permission that may not come: Qt's test window cannot be collected without
it. The Chromium deadline covered H2 and left that dependency unstated.
Read under the rules registered above and on 2026-09-24, on the answers as locked
(label-audit-v2.json, regenerated; the model raters' labels and all-item pairs reproduce
unchanged). Every human pair a reported slip touches is also read without that item. The model
pair is re-read on the 152 checked items, the comparator for every human row:
The human checked item-002 to item-153 between 2026-09-24 and 2026-09-26, 152 items past the
rubric's worked example. The check stops there, fixed before any human-to-model figure is
computed. The page shows items in the batches' seeded order, so the 152 are a random sample of
the 383, and a stop chosen after seeing agreement would be optional stopping.
A second review of PR #36 ran the script against a fake model stack and found that the saved
-local module is never a withheld tensor. This follows from the reading registered on
2026-09-21, not from the code.
Negative readings. The proposal of 2026-09-23 is adopted. A cell reads bounded when its
interval's upper bound lies below the effect the sensitivity analysis says that cell detects at
the Holm level it is read at; the gate reads the bounds from decomposition-sensitivity.json
(detectable_effects) and refuses a confirmatory cell without one at every level. The SESOI band
is reported beside every cell and decides nothing. Justification: Lakens, Scheel and Isager (2018)
list the effect a study was designed to detect among the bases for an equivalence bound, and
Lakens (2022) asks a design to say which effects it is informative about when it cannot resolve
the SESOI. The bound is reachable where absence was not: the regenerated sensitivity artifact
records null_reads_bounded per cell and level beside null_reads_absent: a true null reads
bounded 0.97 of the time in three of the four H1 cells and 0.94 in Qt's at 95%, against 0.000
absent in all four; every other figure in the artifact reproduced exactly. The bounds are
recomputed at N on corpus v2 before the seal opens. A reversed effect now reads bounded, since
H1 is directional.
The check page locks the human's label and outside-names answer before it reveals rater A's. A
checker can notice a mis-click only after the reveal, and a correction made after seeing the rater
is no longer blind, so it does not replace the locked answer. The rule, fixed before any human
agreement is computed: every human figure is read on the answers as locked, and each pair a
reported slip touches is also reported without that item (human_slips and the without slips
pairs). Slips are marked on the page beside the locked answer and saved with the check;
label_audit_agreement.py reads them from there, and --slip ITEM:FIELD adds one by hand.
# research(2026-09). scripts/notedb_parity.py fetches every change NoteDb records as submitted
in 2024-11 and 2025-01 on AOSP's platform/hardware/interfaces, over git and on every branch,
builds them with the same build_from_change as the REST corpus, and compares the two into
datasets/results/notedb-parity-aosp.json. The artifact was regenerated on 2026-09-25 from the
branch as reviewed: the enumeration, field, example, rebase and timing figures below are from that
run, and figures from earlier runs are dated where they appear. The first run's (2026-09-23, main
only) are superseded.
An independent review of PR #36 found the round-0 average (Algorithm 1, line 7) was computed
per source rather than over every client the plan builds, before job 183579 reached its queue
slot. The paper's N is every client the server sees; this repository's sources name separate
simulated federations for the attack scripts, and the two are not the same population. Fixed by
flattening plan into one list before Stage 1 runs and averaging over all of it, so theta_s0 is
one value shared across every client regardless of source. Job 183579 was cancelled as invalid
before it produced a result; nothing from it is quoted anywhere.
What happened. #35 gave Chromium a REST host. #39's test that an organization without one is
not fetched over REST (fetch --org chromium) therefore stopped being refused once #39 was rebased
onto #35, and ran a real fetch. Two local make verify runs in #39's worktree each sent at least
one request for status:merged after:2025-10-01 before:2025-11-01 to
chromium-review.googlesource.com/changes/. How many attempts each made, and what came back, was
not recorded and cannot be reconstructed: the retry budget bounds one URL's attempts, not a
run's, and the second run held a connection for about eleven minutes before it was killed. No snapshot from the test
survives: pytest keeps its recent runs' temporary directories, and none holds one (checked). Writing
the guard's own test first then opened one TCP connection to a Google address (no request sent)
and made one DNS lookup. The rebased branch was never pushed, so CI sent nothing. This is a breach
of the collection stop of 2026-09-22, caused by an unfaked network path in a test.
The build and refine rule digests make a month built or refined under other code unreadable, but
dedup and split sit under neither, so a change to either would leave the frozen windows intact and
verify clean: the failure that let Qt verify at 10,695 while the pipeline yielded 10,692.
verify --reproduce reruns dedup and split in memory from the refined examples and compares every
window byte for byte with its frozen split file, over every window either side names, and the
dedup counts with the manifest. Comparing ids alone would pass a dedup that kept a different copy
of an id, and comparing only the rerun's windows would pass one dropped from the bounds (both
found in review). On the corpus v2 data, OpenStack and Qt both reproduce byte for byte. The check takes minutes on Qt, so it is a flag rather than the default.
Rater A calls 311 of 383 items valid and rater B 323, so both raters' marginals sit on one label
and chance agreement under kappa is high. That depresses kappa at high raw agreement (Feinstein and
Cicchetti 1990), which is why kappa is reported beside raw agreement and a paradox-resistant
coefficient rather than alone (James, LREC 2026, arXiv 2603.06865). Gwet's AC1 takes chance
agreement over the whole five-label scale (Gwet 2008). Same items, same bootstrap seed, so the
kappa intervals reproduce byte for byte (label-audit-v2.json, regenerated):
The first audit's context-dependent class folded two questions together: whether the request can
be understood from what the example shows, and whether the rewrite uses names the example does not
show. A clear request answered with a project's own constant is a valid label that no prompt alone
reproduces, which is house-style knowledge an adapter can learn, not label noise. Rubric version 2
asks the two separately (scripts/label_audit/rubric.md).
Retracted: the rebase-only-successor finding in the two entries above (0.34% of OpenStack's kept examples and 1.65% of Qt's in the audit, 20 and 189 in the v2 table). It was an artifact of the audit's own lookup, which keyed a change's revisions on its Change-Id. A cherry-pick carries the Change-Id to another branch, so a stable-branch copy that was only rebased lent its kind to the original. Resolved per change (by number, else by Change-Id, project and creation time together), every OpenStack successor and 11,444 of Qt's 11,448 are reworks; the other 4 are changes that cannot be told apart and are kept and counted. The rule stays as a guard, and now removes nothing. A review of the v2 branch caught it. Rebase edits carried inside a reworked successor remain the open question the audit entry names.
The fixes are in the builder, so every corpus collected from here on is clean at collection, and in
a new refine stage that brings corpora built before them to the same rules from their own
examples and raw snapshots, with nothing refetched.