Skip to content

docs: cut restated upstream behavior left by the stamp sweep (user-interface, performance) #15510

Open

Description

@kyle-sexton

Problem

The stamp sweep in #15462 (docs: drop stamps from pointer records (user-interface, performance)) found these passages restating upstream behavior. Under contract 6.0.0 (#15468) restated behavior is not stamped; it is cut to a pointer or rewritten as this repository's own rule. The sweep left them unchanged because cutting them changes what a skill tells the agent.

Items

These passages paraphrase the upstream page. Their stamps are removed in this PR; the prose stays
and is left for a follow-up cut.

  • plugins/user-interface/reference/types/touch-web.md "Hover and press": which devices match
    fine/hover.
  • touch-web.md "Tap highlight": which browsers paint the highlight.
  • touch-web.md 300ms delay paragraph: what manipulation turns off.
  • touch-web.md "Never disable zoom": which browsers ignore zoom locks.
  • touch-web.md viewport units paragraph: the definitions of vh/dvh/svh/lvh.
  • touch-web.md overscroll paragraph: what none/contain turn off.
  • touch-web.md touch-action pan paragraph: what pan values leave to the browser.
  • touch-web.md keyboard-trap paragraph: what counts as a standard exit.
  • touch-web.md section 7: how a device connects for remote debugging.
  • plugins/user-interface/reference/types/web/accessibility.md: Tab and arrow-key conventions;
    what showModal() does; what inert does; live-region timing; the WCAG 2.2.1 warn-and-extend
    option; when visibilitychange fires; the navigator.platform example; focusable disabled
    controls.
  • reference/types/web/forms.md: what pointer/maxTouchPoints describe; the OWASP built-in
    CSRF and SameSite guidance; what requestSubmit() runs; the generic authentication responses.
  • reference/types/web/layout-stability.md: next-themes injecting a script; nonce/hash over
    'unsafe-inline'.
  • reference/types/web/layout.md: which values form a stacking context.
  • reference/types/web/marketing-pages.md: the hidden attribute; aria-hidden on decorative
    content.
  • reference/types/web/performance.md: how srcset/sizes select a source; autoplay and
    playsinline; which listeners default to passive.
  • reference/types/web/shape-and-depth.md: the concentric-radius derivation.
  • reference/types/web/states.md: optimistic rollback in TanStack Query and useOptimistic.
  • reference/types/web/theming.md: what color-scheme changes.
  • reference/types/web/typography/font-capabilities.md: Recursive's fixed widths.
  • reference/types/web/typography/typefaces-and-formats.md: font-format weight.
  • reference/types/web/component-api/implementation.md: how a component receives a ref.
  • reference/types/web.md: corner-shape is experimental.
  • reference/component-libraries.md: what a tooltip may contain.
  • reference/principles.md: what WCAG 2.3.3 excludes.
  • skills/audit/reference/launch-scope.md: what Leva's hidden does; how notFound() ends
    rendering.
  • skills/write-css/reference/foundations.md: text-wrap: pretty intent and cost; the forms
    light-dark() accepts.
  • skills/setup/SKILL.md:38-40: the probe saying a ${user_config.} placeholder can survive.
  • plugins/performance/README.md: the Barrett et al. warmup finding.
  • performance/reference/techniques.md "Stepped frames": beginFrame is experimental.
  • performance/skills/climb/SKILL.md: the hand check of ignored-only worktree removal.

Kept, unsure

  • plugins/*/lib/prerequisites.{sh,mjs}, plugins/performance/lib/state-key.sh and
    plugins/performance/scripts/fetch-docs.sh: code comments, out of scope per the brief. Some of
    them describe behavior only.
  • plugins/performance/skills/go-faster/reference/areas.md:145-156: the settings and memory
    pointers are fetched live in every run, but their triggers name keys (permissions.ask,
    paths:) that the area procedures use.

Kept, no anchor checked

These records lost their stamps, but they link a page that has sections and no anchor was checked:

  • types/web/shape-and-depth.md: MDN -webkit-device-pixel-ratio.
  • types/terminal.md: clig.dev.
  • reference/principles.md: NN/g heuristics, the WCAG 2.2 root, designtokens.org.
  • types/mods.md: the mods interface page.
  • types/app.md and types/web.md: the HIG, Material 3 and Fluent 2 root pages.
  • animation/performance.md: two web.dev articles and one Chrome blog post.

Do

Per item: cut to the anchored pointer, keep as our own rule with its reason, or record why it stays. A cut that changes agent behavior needs an eval or a stated basis.

Related

Refs: #15462, #15468

Activity

  1. added
    needs-triageNot yet classified. Floor until a type and one priority tier are set.
    on Nov 12, 2026
  2. github-actions commented on Nov 12, 2026

    @github-actions
    Contributor

    Size: Large
    Complexity: Medium
    Uncertainty: Knowable
    Flags: none
    Blocked by: none

    I read this as a docs-only follow-up to #15462 and #15468. About 30 passages in the user-interface and performance plugins restate upstream behavior. Each one is to be cut to an anchored pointer, kept as this repository's own rule with its reason, or recorded as staying. Any cut that changes agent behavior needs an eval or a stated basis.

    The scope is large, so it will likely need splitting by file group. The sibling issues for other plugins (#15509, #15511 to #15515) cover different areas, so I don't see a duplicate. I found no merged pull request that already does this.

    Automated triage. A maintainer reviews it.

  3. removed
    needs-triageNot yet classified. Floor until a type and one priority tier are set.
    on Nov 12, 2026
  4. melodic-automation-lanes commented on Nov 12, 2026

    @melodic-automation-lanes
    Contributor

    Not admitted to the issue lane: no trusted-human acceptance criteria: a listed human must put the confirmed - [ ] criteria in the body or post them as their own comment, or, on an issue a listed human filed, intake's newest refinement comment must hold them unedited. Admission takes the issue once each of those is met, when intake triages it again (.github/actions/resolve-config/admission-rules.json).

  5. melodic-automation-lanes commented on Nov 12, 2026

    @melodic-automation-lanes
    Contributor

    Refinement. A read-only run explored this repository, searched its issues and pull requests, and read the allowed docs to draft what follows. On an issue a listed human filed, it counts as the issue's spec once posted, while unedited; it is still model text, so check it.

    Intended outcome: Each of about 35 listed passages in the user-interface and performance plugins is cut to an anchored upstream pointer, kept as this repository's own rule with its reason, or recorded as staying.

    Related work

    Open questions

    1. The Do section lets each item be cut, kept as an own rule, or recorded as staying, and the issue does not say which. Who decides per item, or is there a default?
      RECOMMENDED: Default to cutting each passage to an anchored pointer, and keep it as an own rule only where an agent procedure uses the text, such as touch-web.md:127 where the audit at line 145 relies on what manipulation does. Basis: plugins/user-interface/reference/types/touch-web.md:127
    2. Which evidence satisfies the rule that a cut changing agent behavior needs an eval or a stated basis? Each cut edits text that skills read.
      RECOMMENDED: Accept a stated basis in the PR body per cut, and require an eval only for edits to SKILL.md files and audit procedures, such as skills/setup/SKILL.md:38-40 and performance/skills/climb/SKILL.md. Basis: judgment
    3. Should the work be split by file group, given about 35 items across two plugins, and into which groups?
      RECOMMENDED: Split into three issues: touch-web.md, the other user-interface reference files, and the skills and performance plugin files. Basis: judgment
    4. What happens to the Kept, unsure items (the lib code comments, fetch-docs.sh, and areas.md:145-156) and to the Kept, no anchor checked pointers? Are they in scope?
      RECOMMENDED: Treat them as out of scope here and file a separate anchor-verification issue for the unchecked pointers. Basis: judgment
    5. The issue has no task list or checkable done-when. May each item become one checkable criterion, such as the passage being replaced by a pointer with a verified anchor?
      RECOMMENDED: Yes. Add a task list with one checkbox per bullet, each checking that the passage is cut, kept with a stated reason, or recorded. Basis: judgment

    Sources read

    • plugins/user-interface/reference/types/touch-web.md:127: manipulation passage is a restated upstream fact with a MDN pointer and recheck trigger at lines 138-141
    • plugins/user-interface/reference/types/touch-web.md:145: the audit rule depends on touch-action: manipulation, so cutting the passage affects agent behavior
    • plugins/user-interface/reference/types/touch-web.md:305: the viewport-units paragraph defines vh and dvh and is also used by an audit rule at line 320

    To answer, post a comment that starts with this line:

    **Decision recorded.** <answer>
    

    Automated refinement by the lanes App. Answer with a comment whose first line is **Decision recorded.**.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Fields

    Work status

    needs-owner-decision

    Priority

    low

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions