feat(tool): add tool-level execution environment preferences #970

Merged
brent.edwards merged 2 commits from feature/m5-tool-env-prefs into master 2026-03-20 23:51:47 +00:00

2 Commits

Author SHA1 Message Date
brent.edwards 9eea5beb94 Merge branch 'master' into feature/m5-tool-env-prefs
CI / lint (pull_request) Successful in 36s
CI / benchmark-publish (pull_request) Has been skipped
CI / typecheck (pull_request) Successful in 1m0s
CI / quality (pull_request) Successful in 43s
CI / build (pull_request) Successful in 23s
CI / security (pull_request) Successful in 1m9s
CI / integration_tests (pull_request) Successful in 4m0s
CI / unit_tests (pull_request) Successful in 4m1s
CI / docker (pull_request) Successful in 1m15s
CI / e2e_tests (pull_request) Successful in 7m5s
CI / coverage (pull_request) Successful in 7m18s
CI / benchmark-regression (pull_request) Successful in 36m55s
2026-03-20 22:33:38 +00:00
brent.edwards 514d36a531 feat(tool): add execution environment preference model and ToolRunner routing
CI / lint (pull_request) Successful in 16s
CI / typecheck (pull_request) Successful in 44s
CI / quality (pull_request) Successful in 53s
CI / benchmark-publish (pull_request) Has been skipped
CI / security (pull_request) Successful in 1m8s
CI / build (pull_request) Successful in 30s
CI / integration_tests (pull_request) Successful in 3m50s
CI / unit_tests (pull_request) Successful in 4m13s
CI / e2e_tests (pull_request) Successful in 5m32s
CI / docker (pull_request) Successful in 1m10s
CI / coverage (pull_request) Successful in 11m22s
CI / benchmark-regression (pull_request) Successful in 39m8s
Implements tool-level execution environment preferences per issue #879.
Tools can declare NONE/PREFERRED/REQUIRED/SPECIFIC preferences for
container vs host execution. ToolRunner routes accordingly.

Addresses review findings from @hamza.khyari:
- F1: Reverted 7 unrelated files
- F4: Rebased on master
- F5: SPECIFIC mode now routes to named target resource
- F7: Added __all__
- F13: Added str_strip_whitespace=True
- F15: SPECIFIC error includes target name
- F16: Uses enum comparison

ISSUES CLOSED: #879
2026-03-20 00:06:18 +00:00