Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@
**/node_modules/
__pycache__/
*.pyc
/scripts/backups/
56 changes: 51 additions & 5 deletions definitions/output/reports/tech_crux.js
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,16 @@ crux_base AS (
slow_ttfb,
small_cls,
medium_cls,
large_cls
large_cls,
fast_lcp_sn,
avg_lcp_sn,
slow_lcp_sn,
fast_cls_sn,
avg_cls_sn,
slow_cls_sn,
fast_inp_sn,
avg_inp_sn,
slow_inp_sn
FROM ${ctx.ref('chrome-ux-report', 'materialized', 'country_summary')}
WHERE
yyyymm = CAST(FORMAT_DATE('%Y%m', '${pastMonth}') AS INT64) AND
Expand Down Expand Up @@ -140,7 +149,16 @@ crux_base AS (
slow_ttfb,
small_cls,
medium_cls,
large_cls
large_cls,
fast_lcp_sn,
avg_lcp_sn,
slow_lcp_sn,
fast_cls_sn,
avg_cls_sn,
slow_cls_sn,
fast_inp_sn,
avg_inp_sn,
slow_inp_sn
FROM ${ctx.ref('chrome-ux-report', 'materialized', 'device_summary')}
WHERE
date = '${pastMonth}' AND
Expand Down Expand Up @@ -168,7 +186,15 @@ crux AS (
any_ttfb,
good_ttfb,
any_inp,
good_inp
good_inp,

any_lcp_sn,
good_lcp_sn,
any_cls_sn,
good_cls_sn,
any_inp_sn,
good_inp_sn,
good_cwv_sn
FROM (
SELECT
geo,
Expand Down Expand Up @@ -205,7 +231,18 @@ crux AS (
IS_NON_ZERO(fast_ttfb, avg_ttfb, slow_ttfb) AS any_ttfb,
IS_GOOD(fast_ttfb, avg_ttfb, slow_ttfb) AS good_ttfb,
IS_NON_ZERO(fast_inp, avg_inp, slow_inp) AS any_inp,
IS_GOOD(fast_inp, avg_inp, slow_inp) AS good_inp
IS_GOOD(fast_inp, avg_inp, slow_inp) AS good_inp,

# CWV with soft navigations
IS_NON_ZERO(fast_lcp_sn, avg_lcp_sn, slow_lcp_sn) AS any_lcp_sn,
IS_GOOD(fast_lcp_sn, avg_lcp_sn, slow_lcp_sn) AS good_lcp_sn,
IS_NON_ZERO(fast_cls_sn, avg_cls_sn, slow_cls_sn) AS any_cls_sn,
IS_GOOD(fast_cls_sn, avg_cls_sn, slow_cls_sn) AS good_cls_sn,
IS_NON_ZERO(fast_inp_sn, avg_inp_sn, slow_inp_sn) AS any_inp_sn,
IS_GOOD(fast_inp_sn, avg_inp_sn, slow_inp_sn) AS good_inp_sn,
(IS_GOOD(fast_inp_sn, avg_inp_sn, slow_inp_sn) OR fast_inp_sn IS NULL) AND
IS_GOOD(fast_cls_sn, avg_cls_sn, slow_cls_sn) AND
IS_GOOD(fast_lcp_sn, avg_lcp_sn, slow_lcp_sn) AS good_cwv_sn
FROM crux_base
),
UNNEST(eligible_ranks) AS rank
Expand Down Expand Up @@ -292,7 +329,16 @@ base_summary AS (
COUNTIF(any_inp) AS origins_with_any_inp,
COUNTIF(good_cwv) AS origins_with_good_cwv,
COUNTIF(any_lcp AND any_cls) AS origins_eligible_for_cwv,
SAFE_DIVIDE(COUNTIF(good_cwv), COUNTIF(any_lcp AND any_cls)) AS pct_eligible_origins_with_good_cwv
SAFE_DIVIDE(COUNTIF(good_cwv), COUNTIF(any_lcp AND any_cls)) AS pct_eligible_origins_with_good_cwv,
COUNTIF(good_lcp_sn) AS origins_with_good_lcp_sn,
COUNTIF(any_lcp_sn) AS origins_with_any_lcp_sn,
COUNTIF(good_cls_sn) AS origins_with_good_cls_sn,
COUNTIF(any_cls_sn) AS origins_with_any_cls_sn,
COUNTIF(good_inp_sn) AS origins_with_good_inp_sn,
COUNTIF(any_inp_sn) AS origins_with_any_inp_sn,
COUNTIF(good_cwv_sn) AS origins_with_good_cwv_sn,
COUNTIF(any_lcp_sn AND any_cls_sn) AS origins_eligible_for_cwv_sn,
SAFE_DIVIDE(COUNTIF(good_cwv_sn), COUNTIF(any_lcp_sn AND any_cls_sn)) AS pct_eligible_origins_with_good_cwv_sn
) AS crux,

STRUCT(
Expand Down
26 changes: 23 additions & 3 deletions definitions/output/reports/tech_report_core_web_vitals.js
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,15 @@ CREATE TEMPORARY FUNCTION GET_VITALS(
origins_with_any_ttfb INT64,
origins_with_any_inp INT64,
origins_with_good_cwv INT64,
origins_eligible_for_cwv INT64
origins_eligible_for_cwv INT64,
origins_with_good_cwv_sn INT64,
origins_eligible_for_cwv_sn INT64,
origins_with_good_lcp_sn INT64,
origins_with_any_lcp_sn INT64,
origins_with_good_cls_sn INT64,
origins_with_any_cls_sn INT64,
origins_with_good_inp_sn INT64,
origins_with_any_inp_sn INT64
>>)
RETURNS ARRAY<STRUCT<
name STRING,
Expand All @@ -48,7 +56,11 @@ const METRIC_MAP = {
FID: ['origins_with_good_fid', 'origins_with_any_fid'],
FCP: ['origins_with_good_fcp', 'origins_with_any_fcp'],
TTFB: ['origins_with_good_ttfb', 'origins_with_any_ttfb'],
INP: ['origins_with_good_inp', 'origins_with_any_inp']
INP: ['origins_with_good_inp', 'origins_with_any_inp'],
overall_sn: ['origins_with_good_cwv_sn', 'origins_eligible_for_cwv_sn'],
LCP_sn: ['origins_with_good_lcp_sn', 'origins_with_any_lcp_sn'],
CLS_sn: ['origins_with_good_cls_sn', 'origins_with_any_cls_sn'],
INP_sn: ['origins_with_good_inp_sn', 'origins_with_any_inp_sn']
};

// Initialize the vitals map.
Expand Down Expand Up @@ -94,7 +106,15 @@ SELECT
crux.origins_with_any_ttfb,
crux.origins_with_any_inp,
crux.origins_with_good_cwv,
crux.origins_eligible_for_cwv
crux.origins_eligible_for_cwv,
crux.origins_with_good_cwv_sn,
crux.origins_eligible_for_cwv_sn,
crux.origins_with_good_lcp_sn,
crux.origins_with_any_lcp_sn,
crux.origins_with_good_cls_sn,
crux.origins_with_any_cls_sn,
crux.origins_with_good_inp_sn,
crux.origins_with_any_inp_sn
))) AS vitals
FROM ${ctx.ref('reports', 'tech_crux')}
WHERE date = '${pastMonth}'
Expand Down
Loading