Skip to content

Commit b9f912e

Browse files
ikreymertw4l
andauthored
Support QA with deduped crawls (#977)
deps: update to RWP 2.4.2 to support QA for deduped crawls, update wabac.js 2.25.4 errors: always mark 404 as 0% match: if no replay resources returned but crawled resources exist, set text and screenshot match to 0 --------- Co-authored-by: Tessa Walsh <tessa@bitarchivist.net>
1 parent 66c494b commit b9f912e

4 files changed

Lines changed: 33 additions & 20 deletions

File tree

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ ADD config/ /app/
3939

4040
ADD html/ /app/html/
4141

42-
ARG RWP_VERSION=2.3.19
42+
ARG RWP_VERSION=2.4.2
4343
ADD https://cdn.jsdelivr.net/npm/replaywebpage@${RWP_VERSION}/ui.js /app/html/rwp/
4444
ADD https://cdn.jsdelivr.net/npm/replaywebpage@${RWP_VERSION}/sw.js /app/html/rwp/
4545
ADD https://cdn.jsdelivr.net/npm/replaywebpage@${RWP_VERSION}/adblock/adblock.gz /app/html/rwp/adblock.gz

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
"@aws-sdk/lib-storage": "^3.964.0",
2121
"@novnc/novnc": "1.4.0",
2222
"@puppeteer/replay": "^3.1.3",
23-
"@webrecorder/wabac": "^2.24.5",
23+
"@webrecorder/wabac": "^2.25.4",
2424
"browsertrix-behaviors": "^0.9.8",
2525
"client-zip": "^2.4.5",
2626
"css-selector-parser": "^3.0.5",

src/replaycrawler.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -635,6 +635,13 @@ export class ReplayCrawler extends Crawler {
635635
resourceCounts.replayGood = replayGood;
636636
resourceCounts.replayBad = replayBad;
637637

638+
// If no resources replay, implies a 404 and set other matches to 0
639+
if (replayGood === 0 && crawlGood + crawlBad > 0) {
640+
logger.error("Replay Error, no resources replayed");
641+
pageInfo.comparison.screenshotMatch = 0;
642+
pageInfo.comparison.textMatch = 0;
643+
}
644+
638645
logger.info("Resource counts", { url, ...resourceCounts }, "replay");
639646
}
640647

yarn.lock

Lines changed: 24 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2261,17 +2261,17 @@
22612261
resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406"
22622262
integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==
22632263

2264-
"@webrecorder/wabac@^2.24.5":
2265-
version "2.24.5"
2266-
resolved "https://registry.yarnpkg.com/@webrecorder/wabac/-/wabac-2.24.5.tgz#253b0d5a9b7691af475c7a158c6483df33f2d3ff"
2267-
integrity sha512-Wt9bdZMYrl+DYRkUdRfYAPSUfygHBQGIiZ9oMZ/DRLIeqsqeN36UBGuvbj6kmUawLNWRYVQj6kNl/ndtRZSa6w==
2264+
"@webrecorder/wabac@^2.25.4":
2265+
version "2.25.4"
2266+
resolved "https://registry.yarnpkg.com/@webrecorder/wabac/-/wabac-2.25.4.tgz#14faafee92f7fd31bfef3552515101c2589ebd1c"
2267+
integrity sha512-lb9233U52Oz99G4OwzJca2P+zWtTa6bfszAJ5uw03aJJjYEoLzhtsLSlVE7Tt43kTAHr83DED5XMD/uD77T9aA==
22682268
dependencies:
22692269
"@peculiar/asn1-ecc" "^2.3.4"
22702270
"@peculiar/asn1-schema" "^2.3.3"
22712271
"@peculiar/x509" "^1.9.2"
22722272
"@types/js-levenshtein" "^1.1.3"
2273-
"@webrecorder/wombat" "^3.10.1"
2274-
acorn-loose "^8.5.2"
2273+
"@webrecorder/wombat" "^3.10.3"
2274+
acorn "^8.15.0"
22752275
auto-js-ipfs "^2.1.1"
22762276
base64-js "^1.5.1"
22772277
brotli "^1.3.3"
@@ -2281,7 +2281,8 @@
22812281
http-status-codes "^2.1.4"
22822282
idb "^7.1.1"
22832283
js-levenshtein "^1.1.6"
2284-
js-yaml "^4.1.0"
2284+
js-yaml "^4.1.1"
2285+
mime "^4.1.0"
22852286
pako "^1.0.11"
22862287
parse5-html-rewriting-stream "^7.0.0"
22872288
parse5-sax-parser "^7.0.0"
@@ -2290,10 +2291,10 @@
22902291
stream-browserify "^3.0.0"
22912292
warcio "^2.4.7"
22922293

2293-
"@webrecorder/wombat@^3.10.1":
2294-
version "3.10.1"
2295-
resolved "https://registry.yarnpkg.com/@webrecorder/wombat/-/wombat-3.10.1.tgz#d45417f9ef61c9f02357bacf1ba930f6e09dd7fa"
2296-
integrity sha512-OzYrv3iqC1AdgjG+QD/tNQi6+yv+1izzr2PoN+40AvleL+RLsIk/AwOmdYJpz9r+L7UIOdRrK4v/JrUWPwUDzw==
2294+
"@webrecorder/wombat@^3.10.3":
2295+
version "3.10.3"
2296+
resolved "https://registry.yarnpkg.com/@webrecorder/wombat/-/wombat-3.10.3.tgz#f49fae3aedb54d75120de8286360b2fe40f42bda"
2297+
integrity sha512-tg1zRFlWUcYBsSMFCNf4zprCxlRfLmd7DnGsufRHS8fX0aJAMU3jNSE00Q9pWTcdIsxXQCNk4OT9FTlErCxRrg==
22972298
dependencies:
22982299
warcio "^2.4.7"
22992300

@@ -2302,13 +2303,6 @@ acorn-jsx@^5.3.2:
23022303
resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"
23032304
integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
23042305

2305-
acorn-loose@^8.5.2:
2306-
version "8.5.2"
2307-
resolved "https://registry.yarnpkg.com/acorn-loose/-/acorn-loose-8.5.2.tgz#a7cc7dfbb7c8f3c2e55b055db640dc657e278d26"
2308-
integrity sha512-PPvV6g8UGMGgjrMu+n/f9E/tCSkNQ2Y97eFvuVdJfG11+xdIeDcLyNdC8SHcrHbRqkfwLASdplyR6B6sKM1U4A==
2309-
dependencies:
2310-
acorn "^8.15.0"
2311-
23122306
acorn@^8.15.0:
23132307
version "8.15.0"
23142308
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.15.0.tgz#a360898bc415edaac46c8241f6383975b930b816"
@@ -5247,6 +5241,13 @@ js-yaml@^4.1.0:
52475241
dependencies:
52485242
argparse "^2.0.1"
52495243

5244+
js-yaml@^4.1.1:
5245+
version "4.1.1"
5246+
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.1.tgz#854c292467705b699476e1a2decc0c8a3458806b"
5247+
integrity sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==
5248+
dependencies:
5249+
argparse "^2.0.1"
5250+
52505251
jsbn@1.1.0:
52515252
version "1.1.0"
52525253
resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-1.1.0.tgz#b01307cb29b618a1ed26ec79e911f803c4da0040"
@@ -5523,6 +5524,11 @@ mime@^1.6.0:
55235524
resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
55245525
integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==
55255526

5527+
mime@^4.1.0:
5528+
version "4.1.0"
5529+
resolved "https://registry.yarnpkg.com/mime/-/mime-4.1.0.tgz#ec55df7aa21832a36d44f0bbee5c04639b27802f"
5530+
integrity sha512-X5ju04+cAzsojXKes0B/S4tcYtFAJ6tTMuSPBEn9CPGlrWr8Fiw7qYeLT0XyH80HSoAoqWCaz+MWKh22P7G1cw==
5531+
55265532
mimic-fn@^2.1.0:
55275533
version "2.1.0"
55285534
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"

0 commit comments

Comments
 (0)