From 8d454a610cc70907aa8a701b406ab7d1e86cb837 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 12 Oct 2026 17:15:48 +0000 Subject: [PATCH 1/3] SRE-1173: Depend on `^manifest` in `compile` and `compile:release` The `hash-graph` binary links every workspace crate it reaches, so its compile tasks now depend on the `manifest` chain of those crates. Both tasks stay uncached. The task-dependency docs are regenerated. --- .../docs/task-dependencies.json | 62 +++++++++ apps/hash-api/docs/task-dependencies.json | 124 ++++++++++++++++++ apps/hash-graph/docs/task-dependencies.json | 48 +++++-- .../docs/task-dependencies.json | 62 +++++++++ .../graph/benches/docs/task-dependencies.json | 6 +- tests/graph/http/docs/task-dependencies.json | 46 ++++++- .../integration/docs/task-dependencies.json | 22 +++- .../docs/task-dependencies.json | 31 +++++ turbo.json | 6 +- 9 files changed, 393 insertions(+), 14 deletions(-) diff --git a/apps/hash-ai-worker-ts/docs/task-dependencies.json b/apps/hash-ai-worker-ts/docs/task-dependencies.json index 3e6b5eebe52..9e75e04c415 100644 --- a/apps/hash-ai-worker-ts/docs/task-dependencies.json +++ b/apps/hash-ai-worker-ts/docs/task-dependencies.json @@ -241,19 +241,50 @@ "cache": false, "persistent": true, "affectedBy": [ + "darwin-kperf", + "darwin-kperf-codegen", + "darwin-kperf-criterion", + "darwin-kperf-events", + "darwin-kperf-sys", "error-stack", "error-stack-macros", + "harpc-client", + "harpc-codec", + "harpc-net", + "harpc-server", + "harpc-system", + "harpc-tower", "harpc-types", "harpc-wire-protocol", "hash-codec", "hash-codegen", "hash-graph", "hash-graph-api", + "hash-graph-atlas", + "hash-graph-authentication", "hash-graph-authorization", + "hash-graph-embeddings", + "hash-graph-postgres-store", "hash-graph-store", "hash-graph-temporal-versioning", + "hash-graph-test-data", + "hash-graph-type-fetcher", "hash-graph-types", + "hash-graph-validation", + "hash-middleware", + "hash-secret", + "hash-status", + "hash-telemetry", "hash-temporal-client", + "hashql-ast", + "hashql-core", + "hashql-diagnostics", + "hashql-eval", + "hashql-hir", + "hashql-macros", + "hashql-mir", + "hashql-syntax-jexpr", + "problematic", "type-system" ] }, @@ -269,19 +300,50 @@ "cache": false, "persistent": true, "affectedBy": [ + "darwin-kperf", + "darwin-kperf-codegen", + "darwin-kperf-criterion", + "darwin-kperf-events", + "darwin-kperf-sys", "error-stack", "error-stack-macros", + "harpc-client", + "harpc-codec", + "harpc-net", + "harpc-server", + "harpc-system", + "harpc-tower", "harpc-types", "harpc-wire-protocol", "hash-codec", "hash-codegen", "hash-graph", "hash-graph-api", + "hash-graph-atlas", + "hash-graph-authentication", "hash-graph-authorization", + "hash-graph-embeddings", + "hash-graph-postgres-store", "hash-graph-store", "hash-graph-temporal-versioning", + "hash-graph-test-data", + "hash-graph-type-fetcher", "hash-graph-types", + "hash-graph-validation", + "hash-middleware", + "hash-secret", + "hash-status", + "hash-telemetry", "hash-temporal-client", + "hashql-ast", + "hashql-core", + "hashql-diagnostics", + "hashql-eval", + "hashql-hir", + "hashql-macros", + "hashql-mir", + "hashql-syntax-jexpr", + "problematic", "type-system" ] }, diff --git a/apps/hash-api/docs/task-dependencies.json b/apps/hash-api/docs/task-dependencies.json index e6b9761b84e..937ad7050e7 100644 --- a/apps/hash-api/docs/task-dependencies.json +++ b/apps/hash-api/docs/task-dependencies.json @@ -237,19 +237,50 @@ "cache": false, "persistent": true, "affectedBy": [ + "darwin-kperf", + "darwin-kperf-codegen", + "darwin-kperf-criterion", + "darwin-kperf-events", + "darwin-kperf-sys", "error-stack", "error-stack-macros", + "harpc-client", + "harpc-codec", + "harpc-net", + "harpc-server", + "harpc-system", + "harpc-tower", "harpc-types", "harpc-wire-protocol", "hash-codec", "hash-codegen", "hash-graph", "hash-graph-api", + "hash-graph-atlas", + "hash-graph-authentication", "hash-graph-authorization", + "hash-graph-embeddings", + "hash-graph-postgres-store", "hash-graph-store", "hash-graph-temporal-versioning", + "hash-graph-test-data", + "hash-graph-type-fetcher", "hash-graph-types", + "hash-graph-validation", + "hash-middleware", + "hash-secret", + "hash-status", + "hash-telemetry", "hash-temporal-client", + "hashql-ast", + "hashql-core", + "hashql-diagnostics", + "hashql-eval", + "hashql-hir", + "hashql-macros", + "hashql-mir", + "hashql-syntax-jexpr", + "problematic", "type-system" ] }, @@ -278,19 +309,50 @@ ], "cache": false, "affectedBy": [ + "darwin-kperf", + "darwin-kperf-codegen", + "darwin-kperf-criterion", + "darwin-kperf-events", + "darwin-kperf-sys", "error-stack", "error-stack-macros", + "harpc-client", + "harpc-codec", + "harpc-net", + "harpc-server", + "harpc-system", + "harpc-tower", "harpc-types", "harpc-wire-protocol", "hash-codec", "hash-codegen", "hash-graph", "hash-graph-api", + "hash-graph-atlas", + "hash-graph-authentication", "hash-graph-authorization", + "hash-graph-embeddings", + "hash-graph-postgres-store", "hash-graph-store", "hash-graph-temporal-versioning", + "hash-graph-test-data", + "hash-graph-type-fetcher", "hash-graph-types", + "hash-graph-validation", + "hash-middleware", + "hash-secret", + "hash-status", + "hash-telemetry", "hash-temporal-client", + "hashql-ast", + "hashql-core", + "hashql-diagnostics", + "hashql-eval", + "hashql-hir", + "hashql-macros", + "hashql-mir", + "hashql-syntax-jexpr", + "problematic", "type-system" ] }, @@ -301,19 +363,50 @@ "cache": false, "persistent": true, "affectedBy": [ + "darwin-kperf", + "darwin-kperf-codegen", + "darwin-kperf-criterion", + "darwin-kperf-events", + "darwin-kperf-sys", "error-stack", "error-stack-macros", + "harpc-client", + "harpc-codec", + "harpc-net", + "harpc-server", + "harpc-system", + "harpc-tower", "harpc-types", "harpc-wire-protocol", "hash-codec", "hash-codegen", "hash-graph", "hash-graph-api", + "hash-graph-atlas", + "hash-graph-authentication", "hash-graph-authorization", + "hash-graph-embeddings", + "hash-graph-postgres-store", "hash-graph-store", "hash-graph-temporal-versioning", + "hash-graph-test-data", + "hash-graph-type-fetcher", "hash-graph-types", + "hash-graph-validation", + "hash-middleware", + "hash-secret", + "hash-status", + "hash-telemetry", "hash-temporal-client", + "hashql-ast", + "hashql-core", + "hashql-diagnostics", + "hashql-eval", + "hashql-hir", + "hashql-macros", + "hashql-mir", + "hashql-syntax-jexpr", + "problematic", "type-system" ] }, @@ -342,19 +435,50 @@ ], "cache": false, "affectedBy": [ + "darwin-kperf", + "darwin-kperf-codegen", + "darwin-kperf-criterion", + "darwin-kperf-events", + "darwin-kperf-sys", "error-stack", "error-stack-macros", + "harpc-client", + "harpc-codec", + "harpc-net", + "harpc-server", + "harpc-system", + "harpc-tower", "harpc-types", "harpc-wire-protocol", "hash-codec", "hash-codegen", "hash-graph", "hash-graph-api", + "hash-graph-atlas", + "hash-graph-authentication", "hash-graph-authorization", + "hash-graph-embeddings", + "hash-graph-postgres-store", "hash-graph-store", "hash-graph-temporal-versioning", + "hash-graph-test-data", + "hash-graph-type-fetcher", "hash-graph-types", + "hash-graph-validation", + "hash-middleware", + "hash-secret", + "hash-status", + "hash-telemetry", "hash-temporal-client", + "hashql-ast", + "hashql-core", + "hashql-diagnostics", + "hashql-eval", + "hashql-hir", + "hashql-macros", + "hashql-mir", + "hashql-syntax-jexpr", + "problematic", "type-system" ] }, diff --git a/apps/hash-graph/docs/task-dependencies.json b/apps/hash-graph/docs/task-dependencies.json index 85b5fd640dd..ad841e994d4 100644 --- a/apps/hash-graph/docs/task-dependencies.json +++ b/apps/hash-graph/docs/task-dependencies.json @@ -32,11 +32,19 @@ }, "compile": { "dependsOn": [], - "cache": false + "cache": false, + "affectedBy": [ + "darwin-kperf-codegen", + "error-stack-macros" + ] }, "compile:release": { "dependsOn": [], - "cache": false + "cache": false, + "affectedBy": [ + "darwin-kperf-codegen", + "error-stack-macros" + ] }, "doc:dependency-diagram": { "dependsOn": [ @@ -66,38 +74,62 @@ "start:migrate" ], "cache": false, - "persistent": true + "persistent": true, + "affectedBy": [ + "darwin-kperf-codegen", + "error-stack-macros" + ] }, "start:healthcheck": { "dependsOn": [ "compile:release" ], - "cache": false + "cache": false, + "affectedBy": [ + "darwin-kperf-codegen", + "error-stack-macros" + ] }, "start:migrate": { "dependsOn": [ "compile:release" ], - "cache": false + "cache": false, + "affectedBy": [ + "darwin-kperf-codegen", + "error-stack-macros" + ] }, "start:test": { "dependsOn": [ "start:test:migrate" ], "cache": false, - "persistent": true + "persistent": true, + "affectedBy": [ + "darwin-kperf-codegen", + "error-stack-macros" + ] }, "start:test:healthcheck": { "dependsOn": [ "compile" ], - "cache": false + "cache": false, + "affectedBy": [ + "darwin-kperf-codegen", + "error-stack-macros" + ] }, "start:test:migrate": { "dependsOn": [ "compile" ], - "cache": false + "cache": false, + "affectedBy": [ + "darwin-kperf-codegen", + "error-stack-macros" + ] }, "test:unit": { "dependsOn": [], diff --git a/apps/hash-integration-worker/docs/task-dependencies.json b/apps/hash-integration-worker/docs/task-dependencies.json index d0c59926394..3f421f3ee3a 100644 --- a/apps/hash-integration-worker/docs/task-dependencies.json +++ b/apps/hash-integration-worker/docs/task-dependencies.json @@ -229,19 +229,50 @@ "cache": false, "persistent": true, "affectedBy": [ + "darwin-kperf", + "darwin-kperf-codegen", + "darwin-kperf-criterion", + "darwin-kperf-events", + "darwin-kperf-sys", "error-stack", "error-stack-macros", + "harpc-client", + "harpc-codec", + "harpc-net", + "harpc-server", + "harpc-system", + "harpc-tower", "harpc-types", "harpc-wire-protocol", "hash-codec", "hash-codegen", "hash-graph", "hash-graph-api", + "hash-graph-atlas", + "hash-graph-authentication", "hash-graph-authorization", + "hash-graph-embeddings", + "hash-graph-postgres-store", "hash-graph-store", "hash-graph-temporal-versioning", + "hash-graph-test-data", + "hash-graph-type-fetcher", "hash-graph-types", + "hash-graph-validation", + "hash-middleware", + "hash-secret", + "hash-status", + "hash-telemetry", "hash-temporal-client", + "hashql-ast", + "hashql-core", + "hashql-diagnostics", + "hashql-eval", + "hashql-hir", + "hashql-macros", + "hashql-mir", + "hashql-syntax-jexpr", + "problematic", "type-system" ] }, @@ -257,19 +288,50 @@ "cache": false, "persistent": true, "affectedBy": [ + "darwin-kperf", + "darwin-kperf-codegen", + "darwin-kperf-criterion", + "darwin-kperf-events", + "darwin-kperf-sys", "error-stack", "error-stack-macros", + "harpc-client", + "harpc-codec", + "harpc-net", + "harpc-server", + "harpc-system", + "harpc-tower", "harpc-types", "harpc-wire-protocol", "hash-codec", "hash-codegen", "hash-graph", "hash-graph-api", + "hash-graph-atlas", + "hash-graph-authentication", "hash-graph-authorization", + "hash-graph-embeddings", + "hash-graph-postgres-store", "hash-graph-store", "hash-graph-temporal-versioning", + "hash-graph-test-data", + "hash-graph-type-fetcher", "hash-graph-types", + "hash-graph-validation", + "hash-middleware", + "hash-secret", + "hash-status", + "hash-telemetry", "hash-temporal-client", + "hashql-ast", + "hashql-core", + "hashql-diagnostics", + "hashql-eval", + "hashql-hir", + "hashql-macros", + "hashql-mir", + "hashql-syntax-jexpr", + "problematic", "type-system" ] }, diff --git a/tests/graph/benches/docs/task-dependencies.json b/tests/graph/benches/docs/task-dependencies.json index e9f6e13745c..e0d737f0011 100644 --- a/tests/graph/benches/docs/task-dependencies.json +++ b/tests/graph/benches/docs/task-dependencies.json @@ -23,7 +23,8 @@ "affectedBy": [ "darwin-kperf-codegen", "error-stack-macros", - "hash-graph" + "hash-graph", + "hash-graph-atlas" ] }, "bench:integration:manual": { @@ -53,7 +54,8 @@ "affectedBy": [ "darwin-kperf-codegen", "error-stack-macros", - "hash-graph" + "hash-graph", + "hash-graph-atlas" ] }, "test:integration:manual": { diff --git a/tests/graph/http/docs/task-dependencies.json b/tests/graph/http/docs/task-dependencies.json index ad654d41cfb..db7b96a8452 100644 --- a/tests/graph/http/docs/task-dependencies.json +++ b/tests/graph/http/docs/task-dependencies.json @@ -10,7 +10,51 @@ "TEST_COVERAGE" ], "affectedBy": [ - "hash-graph" + "darwin-kperf", + "darwin-kperf-codegen", + "darwin-kperf-criterion", + "darwin-kperf-events", + "darwin-kperf-sys", + "error-stack", + "error-stack-macros", + "harpc-client", + "harpc-codec", + "harpc-net", + "harpc-server", + "harpc-system", + "harpc-tower", + "harpc-types", + "harpc-wire-protocol", + "hash-codec", + "hash-codegen", + "hash-graph", + "hash-graph-api", + "hash-graph-atlas", + "hash-graph-authentication", + "hash-graph-authorization", + "hash-graph-embeddings", + "hash-graph-postgres-store", + "hash-graph-store", + "hash-graph-temporal-versioning", + "hash-graph-test-data", + "hash-graph-type-fetcher", + "hash-graph-types", + "hash-graph-validation", + "hash-middleware", + "hash-secret", + "hash-status", + "hash-telemetry", + "hash-temporal-client", + "hashql-ast", + "hashql-core", + "hashql-diagnostics", + "hashql-eval", + "hashql-hir", + "hashql-macros", + "hashql-mir", + "hashql-syntax-jexpr", + "problematic", + "type-system" ] } } diff --git a/tests/graph/integration/docs/task-dependencies.json b/tests/graph/integration/docs/task-dependencies.json index 1eff2dfa56a..d49531dbc72 100644 --- a/tests/graph/integration/docs/task-dependencies.json +++ b/tests/graph/integration/docs/task-dependencies.json @@ -38,7 +38,27 @@ "affectedBy": [ "darwin-kperf-codegen", "error-stack-macros", - "hash-graph" + "harpc-client", + "harpc-codec", + "harpc-net", + "harpc-server", + "harpc-system", + "harpc-tower", + "hash-graph", + "hash-graph-api", + "hash-graph-atlas", + "hash-graph-authentication", + "hash-graph-type-fetcher", + "hash-middleware", + "hashql-ast", + "hashql-core", + "hashql-diagnostics", + "hashql-eval", + "hashql-hir", + "hashql-macros", + "hashql-mir", + "hashql-syntax-jexpr", + "problematic" ] } } diff --git a/tests/hash-backend-integration/docs/task-dependencies.json b/tests/hash-backend-integration/docs/task-dependencies.json index 461ba8dfcdf..0ebea292f86 100644 --- a/tests/hash-backend-integration/docs/task-dependencies.json +++ b/tests/hash-backend-integration/docs/task-dependencies.json @@ -185,19 +185,50 @@ "TEST_COVERAGE" ], "affectedBy": [ + "darwin-kperf", + "darwin-kperf-codegen", + "darwin-kperf-criterion", + "darwin-kperf-events", + "darwin-kperf-sys", "error-stack", "error-stack-macros", + "harpc-client", + "harpc-codec", + "harpc-net", + "harpc-server", + "harpc-system", + "harpc-tower", "harpc-types", "harpc-wire-protocol", "hash-codec", "hash-codegen", "hash-graph", "hash-graph-api", + "hash-graph-atlas", + "hash-graph-authentication", "hash-graph-authorization", + "hash-graph-embeddings", + "hash-graph-postgres-store", "hash-graph-store", "hash-graph-temporal-versioning", + "hash-graph-test-data", + "hash-graph-type-fetcher", "hash-graph-types", + "hash-graph-validation", + "hash-middleware", + "hash-secret", + "hash-status", + "hash-telemetry", "hash-temporal-client", + "hashql-ast", + "hashql-core", + "hashql-diagnostics", + "hashql-eval", + "hashql-hir", + "hashql-macros", + "hashql-mir", + "hashql-syntax-jexpr", + "problematic", "type-system" ] } diff --git a/turbo.json b/turbo.json index 8e5b1d9af17..52363e259c1 100644 --- a/turbo.json +++ b/turbo.json @@ -39,10 +39,12 @@ "dependsOn": ["^manifest"] }, "compile": { - "cache": false + "cache": false, + "dependsOn": ["^manifest"] }, "compile:release": { - "cache": false + "cache": false, + "dependsOn": ["^manifest"] }, // Run commands "start:migrate": { From b980be6c6d370188d5553da1f50455cc9cfc5bd6 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 12 Oct 2026 17:19:07 +0000 Subject: [PATCH 2/3] SRE-1173: Cache `compile` and `compile:release` The `^manifest` edges make the hash of both tasks cover every workspace crate the `hash-graph` binary links, so the tasks no longer need to opt out of caching. The task-dependency docs are regenerated. --- apps/hash-graph/docs/task-dependencies.json | 2 -- turbo.json | 2 -- 2 files changed, 4 deletions(-) diff --git a/apps/hash-graph/docs/task-dependencies.json b/apps/hash-graph/docs/task-dependencies.json index ad841e994d4..b0e896b4d98 100644 --- a/apps/hash-graph/docs/task-dependencies.json +++ b/apps/hash-graph/docs/task-dependencies.json @@ -32,7 +32,6 @@ }, "compile": { "dependsOn": [], - "cache": false, "affectedBy": [ "darwin-kperf-codegen", "error-stack-macros" @@ -40,7 +39,6 @@ }, "compile:release": { "dependsOn": [], - "cache": false, "affectedBy": [ "darwin-kperf-codegen", "error-stack-macros" diff --git a/turbo.json b/turbo.json index 52363e259c1..26380c02f18 100644 --- a/turbo.json +++ b/turbo.json @@ -39,11 +39,9 @@ "dependsOn": ["^manifest"] }, "compile": { - "cache": false, "dependsOn": ["^manifest"] }, "compile:release": { - "cache": false, "dependsOn": ["^manifest"] }, // Run commands From b1785af6465c4948931ef5dee37080d4e45183a2 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 12 Oct 2026 18:35:35 +0000 Subject: [PATCH 3/3] SRE-1173: Disable caching for `compile` tasks A cache hit for `compile` or `compile:release` restores no binary, because neither task declares its outputs. Both tasks stay uncached until they do, and keep their `^manifest` edges. The task-dependency docs are regenerated. --- apps/hash-graph/docs/task-dependencies.json | 2 ++ turbo.json | 2 ++ 2 files changed, 4 insertions(+) diff --git a/apps/hash-graph/docs/task-dependencies.json b/apps/hash-graph/docs/task-dependencies.json index b0e896b4d98..ad841e994d4 100644 --- a/apps/hash-graph/docs/task-dependencies.json +++ b/apps/hash-graph/docs/task-dependencies.json @@ -32,6 +32,7 @@ }, "compile": { "dependsOn": [], + "cache": false, "affectedBy": [ "darwin-kperf-codegen", "error-stack-macros" @@ -39,6 +40,7 @@ }, "compile:release": { "dependsOn": [], + "cache": false, "affectedBy": [ "darwin-kperf-codegen", "error-stack-macros" diff --git a/turbo.json b/turbo.json index 26380c02f18..52363e259c1 100644 --- a/turbo.json +++ b/turbo.json @@ -39,9 +39,11 @@ "dependsOn": ["^manifest"] }, "compile": { + "cache": false, "dependsOn": ["^manifest"] }, "compile:release": { + "cache": false, "dependsOn": ["^manifest"] }, // Run commands