Commit graph

146 commits

Author SHA1 Message Date
Jeremiah Lowin
33c371cb37
Add version discovery and calling a certain version for components (#2897) 2026-01-17 08:27:39 -05:00
Jeremiah Lowin
b1f9c77dd9
Fix Claude Code installation lock contention in CI workflows (#2815) 2026-01-08 20:43:22 -05:00
Jeremiah Lowin
1abd986c80
Revert "Enable parallel tests on Windows (#2715)" (#2726) 2025-12-25 08:54:05 -05:00
Jeremiah Lowin
dab72007a9
Enable parallel tests on Windows (#2715) 2025-12-24 16:45:21 -05:00
Jeremiah Lowin
e821446044
Skip test_multi_client on Windows (#2714) 2025-12-24 16:37:35 -05:00
Jeremiah Lowin
d6654a2379
Add supports_tasks() method to replace string mode checks (#2664)
* Add supports_tasks() method to replace string mode checks

Consolidates task config mode checks into a readable method on TaskConfig.
Instead of `task_config.mode == "forbidden"` or `task_config.mode != "forbidden"`,
code now uses `task_config.supports_tasks()` for clearer intent.

Updated 20 instances across the codebase and added type assertions in tests
to resolve type checker warnings.

* Update test to match new error message
2025-12-21 15:41:46 -05:00
dependabot[bot]
0186121f4b
Bump peter-evans/create-pull-request from 7 to 8 (#2623)
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 7 to 8.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/v7...v8)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-version: '8'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-17 21:59:18 -05:00
Jeremiah Lowin
d73f05d7e2
chore: add Python 3.13 to Ubuntu CI tests (#2606) 2025-12-13 12:03:46 -05:00
Jeremiah Lowin
cf67152616
Update test workflow to conditionally run pytest on Windows. Added logic to handle test execution differently for Windows and other OS environments, ensuring compatibility and performance optimization. (#2579) 2025-12-09 09:50:20 -05:00
William Easton
b130c0161e
Small additional changes 2025-12-04 17:57:08 -06:00
William Easton
5838e90105
Purposefully fail the workflow 2025-12-04 17:40:58 -06:00
William Easton
8c2675447f
Update martian-test-failure.yml 2025-12-04 17:39:51 -06:00
William Easton
177eeaee50
Less noise 2025-12-04 17:37:41 -06:00
Chris Guidry
a8bbd745fe Improve rate limit detection for integration tests
When GitHub's API rate limits cause asyncio shutdown issues, the test
times out rather than failing with the underlying 429 error. Updated the
detection logic to check for 429 indicators in the captured output when
a timeout occurs.

Also increased the per-test timeout from 15s to 30s to give remote API
calls more breathing room.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 11:52:40 -05:00
dependabot[bot]
25166afe98
Bump actions/checkout from 5 to 6 (#2474)
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-26 16:50:49 -05:00
William Easton
73d0f6abf0
Update martian-test-failure.yml 2025-11-17 18:34:31 -06:00
Jeremiah Lowin
be90d6eb60
Merge pull request #2432 from jlowin/dependabot/github_actions/actions/setup-python-6
Bump actions/setup-python from 5 to 6
2025-11-17 11:56:37 -05:00
dependabot[bot]
e5c6f04e0f
Bump actions/checkout from 4 to 5
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 04:25:24 +00:00
dependabot[bot]
065a4d520b
Bump actions/setup-python from 5 to 6
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 5 to 6.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-17 04:25:13 +00:00
William Easton
be9c27fec4
Claude triage for test failures (#2407) 2025-11-15 10:35:27 -05:00
Jeremiah Lowin
f8b896490e
Fix Windows test timeout and restore parallel testing (#2383)
OAuth consent tests were timing out on Windows due to SQLite database
locking when OAuthProxy instances used the default DiskStore without
explicit MemoryStore configuration. Added explicit client_storage=MemoryStore()
to three tests in TestConsentPageServerIcon.

Also restored parallel testing on Windows (--numprocesses auto) which
was previously disabled but is now safe with proper test isolation.
2025-11-05 20:25:10 -05:00
strawgate
49259ae938 switch marvin to prek from pre-commit 2025-11-03 21:22:22 -06:00
Copilot
5499cda9d0
Fix lowest-direct dependency tests to actually test minimum versions (#2295)
* Initial plan

* Pin dev dependencies and use --resolution lowest-direct in pytest commands

Co-authored-by: strawgate <6384545+strawgate@users.noreply.github.com>

* Update uv.lock

* bump ty version

* ty upper bound

* Update uv.lock

* Update ty lock

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: strawgate <6384545+strawgate@users.noreply.github.com>
Co-authored-by: Jeremiah Lowin <153965+jlowin@users.noreply.github.com>
2025-11-02 17:30:31 -05:00
nate nowack
aba7d762de
switch from pre-commit to prek (#2309)
* switch from pre-commit to prek

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix prek tools list in contributing.mdx - include prettier, not pytest

* Use prek-action for caching

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Jeremiah Lowin <153965+jlowin@users.noreply.github.com>
2025-11-02 17:08:36 -05:00
Jeremiah Lowin
443c44c507
Configure Marvin to auto-create PRs and label issues (#2319)
* Update marvin.yml

* Configure Marvin to auto-create PRs and label issues

* Make Marvin instructions more assertive with MUST
2025-10-31 10:38:15 -04:00
Copilot
e74918a544
Add CI test job for lowest-direct dependency resolution (#2261)
* Initial plan

* Add test job for lowest-direct dependency resolution

Co-authored-by: strawgate <6384545+strawgate@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: strawgate <6384545+strawgate@users.noreply.github.com>
2025-10-26 10:16:54 -04:00
William Easton
da4a969d72
WS diff 2025-10-24 15:58:51 -05:00
William Easton
bd4b6e6db3
Fix martian concurrency controls and dedupe issues mcp servers 2025-10-24 15:55:32 -05:00
Jeremiah Lowin
99d3037694
allow non write users for marvin flows (#2161) 2025-10-20 21:07:05 -04:00
Jeremiah Lowin
330eaed11f
OAuth proxy issues its own tokens (#2109)
* OAuth proxy issues its own tokens

Implement token factory pattern where proxy issues FastMCP JWTs
instead of forwarding upstream tokens. Tokens are minimal references
(JTI) that map to encrypted upstream credentials stored server-side.

* Update run-tests.yml

* Update secret generation and docs

* Add upgrade guide
2025-10-17 14:31:53 -04:00
Jeremiah Lowin
d472e30765
Support mounting OAuth-protected servers under path prefixes (#2119)
* Add issuer_url parameter to OAuth providers for mounting scenarios

* Add get_well_known_routes

* Update docs

* Improve docs and tests

* Trigger CI

* Fix conditional test execution for Windows
2025-10-17 11:44:49 -04:00
Jeremiah Lowin
d4837b41c5
Disable parallel test execution on Windows (#2128) 2025-10-17 11:28:42 -04:00
Jeremiah Lowin
4a9f02c87c
Upgrade to MCP 1.17+ with RFC 9728 compliance (#2122)
* Upgrade to MCP 1.17+ with RFC 9728 compliance

Updates FastMCP to require MCP 1.17+ and implements RFC 9728-compliant
OAuth protected resource metadata URL handling.

The key change is that .well-known/oauth-protected-resource endpoints
are now registered at path-aware locations. For example, if an MCP
server is mounted at /mcp, the metadata endpoint is now at
/.well-known/oauth-protected-resource/mcp instead of
/.well-known/oauth-protected-resource.

This ensures proper OAuth discovery for path-based resource servers
and aligns with the MCP SDK's implementation of RFC 9728 §3.1.

Changes include:
- Update minimum MCP version from 1.12.4 to 1.17.0
- Use build_resource_metadata_url() for RFC 9728 compliance
- Configure CI to test with latest package versions (--upgrade)
- Update tests for path-aware metadata URLs
- Add icons field to Tool model (introduced in MCP 1.17)

* Fix RemoteAuthProvider integration tests for RFC 9728

* Fix parameterized test for nested base URL paths
2025-10-17 09:29:23 -04:00
Jeremiah Lowin
453454711f
Add auto-close workflow for issues needing MRE (#2100) 2025-10-15 06:54:28 -07:00
Jeremiah Lowin
c17f96d4e2
Update docs (#2094) 2025-10-14 16:38:21 -07:00
dependabot[bot]
55b60bceba
Bump astral-sh/setup-uv from 6 to 7 (#2080) 2025-10-14 12:29:20 -04:00
William Easton
defa67f8a9
Fixes for Martian prompts 2025-10-03 20:21:06 -05:00
William Easton
293455ee00
Fixes for Marvin and Martian prompts 2025-10-03 14:57:07 -05:00
William Easton
11e88161be
Prompt updates 2025-10-02 13:27:28 -05:00
William Easton
e30a384e58
Change martian response format 2025-10-02 13:16:17 -05:00
William Easton
acf2ed4628
Change trigger criteria 2025-10-02 12:30:59 -05:00
William Easton
e4bf2cfd75
Add progress tracking, remove websearch for now 2025-10-02 11:17:56 -05:00
William Easton
3e31aabd06
install uv 2025-10-02 09:24:37 -05:00
William Easton
521d4b8f41
Fix truthiness 2025-10-01 13:29:42 -05:00
William Easton
e74026b687
Fix MCP 2025-10-01 13:25:56 -05:00
William Easton
22e5a16714
Fix marvin label triage for non-contributors 2025-10-01 12:29:07 -05:00
William Easton
ccc5dc8194
Limit the martian 2025-10-01 12:25:52 -05:00
William Easton
ea81cfd08b
Add a new martian 2025-10-01 12:21:47 -05:00
Jeremiah Lowin
f803782381
Improve env vars for marvin (#1972) 2025-09-30 16:38:51 -04:00
Jeremiah Lowin
b549b4a323
Add --model claude-sonnet-4-5-20250929 to all workflows (#1963) 2025-09-29 21:04:05 -04:00