Affected areas: ⚙️ CI / Build 🚀 Deployment 📝 Version Control
Based on 20 prior commits
6 connected, 2 available
evo-adapter-datadog or check docs/guides/INTEGRATIONS.md for setup.evo-adapter-otel or check docs/guides/INTEGRATIONS.md for setup.We've detected 6 changes that differ from your project's normal patterns. Each change shows what typically happens versus what we observed this time.
4268acf1 [turbopack] Remove obsolete is_internal field (#90329)when CI builds and code changes happen together, novelty of file pairings and build time tend to move together.
when deployments and code changes happen together, novelty of file pairings tends to move in opposite directions.
when code changes occur, novelty of file pairings tends to decrease.
Development pattern shift detected in Version Control.\n\nSIGNAL: Co-change Novelty is 509.2x below the typical baseline (observed: 0.0000, typical: 0.9987).\nTRIGGER COMMIT: 4268acf1 — [turbopack] Remove obsolete is_internal field (#90329)\n\nFILES CHANGED IN TRIGGER (4):\n - crates/next-napi-bindings/src/next_api/project.rs\n - packages/next/src/build/swc/generated-native.d.ts\n - packages/next/src/build/swc/types.ts\n - packages/next/src/server/dev/middleware-turbopack.ts\n\nRECENT COMMITS (20 total, showing top 5):\n 740d55cd — Turbopack: Add inline loader configuration via import attrib (36 files)\n 14c1f8c6 — Turbopack: Use `std::any::type_name` for global naming of tu (9 files)\n e6d27d4a — Rename node extension utils for clarity (#89970) finding th (6 files)\n 6df0b7b9 — Turbopack: Fix flake in task_statistics unit test (#89981) (1 files)\n ad7d27ec — Turbopack hmr: preserve group factory consistency for compre (20 files)\n ... and 15 more commits\n\nCORRELATED PATTERNS:\n [CRITICAL] when CI builds and code changes happen together, novelty of file pairings and build time tend to move together.\n → Investigate which files are being combined unexpectedly. Prioritize testing these changes.\n [INFO] when deployments and code changes happen together, novelty of file pairings tends to move in opposite directions.\n → Review whether recent commits are routine maintenance or a sign of narrow, repetitive modifications that lack expected variety.\n [INFO] when code changes occur, novelty of file pairings tends to decrease.\n → Review whether recent commits are routine maintenance or a sign of narrow, repetitive modifications that lack expected variety.\n\nINVESTIGATE:\n1. Was this change intentional or did the AI drift from goals?\n2. Review commit 4268acf1 — what specifically caused the deviation?\n3. Suggest a course correction (not a bug fix — a realignment).\n\nAFTER FIX:\nRun `evo analyze . --verify` to re-analyze and compare against this run.\nIf the change was intentional, no fix needed — accept it in the report.
The cochange novelty ratio for this change was 0.0000. Historically, similar changes had a value of 0.9987 ± 0.0013.
e22988e5 Turbopack: switch chunk/asset hashes from hex to base40 encowhen CI builds and code changes happen together, file count and build time tend to move together.
when deployments and code changes happen together, file count and release frequency tend to move together.
when code changes occur, file count tends to increase.
Development pattern shift detected in Version Control.\n\nSIGNAL: Files Changed is 214.5x above the typical baseline (observed: 958, typical: 4.00).\nTRIGGER COMMIT: e22988e5 — Turbopack: switch chunk/asset hashes from hex to base40 encoding (#91137)\n\nFILES CHANGED IN TRIGGER (958):\n - crates/next-core/src/next_client/context.rs\n - test/e2e/app-dir-export/test/utils.ts\n - test/e2e/app-dir/app/index.test.ts\n - test/e2e/app-dir/next-image/next-image-proxy.test.ts\n - test/e2e/app-dir/next-image/next-image.test.ts\n - test/e2e/app-dir/node-worker-threads/node-worker-threads.test.ts\n - test/e2e/app-dir/webpack-loader-module-type/webpack-loader-module-type.test.ts\n - test/e2e/edge-compiler-can-import-blob-assets/index.test.ts\n - test/e2e/url-imports/url-imports.test.ts\n - test/e2e/url/url.test.ts\n - test/integration/css/test/basic-global-support.test.ts\n - test/integration/image-optimizer/test/util.ts\n - test/integration/next-image-legacy/unoptimized/test/index.test.ts\n - test/integration/next-image-new/app-dir/test/index.test.ts\n - test/integration/next-image-new/both-basepath-trailingslash/test/index.test.ts\n ... and 943 more\n\nRECENT COMMITS (20 total, showing top 5):\n 740d55cd — Turbopack: Add inline loader configuration via import attrib (36 files)\n 14c1f8c6 — Turbopack: Use `std::any::type_name` for global naming of tu (9 files)\n e6d27d4a — Rename node extension utils for clarity (#89970) finding th (6 files)\n 6df0b7b9 — Turbopack: Fix flake in task_statistics unit test (#89981) (1 files)\n ad7d27ec — Turbopack hmr: preserve group factory consistency for compre (20 files)\n ... and 15 more commits\n\nCORRELATED PATTERNS:\n [CRITICAL] when CI builds and code changes happen together, file count and build time tend to move together.\n → Monitor PR sizes. If this persists, investigate whether large refactors need better decomposition.\n [CRITICAL] when deployments and code changes happen together, file count and release frequency tend to move together.\n → Monitor PR sizes. If this persists, investigate whether large refactors need better decomposition.\n [WATCH] when code changes occur, file count tends to increase.\n → Monitor PR sizes. If this persists, investigate whether large refactors need better decomposition.\n\nINVESTIGATE:\n1. Was this change intentional or did the AI drift from goals?\n2. Review commit e22988e5 — what specifically caused the deviation?\n3. Suggest a course correction (not a bug fix — a realignment).\n\nAFTER FIX:\nRun `evo analyze . --verify` to re-analyze and compare against this run.\nIf the change was intentional, no fix needed — accept it in the report.
The files touched for this change was 958. Historically, similar changes had a value of 4.00 ± 3.00.
195a4453 when CI builds and code changes happen together, change focus and build time tend to move together.
when CI builds and code changes happen together, file count and build time tend to move together.
when CI builds and code changes happen together, novelty of file pairings and build time tend to move together.
when CI builds occur, build time tends to decrease.
Development pattern shift detected in CI / Build.\n\nSIGNAL: Build Duration is 103.8x above the typical baseline (observed: 1,939.0, typical: 16.00).\nTRIGGER COMMIT: 195a4453 — \n\nRECENT COMMITS (20 total, showing top 5):\n 740d55cd — Turbopack: Add inline loader configuration via import attrib (36 files)\n 14c1f8c6 — Turbopack: Use `std::any::type_name` for global naming of tu (9 files)\n e6d27d4a — Rename node extension utils for clarity (#89970) finding th (6 files)\n 6df0b7b9 — Turbopack: Fix flake in task_statistics unit test (#89981) (1 files)\n ad7d27ec — Turbopack hmr: preserve group factory consistency for compre (20 files)\n ... and 15 more commits\n\nCORRELATED PATTERNS:\n [CRITICAL] when CI builds and code changes happen together, change focus and build time tend to move together.\n → Profile the build pipeline to identify bottlenecks. Check for newly added expensive tests or build steps.\n → Review whether these cross-cutting changes have adequate test coverage.\n [CRITICAL] when CI builds and code changes happen together, file count and build time tend to move together.\n → Monitor PR sizes. If this persists, investigate whether large refactors need better decomposition.\n [CRITICAL] when CI builds and code changes happen together, novelty of file pairings and build time tend to move together.\n → Investigate which files are being combined unexpectedly. Prioritize testing these changes.\n [INFO] when CI builds occur, build time tends to decrease.\n → Confirm test coverage hasn't decreased alongside faster builds.\n\nINVESTIGATE:\n1. Was this change intentional or did the AI drift from goals?\n2. Review commit 195a4453 — what specifically caused the deviation?\n3. Suggest a course correction (not a bug fix — a realignment).\n\nAFTER FIX:\nRun `evo analyze . --verify` to re-analyze and compare against this run.\nIf the change was intentional, no fix needed — accept it in the report.
The run duration for this change was 1,939.0. Historically, similar changes had a value of 16.00 ± 12.50.
master when deployments and code changes happen together, code spread and release frequency tend to move together.
when deployments and code changes happen together, file count and release frequency tend to move together.
when deployments occur, release frequency tends to increase.
Development pattern shift detected in Deployment.\n\nSIGNAL: Release Cadence is 68.0x above the typical baseline (observed: 2,308.9, typical: 23.41).\nTRIGGER COMMIT: master — \n\nRECENT COMMITS (20 total, showing top 5):\n 740d55cd — Turbopack: Add inline loader configuration via import attrib (36 files)\n 14c1f8c6 — Turbopack: Use `std::any::type_name` for global naming of tu (9 files)\n e6d27d4a — Rename node extension utils for clarity (#89970) finding th (6 files)\n 6df0b7b9 — Turbopack: Fix flake in task_statistics unit test (#89981) (1 files)\n ad7d27ec — Turbopack hmr: preserve group factory consistency for compre (20 files)\n ... and 15 more commits\n\nCORRELATED PATTERNS:\n [CRITICAL] when deployments and code changes happen together, code spread and release frequency tend to move together.\n → Review recent PRs for scope creep. Consider breaking large changes into focused commits.\n [CRITICAL] when deployments and code changes happen together, file count and release frequency tend to move together.\n → Monitor PR sizes. If this persists, investigate whether large refactors need better decomposition.\n [WATCH] when deployments occur, release frequency tends to increase.\n → Check if process changes or staffing issues are delaying releases.\n\nINVESTIGATE:\n1. Was this change intentional or did the AI drift from goals?\n2. Review commit master — what specifically caused the deviation?\n3. Suggest a course correction (not a bug fix — a realignment).\n\nAFTER FIX:\nRun `evo analyze . --verify` to re-analyze and compare against this run.\nIf the change was intentional, no fix needed — accept it in the report.
The release cadence hours for this change was 2,308.9. Historically, similar changes had a value of 23.41 ± 22.68.
2298e892 v16.2.0-canary.60when CI builds and code changes happen together, change focus and build time tend to move together.
Development pattern shift detected in Version Control.\n\nSIGNAL: Change Locality is 29.0x above the typical baseline (observed: 1.00, typical: 0.0227).\nTRIGGER COMMIT: 2298e892 — v16.2.0-canary.60\n\nFILES CHANGED IN TRIGGER (20):\n - lerna.json\n - packages/create-next-app/package.json\n - packages/eslint-config-next/package.json\n - packages/eslint-plugin-internal/package.json\n - packages/eslint-plugin-next/package.json\n - packages/font/package.json\n - packages/next-bundle-analyzer/package.json\n - packages/next-codemod/package.json\n - packages/next-env/package.json\n - packages/next-mdx/package.json\n - packages/next-plugin-storybook/package.json\n - packages/next-polyfill-module/package.json\n - packages/next-polyfill-nomodule/package.json\n - packages/next-routing/package.json\n - packages/next-rspack/package.json\n ... and 5 more\n\nRECENT COMMITS (20 total, showing top 5):\n 740d55cd — Turbopack: Add inline loader configuration via import attrib (36 files)\n 14c1f8c6 — Turbopack: Use `std::any::type_name` for global naming of tu (9 files)\n e6d27d4a — Rename node extension utils for clarity (#89970) finding th (6 files)\n 6df0b7b9 — Turbopack: Fix flake in task_statistics unit test (#89981) (1 files)\n ad7d27ec — Turbopack hmr: preserve group factory consistency for compre (20 files)\n ... and 15 more commits\n\nCORRELATED PATTERNS:\n [CRITICAL] when CI builds and code changes happen together, change focus and build time tend to move together.\n → Profile the build pipeline to identify bottlenecks. Check for newly added expensive tests or build steps.\n → Review whether these cross-cutting changes have adequate test coverage.\n\nINVESTIGATE:\n1. Was this change intentional or did the AI drift from goals?\n2. Review commit 2298e892 — what specifically caused the deviation?\n3. Suggest a course correction (not a bug fix — a realignment).\n\nAFTER FIX:\nRun `evo analyze . --verify` to re-analyze and compare against this run.\nIf the change was intentional, no fix needed — accept it in the report.
The change locality for this change was 1.00. Historically, similar changes had a value of 0.0227 ± 0.0227.
5563b4d7 Turbopack: Update rust toolchain to nightly-2026-02-18 (#899when deployments and code changes happen together, code spread and release frequency tend to move together.
when code changes occur, code spread tends to increase.
Development pattern shift detected in Version Control.\n\nSIGNAL: Change Dispersion is 8.9x above the typical baseline (observed: 1.50, typical: 0.1054).\nTRIGGER COMMIT: 5563b4d7 — Turbopack: Update rust toolchain to nightly-2026-02-18 (#89974)\n\nFILES CHANGED IN TRIGGER (4):\n - .devcontainer/rust/devcontainer-feature.json\n - rust-toolchain.toml\n - turbopack/crates/turbopack-core/src/lib.rs\n - turbopack/crates/turbopack-ecmascript/src/source_map.rs\n\nRECENT COMMITS (20 total, showing top 5):\n 740d55cd — Turbopack: Add inline loader configuration via import attrib (36 files)\n 14c1f8c6 — Turbopack: Use `std::any::type_name` for global naming of tu (9 files)\n e6d27d4a — Rename node extension utils for clarity (#89970) finding th (6 files)\n 6df0b7b9 — Turbopack: Fix flake in task_statistics unit test (#89981) (1 files)\n ad7d27ec — Turbopack hmr: preserve group factory consistency for compre (20 files)\n ... and 15 more commits\n\nCORRELATED PATTERNS:\n [CRITICAL] when deployments and code changes happen together, code spread and release frequency tend to move together.\n → Review recent PRs for scope creep. Consider breaking large changes into focused commits.\n [WATCH] when code changes occur, code spread tends to increase.\n → Review recent PRs for scope creep. Consider breaking large changes into focused commits.\n\nINVESTIGATE:\n1. Was this change intentional or did the AI drift from goals?\n2. Review commit 5563b4d7 — what specifically caused the deviation?\n3. Suggest a course correction (not a bug fix — a realignment).\n\nAFTER FIX:\nRun `evo analyze . --verify` to re-analyze and compare against this run.\nIf the change was intentional, no fix needed — accept it in the report.
The dispersion for this change was 1.50. Historically, similar changes had a value of 0.1054 ± 0.1054.
Development drift analysis for vercel/next.js (Dec 21, 2016 at 05:10 AM to Mar 14, 2026 at 11:26 PM).
DEVIATIONS FROM BASELINE:
- Version Control / Co-change Novelty: 0.0000 (typical: 0.9987, 509.2x below)
- Version Control / Files Changed: 958 (typical: 4.00, 214.5x above)
- CI / Build / Build Duration: 1,939.0 (typical: 16.00, 103.8x above)
- Deployment / Release Cadence: 2,308.9 (typical: 23.41, 68.0x above)
- Version Control / Change Locality: 1.00 (typical: 0.0227, 29.0x above)
- Version Control / Change Dispersion: 1.50 (typical: 0.1054, 8.9x above)
RISK PATTERNS (actionable only):
- [Action Required] 3 patterns:
* when deployments and code changes happen together, novelty of file pairings tends to move together.
* when CI builds and code changes happen together, novelty of file pairings and build time tend to move together.
* when CI builds and code changes happen together, novelty of file pairings tends to move together.
Impact: Files that don't normally change together are being modified in the same commits. This indicates novel, untested interactions that may introduce bugs. Escalated from Needs Attention — multiple correlated patterns converge on the same signal families.
Action: Investigate which files are being combined unexpectedly. Prioritize testing these changes.
- [Action Required] when deployments and code changes happen together, change focus and release frequency tend to move together.
Impact: Time between releases is increasing. This could indicate a bottleneck in the release process or accumulating risk in larger releases. Escalated from Worth Monitoring — multiple correlated patterns converge on the same signal families.
Action: Check if process changes or staffing issues are delaying releases.
- [Action Required] when CI builds and code changes happen together, change focus and build time tend to move together.
(2 independent confirmations)
Impact: Builds are taking longer. Slower CI feedback loops reduce developer productivity and delay catching issues. Escalated from Worth Monitoring — multiple correlated patterns converge on the same signal families.
Action: Profile the build pipeline to identify bottlenecks. Check for newly added expensive tests or build steps.
- [Action Required] 4 patterns:
* when deployments and code changes happen together, code spread and release frequency tend to move together.
* when CI builds and code changes happen together, code spread and build time tend to move together.
* when deployments and code changes happen together, code spread tends to move together.
* when CI builds and code changes happen together, code spread tends to move together.
Impact: Changes are spreading across unrelated parts of the codebase. This makes reviews harder and increases the chance of unexpected side effects. Escalated from Worth Monitoring — multiple correlated patterns converge on the same signal families.
Action: Review recent PRs for scope creep. Consider breaking large changes into focused commits.
- [Action Required] 4 patterns:
* when deployments and code changes happen together, file count tends to move together.
* when CI builds and code changes happen together, file count and build time tend to move together.
* when deployments and code changes happen together, file count and release frequency tend to move together.
* when CI builds and code changes happen together, file count tends to move together.
Impact: Commits are touching more files than usual, increasing review burden and risk of regressions. Escalated from Worth Monitoring — multiple correlated patterns converge on the same signal families.
Action: Monitor PR sizes. If this persists, investigate whether large refactors need better decomposition.
- [Action Required] when CI builds and code changes happen together, change focus tends to move in opposite directions.
Impact: Changes span files that don't normally change together, suggesting cross-cutting concerns that may be harder to test. Escalated from Worth Monitoring — multiple correlated patterns converge on the same signal families.
Action: Review whether these cross-cutting changes have adequate test coverage.
- [Worth Monitoring] when deployments occur, release frequency tends to increase.
(2 independent confirmations)
Impact: Time between releases is increasing. This could indicate a bottleneck in the release process or accumulating risk in larger releases.
Action: Check if process changes or staffing issues are delaying releases.
- [Worth Monitoring] when code changes occur, change focus tends to decrease.
Impact: Changes span files that don't normally change together, suggesting cross-cutting concerns that may be harder to test.
Action: Review whether these cross-cutting changes have adequate test coverage.
- [Worth Monitoring] when code changes occur, code spread tends to increase.
Impact: Changes are spreading across unrelated parts of the codebase. This makes reviews harder and increases the chance of unexpected side effects.
Action: Review recent PRs for scope creep. Consider breaking large changes into focused commits.
- [Worth Monitoring] when code changes occur, file count tends to increase.
Impact: Commits are touching more files than usual, increasing review burden and risk of regressions.
Action: Monitor PR sizes. If this persists, investigate whether large refactors need better decomposition.
COMMITS (20):
740d55cd — Turbopack: Add inline loader configuration via import attributes (#89644) (36 files)
14c1f8c6 — Turbopack: Use `std::any::type_name` for global naming of turbo-task items (#898 (9 files)
e6d27d4a — Rename node extension utils for clarity (#89970) (6 files)
6df0b7b9 — Turbopack: Fix flake in task_statistics unit test (#89981) (1 files)
ad7d27ec — Turbopack hmr: preserve group factory consistency for compressed modules (#89976 (20 files)
e0668e46 — Run fast immediates during prerender abort to fix flaky I/O stack traces (#89969 (4 files)
1ea3233a — v16.2.0-canary.44 (20 files)
bd473d00 — v16.2.0-canary.45 (20 files)
779ed0a5 — v16.2.0-canary.46 (20 files)
0382ecc2 — Upgrade Lightning CSS (#88789) (3 files)
... and 10 more
SOURCE FILES CHANGED (50):
- crates/next-core/src/next_shared/webpack_rules/mod.rs (modified)
- docs/01-app/03-api-reference/05-config/01-next-config-js/turbopack.mdx (modified)
- test/development/app-dir/turbopack-import-assertions-use/app/layout.tsx (modified)
- test/development/app-dir/turbopack-import-assertions-use/app/page.tsx (modified)
- test/development/app-dir/turbopack-import-assertions-use/data-with-placeholder.js (modified)
- test/development/app-dir/turbopack-import-assertions-use/data.jsonlike (modified)
- test/development/app-dir/turbopack-import-assertions-use/data.txt (modified)
- test/development/app-dir/turbopack-import-assertions-use/data2.txt (modified)
- test/development/app-dir/turbopack-import-assertions-use/next.config.js (modified)
- test/development/app-dir/turbopack-import-assertions-use/node_modules/test-identity-loader/index.js (modified)
- test/development/app-dir/turbopack-import-assertions-use/node_modules/test-identity-loader/package.json (modified)
- test/development/app-dir/turbopack-import-assertions-use/node_modules/test-raw-loader/index.js (modified)
- test/development/app-dir/turbopack-import-assertions-use/node_modules/test-raw-loader/package.json (modified)
- test/development/app-dir/turbopack-import-assertions-use/node_modules/test-replace-loader/index.js (modified)
- test/development/app-dir/turbopack-import-assertions-use/node_modules/test-replace-loader/package.json (modified)
- test/development/app-dir/turbopack-import-assertions-use/turbopack-import-assertions-use.test.ts (modified)
- turbopack/crates/turbopack-core/src/lib.rs (modified)
- turbopack/crates/turbopack-core/src/loader.rs (modified)
- turbopack/crates/turbopack-core/src/reference_type.rs (modified)
- turbopack/crates/turbopack-ecmascript/src/analyzer/imports.rs (modified)
... and 30 more
TASKS:
1. ROOT CAUSE: For each deviation, identify the commit(s) that caused it.
Focus on [Action Required] and [Needs Attention] items first.
2. FIXES: Provide concrete fixes with file paths and code changes.
Goal: bring metrics back toward baseline without disrupting velocity.
3. PRIORITY: Rank fixes by urgency (immediate vs. next sprint).
4. AFTER FIXING: Run `evo analyze . --verify` to confirm deviations decreased.
If a change was intentional, accept it: `evo accept . <N>`.
5. FINDING SUMMARIES: At the end, include a section like this:
## Finding Summaries
- [family/metric]: One plain-English sentence for a non-technical reader.
(This lets the user run `evo enrich . --from response.txt` to store friendly descriptions.)
Evolution Engine has 44 universal patterns learned from 200+ open-source repositories. The more signal families you connect, the more cross-family patterns can be detected.
Enable these adapters to unlock additional signal families and cross-family pattern detection.
SENTRY_AUTH_TOKEN Setup guide →export GITHUB_TOKEN=$(gh auth token)pytest --junitxml=junit.xml or pytest --cov --cov-report=xmlevo analyze . — new adapters are detected automaticallyevo sources to confirm which adapters are active