PrimeIntellect/SWE-rebench-V2-Filtered-Easy-Verified huggingface dataset:
Repository: yandex/yatagan (kotlin)
Issue: Binding from the same module, included into a parent and a child components is presumed duplicated with itself.
```kotlin
import com.yandex.yatagan.*
import javax.inject.*

class TestClass @Inject constructor()

@Module interface MyModule {
    @Binds fun binds(i: TestClass): Any
}

@Component(modules = [MyModule::class])
interface TestComponent {
    val obj: Any
    fun createSub(): SubComponent
}

@Component(isRoot = false, modules = [MyModule::class])
interface SubComponent {
    val obj: Any
}
```

Produces
```
Conflicting bindings for `java.lang.Object`
NOTE: Conflicting binding: `alias test.MyModule::binds(test.TestClass)`
NOTE: Conflicting binding: `alias test.MyModule::binds(test.TestClass)`
```
Pull request description: Fixes #51

Patch:
diff --git a/core/graph/impl/src/main/kotlin/bindings/AliasBindingImpl.kt b/core/graph/impl/src/main/kotlin/bindings/AliasBindingImpl.kt
index cca93abb..e90970f0 100644
--- a/core/graph/impl/src/main/kotlin/bindings/AliasBindingImpl.kt
+++ b/core/graph/impl/src/main/kotlin/bindings/AliasBindingImpl.kt
@@ -41,14 +41,12 @@ internal class AliasBindingImpl(
 
     override fun equals(other: Any?): Boolean {
         return this === other || (other is AliasBinding &&
-                source == other.source && target == other.target &&
-                owner == other.owner)
+                source == other.source && target == other.target)
     }
 
     override fun hashCode(): Int {
         var result = target.hashCode()
         result = 31 * result + source.hashCode()
-        result = 31 * result + owner.hashCode()
         return result
     }
 


Test patch:
diff --git a/testing/tests/src/test/kotlin/CoreBindingsTest.kt b/testing/tests/src/test/kotlin/CoreBindingsTest.kt
index b1a79d5f..8cd8053a 100644
--- a/testing/tests/src/test/kotlin/CoreBindingsTest.kt
+++ b/testing/tests/src/test/kotlin/CoreBindingsTest.kt
@@ -1041,5 +1041,33 @@ class CoreBindingsTest(
 
         compileRunAndValidate()
     }
+
+    @Test
+    fun `@Binds alias is allowed to be duplicated`() {
+        givenKotlinSource("test.TestCase", """
+            import com.yandex.yatagan.*
+            import javax.inject.*
+
+            class TestClass @Inject constructor()
+
+            @Module interface MyModule {
+                @Binds fun binds(i: TestClass): Any
+                @Binds fun binds2(i: TestClass): Any
+            }
+
+            @Component(modules = [MyModule::class])
+            interface TestComponent {
+                val obj: Any
+                fun createSub(): SubComponent
+            }
+
+            @Component(isRoot = false, modules = [MyModule::class])
+            interface SubComponent {
+                val obj: Any
+            }
+        """.trimIndent())
+
+        compileRunAndValidate()
+    }
 }
Repository: grafana/k6-operator (go)
Issue: k6.spec.separate also applies affinity to starter-pod 
### Brief summary

Hi, 

it seems that when separating runners to different nodes, the starter-pod is also been scheduled on its own node. Is this intended?

### k6-operator version or image

0.0.8

### K6 YAML

apiVersion: k6.io/v1alpha1
kind: K6
metadata:
  name: k6-test
spec:
  parallelism: 2
  separate: true


### Other environment details (if applicable)

_No response_

### Steps to reproduce the problem

Deploy k6 CRD with separate=true

### Expected behaviour

AntiAffinity should only affect runner-pods not initializer and starter

### Actual behaviour

AntiAffinity is applied to runner and starter pods
Pull request description: Add runner=true label to matchedExpressions in podAntiAffinity
Hi,
this PR fixes scheduling of starter-Pod when using `spec.separater=true` by adding `runner=true` to matched Label-Expressions in podAntiAffinity.


Fixes #168 

Patch:
diff --git a/pkg/resources/jobs/runner.go b/pkg/resources/jobs/runner.go
index d9e17d8..48d0c90 100644
--- a/pkg/resources/jobs/runner.go
+++ b/pkg/resources/jobs/runner.go
@@ -231,6 +231,13 @@ func newAntiAffinity() *corev1.Affinity {
 									"k6",
 								},
 							},
+							{
+								Key:      "runner",
+								Operator: "In",
+								Values: []string{
+									"true",
+								},
+							},
 						},
 					},
 					TopologyKey: "kubernetes.io/hostname",


Test patch:
diff --git a/pkg/resources/jobs/runner_test.go b/pkg/resources/jobs/runner_test.go
index bd45fa5..2c6498f 100644
--- a/pkg/resources/jobs/runner_test.go
+++ b/pkg/resources/jobs/runner_test.go
@@ -174,6 +174,13 @@ func TestNewAntiAffinity(t *testing.T) {
 									"k6",
 								},
 							},
+							{
+								Key:      "runner",
+								Operator: "In",
+								Values: []string{
+									"true",
+								},
+							},
 						},
 					},
 					TopologyKey: "kubernetes.io/hostname",