addressing-pr-review-c…
Address all valid review comments on a PR for the current branch in the streamlit/streamlit repo. Covers both inline review comments and general PR (issue)…
Assesses whether branch or PR changes are high-risk for externally hosted or embedded Streamlit usage and recommends whether external e2e coverage with `@pytest.mark.external_test` is needed. Use during code review, PR triage, or test planning when changes touch routing, auth,
$ npx -y skills add streamlit/streamlit --skill assessing-external-test-risk --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/assessing-external-test-riskContext preview
The summary Claude sees to decide when to auto-load this skill.
Assesses whether branch or PR changes are high-risk for externally hosted or embedded Streamlit usage and recommends whether external e2e coverage with `@pytest.mark.external_test` is needed. Use during code review, PR triage, or test planning when changes touch routing, auth,
name: assessing-external-test-risk description: Assesses whether branch or PR changes are high-risk for externally hosted or embedded Streamlit usage and recommends whether external e2e coverage with `@pytest.mark.external_test` is needed. Use during code review, PR triage, or test planning when changes touch routing, auth, websocket/session behavior, embedding, assets, cross-origin behavior, SiS/Snowflake runtime, storage, or security headers.
Use this skill to decide whether a branch or PR should include external e2e coverage using `@pytest.mark.external_test`.
This helps protect deployments that commonly involve proxies, embedded iframe contexts, CSP constraints, and other browser security boundaries.
This skill is for **risk assessment and recommendation**. It does not auto-mark tests unless explicitly requested.
Use an **any-hit** policy:
1. Gather the changed files and full diff against the base branch. 2. Evaluate each checklist category below as hit or not hit. 3. Record concrete evidence from file paths and diff snippets. 4. Produce a recommendation and specific external-test focus areas.
Evaluate all categories. A single hit is enough to recommend external coverage.
1. **Routing and URL behavior**
2. **Auth, cookies, CSRF, and identity binding**
3. **Websocket handshake and session transport**
4. **Embedding and iframe boundary**
5. **Static and component asset serving**
6. **Service worker, uploads, and downloads**
7. **Cross-origin behavior and external networking**
8. **Cross-origin theming and resource discovery**
9. **SiS and Snowflake runtime dependencies**
10. **Client storage behavior**
11. **Security headers and browser policies**
Use this exact structure:
## External test recommendation - Recommend external_test: [Yes/No] - Triggered categories: [List category numbers and names, or "None"] - Evidence: - `<path>`: [short reason from diff] - `<path>`: [short reason from diff] - Suggested external_test focus areas: - [Concrete scenario to validate externally] - [Concrete scenario to validate externally] - Confidence: [High/Medium/Low] - Assumptions and gaps: [Unknowns, missing context, or why confidence is reduced]
Diff includes:
Expected output:
Diff includes:
Expected output:
Repo: streamlit/streamlit
Address all valid review comments on a PR for the current branch in the streamlit/streamlit repo. Covers both inline review comments and general PR (issue)…
Validates all code changes before committing by running format, lint, type, and unit test checks. Use after making backend (Python) or frontend (TypeScript)…
Creates a draft pull request on GitHub with proper labels, branch naming, and description formatting. Use when changes are ready to be submitted as a PR to the…
Debug Streamlit frontend and backend changes using make debug with hot-reload. Use when testing code changes, investigating bugs, checking UI behavior, or…
Lists available make commands for Streamlit development. Use for build, test, lint, or format tasks.
Finalizes branch changes for merging by simplifying code, running checks, reviewing changes, and creating a PR if needed. Use when ready to merge changes into…