{"slug":"dotnet-migrate-static-to-wrapper","source_name":"dotnet/migrate-static-to-wrapper","name":"Dotnet/Migrate Static To Wrapper","description":"Replace existing static dependency call sites with a wrapper or built-in abstraction that already exists or is registered in DI, across a bounded scope (file, project, namespace). USE FOR: replace DateTime.UtcNow/DateTime.Now with TimeProvider and add the constructor parameter, migrate static call sites to a wrapper already in DI, bulk replace File.* with IFileSystem, scoped migration of statics in only certain files, update unit tests to a fake time source, make an existing static or utility cl","version":1,"lift":{"pass_rate_delta_pts":13.64,"pass_rate_pct":81.8,"total_cases":22,"passed_cases":18,"tokens_delta_pct":171.5,"turns_delta_pct":0,"verdict":"mixed","benchmark_model":"gemini-3.6-flash","grading_method":"judged","completed_at":"2026-08-09T13:50:28.276592+00:00"},"skill_score":0.8182,"benchmark_models":[{"model":"gemini-3.6-flash","headline":true,"delta_pts":13.64,"with_pass_pct":81.8,"without_pass_pct":68.2,"tokens_delta_pct":171.5,"turns_delta_pct":0,"total_cases":22,"cases_aggregated":21,"verdict":"mixed","never_hurt":false,"completed_at":"2026-08-09T13:50:28.276592+00:00","run_id":"3e29c0e6-e065-4fe1-88da-8291bc8512c6","version_number":1,"is_latest_version":true,"gate":null}],"trust":{"skill_safety":"passed","safety_status":"clean","intent_verdict":"safe","content_status":"clean","indexable":true},"license":"MIT","install_count":0,"manifest_hash":"47ce8d1a5ec2d31e291f3c25ea636b7e4fca687b49c6e1f9bcf0985e1e961d6d","raw_url":"https://app.decimal.ai/s/dotnet-migrate-static-to-wrapper/SKILL.md","scorecard_url":"https://app.decimal.ai/skills/dotnet-migrate-static-to-wrapper"}