User Tools

Site Tools


provenance:programming:crawler

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
provenance:programming:crawler [2026/09/21 14:08] – Correct the render-repair footnote: the stray nowiki delimiter was latent at rev 1789641906 (24 headings/9 tables) and only detonated when the quote-check section was appended; repaired structure reconciles at 25/11/5. Authored by Claude karel.kubicek.claudeprovenance:programming:crawler [2026/09/21 14:40] (current) – Citations pass: do not invent the paper's dataset notation; describe the 42,288-webpage subset and quote the sentence that defines it. Authored by Claude karel.kubicek.claude
Line 412: Line 412:
 | Reviewers | one ''sonnet'' figures-vs-script pass over this page and [[:programming:crawler]] | | Reviewers | one ''sonnet'' figures-vs-script pass over this page and [[:programming:crawler]] |
 | Pages saved | this page, [[:programming:crawler]] | | Pages saved | this page, [[:programming:crawler]] |
 +
 +===== Foxhound count errata, 2026-09-21 =====
 +
 +**What was wrong.** The //Which specialised crawlers actually get used// table read ''SAP Project Foxhound | 8 | 1'', and the comparison table above it read **8**. The deeper per-paper audit on [[:programming:crawler:foxhound]] (''scripts/report_foxhound.mjs'' + ''scripts/fh_fold.mjs'', 2026-08-17) finds **9 papers that actually ran the browser**, and its own footnote said so and called these two tables queued for an errata edit.
 +
 +**Why the two disagreed — and it is not a denominator.** This table's two columns come from ''tools[].usedOrMentioned'': ''used'' or ''produced'' go left, everything else goes right. Khodayari et al.'s NDSS 2025 open-redirection paper is extracted as ''compared'' — //"We considered the following state-of-the-art detectors as baselines: dynamic taint-tracking [24, 36, 45] using Foxhound [44, 45]"// — and its comparison ran over the paper's 42,288-webpage subset of 50 randomly chosen applications((//"We chose 50 applications at random from the P2 dataset in Table I, encompassing a total of 42,288 webpages"//. The paper's own name for that subset is a subscripted P2 that the extracted text renders as ''P20'', so it is described here rather than named.)). Running a tool as a baseline is running it, so ''compared'' put a user of the browser in the //cites only// column.
 +
 +**The fix is in the script, not on the page.** ''report_crawler.mjs'' §6 now carries a ''ROLE_AUDITED'' map, currently one entry, ''SAP Project Foxhound'' → the ''ROLE'' map exported by ''fh_fold.mjs''. For a row in that map the enum verdict is replaced by the published hand verdict (''used'' / ''extended'' / ''baseline'' count as ran it; ''citation'' does not), and the script **throws** if any paper the row matches has no verdict in the audit, so the audit and the extraction cannot drift apart silently. Rows with no audit are untouched: this is deliberately not a general rule that ''compared'' means "ran it", because deciding that needs the sentence.
 +
 +<code>
 +$ node scripts/report_crawler.mjs > scripts/report_crawler-output.txt
 +$ diff <old> <new>
 +130c130
 +< SAP Project Foxhound                         8             1                       2024–2026
 +---
 +> SAP Project Foxhound                         9             0                       2024–2026
 +</code>
 +
 +**That is the whole diff of the report.** No other row, fold, residue, denominator or year range moved, and the folded-framework table above is untouched — this paper's Foxhound tuple carries ''category: "program-analysis"'', not a crawler-framework category, so it was never in that population.
 +
 +^ Figure ^ Was ^ Is ^ Where ^
 +| Foxhound, papers using or producing it | 8 | **9** | //Which specialised crawlers actually get used// |
 +| Foxhound, papers only citing it | 1 | **0** | same row |
 +| Foxhound, //Papers// column | **8** | **9** | //Specialised Measurement Crawlers// comparison table |
 +| growth sentence | "quadrupled Foxhound (2 → 8)" | "more than quadrupled Foxhound (2 → 9)" | same section |
 +| Years used | 2024–2026 | 2024–2026 | unchanged |
 +
 +The **2** in that sentence is the pre-extension corpus figure and is not re-derived here; the paper this errata adds is NDSS 2025 and was not in that corpus, so the comparison is still like-for-like.
 +
 +**A finding rejected.** The //cites only// column now reads 0, while [[:programming:crawler:foxhound]] reports **2 citation-only papers**. That is not a new inconsistency and was not "fixed": those two papers have no ''tools[]'' tuple naming Foxhound at all, so this table — which is built from ''tools[]'' — cannot see them, and inventing a 2 here would mean this row alone was full-text-swept while every other row was not. The child page's reconciling footnote now says exactly this, and was edited in the same run.
 +
 +^ Item ^ Value ^
 +| Date | 2026-09-21, unsupervised |
 +| Script changes | ''scripts/report_crawler.mjs'' (''ROLE_AUDITED'' block in §6, import of ''fh_fold.mjs''); committed output regenerated |
 +| Reviewers | one ''sonnet'' figures-vs-script pass; one ''sonnet'' citations/quotes pass |
 +| Pages saved | this page, [[:programming:crawler]], [[:programming:crawler:foxhound]] |
  
provenance/programming/crawler.1789999713.txt.gz · Last modified: by karel.kubicek.claude