{"adoption": {"forks": 278, "observed_at": "2026-08-28T04:07:39.595442+00:00", "stars": 3050}, "canonical_url": "https://ross.abutalabs.com/products/stryker", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Mutation testing for JavaScript and friends", "domain": ["testing", "developer-tools", "web-development"], "enriched": true, "function": ["testing", "cli", "developer-tools"], "health_score": 100, "homepage": "https://stryker-mutator.io", "language": "TypeScript", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["stryker-mutator/stryker-js", "stryker-mutator/stryker-net"], "name": "Stryker", "platform": ["cross-platform", "cli", "dotnet"], "pushed_at": "2026-08-26T19:21:23+00:00", "repo": "stryker-mutator/stryker-js", "stars": 3050, "tags": ["mutation-testing", "test-quality", "typescript", "javascript", "csharp", "scala", "test-runner-agnostic", "nodejs"], "topics": ["mutation-testing", "stryker", "javascript", "typescript", "testing-tools", "test-automation", "testing", "hacktoberfest"], "urls": [{"kind": "homepage", "url": "https://stryker-mutator.io"}, {"kind": "site_page", "url": "https://stryker-mutator.io/docs/stryker-js/introduction"}, {"kind": "site_page", "url": "https://stryker-mutator.io/docs/stryker-net/introduction"}, {"kind": "site_page", "url": "https://stryker-mutator.io/docs/stryker4s/getting-started"}, {"kind": "site_page", "url": "https://stryker-mutator.io/docs/General/example"}], "use_cases": ["measure how effective my unit tests really are", "find gaps in test coverage beyond code coverage metrics", "run mutation testing on a TypeScript project", "run mutation testing on a .NET Core project", "generate a mutation score report in CI", "find tests with missing assertions", "improve test quality for a JavaScript codebase"], "what_it_is": "Stryker is a mutation testing tool family that measures the effectiveness of your unit tests by automatically inserting bugs (mutants) into your source code and checking whether your tests catch them. It supports JavaScript/TypeScript (StrykerJS), .NET (Stryker.NET), and Scala (Stryker4s), with test-runner-agnostic execution and detailed HTML mutation reports.", "when_to_avoid": ["your test suite is slow, since mutation testing runs tests many times and can be very time-consuming", "you need mutation testing for languages other than JavaScript/TypeScript, C#, or Scala", "you only need simple code coverage metrics rather than test effectiveness analysis"], "when_to_choose": ["you want to evaluate test quality beyond line coverage", "you work in JavaScript, TypeScript, C#, or Scala and want a mature, actively maintained mutation testing tool", "you need test-runner-agnostic mutation testing with HTML reports", "you want to catch surviving mutants that indicate weak or missing assertions"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/repos/stryker-mutator/stryker-js", "repo": "stryker-mutator/stryker-js", "role": "main", "score": 95}, {"path": "/repos/stryker-mutator/stryker-net", "repo": "stryker-mutator/stryker-net", "role": "sdk", "score": 92}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:39.595442+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:46:49.833801+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "18169346aeba1bd87319898514c8313674cb235786942cfa579d2a692be80e3b", "fetched_at": "2026-08-28T04:07:39.595442+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stryker-mutator/stryker-js"}, {"content_hash": "d23188ee5838da2ce0e57778b0a67ec13bc0ea239bbe9d12e5dca7add6b04510", "fetched_at": "2026-08-29T09:44:32.432149+00:00", "kind": "homepage", "missing": false, "url": "https://stryker-mutator.io"}, {"content_hash": "59fad0909734d7df17c215cc31accc574bc2c576316cedeb8f5d9c2ff7fb7a38", "fetched_at": "2026-08-29T09:44:32.441047+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-js/introduction"}, {"content_hash": "455f8dd678338c3bfc5384ad30806e83b37d9d41797f74004d51f8ae0633eb11", "fetched_at": "2026-08-29T09:44:32.442797+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-net/introduction"}, {"content_hash": "5641cba1d5e6fabfc2c1e2daa8d8c2fb0c1bca7d7e836b9be0bef95b834edbb0", "fetched_at": "2026-08-29T09:44:32.444504+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker4s/getting-started"}, {"content_hash": "72a3dea5489f33254f62249865d755b00482cbcac3ad0dff8703e27cec725cce", "fetched_at": "2026-08-29T09:44:32.446446+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/example"}, {"content_hash": "8705d3f8dae205be39229e824ba0cc2cb9359e393cbf09732606616c3482269c", "fetched_at": "2026-08-29T09:44:32.448442+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs"}, {"content_hash": "b8d500101e28ebf8c2044b6db727357921807302d1b8061c79cbfd6fbf5f1373", "fetched_at": "2026-08-29T09:44:32.450182+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/mutation-testing-elements/supported-mutators"}, {"content_hash": "f310efb43737a85b29f8e0177e0da2ca5b1827e2fba4adcd1d70e369bdedf425", "fetched_at": "2026-08-29T09:44:32.452032+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/faq"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:39.595442+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:46:49.833801+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "18169346aeba1bd87319898514c8313674cb235786942cfa579d2a692be80e3b", "fetched_at": "2026-08-28T04:07:39.595442+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stryker-mutator/stryker-js"}, {"content_hash": "d23188ee5838da2ce0e57778b0a67ec13bc0ea239bbe9d12e5dca7add6b04510", "fetched_at": "2026-08-29T09:44:32.432149+00:00", "kind": "homepage", "missing": false, "url": "https://stryker-mutator.io"}, {"content_hash": "59fad0909734d7df17c215cc31accc574bc2c576316cedeb8f5d9c2ff7fb7a38", "fetched_at": "2026-08-29T09:44:32.441047+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-js/introduction"}, {"content_hash": "455f8dd678338c3bfc5384ad30806e83b37d9d41797f74004d51f8ae0633eb11", "fetched_at": "2026-08-29T09:44:32.442797+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-net/introduction"}, {"content_hash": "5641cba1d5e6fabfc2c1e2daa8d8c2fb0c1bca7d7e836b9be0bef95b834edbb0", "fetched_at": "2026-08-29T09:44:32.444504+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker4s/getting-started"}, {"content_hash": "72a3dea5489f33254f62249865d755b00482cbcac3ad0dff8703e27cec725cce", "fetched_at": "2026-08-29T09:44:32.446446+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/example"}, {"content_hash": "8705d3f8dae205be39229e824ba0cc2cb9359e393cbf09732606616c3482269c", "fetched_at": "2026-08-29T09:44:32.448442+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs"}, {"content_hash": "b8d500101e28ebf8c2044b6db727357921807302d1b8061c79cbfd6fbf5f1373", "fetched_at": "2026-08-29T09:44:32.450182+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/mutation-testing-elements/supported-mutators"}, {"content_hash": "f310efb43737a85b29f8e0177e0da2ca5b1827e2fba4adcd1d70e369bdedf425", "fetched_at": "2026-08-29T09:44:32.452032+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/faq"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:46:49.833801+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "18169346aeba1bd87319898514c8313674cb235786942cfa579d2a692be80e3b", "fetched_at": "2026-08-28T04:07:39.595442+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stryker-mutator/stryker-js"}, {"content_hash": "d23188ee5838da2ce0e57778b0a67ec13bc0ea239bbe9d12e5dca7add6b04510", "fetched_at": "2026-08-29T09:44:32.432149+00:00", "kind": "homepage", "missing": false, "url": "https://stryker-mutator.io"}, {"content_hash": "59fad0909734d7df17c215cc31accc574bc2c576316cedeb8f5d9c2ff7fb7a38", "fetched_at": "2026-08-29T09:44:32.441047+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-js/introduction"}, {"content_hash": "455f8dd678338c3bfc5384ad30806e83b37d9d41797f74004d51f8ae0633eb11", "fetched_at": "2026-08-29T09:44:32.442797+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-net/introduction"}, {"content_hash": "5641cba1d5e6fabfc2c1e2daa8d8c2fb0c1bca7d7e836b9be0bef95b834edbb0", "fetched_at": "2026-08-29T09:44:32.444504+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker4s/getting-started"}, {"content_hash": "72a3dea5489f33254f62249865d755b00482cbcac3ad0dff8703e27cec725cce", "fetched_at": "2026-08-29T09:44:32.446446+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/example"}, {"content_hash": "8705d3f8dae205be39229e824ba0cc2cb9359e393cbf09732606616c3482269c", "fetched_at": "2026-08-29T09:44:32.448442+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs"}, {"content_hash": "b8d500101e28ebf8c2044b6db727357921807302d1b8061c79cbfd6fbf5f1373", "fetched_at": "2026-08-29T09:44:32.450182+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/mutation-testing-elements/supported-mutators"}, {"content_hash": "f310efb43737a85b29f8e0177e0da2ca5b1827e2fba4adcd1d70e369bdedf425", "fetched_at": "2026-08-29T09:44:32.452032+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/faq"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:07:39.595442+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:39.595442+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:39.595442+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:46:49.833801+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "18169346aeba1bd87319898514c8313674cb235786942cfa579d2a692be80e3b", "fetched_at": "2026-08-28T04:07:39.595442+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stryker-mutator/stryker-js"}, {"content_hash": "d23188ee5838da2ce0e57778b0a67ec13bc0ea239bbe9d12e5dca7add6b04510", "fetched_at": "2026-08-29T09:44:32.432149+00:00", "kind": "homepage", "missing": false, "url": "https://stryker-mutator.io"}, {"content_hash": "59fad0909734d7df17c215cc31accc574bc2c576316cedeb8f5d9c2ff7fb7a38", "fetched_at": "2026-08-29T09:44:32.441047+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-js/introduction"}, {"content_hash": "455f8dd678338c3bfc5384ad30806e83b37d9d41797f74004d51f8ae0633eb11", "fetched_at": "2026-08-29T09:44:32.442797+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-net/introduction"}, {"content_hash": "5641cba1d5e6fabfc2c1e2daa8d8c2fb0c1bca7d7e836b9be0bef95b834edbb0", "fetched_at": "2026-08-29T09:44:32.444504+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker4s/getting-started"}, {"content_hash": "72a3dea5489f33254f62249865d755b00482cbcac3ad0dff8703e27cec725cce", "fetched_at": "2026-08-29T09:44:32.446446+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/example"}, {"content_hash": "8705d3f8dae205be39229e824ba0cc2cb9359e393cbf09732606616c3482269c", "fetched_at": "2026-08-29T09:44:32.448442+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs"}, {"content_hash": "b8d500101e28ebf8c2044b6db727357921807302d1b8061c79cbfd6fbf5f1373", "fetched_at": "2026-08-29T09:44:32.450182+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/mutation-testing-elements/supported-mutators"}, {"content_hash": "f310efb43737a85b29f8e0177e0da2ca5b1827e2fba4adcd1d70e369bdedf425", "fetched_at": "2026-08-29T09:44:32.452032+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/faq"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:39.595442+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:39.595442+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:46:49.833801+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "18169346aeba1bd87319898514c8313674cb235786942cfa579d2a692be80e3b", "fetched_at": "2026-08-28T04:07:39.595442+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stryker-mutator/stryker-js"}, {"content_hash": "d23188ee5838da2ce0e57778b0a67ec13bc0ea239bbe9d12e5dca7add6b04510", "fetched_at": "2026-08-29T09:44:32.432149+00:00", "kind": "homepage", "missing": false, "url": "https://stryker-mutator.io"}, {"content_hash": "59fad0909734d7df17c215cc31accc574bc2c576316cedeb8f5d9c2ff7fb7a38", "fetched_at": "2026-08-29T09:44:32.441047+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-js/introduction"}, {"content_hash": "455f8dd678338c3bfc5384ad30806e83b37d9d41797f74004d51f8ae0633eb11", "fetched_at": "2026-08-29T09:44:32.442797+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-net/introduction"}, {"content_hash": "5641cba1d5e6fabfc2c1e2daa8d8c2fb0c1bca7d7e836b9be0bef95b834edbb0", "fetched_at": "2026-08-29T09:44:32.444504+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker4s/getting-started"}, {"content_hash": "72a3dea5489f33254f62249865d755b00482cbcac3ad0dff8703e27cec725cce", "fetched_at": "2026-08-29T09:44:32.446446+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/example"}, {"content_hash": "8705d3f8dae205be39229e824ba0cc2cb9359e393cbf09732606616c3482269c", "fetched_at": "2026-08-29T09:44:32.448442+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs"}, {"content_hash": "b8d500101e28ebf8c2044b6db727357921807302d1b8061c79cbfd6fbf5f1373", "fetched_at": "2026-08-29T09:44:32.450182+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/mutation-testing-elements/supported-mutators"}, {"content_hash": "f310efb43737a85b29f8e0177e0da2ca5b1827e2fba4adcd1d70e369bdedf425", "fetched_at": "2026-08-29T09:44:32.452032+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/faq"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:39.595442+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:39.595442+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:39.595442+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:46:49.833801+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "18169346aeba1bd87319898514c8313674cb235786942cfa579d2a692be80e3b", "fetched_at": "2026-08-28T04:07:39.595442+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stryker-mutator/stryker-js"}, {"content_hash": "d23188ee5838da2ce0e57778b0a67ec13bc0ea239bbe9d12e5dca7add6b04510", "fetched_at": "2026-08-29T09:44:32.432149+00:00", "kind": "homepage", "missing": false, "url": "https://stryker-mutator.io"}, {"content_hash": "59fad0909734d7df17c215cc31accc574bc2c576316cedeb8f5d9c2ff7fb7a38", "fetched_at": "2026-08-29T09:44:32.441047+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-js/introduction"}, {"content_hash": "455f8dd678338c3bfc5384ad30806e83b37d9d41797f74004d51f8ae0633eb11", "fetched_at": "2026-08-29T09:44:32.442797+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-net/introduction"}, {"content_hash": "5641cba1d5e6fabfc2c1e2daa8d8c2fb0c1bca7d7e836b9be0bef95b834edbb0", "fetched_at": "2026-08-29T09:44:32.444504+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker4s/getting-started"}, {"content_hash": "72a3dea5489f33254f62249865d755b00482cbcac3ad0dff8703e27cec725cce", "fetched_at": "2026-08-29T09:44:32.446446+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/example"}, {"content_hash": "8705d3f8dae205be39229e824ba0cc2cb9359e393cbf09732606616c3482269c", "fetched_at": "2026-08-29T09:44:32.448442+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs"}, {"content_hash": "b8d500101e28ebf8c2044b6db727357921807302d1b8061c79cbfd6fbf5f1373", "fetched_at": "2026-08-29T09:44:32.450182+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/mutation-testing-elements/supported-mutators"}, {"content_hash": "f310efb43737a85b29f8e0177e0da2ca5b1827e2fba4adcd1d70e369bdedf425", "fetched_at": "2026-08-29T09:44:32.452032+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/faq"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:39.595442+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:39.595442+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:46:49.833801+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "18169346aeba1bd87319898514c8313674cb235786942cfa579d2a692be80e3b", "fetched_at": "2026-08-28T04:07:39.595442+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stryker-mutator/stryker-js"}, {"content_hash": "d23188ee5838da2ce0e57778b0a67ec13bc0ea239bbe9d12e5dca7add6b04510", "fetched_at": "2026-08-29T09:44:32.432149+00:00", "kind": "homepage", "missing": false, "url": "https://stryker-mutator.io"}, {"content_hash": "59fad0909734d7df17c215cc31accc574bc2c576316cedeb8f5d9c2ff7fb7a38", "fetched_at": "2026-08-29T09:44:32.441047+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-js/introduction"}, {"content_hash": "455f8dd678338c3bfc5384ad30806e83b37d9d41797f74004d51f8ae0633eb11", "fetched_at": "2026-08-29T09:44:32.442797+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-net/introduction"}, {"content_hash": "5641cba1d5e6fabfc2c1e2daa8d8c2fb0c1bca7d7e836b9be0bef95b834edbb0", "fetched_at": "2026-08-29T09:44:32.444504+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker4s/getting-started"}, {"content_hash": "72a3dea5489f33254f62249865d755b00482cbcac3ad0dff8703e27cec725cce", "fetched_at": "2026-08-29T09:44:32.446446+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/example"}, {"content_hash": "8705d3f8dae205be39229e824ba0cc2cb9359e393cbf09732606616c3482269c", "fetched_at": "2026-08-29T09:44:32.448442+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs"}, {"content_hash": "b8d500101e28ebf8c2044b6db727357921807302d1b8061c79cbfd6fbf5f1373", "fetched_at": "2026-08-29T09:44:32.450182+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/mutation-testing-elements/supported-mutators"}, {"content_hash": "f310efb43737a85b29f8e0177e0da2ca5b1827e2fba4adcd1d70e369bdedf425", "fetched_at": "2026-08-29T09:44:32.452032+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/faq"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:46:49.833801+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "18169346aeba1bd87319898514c8313674cb235786942cfa579d2a692be80e3b", "fetched_at": "2026-08-28T04:07:39.595442+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stryker-mutator/stryker-js"}, {"content_hash": "d23188ee5838da2ce0e57778b0a67ec13bc0ea239bbe9d12e5dca7add6b04510", "fetched_at": "2026-08-29T09:44:32.432149+00:00", "kind": "homepage", "missing": false, "url": "https://stryker-mutator.io"}, {"content_hash": "59fad0909734d7df17c215cc31accc574bc2c576316cedeb8f5d9c2ff7fb7a38", "fetched_at": "2026-08-29T09:44:32.441047+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-js/introduction"}, {"content_hash": "455f8dd678338c3bfc5384ad30806e83b37d9d41797f74004d51f8ae0633eb11", "fetched_at": "2026-08-29T09:44:32.442797+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-net/introduction"}, {"content_hash": "5641cba1d5e6fabfc2c1e2daa8d8c2fb0c1bca7d7e836b9be0bef95b834edbb0", "fetched_at": "2026-08-29T09:44:32.444504+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker4s/getting-started"}, {"content_hash": "72a3dea5489f33254f62249865d755b00482cbcac3ad0dff8703e27cec725cce", "fetched_at": "2026-08-29T09:44:32.446446+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/example"}, {"content_hash": "8705d3f8dae205be39229e824ba0cc2cb9359e393cbf09732606616c3482269c", "fetched_at": "2026-08-29T09:44:32.448442+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs"}, {"content_hash": "b8d500101e28ebf8c2044b6db727357921807302d1b8061c79cbfd6fbf5f1373", "fetched_at": "2026-08-29T09:44:32.450182+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/mutation-testing-elements/supported-mutators"}, {"content_hash": "f310efb43737a85b29f8e0177e0da2ca5b1827e2fba4adcd1d70e369bdedf425", "fetched_at": "2026-08-29T09:44:32.452032+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/faq"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:46:49.833801+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "18169346aeba1bd87319898514c8313674cb235786942cfa579d2a692be80e3b", "fetched_at": "2026-08-28T04:07:39.595442+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stryker-mutator/stryker-js"}, {"content_hash": "d23188ee5838da2ce0e57778b0a67ec13bc0ea239bbe9d12e5dca7add6b04510", "fetched_at": "2026-08-29T09:44:32.432149+00:00", "kind": "homepage", "missing": false, "url": "https://stryker-mutator.io"}, {"content_hash": "59fad0909734d7df17c215cc31accc574bc2c576316cedeb8f5d9c2ff7fb7a38", "fetched_at": "2026-08-29T09:44:32.441047+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-js/introduction"}, {"content_hash": "455f8dd678338c3bfc5384ad30806e83b37d9d41797f74004d51f8ae0633eb11", "fetched_at": "2026-08-29T09:44:32.442797+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-net/introduction"}, {"content_hash": "5641cba1d5e6fabfc2c1e2daa8d8c2fb0c1bca7d7e836b9be0bef95b834edbb0", "fetched_at": "2026-08-29T09:44:32.444504+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker4s/getting-started"}, {"content_hash": "72a3dea5489f33254f62249865d755b00482cbcac3ad0dff8703e27cec725cce", "fetched_at": "2026-08-29T09:44:32.446446+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/example"}, {"content_hash": "8705d3f8dae205be39229e824ba0cc2cb9359e393cbf09732606616c3482269c", "fetched_at": "2026-08-29T09:44:32.448442+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs"}, {"content_hash": "b8d500101e28ebf8c2044b6db727357921807302d1b8061c79cbfd6fbf5f1373", "fetched_at": "2026-08-29T09:44:32.450182+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/mutation-testing-elements/supported-mutators"}, {"content_hash": "f310efb43737a85b29f8e0177e0da2ca5b1827e2fba4adcd1d70e369bdedf425", "fetched_at": "2026-08-29T09:44:32.452032+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/faq"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:46:49.833801+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "18169346aeba1bd87319898514c8313674cb235786942cfa579d2a692be80e3b", "fetched_at": "2026-08-28T04:07:39.595442+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stryker-mutator/stryker-js"}, {"content_hash": "d23188ee5838da2ce0e57778b0a67ec13bc0ea239bbe9d12e5dca7add6b04510", "fetched_at": "2026-08-29T09:44:32.432149+00:00", "kind": "homepage", "missing": false, "url": "https://stryker-mutator.io"}, {"content_hash": "59fad0909734d7df17c215cc31accc574bc2c576316cedeb8f5d9c2ff7fb7a38", "fetched_at": "2026-08-29T09:44:32.441047+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-js/introduction"}, {"content_hash": "455f8dd678338c3bfc5384ad30806e83b37d9d41797f74004d51f8ae0633eb11", "fetched_at": "2026-08-29T09:44:32.442797+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker-net/introduction"}, {"content_hash": "5641cba1d5e6fabfc2c1e2daa8d8c2fb0c1bca7d7e836b9be0bef95b834edbb0", "fetched_at": "2026-08-29T09:44:32.444504+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/stryker4s/getting-started"}, {"content_hash": "72a3dea5489f33254f62249865d755b00482cbcac3ad0dff8703e27cec725cce", "fetched_at": "2026-08-29T09:44:32.446446+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/example"}, {"content_hash": "8705d3f8dae205be39229e824ba0cc2cb9359e393cbf09732606616c3482269c", "fetched_at": "2026-08-29T09:44:32.448442+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs"}, {"content_hash": "b8d500101e28ebf8c2044b6db727357921807302d1b8061c79cbfd6fbf5f1373", "fetched_at": "2026-08-29T09:44:32.450182+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/mutation-testing-elements/supported-mutators"}, {"content_hash": "f310efb43737a85b29f8e0177e0da2ca5b1827e2fba4adcd1d70e369bdedf425", "fetched_at": "2026-08-29T09:44:32.452032+00:00", "kind": "site_page", "missing": false, "url": "https://stryker-mutator.io/docs/General/faq"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 86}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3855, "days_push": 7, "days_rel": 19, "gap_med": 34, "n_releases_24m": 14}, "score": 95, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}