# Advanced Capabilities

SeaLights Test Optimization goes beyond basic code-change analysis by providing advanced policies and structural tools designed for complex enterprise environments. These capabilities allow you to fine-tune how tests are recommended, organized, and executed.

### Common Code Policy

Optimizes testing for foundational code. By identifying shared utilities and infrastructure, this policy prevents a "run everything" scenario when low-level code changes, instead focusing on a high-relevance subset of tests.

Learn how [Common Code Policy](/knowledgebase/test-optimization/test-optimization-strategy/test-selection-policies/common-code-policy.md) works.

### Ignore Failed Tests Policy&#x20;

A noise-reduction feature triggered via API. it ensures that tests which failed in previous runs are not re-recommended unless the specific code they cover has been modified, allowing teams to focus on new regressions.

Learn how [Ignore Failed Tests Policy](/knowledgebase/test-optimization/test-optimization-strategy/test-selection-policies/ignore-failed-tests-policy.md) works.

### Test Groups

Designed for parallel CI pipelines. Test Groups allow you to split a single test stage into multiple independent suites, each receiving its own optimized recommendations and savings tracking without interfering with other parallel jobs.

Learn how [Test Groups](/knowledgebase/test-optimization/test-optimization-strategy/test-selection-policies/test-groups.md) work.

### Test Project ID&#x20;

Ensures accurate mapping in multi-project or monorepo environments. This identifier links specific test suites to their corresponding code artifacts, preventing cross-project optimization interference.

Learn how [Test Project ID](/knowledgebase/test-optimization/test-optimization-strategy/test-selection-policies/test-project-id.md) works.

***

### FAQ

<details>

<summary><strong>Does using Test Groups affect my total coverage score?</strong></summary>

No. Coverage is calculated at the Stage level. Test Groups are purely for optimizing which tests run and viewing savings for parallel jobs.

</details>

<details>

<summary><strong>How do I implement the "Ignore Failed Tests" logic?</strong></summary>

This is implemented via the SeaLights API when requesting recommendations. You can find the specific parameter details in the API documentation for test recommendations.

</details>

<details>

<summary><strong>How do I know if a method should be part of the Common Code Policy?</strong></summary>

Generally, if a method is a utility used by hundreds of unrelated features, it is a candidate. Since this is a manual process, contact your SeaLights technical contact to perform the analysis and activation.

</details>

<details>

<summary><strong>What happens if I don't provide a Test Project ID?</strong></summary>

SeaLights will attempt to associate tests based on the default project context. However, in complex multi-project environments, this can lead to inaccurate recommendations. It is best practice to define it explicitly.

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sealights.io/knowledgebase/test-optimization/test-optimization-strategy/test-selection-policies.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
