Skip to content

Make Python drawer qualification detect clipped nested destinations #28

Description

@rmcdaniel

Problem

The Python docs visual gate now captures /reference/client/, but that first list item cannot reveal whether the responsive nested-navigation viewport clips later destinations. The deployed drawer from 806bc04aac4d7c668b27110549da3761683015e2 gives the Reference list a 145px client height against 734px of content; a last-item route opens with its active destination outside the visible list. Current checks still pass because controls with no visible fragment are omitted from geometry.unreachable_controls, while keyboard traversal counts off-screen controls without asserting that the active destination is visible.

Acceptance criteria

  • Pre-merge and deployment qualification exercise first, middle, and final reference destinations at intermediate, mobile, and short-height responsive viewports.
  • Opening the drawer must prove that the current destination is visibly located and that the list viewport uses the available drawer height or exposes a clearly usable scrolling region.
  • A regression fixture that constrains the nested list to three visible rows fails both geometry/interaction qualification and the retained visual-evidence validation.
  • Fully clipped interactive controls cannot be treated as clean merely because they produce no viewport fragment.
  • Pull-request and deployment workflows consume the expanded source-bound evidence.

Delete when

Delete when the required Python docs evidence fails on a clipped later destination and passes only with a visible active item and usable nested list at every supported responsive size.

Metadata

Metadata

Assignees

No one assigned

    Labels

    authority:githubGitHub is the authoritative lifecycle record for this workbeta:compatibleMay be completed without changing the frozen beta contractkind:defectA public product behavior is incorrectpriority:P2Normal-priority product workrepo:sdk-pythonOwned by the Python SDK repositorystatus:doneDerived from the authoritative closed issue state

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions