René's URL Explorer Experiment


Title: Split `usethis._tool.impl` into `spec/` and `base/` submodules by Copilot · Pull Request #1357 · usethis-python/usethis-python · GitHub

Open Graph Title: Split `usethis._tool.impl` into `spec/` and `base/` submodules by Copilot · Pull Request #1357 · usethis-python/usethis-python

X Title: Split `usethis._tool.impl` into `spec/` and `base/` submodules by Copilot · Pull Request #1357 · usethis-python/usethis-python

Description: Automatically manage Python tooling and configuration: linters, formatters, and more. A CLI for declaratively configuring your Python projects following best practices. - Split `usethis._tool.impl` into `spec/` and `base/` submodules by Copilot · Pull Request #1357 · usethis-python/usethis-python

Open Graph Description: Each module in usethis._tool.impl contained both a *ToolSpec class (static metadata, deps, pre-commit config) and a *Tool class (runtime behavior). This PR splits them into parallel submodules and ...

X Description: Each module in usethis._tool.impl contained both a *ToolSpec class (static metadata, deps, pre-commit config) and a *Tool class (runtime behavior). This PR splits them into parallel submodules and ...

Opengraph URL: https://github.com/usethis-python/usethis-python/pull/1357

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:3748d5a1-9360-f9b8-a16c-354af7c55697
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idD4E0:19C66:129706B:19E160C:6A4EA0AE
html-safe-noncee4b8296437e3d3901f265fdc044d31762dc5f121548cbd1c4837dbd3b53cc173
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJENEUwOjE5QzY2OjEyOTcwNkI6MTlFMTYwQzo2QTRFQTBBRSIsInZpc2l0b3JfaWQiOiIyNjQ4MTIwNjUwMDExNDE4Nzk4IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0=
visitor-hmacdfa5d58c0586a36672cb5c28a12798801e650b4ca77ce3ad834f699c278273d5
hovercard-subject-tagpull_request:3381341174
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/usethis-python/usethis-python/1357/pull_request_layout
twitter:imagehttps://opengraph.githubassets.com/252f20b0b175910dab1de2d1c061b3850c5761274c875222d6dcd7fe686f86e0/usethis-python/usethis-python/pull/1357
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/252f20b0b175910dab1de2d1c061b3850c5761274c875222d6dcd7fe686f86e0/usethis-python/usethis-python/pull/1357
og:image:altEach module in usethis._tool.impl contained both a *ToolSpec class (static metadata, deps, pre-commit config) and a *Tool class (runtime behavior). This PR splits them into parallel submodules and ...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernameCopilot
hostnamegithub.com
expected-hostnamegithub.com
None41b6ab3ba6d20a71766ac245b5a4a94c6fc672a9cd4da7d44c1b33ab8bf6a21c
turbo-cache-controlno-cache
go-importgithub.com/usethis-python/usethis-python git https://github.com/usethis-python/usethis-python.git
octolytics-dimension-user_id216362695
octolytics-dimension-user_loginusethis-python
octolytics-dimension-repository_id842189705
octolytics-dimension-repository_nwousethis-python/usethis-python
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id842189705
octolytics-dimension-repository_network_root_nwousethis-python/usethis-python
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
releasee6a744804e8e70f97b4d5a18a94dcc63db22f97a
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/usethis-python/usethis-python/pull/1357#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fusethis-python%2Fusethis-python%2Fpull%2F1357
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/open-source/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/open-source/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/enterprise/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%2Fusethis-python%2Fusethis-python%2Fpull%2F1357
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=usethis-python%2Fusethis-python
Reloadhttps://github.com/usethis-python/usethis-python/pull/1357
Reloadhttps://github.com/usethis-python/usethis-python/pull/1357
Reloadhttps://github.com/usethis-python/usethis-python/pull/1357
Please reload this pagehttps://github.com/usethis-python/usethis-python/pull/1357
usethis-python https://github.com/usethis-python
usethis-pythonhttps://github.com/usethis-python/usethis-python
Notifications https://github.com/login?return_to=%2Fusethis-python%2Fusethis-python
Fork 5 https://github.com/login?return_to=%2Fusethis-python%2Fusethis-python
Star 19 https://github.com/login?return_to=%2Fusethis-python%2Fusethis-python
Code https://github.com/usethis-python/usethis-python
Issues 163 https://github.com/usethis-python/usethis-python/issues
Pull requests 4 https://github.com/usethis-python/usethis-python/pulls
Actions https://github.com/usethis-python/usethis-python/actions
Security and quality 0 https://github.com/usethis-python/usethis-python/security
Insights https://github.com/usethis-python/usethis-python/pulse
Code https://github.com/usethis-python/usethis-python
Issues https://github.com/usethis-python/usethis-python/issues
Pull requests https://github.com/usethis-python/usethis-python/pulls
Actions https://github.com/usethis-python/usethis-python/actions
Security and quality https://github.com/usethis-python/usethis-python/security
Insights https://github.com/usethis-python/usethis-python/pulse
nathanjmcdougallhttps://github.com/nathanjmcdougall
Copilothttps://github.com/apps/copilot-swe-agent
mainhttps://github.com/usethis-python/usethis-python/tree/main
copilot/split-tool-impl-layershttps://github.com/usethis-python/usethis-python/tree/copilot/split-tool-impl-layers
Conversationhttps://github.com/usethis-python/usethis-python/pull/1357
Commits6 (6)https://github.com/usethis-python/usethis-python/pull/1357/commits
Checkshttps://github.com/usethis-python/usethis-python/pull/1357/checks
Files changedhttps://github.com/usethis-python/usethis-python/pull/1357/files
Split usethis._tool.impl into spec/ and base/ submoduleshttps://github.com/usethis-python/usethis-python/pull/1357#top
nathanjmcdougallhttps://github.com/nathanjmcdougall
Copilothttps://github.com/apps/copilot-swe-agent
mainhttps://github.com/usethis-python/usethis-python/tree/main
copilot/split-tool-impl-layershttps://github.com/usethis-python/usethis-python/tree/copilot/split-tool-impl-layers
https://github.com/apps/copilot-swe-agent
Copilothttps://github.com/apps/copilot-swe-agent
Mar 11, 2026https://github.com/usethis-python/usethis-python/pull/1357#issue-4054938399
Please reload this pagehttps://github.com/usethis-python/usethis-python/pull/1357
#1311https://github.com/usethis-python/usethis-python/issues/1311
@copilothttps://gh.io/copilot-coding-agent-docs
Split the usethis._tool.impl layer into usethis._tool.impl.spec and usethis._tool.impl.base layers #1356https://github.com/usethis-python/usethis-python/issues/1356
2 minute surveyhttps://gh.io/copilot-coding-agent-survey
Please reload this pagehttps://github.com/usethis-python/usethis-python/pull/1357
https://github.com/apps/copilot-swe-agent
Initial planhttps://github.com/usethis-python/usethis-python/pull/1357/commits/c035e2837d6a4c26152db9866b84251778a34f0e
c035e28https://github.com/usethis-python/usethis-python/pull/1357/commits/c035e2837d6a4c26152db9866b84251778a34f0e
https://github.com/apps/copilot-swe-agent
Copilothttps://github.com/apps/copilot-swe-agent
Copilothttps://github.com/apps/copilot-swe-agent
nathanjmcdougallhttps://github.com/nathanjmcdougall
Mar 11, 2026https://github.com/usethis-python/usethis-python/pull/1357#event-23451449282
started workhttps://github.com/usethis-python/usethis-python/sessions/6708dbe9-2d72-48ff-b368-4fdf521c5ea6
nathanjmcdougallhttps://github.com/nathanjmcdougall
March 11, 2026 00:21https://github.com/usethis-python/usethis-python/pull/1357#event-23451450551
View session https://github.com/usethis-python/usethis-python/sessions/6708dbe9-2d72-48ff-b368-4fdf521c5ea6
Copilothttps://github.com/apps/copilot-swe-agent
March 11, 2026 00:39https://github.com/usethis-python/usethis-python/pull/1357#commits-pushed-767edb2
https://github.com/apps/copilot-swe-agent
https://github.com/apps/github-copilot-cli
Refactor: split _tool/impl/ into spec/ and base/ submoduleshttps://github.com/usethis-python/usethis-python/pull/1357/commits/767edb224e6e94f0bbd32491488d18db67cdf0e6
767edb2https://github.com/usethis-python/usethis-python/pull/1357/commits/767edb224e6e94f0bbd32491488d18db67cdf0e6
https://github.com/apps/copilot-swe-agent
https://github.com/apps/github-copilot-cli
Address code review: fix SetupCFGManager import and comment stylehttps://github.com/usethis-python/usethis-python/pull/1357/commits/c9edb4669ae12bec428d363104298aae390ec772
c9edb46https://github.com/usethis-python/usethis-python/pull/1357/commits/c9edb4669ae12bec428d363104298aae390ec772
https://github.com/apps/copilot-swe-agent
https://github.com/nathanjmcdougall
Standardize comment style in circular import annotationshttps://github.com/usethis-python/usethis-python/pull/1357/commits/6cd27c26caf3cece32a55682071aae1674058cc3
6cd27c2https://github.com/usethis-python/usethis-python/pull/1357/commits/6cd27c26caf3cece32a55682071aae1674058cc3
https://github.com/apps/copilot-swe-agent
Copilothttps://github.com/apps/copilot-swe-agent
Mar 11, 2026https://github.com/usethis-python/usethis-python/pull/1357#event-23451884252
finished workhttps://github.com/usethis-python/usethis-python/sessions/6708dbe9-2d72-48ff-b368-4fdf521c5ea6
nathanjmcdougallhttps://github.com/nathanjmcdougall
March 11, 2026 00:47https://github.com/usethis-python/usethis-python/pull/1357#event-23451886020
https://github.com/apps/copilot-swe-agent
Copilothttps://github.com/apps/copilot-swe-agent
temporarily deployedhttps://github.com/usethis-python/usethis-python/actions/runs/22931161716/job/66555859788
March 11, 2026 01:25https://github.com/usethis-python/usethis-python/pull/1357#event-23452475196
https://github.com/apps/codspeed-hq
codspeed-hqhttps://github.com/apps/codspeed-hq
Mar 11, 2026https://github.com/usethis-python/usethis-python/pull/1357#issuecomment-4035548137
Please reload this pagehttps://github.com/usethis-python/usethis-python/pull/1357
d10cccahttps://github.com/usethis-python/usethis-python/commit/d10cccafd89d1c575235136d2ee83cace826f038
7274253https://github.com/usethis-python/usethis-python/commit/7274253942b6b91223be0a93c26d4d6417b47663
https://codspeed.io/usethis-python/usethis-python/branches/copilot%2Fsplit-tool-impl-layers?utm_source=github&utm_medium=comment-v2&utm_content=button
Please reload this pagehttps://github.com/usethis-python/usethis-python/pull/1357
Create Import Linter skill #1362 https://github.com/usethis-python/usethis-python/issues/1362
Add an agent skill for modifying Python module structure #1363 https://github.com/usethis-python/usethis-python/issues/1363
https://github.com/apps/codecov
codecovhttps://github.com/apps/codecov
Mar 11, 2026https://github.com/usethis-python/usethis-python/pull/1357#issuecomment-4035716005
Please reload this pagehttps://github.com/usethis-python/usethis-python/pull/1357
Codecovhttps://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python
Files with missing lineshttps://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python
src/usethis/_tool/impl/base/ruff.pyhttps://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python#diff-c3JjL3VzZXRoaXMvX3Rvb2wvaW1wbC9iYXNlL3J1ZmYucHk=
13 Missing ⚠️ https://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python
src/usethis/_tool/impl/base/pre_commit.pyhttps://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python#diff-c3JjL3VzZXRoaXMvX3Rvb2wvaW1wbC9iYXNlL3ByZV9jb21taXQucHk=
2 Missing ⚠️ https://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python
src/usethis/_tool/impl/base/pytest.pyhttps://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python#diff-c3JjL3VzZXRoaXMvX3Rvb2wvaW1wbC9iYXNlL3B5dGVzdC5weQ==
2 Missing ⚠️ https://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python
src/usethis/_tool/impl/base/requirements_txt.pyhttps://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python#diff-c3JjL3VzZXRoaXMvX3Rvb2wvaW1wbC9iYXNlL3JlcXVpcmVtZW50c190eHQucHk=
2 Missing ⚠️ https://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python
src/usethis/_tool/impl/base/deptry.pyhttps://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python#diff-c3JjL3VzZXRoaXMvX3Rvb2wvaW1wbC9iYXNlL2RlcHRyeS5weQ==
1 Missing ⚠️ https://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python
src/usethis/_tool/impl/base/import_linter.pyhttps://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python#diff-c3JjL3VzZXRoaXMvX3Rvb2wvaW1wbC9iYXNlL2ltcG9ydF9saW50ZXIucHk=
1 Missing ⚠️ https://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python
src/usethis/_tool/impl/spec/coverage_py.pyhttps://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python#diff-c3JjL3VzZXRoaXMvX3Rvb2wvaW1wbC9zcGVjL2NvdmVyYWdlX3B5LnB5
1 Missing ⚠️ https://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python
src/usethis/_tool/impl/spec/import_linter.pyhttps://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python#diff-c3JjL3VzZXRoaXMvX3Rvb2wvaW1wbC9zcGVjL2ltcG9ydF9saW50ZXIucHk=
1 Missing ⚠️ https://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python
src/usethis/_tool/impl/spec/pytest.pyhttps://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python#diff-c3JjL3VzZXRoaXMvX3Rvb2wvaW1wbC9zcGVjL3B5dGVzdC5weQ==
1 Missing ⚠️ https://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python
src/usethis/_tool/impl/spec/ruff.pyhttps://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python#diff-c3JjL3VzZXRoaXMvX3Rvb2wvaW1wbC9zcGVjL3J1ZmYucHk=
1 Missing ⚠️ https://app.codecov.io/gh/usethis-python/usethis-python/pull/1357?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=usethis-python
Let us know!https://github.com/codecov/feedback/issues/255
Please reload this pagehttps://github.com/usethis-python/usethis-python/pull/1357
https://github.com/nathanjmcdougall
Merge branch 'main' into copilot/split-tool-impl-layershttps://github.com/usethis-python/usethis-python/pull/1357/commits/d10cccafd89d1c575235136d2ee83cace826f038
d10cccahttps://github.com/usethis-python/usethis-python/pull/1357/commits/d10cccafd89d1c575235136d2ee83cace826f038
https://github.com/nathanjmcdougall
nathanjmcdougallhttps://github.com/nathanjmcdougall
temporarily deployedhttps://github.com/usethis-python/usethis-python/actions/runs/22933823911/job/66560763704
March 11, 2026 02:28https://github.com/usethis-python/usethis-python/pull/1357#event-23453560236
GitHub Actionshttps://github.com/apps/github-actions
https://github.com/nathanjmcdougall
nathanjmcdougallhttps://github.com/nathanjmcdougall
Mar 11, 2026https://github.com/usethis-python/usethis-python/pull/1357#issuecomment-4035763113
@copilothttps://gh.io/copilot-coding-agent-docs
Please reload this pagehttps://github.com/usethis-python/usethis-python/pull/1357
started workhttps://github.com/usethis-python/usethis-python/sessions/b32072de-1682-4b7e-af48-943732aac832
nathanjmcdougallhttps://github.com/nathanjmcdougall
March 11, 2026 02:28https://github.com/usethis-python/usethis-python/pull/1357#event-23453565366
View session https://github.com/usethis-python/usethis-python/sessions/b32072de-1682-4b7e-af48-943732aac832
https://github.com/nathanjmcdougall
nathanjmcdougallhttps://github.com/nathanjmcdougall
Mar 11, 2026 https://github.com/usethis-python/usethis-python/pull/1357#ref-issue-4055346693
Update usethis-python-module-layout-modify to forbid leaving shims for underscored dirs #1368 https://github.com/usethis-python/usethis-python/issues/1368
https://github.com/apps/copilot-swe-agent
https://github.com/nathanjmcdougall
Split usethis._tool.impl into spec/ and base/ submoduleshttps://github.com/usethis-python/usethis-python/pull/1357/commits/a6332af5ae63aaf9f0bcb54339ee6516ca17e09f
a6332afhttps://github.com/usethis-python/usethis-python/pull/1357/commits/a6332af5ae63aaf9f0bcb54339ee6516ca17e09f
finished workhttps://github.com/usethis-python/usethis-python/sessions/b32072de-1682-4b7e-af48-943732aac832
nathanjmcdougallhttps://github.com/nathanjmcdougall
March 11, 2026 02:43https://github.com/usethis-python/usethis-python/pull/1357#event-23453788798
https://github.com/nathanjmcdougall
nathanjmcdougallhttps://github.com/nathanjmcdougall
Mar 11, 2026 https://github.com/usethis-python/usethis-python/pull/1357#ref-issue-4055352712
Update usethis-qa-import-linter to instruct not to add new contracts unless expressly asked #1369 https://github.com/usethis-python/usethis-python/issues/1369
https://github.com/apps/copilot-swe-agent
Copilothttps://github.com/apps/copilot-swe-agent
had a problem deployinghttps://github.com/usethis-python/usethis-python/actions/runs/22934188197/job/66561888989
March 11, 2026 02:44https://github.com/usethis-python/usethis-python/pull/1357#event-23453802610
https://github.com/nathanjmcdougall
nathanjmcdougallhttps://github.com/nathanjmcdougall
Mar 11, 2026https://github.com/usethis-python/usethis-python/pull/1357#event-23453865166
https://github.com/nathanjmcdougall
nathanjmcdougallhttps://github.com/nathanjmcdougall
March 11, 2026 03:23https://github.com/usethis-python/usethis-python/pull/1357#event-23454455850
https://github.com/apps/copilot-swe-agent
Copilothttps://github.com/apps/copilot-swe-agent
Mar 30, 2026 https://github.com/usethis-python/usethis-python/pull/1357#ref-pullrequest-4174376006
Add parameterized test for adding & running each tool #1652 https://github.com/usethis-python/usethis-python/pull/1652
https://github.co/hiddenchars
https://github.com/usethis-python/usethis-python/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%2Fusethis-python%2Fusethis-python%2Fpull%2F1357
https://github.com/nathanjmcdougall
nathanjmcdougall https://github.com/nathanjmcdougall
Copilot code review https://github.com/apps/copilot-swe-agent
Copilot https://github.com/apps/copilot-swe-agent
Split the usethis._tool.impl layer into usethis._tool.impl.spec and usethis._tool.impl.base layers https://github.com/usethis-python/usethis-python/issues/1356
Please reload this pagehttps://github.com/usethis-python/usethis-python/pull/1357
https://github.com/apps/copilot-swe-agent
https://github.com/nathanjmcdougall
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.