From the measurement specification draft:
# General
## What percent of users access the homepage?
### What percent of those users access the homepage multiple times?
### When users access the homepage multiple times, over what timeline does that happen?
### Are there differences between mobile and desktop users?
## How soon after creating their account does a user first visit the homepage?
## How do users get to the homepage?
### By clicking on their username in the top navigation?
### By clicking on the tab from their User or User talk page?
### Via another driver, such as a banner on wiki or link in an email?
### If the user clicked on a link to the Homepage from the top navigation or a tab, we want to capture the context they were in. Specifically, we want to know what namespace they were in when they clicked it, and whether they were reading or editing.
## How much time do users spend on the homepage per visit?
### During their first visit?
### During subsequent visits?
## What percent of users follow links from at least one module?
## Are users who have access to the homepage more or less likely to create a user page?
## Are users who have access to the homepage more or less likely to interact with other users through user talk pages?
## Are users who have access to the homepage more or less likely to interact with the community through article and project talk pages?
# Overall rules
#* We will record an impression event every time a user visits the home page.
#** For these events, we will also capture a list of the modules that are rendered.
#** We will also capture impression events for specific modules as listed below in order to gather metadata relevant to the analysis of those modules.
---
Proposed schema:
1. Use EditorJourney
1. Modify to log visits to Special:Homepage indefinitely
1. Override the `action` parameter from EditorJourney with the `action` parameter in the query string of REFERER, if it's present. This will result in correctly recording editing mode for certain scenarios (user is in wikitext, switches to VE, then clicks Special:Homepage link)
Sample event looks like:
```
array (
'title' => 'Homepage',
'page_id' => '0',
'request_method' => 'GET',
'action' => 'view',
'permission_errors' => '',
'http_response_code' => 200,
'is_mobile' => false,
'namespace' => -1,
'path' => '/mediawiki/index.php',
'query' => 'title=redacted',
'user_id' => 1,
'referer' => 'User:Admin',
)
```
We could add `referer_namespace` to ease analysis or append it as a query parameter, like `&referer_namespace=2`