Hi all - Happy New Year!

As an FYI, due to some extra time spent in debugging and analysis, will be
continuing with low-level (Stable 1% or lower) Finch experiments in M133.
Luckily this is within 6 milestones of our original experiment request date
(I will be sure to just go ahead and request 6 next time :)).

Please feel free to respond with any questions or concerns - thanks so much!

Thanks,
Kyra


On Tue, Oct 15, 2024 at 10:32 PM Yoav Weiss (@Shopify) <
yoavwe...@chromium.org> wrote:

>
>
> On Tue, Oct 15, 2024 at 10:47 PM Kyra Seevers <kyraseev...@google.com>
> wrote:
>
>> Hi all,
>>
>> FYI: we have had some delays in the experimental rollout and will be
>> continuing with low-level (Stable 1% or lower) Finch experiments in M131
>> (and probably in M132 as well).
>>
>> Feel free to respond with any questions or concerns - thanks so much!
>>
>> @Yoav Weiss <yoavwe...@chromium.org> due to the extra development time
>> we were able to include this concept (what we're calling self-links) in our
>> multi-armed experiment to determine if it is feasible!
>>
>
> Awesome!!
>
>
>>
>> Thanks,
>> Kyra
>>
>> On Wed, Jul 3, 2024 at 10:27 PM Yoav Weiss (@Shopify) <
>> yoavwe...@chromium.org> wrote:
>>
>>> LGTM3
>>>
>>> One question raised <https://x.com/miketaylr/status/1808452993504739821>
>>> elsewhere was around same-origin links, where links to origin B visited
>>> from origin A should be then marked as visited when linked directly from B.
>>> I see there's an open issue
>>> <https://github.com/kyraseevers/Partitioning-visited-links-history/issues/6>
>>> on this. It'd be good if one of the experiment's goals would be to
>>> determine if this is a blocker or not for initial shipping.
>>>
>>> On Wed, Jul 3, 2024 at 10:12 PM Daniel Bratell <bratel...@gmail.com>
>>> wrote:
>>>
>>>> LGTM2 for a low percentage finch experiment in M128-M130 (inclusive)
>>>>
>>>> /Daniel
>>>> On 2024-07-03 22:02, Chris Harrelson wrote:
>>>>
>>>> LGTM1
>>>>
>>>> (probably 3 needed because this is a non-standard experiment)
>>>>
>>>> On Wed, Jul 3, 2024 at 12:28 PM Kyra Seevers <kyraseev...@chromium.org>
>>>> wrote:
>>>>
>>>>> One point of clarification: we are intending to experiment for one
>>>>> milestone (M128), but would like to request 3 milestones (M128 - M130) in
>>>>> case of any delays.
>>>>>
>>>>> Thanks so much!
>>>>>
>>>>> On Wed, Jul 3, 2024 at 2:16 PM Kyra Seevers <kyraseev...@chromium.org>
>>>>> wrote:
>>>>>
>>>>>> Update: I wanted to update the thread that WebKit left positive
>>>>>> indications of support for this proposal in the request for position
>>>>>> recently: https://github.com/WebKit/standards-positions/issues/363.
>>>>>>
>>>>>> Daniel: Thanks for the question! We will be using a traditional Finch
>>>>>> experiment rollout starting with Canary/Dev in M128. I will update this
>>>>>> thread with any changes to the experiment that occur.
>>>>>>
>>>>>> As for why we chose our keying structure: top-level site allows us to
>>>>>> prevent cross-site leaks and frame origin allows us to adhere to the
>>>>>> same-origin policy and avoid cross-frame leaks. For example, if I have an
>>>>>> iframe c.com embedded in both a.com and b.com, keying by top-level
>>>>>> site removes the opportunity for cross-site tracking to occur between 
>>>>>> these
>>>>>> two iframes. For a visual example of this, please see the explainer
>>>>>> (especially Key Scenarios #2 and #3):
>>>>>> https://github.com/kyraseevers/Partitioning-visited-links-history?tab=readme-ov-file#key-scenarios
>>>>>> .
>>>>>>
>>>>>> Thanks all,
>>>>>> Kyra
>>>>>>
>>>>>> On Wed, Jul 3, 2024 at 10:48 AM Daniel Bratell <bratel...@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> What milestones do you plan to run the experiment in?
>>>>>>>
>>>>>>> (Also, why isn't it enough to key on frame origin? I'm sure there is
>>>>>>> a good reason but it's not obvious.)
>>>>>>>
>>>>>>> /Daniel
>>>>>>> On 2024-07-02 22:42, Kyra Seevers wrote:
>>>>>>>
>>>>>>> Intent to Experiment: Partitioning :visited links history Phase 2
>>>>>>> (User-facing partitioning for :visited links)
>>>>>>> Contact emails
>>>>>>>
>>>>>>> kyraseev...@chromium.org
>>>>>>>
>>>>>>> Explainer
>>>>>>>
>>>>>>> https://github.com/kyraseevers/Partitioning-visited-links-history
>>>>>>>
>>>>>>> Specification
>>>>>>>
>>>>>>> We plan to specify our solution before shipping. This work currently
>>>>>>> falls under the wording in CSS Selectors Level 4
>>>>>>> <https://www.w3.org/TR/selectors-4/#link>:  “UAs may treat all
>>>>>>> links as unvisited links or implement other measures to preserve the 
>>>>>>> user’s
>>>>>>> privacy while rendering visited and unvisited links differently.”
>>>>>>>
>>>>>>> Summary
>>>>>>>
>>>>>>> To eliminate user browsing history leaks, anchor elements will be
>>>>>>> styled as :visited if and only if they have been clicked from this
>>>>>>> top-level site and frame origin before. On the browser-side, this means
>>>>>>> that the VisitedLinks hashtable will now be partitioned via
>>>>>>> "triple-keying", or by storing the following for each visited link: 
>>>>>>> <link
>>>>>>> URL, top-level site, frame origin>. By only styling links that have been
>>>>>>> clicked on this site and frame before, the many side-channel attacks 
>>>>>>> that
>>>>>>> have been developed to obtain :visited links styling information are now
>>>>>>> obsolete, as they no longer provide sites with new information about 
>>>>>>> users.
>>>>>>>
>>>>>>> Blink component
>>>>>>>
>>>>>>> Blink>History>VisitedLinks
>>>>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EHistory%3EVisitedLinks>
>>>>>>>
>>>>>>> Search tags
>>>>>>>
>>>>>>> visited links
>>>>>>> <https://chromestatus.com/features#tags:visited%20links>, :visited
>>>>>>> selector
>>>>>>> <https://chromestatus.com/features#tags::visited%20selector>, 
>>>>>>> partitioning
>>>>>>> history
>>>>>>> <https://chromestatus.com/features#tags:partitioning%20history>
>>>>>>>
>>>>>>> TAG review
>>>>>>>
>>>>>>> https://github.com/w3ctag/design-reviews/issues/896
>>>>>>>
>>>>>>> TAG review status
>>>>>>>
>>>>>>> Issues addressed
>>>>>>>
>>>>>>> Risks
>>>>>>> Interoperability and Compatibility
>>>>>>>
>>>>>>> Gecko: Positive (
>>>>>>> https://github.com/mozilla/standards-positions/issues/1040)
>>>>>>>
>>>>>>> WebKit: Under Review (
>>>>>>> https://github.com/WebKit/standards-positions/issues/363)
>>>>>>>
>>>>>>> Web developers: No signals
>>>>>>>
>>>>>>> Other signals:
>>>>>>>
>>>>>>>    -
>>>>>>>
>>>>>>>    Positive initial signals from presentation at WebAppSec from
>>>>>>>    both Apple and Firefox
>>>>>>>    
>>>>>>> <https://github.com/w3c/webappsec/blob/main/meetings/2023/2023-06-21-minutes.md>
>>>>>>>    -
>>>>>>>
>>>>>>>    At the XS Leaks Summit, Firefox stated exploration of :visited
>>>>>>>    links partitioning in their privacy goals for the upcoming year at 
>>>>>>> the
>>>>>>>    XS-Leaks Summit
>>>>>>>
>>>>>>>
>>>>>>>    -
>>>>>>>
>>>>>>>    Positive or neutral initial signals from security and privacy
>>>>>>>    researchers at the XS-Leaks summit. No security concerns about this 
>>>>>>> design.
>>>>>>>    Interest in understanding user behavior around this new model of what
>>>>>>>    constitutes a :visited link.
>>>>>>>    -
>>>>>>>
>>>>>>>    Feedback from UX that CSS extensibility is in-demand from
>>>>>>>    developers right now, and this work would pave the way for less 
>>>>>>> restricted
>>>>>>>    CSS on anchor elements. In addition, support from various developers 
>>>>>>> who
>>>>>>>    believe that taking care of this long-standing privacy leak will 
>>>>>>> allow
>>>>>>>    their own security and privacy solutions to advance once history 
>>>>>>> sniffing
>>>>>>>    is no longer an issue.
>>>>>>>
>>>>>>>
>>>>>>> Ergonomics
>>>>>>>
>>>>>>> This design is asynchronous and not used in tandem with other APIs.
>>>>>>>
>>>>>>> Activation
>>>>>>>
>>>>>>> Since this is a Finch roll-out, there are no additional activation
>>>>>>> risks.
>>>>>>>
>>>>>>> Security
>>>>>>>
>>>>>>> For this design we worked with the Chrome Security Architecture team
>>>>>>> to ensure reasonable precautions were taken against leaks of the 
>>>>>>> :visited
>>>>>>> links hashtable via renderer compromise.
>>>>>>>
>>>>>>> WebView application risks
>>>>>>>
>>>>>>> This experiment will not run on WebView. This feature deals with
>>>>>>> platform-specific code and the WebView implementation of :visited links
>>>>>>> does not integrate with the History Database.
>>>>>>>
>>>>>>>
>>>>>>> Goals for experimentation
>>>>>>>
>>>>>>> Our intent is to run a Finch experiment. This user-facing experiment
>>>>>>> will use the traditional Finch roll-out schedule. We will utilize newly
>>>>>>> added UMA to determine the percentage of links styled as :visited under
>>>>>>> partitioning, as well as observe the size, efficiency, and impact of the
>>>>>>> newly partitioned infrastructure in comparison to the unpartitioned
>>>>>>> (original) codepaths.
>>>>>>>
>>>>>>> Experiment Risks
>>>>>>>
>>>>>>> As this is a Finch experiment, it is per-client rather than
>>>>>>> per-site. The biggest potential risk to clients is a visible change to
>>>>>>> which links are styled as :visited once they enter the experiment. 
>>>>>>> However,
>>>>>>> based on pre-experimental metrics analysis, we believe that most links 
>>>>>>> the
>>>>>>> user sees will remain unchanged. In the event of an issue during the
>>>>>>> experiment, we will flip our kill switch via Finch.
>>>>>>>
>>>>>>> Ongoing technical constraints
>>>>>>>
>>>>>>> None
>>>>>>>
>>>>>>> Debuggability
>>>>>>>
>>>>>>> No DevTools support is required.
>>>>>>>
>>>>>>> Will this feature be supported on all six Blink platforms (Windows,
>>>>>>> Mac, Linux, ChromeOS, Android, and Android WebView)?
>>>>>>>
>>>>>>> No
>>>>>>>
>>>>>>> This feature is not currently supported on iOS or Android Webview.
>>>>>>> For iOS, this feature requires WebKit to alter its CSS parsing to 
>>>>>>> support
>>>>>>> triple-key partitioning. Android Webview relies on an entirely different
>>>>>>> system to populate history, so it will require a separate design.
>>>>>>>
>>>>>>> Is this feature fully tested by web-platform-tests
>>>>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>>>>>>> ?
>>>>>>>
>>>>>>> No
>>>>>>>
>>>>>>> This feature is not tested by Web Platform Tests because the
>>>>>>> :visited selector cannot be queried via JavaScript (
>>>>>>> https://developer.mozilla.org/en-US/docs/Web/CSS/Privacy_and_the_:visited_selector).
>>>>>>> As a result, we can only test :visited-ness via manual tests which rely 
>>>>>>> on
>>>>>>> users visually confirming the correct links are :visited, or unit and
>>>>>>> integration tests internal to Chrome.
>>>>>>>
>>>>>>> Flag name on chrome://flags
>>>>>>>
>>>>>>> N/a
>>>>>>>
>>>>>>> Finch feature name
>>>>>>>
>>>>>>> PartitionVisitedLinkDatabase
>>>>>>>
>>>>>>> Requires code in //chrome?
>>>>>>>
>>>>>>> True
>>>>>>>
>>>>>>> Tracking bug
>>>>>>>
>>>>>>> https://bugs.chromium.org/p/chromium/issues/detail?id=1448609
>>>>>>>
>>>>>>> Launch bug
>>>>>>>
>>>>>>> https://launch.corp.google.com/launch/4330864
>>>>>>>
>>>>>>> Estimated milestones
>>>>>>>
>>>>>>> Shipping on desktop
>>>>>>>
>>>>>>> 128
>>>>>>>
>>>>>>> Shipping on Android
>>>>>>>
>>>>>>> 128
>>>>>>>
>>>>>>> Link to entry on the Chrome Platform Status
>>>>>>>
>>>>>>>
>>>>>>> https://chromestatus.com/feature/5101991698628608?gate=4821248529137664
>>>>>>>
>>>>>>> Links to previous Intent discussions
>>>>>>>
>>>>>>> Intent to prototype:
>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CA%2BmmbXbbLWwmRYH5SWx0%2BMWkfB2UY2miOAq4r0MZc34i_sWqBw%40mail.gmail.com
>>>>>>>
>>>>>>>
>>>>>>> Intent to Experiment (Phase 1):
>>>>>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/U5AX0OXaxM8/m/tIGr4bJJBgAJ?utm_medium=email&utm_source=footer
>>>>>>>
>>>>>>> This intent message was generated by Chrome Platform Status
>>>>>>> <https://chromestatus.com/>.
>>>>>>> --
>>>>>>> You received this message because you are subscribed to the Google
>>>>>>> Groups "blink-dev" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>>> send an email to blink-dev+unsubscr...@chromium.org.
>>>>>>> To view this discussion on the web visit
>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CA%2BmmbXYy4CSMuPLY0HJuTbZt0qPz5ZUsGUToFJuCE%2BTfC86umA%40mail.gmail.com
>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CA%2BmmbXYy4CSMuPLY0HJuTbZt0qPz5ZUsGUToFJuCE%2BTfC86umA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>> .
>>>>>>>
>>>>>>> --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "blink-dev" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to blink-dev+unsubscr...@chromium.org.
>>>>> To view this discussion on the web visit
>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CA%2BmmbXbJX%2BW5m9351o8qZV56SAnsmEfDbSwTr6YHPrpQUx%3DG2Q%40mail.gmail.com
>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CA%2BmmbXbJX%2BW5m9351o8qZV56SAnsmEfDbSwTr6YHPrpQUx%3DG2Q%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "blink-dev" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to blink-dev+unsubscr...@chromium.org.
>>>> To view this discussion on the web visit
>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/c88842b3-894d-49c6-be1a-d83f7fdae7ea%40gmail.com
>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/c88842b3-894d-49c6-be1a-d83f7fdae7ea%40gmail.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "blink-dev" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to blink-dev+unsubscr...@chromium.org.
>>> To view this discussion on the web visit
>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOmohSLzt-06_bsRvJzNm%2BDgkGaV15bE3QiY%3DaoN-krLY8NSOQ%40mail.gmail.com
>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOmohSLzt-06_bsRvJzNm%2BDgkGaV15bE3QiY%3DaoN-krLY8NSOQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>
>>
>> --
>>
>> Kyra Seevers (she/her) |  Software Engineer |  kyraseev...@google.com |
>> kyraseev...@chromium.org
>>
>

-- 

Kyra Seevers (she/her) |  Software Engineer |  kyraseev...@google.com |
kyraseev...@chromium.org

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CANyVgfDjQqxUNuWaHgCuYwk4-9KJ2HLi3_BYp0xxrrJfdSk55w%40mail.gmail.com.

Reply via email to