| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| provenance:design:crawling_location [2026/08/12 10:07] – Add section 10: the Fable review pass, the windowed-guard defect it exposed (29 corpus figures stale outside the audited heading window across six pages), the hardened check_page_numbers.mjs, and the page-specific fixes. Authored by Claude. karel.kubicek.claude | provenance:design:crawling_location [2026/09/17 10:45] (current) – Record consentAction audit propagation; Authored by Claude karel.kubicek.claude |
|---|
| | ''crawled'' ∧ assessed a US law | ''legal[].law'' matches ''/CCPA|CPRA|COPPA|CALOPPA|VPPA|CIPA/i'' | 43 | | | ''crawled'' ∧ assessed a US law | ''legal[].law'' matches ''/CCPA|CPRA|COPPA|CALOPPA|VPPA|CIPA/i'' | 43 | |
| | ''crawled'' ∧ assessed no law | ''legal.length === 0'' | 989 | | | ''crawled'' ∧ assessed no law | ''legal.length === 0'' | 989 | |
| | ''crawled'' ∧ states a consent action | ''crawlConfig.consentAction'' is not a sentinel | 349 | | | ''crawled'' ∧ audited states a consent action | 2026-09-05 full-text audit of the 349 non-sentinel labels; 55 survive as paper claims | 55 | |
| |
| Sentinels (''not-stated'', ''none-mentioned'', ''not-applicable'', ''unclear'', ''unknown'') are counted as silence, never as a value. The "does the paper say where" table exists precisely to publish that silence. | Sentinels (''not-stated'', ''none-mentioned'', ''not-applicable'', ''unclear'', ''unknown'') are counted as silence, never as a value. The "does the paper say where" table exists precisely to publish that silence. |
| node scripts/report_crawling_location.mjs # every figure on the page | node scripts/report_crawling_location.mjs # every figure on the page |
| node scripts/report_crawling_location.mjs --wiki # the same, as DokuWiki tables | node scripts/report_crawling_location.mjs --wiki # the same, as DokuWiki tables |
| | node scripts/consent_action_noninteraction_audit.mjs |
| node scripts/check_page_numbers.mjs \ | node scripts/check_page_numbers.mjs \ |
| pages/design_crawling_location.txt out/new/report_crawling_location.txt \ | pages/design_crawling_location.txt out/new/report_crawling_location.txt \ |
| | …of those, EU/EEA vantage | 29 of 34 (85.3%) | 45 of 52 (86.5%) | | | …of those, EU/EEA vantage | 29 of 34 (85.3%) | 45 of 52 (86.5%) | |
| | …assessed an EU law from outside the EEA | 5 | 7 | | | …assessed an EU law from outside the EEA | 5 | 7 | |
| | States a consent action | 270 | 349 | | | ''consentAction'' field populated (schema; not an audited claim) | 270 | 349 | |
| | …of those, EU/EEA vantage | 48 (17.8%) | 68 (19.5%) | | | …of raw schema labels, EU/EEA vantage | 48 (17.8%) | 68 (19.5%) | |
| | …of those, no location at all | 166 | 210 | | | …of raw schema labels, no location at all | 166 | 210 | |
| |
| **Moved by more than a rounding step:** | **Moved by more than a rounding step:** |
| * The matcher was **substring**, not word-boundary, so ''report.includes('59')'' was satisfied by ''11.59 bits''. One genuinely stale figure sat inside a checked window and passed for that reason. | * The matcher was **substring**, not word-boundary, so ''report.includes('59')'' was satisfied by ''11.59 bits''. One genuinely stale figure sat inside a checked window and passed for that reason. |
| |
| Both are fixed in ''scripts/check_page_numbers.mjs'': matching is now anchored with lookarounds, ISO dates and URLs are stripped before scanning, ''--code'' opts into scanning ''<file>'' blocks, and omitting the heading markers checks the whole page. **Run it windowed //and// whole-page.** The whole-page run is noisy — a page's non-corpus half is full of figures quoted from other papers — so read its output rather than expecting it to exit clean. | Both are fixed in ''scripts/check_page_numbers.mjs'': matching is now anchored with lookarounds, ISO dates and URLs are stripped before scanning, ''%%--code%%'' opts into scanning ''%%<file>%%'' blocks, and omitting the heading markers checks the whole page. **Run it windowed //and// whole-page.** The whole-page run is noisy — a page's non-corpus half is full of figures quoted from other papers — so read its output rather than expecting it to exit clean. |
| Fixed on this page's content page as a result: the lead paragraph's headline **70.9% → 70.8%**, reworded to say what it measures ("record a vantage point and never say where it was" — the old wording implied it included the 31 papers with no vantage record at all, which would be 73.6%); and PlanetLab **7 → 8 papers** in //Research measurement platforms//, which contradicted the page's own provider table. | Fixed on this page's content page as a result: the lead paragraph's headline **70.9% → 70.8%**, reworded to say what it measures ("record a vantage point and never say where it was" — the old wording implied it included the 31 papers with no vantage record at all, which would be 73.6%); and PlanetLab **7 → 8 papers** in //Research measurement platforms//, which contradicted the page's own provider table. |
| |
| | Mistakes caught in review | The first version of ''vantage_fold.mjs'' failed to match ''Amazon Web Services'' (the regex had ''web\s+service'' with a trailing ''\b'', so the plural did not match), leaving 8 papers in the residue and Amazon at 60 rather than 68. Caught by reading the residue list, which is why the residue is printed. | | | Mistakes caught in review | The first version of ''vantage_fold.mjs'' failed to match ''Amazon Web Services'' (the regex had ''web\s+service'' with a trailing ''\b'', so the plural did not match), leaving 8 papers in the residue and Amazon at 60 rather than 68. Caught by reading the residue list, which is why the residue is printed. | |
| | Review | Reviewed by Claude Fable 5 on 2026-08-12 with the instruction that the summary might not be exhaustive. It found the windowed-guard defect in §10 and 2 stale figures on this page. All fixes were applied and re-saved the same day. | | | Review | Reviewed by Claude Fable 5 on 2026-08-12 with the instruction that the summary might not be exhaustive. It found the windowed-guard defect in §10 and 2 stale figures on this page. All fixes were applied and re-saved the same day. | |
| | |
| | ===== Amendment, 2026-09-04: citekey consolidation ===== |
| | |
| | * ''bouhoula2024automated'' was one of two keys for the same paper in [[:literature:bibliography]]. The wiki-wide consolidation of 2026-09-04 (drain item ''dedup-regional-filter-lists-bibkey'') kept ''bouhoula2024_automated'' and deleted the other entry. |
| | * 2 citation markers on [[:design:crawling_location]] were repointed to the kept key. No prose on either page changed, and no figure moved. Statements above that name the deleted key describe the state when they were written. Full query log and the invariants checked before saving: [[:provenance:literature:bibliography]]. |
| |
| [[design:crawling_location|← back to the content page]] · [[literature:corpus|corpus-level provenance]] | [[design:crawling_location|← back to the content page]] · [[literature:corpus|corpus-level provenance]] |
| | |
| | ===== Markup sweep, 2026-09-17 ===== |
| | |
| | Mechanical rendering repair only: a fresh live raw/XHTML export of 188 pages was checked with ''check_wrap.mjs'' and ''check_typography.mjs''. Affected plugin tags, CLI flags and heading markup were repaired; no figures or substantive prose were changed. The resulting source and rendered DOM were re-checked after saving. |
| | |
| | ===== ConsentAction audit propagation, 2026-09-17 ===== |
| | |
| | **What was wrong.** The consent-action paragraph on [[design:crawling_location]] treated the raw non-sentinel ''crawlConfig.consentAction'' population (349 of 1,120; 31.2%) as if it were a paper-claim count, and therefore published 68 EU/EEA papers and 210 with no location. The 2026-09-05 full-text audit of all 313 ''no-interaction'' labels found 279/313 unsupported (89.1%). |
| | |
| | **Command and real output.** ''node scripts/consent_action_noninteraction_audit.mjs'' → 349 raw labels; **55** papers audited as stating a consent action (4.9% of 1,120), **37** EU/EEA (67.3%), **11** with no location. ''node scripts/report_crawling_location.mjs'' → the page's consent section prints exactly: ''Papers audited as stating a consent action: 55. Of those, 37 (67.3%) state an EU/EEA vantage, 11 state no place at all.'' |
| | |
| | **What changed.** The page now names the audited denominator and uses 55/37/11. The population table labels the 349 row as raw schema population, and ''report_crawling_location.mjs'' consumes the exported audited paper-key set from ''consent_action_noninteraction_audit.mjs''. |
| | |
| | **Review.** One **model: 'sonnet'** figures-vs-script pass re-ran the report and checked the edited figure plus the adjacent legal-framing figures and the full report output. It found no mismatch. No citation pass was needed: no citekey or quoted claim changed. |
| | |
| | **Rejected finding.** The eight papers that say they do not interact at all but never mention consent were not counted as papers stating a consent action; they remain a separate lenient comparison in the audit output. The 279 unsupported defaults were not treated as paper claims. |
| |