René's URL Explorer Experiment


Title: feat: security hardening — URL secret redaction + bounded error-body reads by lesnik512 · Pull Request #63 · modern-python/httpware · GitHub

Open Graph Title: feat: security hardening — URL secret redaction + bounded error-body reads by lesnik512 · Pull Request #63 · modern-python/httpware

X Title: feat: security hardening — URL secret redaction + bounded error-body reads by lesnik512 · Pull Request #63 · modern-python/httpware

Description: Python HTTP client framework with sync & async clients and built-in resilience - feat: security hardening — URL secret redaction + bounded error-body reads by lesnik512 · Pull Request #63 · modern-python/httpware

Open Graph Description: Summary Closes the security cluster from the 2026-06-14 deep audit — the dimensions (security/supply-chain) the prior audit never covered. Design + plan: planning/changes/active/2026-06-14.03-secur...

X Description: Summary Closes the security cluster from the 2026-06-14 deep audit — the dimensions (security/supply-chain) the prior audit never covered. Design + plan: planning/changes/active/2026-06-14.03-secur...

Opengraph URL: https://github.com/modern-python/httpware/pull/63

X: @github

direct link

Domain: github.com

route-pattern/_view_fragments/voltron/pull_requests/show/:user_id/:repository/:id/pull_request_layout(.:format)
route-controllervoltron_pull_requests_fragments
route-actionpull_request_layout
fetch-noncev2:f0cac9b7-8e09-f7ad-f066-53b3f8c5f9cb
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idB5DE:38C5E:CB6BCC:125B0D8:6A4E4B57
html-safe-nonce6a234c851ce9b09f5a9fc04ff03e196a724b79bd54872a51053fb42b3ed0e57b
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCNURFOjM4QzVFOkNCNkJDQzoxMjVCMEQ4OjZBNEU0QjU3IiwidmlzaXRvcl9pZCI6IjcyNzQ3MTM2MTUxNTk5Mzc4NzkiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ==
visitor-hmac581bf4a1b84a62b8234d97050aafd148ba383e8e1d21043bed3b5d8601b7d33c
hovercard-subject-tagpull_request:3862860125
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/pull_requests_fragments/pull_request_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/voltron/pull_requests/show/modern-python/httpware/63/pull_request_layout
twitter:imagehttps://opengraph.githubassets.com/28c100e01ac6d620243fcede17631f904504a94e585a6e84fb6515feb3d478d3/modern-python/httpware/pull/63
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/28c100e01ac6d620243fcede17631f904504a94e585a6e84fb6515feb3d478d3/modern-python/httpware/pull/63
og:image:altSummary Closes the security cluster from the 2026-06-14 deep audit — the dimensions (security/supply-chain) the prior audit never covered. Design + plan: planning/changes/active/2026-06-14.03-secur...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernamelesnik512
hostnamegithub.com
expected-hostnamegithub.com
None030096ee0db095447bfe77409d33bfac127ca7128299c58deef27c52eaa1b1f0
turbo-cache-controlno-cache
go-importgithub.com/modern-python/httpware git https://github.com/modern-python/httpware.git
octolytics-dimension-user_id140597529
octolytics-dimension-user_loginmodern-python
octolytics-dimension-repository_id1237564603
octolytics-dimension-repository_nwomodern-python/httpware
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id1237564603
octolytics-dimension-repository_network_root_nwomodern-python/httpware
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
releasee8506f6d0538364886e3f0153c154c410965e70d
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/modern-python/httpware/pull/63#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fmodern-python%2Fhttpware%2Fpull%2F63
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fmodern-python%2Fhttpware%2Fpull%2F63
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fpull_requests_fragments%2Fpull_request_layout&source=header-repo&source_repo=modern-python%2Fhttpware
Reloadhttps://github.com/modern-python/httpware/pull/63
Reloadhttps://github.com/modern-python/httpware/pull/63
Reloadhttps://github.com/modern-python/httpware/pull/63
Please reload this pagehttps://github.com/modern-python/httpware/pull/63
modern-python https://github.com/modern-python
httpwarehttps://github.com/modern-python/httpware
Please reload this pagehttps://github.com/modern-python/httpware/pull/63
Notifications https://github.com/login?return_to=%2Fmodern-python%2Fhttpware
Fork 0 https://github.com/login?return_to=%2Fmodern-python%2Fhttpware
Star 1 https://github.com/login?return_to=%2Fmodern-python%2Fhttpware
Code https://github.com/modern-python/httpware
Issues 0 https://github.com/modern-python/httpware/issues
Pull requests 0 https://github.com/modern-python/httpware/pulls
Actions https://github.com/modern-python/httpware/actions
Projects https://github.com/modern-python/httpware/projects
Security and quality 0 https://github.com/modern-python/httpware/security
Insights https://github.com/modern-python/httpware/pulse
Code https://github.com/modern-python/httpware
Issues https://github.com/modern-python/httpware/issues
Pull requests https://github.com/modern-python/httpware/pulls
Actions https://github.com/modern-python/httpware/actions
Projects https://github.com/modern-python/httpware/projects
Security and quality https://github.com/modern-python/httpware/security
Insights https://github.com/modern-python/httpware/pulse
lesnik512https://github.com/lesnik512
mainhttps://github.com/modern-python/httpware/tree/main
feat/security-hardeninghttps://github.com/modern-python/httpware/tree/feat/security-hardening
Conversationhttps://github.com/modern-python/httpware/pull/63
Commits12 (12)https://github.com/modern-python/httpware/pull/63/commits
Checkshttps://github.com/modern-python/httpware/pull/63/checks
Files changedhttps://github.com/modern-python/httpware/pull/63/files
feat: security hardening — URL secret redaction + bounded error-body readshttps://github.com/modern-python/httpware/pull/63#top
lesnik512https://github.com/lesnik512
mainhttps://github.com/modern-python/httpware/tree/main
feat/security-hardeninghttps://github.com/modern-python/httpware/tree/feat/security-hardening
https://github.com/lesnik512
lesnik512https://github.com/lesnik512
Jun 14, 2026https://github.com/modern-python/httpware/pull/63#issue-4659261003
2026-06-14 deep audithttps://github.com/modern-python/httpware/pull/planning/audits/2026-06-14-deep-audit.md
Claude Codehttps://claude.com/claude-code
Please reload this pagehttps://github.com/modern-python/httpware/pull/63
lesnik512https://github.com/lesnik512
June 14, 2026 15:52https://github.com/modern-python/httpware/pull/63#commits-pushed-361a5ee
https://github.com/lesnik512
https://github.com/claude
docs(planning): security-hardening design (redaction + bounded error …https://github.com/modern-python/httpware/pull/63/commits/361a5ee6bb85923b2be43f12f5202df9c8139974
361a5eehttps://github.com/modern-python/httpware/pull/63/commits/361a5ee6bb85923b2be43f12f5202df9c8139974
https://github.com/lesnik512
https://github.com/claude
docs(planning): security-hardening implementation planhttps://github.com/modern-python/httpware/pull/63/commits/e842322fda5a8ca411895a183489ee8e7dfb688f
e842322https://github.com/modern-python/httpware/pull/63/commits/e842322fda5a8ca411895a183489ee8e7dfb688f
https://github.com/lesnik512
https://github.com/claude
feat(redaction): URL sanitizer (strip userinfo + mask sensitive query…https://github.com/modern-python/httpware/pull/63/commits/064cedccd24e847ee476481f50a6ad6f57e285df
064cedchttps://github.com/modern-python/httpware/pull/63/commits/064cedccd24e847ee476481f50a6ad6f57e285df
https://github.com/lesnik512
https://github.com/claude
fix(errors): mask query secrets in StatusError messages via redact_urlhttps://github.com/modern-python/httpware/pull/63/commits/b59d43695631a639335273a54712f04ca253b4cf
b59d436https://github.com/modern-python/httpware/pull/63/commits/b59d43695631a639335273a54712f04ca253b4cf
https://github.com/lesnik512
https://github.com/claude
fix(observability): mask query secrets in resilience event URLshttps://github.com/modern-python/httpware/pull/63/commits/ff00a5455b03f2ad073135728891a6b0d8b6aed2
ff00a54https://github.com/modern-python/httpware/pull/63/commits/ff00a5455b03f2ad073135728891a6b0d8b6aed2
https://github.com/lesnik512
https://github.com/claude
fix(redaction): mask secrets in URL fragment + whitespace-padded keyshttps://github.com/modern-python/httpware/pull/63/commits/c6d8b86d39a4d879ce856472c3466e1d33021de4
c6d8b86https://github.com/modern-python/httpware/pull/63/commits/c6d8b86d39a4d879ce856472c3466e1d33021de4
https://github.com/lesnik512
https://github.com/claude
feat(errors): add ResponseTooLargeError (opt-in error-body cap)https://github.com/modern-python/httpware/pull/63/commits/555bd1fe1c77eb3904f33d3e8b9d879820cb8c2a
555bd1fhttps://github.com/modern-python/httpware/pull/63/commits/555bd1fe1c77eb3904f33d3e8b9d879820cb8c2a
https://github.com/lesnik512
https://github.com/claude
feat(client): opt-in max_error_body_bytes bounds the stream() error p…https://github.com/modern-python/httpware/pull/63/commits/68ae51fae48ab574f4b0f09c1b8ab29ed252fd17
68ae51fhttps://github.com/modern-python/httpware/pull/63/commits/68ae51fae48ab574f4b0f09c1b8ab29ed252fd17
https://github.com/lesnik512
https://github.com/claude
docs: trust_env + bounded-error-body + header-reachability calloutshttps://github.com/modern-python/httpware/pull/63/commits/a355b2f102c0c4d0493ca188e5c8fb1830617a4a
a355b2fhttps://github.com/modern-python/httpware/pull/63/commits/a355b2f102c0c4d0493ca188e5c8fb1830617a4a
https://github.com/lesnik512
https://github.com/claude
test(stream): mark unreachable stream-body lines no-coverhttps://github.com/modern-python/httpware/pull/63/commits/8c23503a0922bda65ec1b211c62a407c8f4b99ca
8c23503https://github.com/modern-python/httpware/pull/63/commits/8c23503a0922bda65ec1b211c62a407c8f4b99ca
https://github.com/lesnik512
https://github.com/claude
test: exclude pytest.fail() lines from coverage via pyprojecthttps://github.com/modern-python/httpware/pull/63/commits/eface88d0026e8424784fa799d119fdea43c26be
eface88https://github.com/modern-python/httpware/pull/63/commits/eface88d0026e8424784fa799d119fdea43c26be
https://github.com/lesnik512
https://github.com/claude
refactor(observability): redact url at the _emit_event chokepointhttps://github.com/modern-python/httpware/pull/63/commits/7b69f19dfeaaf325a2ed52b3850551acc65b73f0
7b69f19https://github.com/modern-python/httpware/pull/63/commits/7b69f19dfeaaf325a2ed52b3850551acc65b73f0
https://github.com/lesnik512
lesnik512https://github.com/lesnik512
3adfd9ahttps://github.com/modern-python/httpware/commit/3adfd9a659a6d8c03ad201b30534f21a75e3f643
Jun 14, 2026https://github.com/modern-python/httpware/pull/63#event-26726206998
Please reload this pagehttps://github.com/modern-python/httpware/pull/63
https://github.com/lesnik512
lesnik512https://github.com/lesnik512
June 14, 2026 13:36https://github.com/modern-python/httpware/pull/63#event-26726207317
lesnik512https://github.com/lesnik512
Jun 14, 2026 https://github.com/modern-python/httpware/pull/63#ref-commit-b9ba313
https://github.com/lesnik512
https://github.com/claude
chore(planning): archive shipped pydantic-isolation + security bundleshttps://github.com/modern-python/httpware/commit/b9ba31301a331b02f70960c479dce957bad07dd2
b9ba313https://github.com/modern-python/httpware/commit/b9ba31301a331b02f70960c479dce957bad07dd2
#62https://github.com/modern-python/httpware/pull/62
#63https://github.com/modern-python/httpware/pull/63
fix: deep-audit correctness + public-API findings #64 https://github.com/modern-python/httpware/pull/64
docs: close deep-audit documentation-accuracy findings #66 https://github.com/modern-python/httpware/pull/66
https://github.co/hiddenchars
https://github.com/modern-python/httpware/pull/{{ revealButtonHref }}
Sign up for freehttps://github.com/join?source=comment-repo
Sign in to commenthttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fmodern-python%2Fhttpware%2Fpull%2F63
Please reload this pagehttps://github.com/modern-python/httpware/pull/63
https://github.com/lesnik512
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.