   Compiling symforge v7.4.6 (C:\AI_STUFF\PROGRAMMING\symforge)
    Finished `release` profile [optimized] target(s) in 16.75s
     Running tests\coupling_calibration.rs (target\release\deps\coupling_calibration-4cff17938461c09b.exe)

running 1 test


# Coupling calibration run

Generated by `tests/coupling_calibration.rs`. Defaults: max_commits=500, window_days=1095, half_life_days=30, max_files_per_commit=200.

## Corpus pin

| repo | path | HEAD SHA |
|---|---|---|
| symforge | `C:/AI_STUFF/PROGRAMMING/symforge` | `29eb9e1d73fb0626aebcf536b98355b2610efdb7` |
| tokio | `C:/AI_STUFF/temp/tokio` | `b010b5ddafb316e5d540de1736f5f7bfde42ec39` |
| magika | `C:/AI_STUFF/temp/magika` | `0a8cb9626bbf76c2194117d9830b23e9052a1548` |

## symforge (file-only)

- **Repo path:** `C:/AI_STUFF/PROGRAMMING/symforge`
- **Build time:** `1890 ms`
- **Walker stats:**
  - commits_scanned: `345`
  - commits_with_pairs: `344`
  - commits_skipped_large: `1`
  - unique_edges: `11074`
  - rows_written: `22148`

### Partner-count distribution per anchor (directed edges)

| partner count | anchors | share |
|---|---:|---:|
| 1 | 5 | 1.9% |
| 2–5 | 35 | 13.0% |
| 6–20 | 47 | 17.5% |
| 21–100 | 42 | 15.6% |
| >100 | 140 | 52.0% |

### Score distribution (all coupling rows)

| percentile | shared_commits | weighted_score |
|---|---:|---:|
| p50.0 | 1 | 0.0826 |
| p75.0 | 2 | 0.1808 |
| p90.0 | 2 | 0.2215 |
| p95.0 | 2 | 0.3553 |
| p99.0 | 5 | 0.9935 |
| p99.9 | 29 | 7.2893 |
| max | 167 | 41.5970 |

### Top 10 hotspot anchors (by partner count)

| anchor | partners | max score |
|---|---:|---:|
| `file:src/protocol/tools.rs` | 190 | 11.7270 |
| `file:src/live_index/query.rs` | 180 | 4.1626 |
| `file:src/protocol/format.rs` | 177 | 11.7270 |
| `file:src/protocol/edit.rs` | 173 | 7.2893 |
| `file:src/daemon.rs` | 170 | 3.4654 |
| `file:src/live_index/store.rs` | 170 | 2.7225 |
| `file:src/protocol/mod.rs` | 168 | 5.1099 |
| `file:src/live_index/search.rs` | 164 | 4.1324 |
| `file:src/cli/hook.rs` | 163 | 1.2199 |
| `file:src/protocol/resources.rs` | 161 | 2.8413 |

### Top 10 pairs (by weighted_score)

| anchor | partner | shared | score |
|---|---|---:|---:|
| `file:Cargo.lock` | `file:Cargo.toml` | 167 | 41.5970 |
| `file:Cargo.toml` | `file:Cargo.lock` | 167 | 41.5970 |
| `file:.github/.release-please-manifest.json` | `file:Cargo.toml` | 161 | 39.0422 |
| `file:npm/package.json` | `file:.github/.release-please-manifest.json` | 161 | 39.0422 |
| `file:Cargo.toml` | `file:.github/.release-please-manifest.json` | 161 | 39.0422 |
| `file:.github/.release-please-manifest.json` | `file:npm/package.json` | 161 | 39.0422 |
| `file:Cargo.toml` | `file:npm/package.json` | 161 | 39.0422 |
| `file:npm/package.json` | `file:Cargo.toml` | 161 | 39.0422 |
| `file:Cargo.lock` | `file:.github/.release-please-manifest.json` | 159 | 38.4519 |
| `file:.github/.release-please-manifest.json` | `file:CHANGELOG.md` | 159 | 38.4519 |

### Weak-anchor signal (candidates for `anchor_confidence_gate`)

- q1 (25th pct) score: `0.0826` — 13538 rows at or below
- q2 (median): `0.0826`
- q3 (75th pct): `0.1808`
- rows with `shared_commits = 1`: `15354` (69.3%) — candidate for "at least 2 co-changes to count" threshold


## symforge (file+symbol)

- **Repo path:** `C:/AI_STUFF/PROGRAMMING/symforge`
- **Build time:** `39411 ms`
- **Walker stats:**
  - commits_scanned: `415`
  - commits_with_pairs: `414`
  - commits_skipped_large: `1`
  - unique_edges: `298738`
  - rows_written: `597476`

### Partner-count distribution per anchor (directed edges)

| partner count | anchors | share |
|---|---:|---:|
| 1 | 5 | 0.2% |
| 2–5 | 81 | 2.9% |
| 6–20 | 346 | 12.3% |
| 21–100 | 1044 | 37.0% |
| >100 | 1343 | 47.6% |

### Score distribution (all coupling rows)

| percentile | shared_commits | weighted_score |
|---|---:|---:|
| p50.0 | 1 | 0.0856 |
| p75.0 | 2 | 0.1614 |
| p90.0 | 2 | 0.2439 |
| p95.0 | 3 | 0.3582 |
| p99.0 | 4 | 0.5366 |
| p99.9 | 6 | 0.9019 |
| max | 167 | 41.5970 |

### Top 10 hotspot anchors (by partner count)

| anchor | partners | max score |
|---|---:|---:|
| `symbol:src/protocol/tools.rs#tests#mod` | 1229 | 1.5979 |
| `symbol:src/protocol/tools.rs#impl SymForgeServer#impl` | 1195 | 1.0075 |
| `symbol:src/protocol/tools.rs#explore#fn` | 1111 | 1.5979 |
| `symbol:src/protocol/tools.rs#get_symbol_context#fn` | 1104 | 1.2221 |
| `symbol:src/protocol/tools.rs#search_text#fn` | 1077 | 1.1288 |
| `symbol:src/protocol/edit.rs#execute_batch_edit#fn` | 1065 | 1.4740 |
| `symbol:src/protocol/tools.rs#find_references#fn` | 1062 | 1.5164 |
| `symbol:src/protocol/tools.rs#search_files#fn` | 1032 | 1.2759 |
| `symbol:src/protocol/tools.rs#what_changed#fn` | 1002 | 0.7935 |
| `symbol:src/sidecar/handlers.rs#outline_text#fn` | 999 | 0.5816 |

### Top 10 pairs (by weighted_score)

| anchor | partner | shared | score |
|---|---|---:|---:|
| `file:Cargo.lock` | `file:Cargo.toml` | 167 | 41.5970 |
| `file:Cargo.toml` | `file:Cargo.lock` | 167 | 41.5970 |
| `file:.github/.release-please-manifest.json` | `file:npm/package.json` | 161 | 39.0422 |
| `file:Cargo.toml` | `file:npm/package.json` | 161 | 39.0422 |
| `file:npm/package.json` | `file:.github/.release-please-manifest.json` | 161 | 39.0422 |
| `file:npm/package.json` | `file:Cargo.toml` | 161 | 39.0422 |
| `file:.github/.release-please-manifest.json` | `file:Cargo.toml` | 161 | 39.0422 |
| `file:Cargo.toml` | `file:.github/.release-please-manifest.json` | 161 | 39.0422 |
| `file:Cargo.lock` | `file:CHANGELOG.md` | 159 | 38.4519 |
| `file:Cargo.toml` | `file:CHANGELOG.md` | 159 | 38.4519 |

### Weak-anchor signal (candidates for `anchor_confidence_gate`)

- q1 (25th pct) score: `0.0643` — 244408 rows at or below
- q2 (median): `0.0856`
- q3 (75th pct): `0.1614`
- rows with `shared_commits = 1`: `356350` (59.6%) — candidate for "at least 2 co-changes to count" threshold


## tokio (file-only)

- **Repo path:** `C:/AI_STUFF/temp/tokio`
- **Build time:** `1034 ms`
- **Walker stats:**
  - commits_scanned: `290`
  - commits_with_pairs: `290`
  - commits_skipped_large: `0`
  - unique_edges: `8723`
  - rows_written: `17446`

### Partner-count distribution per anchor (directed edges)

| partner count | anchors | share |
|---|---:|---:|
| 1 | 35 | 6.8% |
| 2–5 | 82 | 15.8% |
| 6–20 | 124 | 23.9% |
| 21–100 | 257 | 49.6% |
| >100 | 20 | 3.9% |

### Score distribution (all coupling rows)

| percentile | shared_commits | weighted_score |
|---|---:|---:|
| p50.0 | 1 | 0.0014 |
| p75.0 | 1 | 0.0044 |
| p90.0 | 1 | 0.0149 |
| p95.0 | 2 | 0.1474 |
| p99.0 | 3 | 0.2962 |
| p99.9 | 9 | 0.8489 |
| max | 43 | 2.3206 |

### Top 10 hotspot anchors (by partner count)

| anchor | partners | max score |
|---|---:|---:|
| `file:.github/workflows/ci.yml` | 246 | 1.1845 |
| `file:tokio/src/lib.rs` | 181 | 0.3133 |
| `file:tokio/src/runtime/builder.rs` | 177 | 0.6804 |
| `file:tokio/Cargo.toml` | 171 | 1.9916 |
| `file:tokio/src/runtime/handle.rs` | 171 | 0.1900 |
| `file:tokio/src/sync/broadcast.rs` | 167 | 0.0180 |
| `file:tokio/src/task/local.rs` | 158 | 0.2650 |
| `file:tokio/src/runtime/mod.rs` | 150 | 0.4560 |
| `file:tokio/src/sync/notify.rs` | 149 | 0.4132 |
| `file:tokio/src/runtime/scheduler/current_thread/mod.rs` | 146 | 0.2215 |

### Top 10 pairs (by weighted_score)

| anchor | partner | shared | score |
|---|---|---:|---:|
| `file:README.md` | `file:tokio/README.md` | 43 | 2.3206 |
| `file:tokio/README.md` | `file:README.md` | 43 | 2.3206 |
| `file:tokio/Cargo.toml` | `file:README.md` | 31 | 1.9916 |
| `file:tokio/README.md` | `file:tokio/Cargo.toml` | 31 | 1.9916 |
| `file:tokio/Cargo.toml` | `file:tokio/README.md` | 31 | 1.9916 |
| `file:README.md` | `file:tokio/Cargo.toml` | 31 | 1.9916 |
| `file:tokio/Cargo.toml` | `file:tokio/CHANGELOG.md` | 31 | 1.9888 |
| `file:tokio/CHANGELOG.md` | `file:tokio/Cargo.toml` | 31 | 1.9888 |
| `file:tokio/CHANGELOG.md` | `file:tokio/README.md` | 30 | 1.9887 |
| `file:README.md` | `file:tokio/CHANGELOG.md` | 30 | 1.9887 |

### Weak-anchor signal (candidates for `anchor_confidence_gate`)

- q1 (25th pct) score: `0.0001` — 4364 rows at or below
- q2 (median): `0.0014`
- q3 (75th pct): `0.0044`
- rows with `shared_commits = 1`: `16004` (91.7%) — candidate for "at least 2 co-changes to count" threshold


## tokio (file+symbol)

- **Repo path:** `C:/AI_STUFF/temp/tokio`
- **Build time:** `6903 ms`
- **Walker stats:**
  - commits_scanned: `327`
  - commits_with_pairs: `327`
  - commits_skipped_large: `0`
  - unique_edges: `63627`
  - rows_written: `127254`

### Partner-count distribution per anchor (directed edges)

| partner count | anchors | share |
|---|---:|---:|
| 1 | 85 | 3.4% |
| 2–5 | 300 | 11.8% |
| 6–20 | 682 | 26.9% |
| 21–100 | 1181 | 46.6% |
| >100 | 284 | 11.2% |

### Score distribution (all coupling rows)

| percentile | shared_commits | weighted_score |
|---|---:|---:|
| p50.0 | 1 | 0.0047 |
| p75.0 | 1 | 0.0047 |
| p90.0 | 1 | 0.0107 |
| p95.0 | 1 | 0.1474 |
| p99.0 | 2 | 0.1854 |
| p99.9 | 5 | 0.4443 |
| max | 43 | 2.3206 |

### Top 10 hotspot anchors (by partner count)

| anchor | partners | max score |
|---|---:|---:|
| `symbol:tokio/src/runtime/builder.rs#impl Builder#impl` | 394 | 0.3096 |
| `symbol:tokio/src/runtime/scheduler/multi_thread/handle.rs#im…` | 324 | 0.1470 |
| `symbol:tokio/src/runtime/builder.rs#build_current_thread_run…` | 306 | 0.3084 |
| `symbol:tokio/src/runtime/builder.rs#Builder#struct` | 290 | 0.3084 |
| `symbol:tokio/src/runtime/builder.rs#new#fn` | 290 | 0.3084 |
| `symbol:tokio/src/runtime/scheduler/multi_thread/worker.rs#cr…` | 290 | 0.3084 |
| `symbol:tokio/src/runtime/scheduler/multi_thread/handle.rs#Ha…` | 263 | 0.1351 |
| `symbol:tokio/src/runtime/scheduler/multi_thread/mod.rs#new#f…` | 263 | 0.1351 |
| `symbol:tokio/src/runtime/builder.rs#get_cfg#fn` | 253 | 0.0047 |
| `symbol:tokio/src/runtime/driver.rs#new#fn` | 253 | 0.0047 |

### Top 10 pairs (by weighted_score)

| anchor | partner | shared | score |
|---|---|---:|---:|
| `file:tokio/README.md` | `file:README.md` | 43 | 2.3206 |
| `file:README.md` | `file:tokio/README.md` | 43 | 2.3206 |
| `file:tokio/Cargo.toml` | `file:tokio/README.md` | 31 | 1.9916 |
| `file:tokio/Cargo.toml` | `file:README.md` | 31 | 1.9916 |
| `file:README.md` | `file:tokio/Cargo.toml` | 31 | 1.9916 |
| `file:tokio/README.md` | `file:tokio/Cargo.toml` | 31 | 1.9916 |
| `file:tokio/CHANGELOG.md` | `file:tokio/Cargo.toml` | 31 | 1.9888 |
| `file:tokio/Cargo.toml` | `file:tokio/CHANGELOG.md` | 31 | 1.9888 |
| `file:README.md` | `file:tokio/CHANGELOG.md` | 30 | 1.9887 |
| `file:tokio/CHANGELOG.md` | `file:README.md` | 30 | 1.9887 |

### Weak-anchor signal (candidates for `anchor_confidence_gate`)

- q1 (25th pct) score: `0.0014` — 34852 rows at or below
- q2 (median): `0.0047`
- q3 (75th pct): `0.0047`
- rows with `shared_commits = 1`: `123960` (97.4%) — candidate for "at least 2 co-changes to count" threshold


## magika (file-only)

- **Repo path:** `C:/AI_STUFF/temp/magika`
- **Build time:** `976 ms`
- **Walker stats:**
  - commits_scanned: `233`
  - commits_with_pairs: `233`
  - commits_skipped_large: `0`
  - unique_edges: `7056`
  - rows_written: `14112`

### Partner-count distribution per anchor (directed edges)

| partner count | anchors | share |
|---|---:|---:|
| 1 | 2 | 0.6% |
| 2–5 | 19 | 5.9% |
| 6–20 | 106 | 32.7% |
| 21–100 | 196 | 60.5% |
| >100 | 1 | 0.3% |

### Score distribution (all coupling rows)

| percentile | shared_commits | weighted_score |
|---|---:|---:|
| p50.0 | 1 | 0.0019 |
| p75.0 | 1 | 0.0019 |
| p90.0 | 2 | 0.0029 |
| p95.0 | 3 | 0.0072 |
| p99.0 | 6 | 0.1491 |
| p99.9 | 19 | 0.6532 |
| max | 24 | 1.4029 |

### Top 10 hotspot anchors (by partner count)

| anchor | partners | max score |
|---|---:|---:|
| `file:website-ng/src/content/docs/cli-and-bindings/overview.m…` | 104 | 0.1491 |
| `file:website-ng/src/content/docs/cli-and-bindings/js.md` | 99 | 0.1135 |
| `file:website-ng/src/content/docs/contributing/creating-new-b…` | 99 | 0.1135 |
| `file:website-ng/src/styles/global.css` | 99 | 0.1135 |
| `file:website-ng/src/content/docs/introduction/overview.md` | 97 | 0.0173 |
| `file:website-ng/README.md` | 96 | 0.0069 |
| `file:website-ng/src/content/docs/cli-and-bindings/python.md` | 96 | 0.0069 |
| `file:website-ng/src/content/docs/core-concepts/models-and-co…` | 96 | 0.0069 |
| `file:website-ng/package-lock.json` | 88 | 0.4463 |
| `file:website-ng/package.json` | 88 | 0.4463 |

### Top 10 pairs (by weighted_score)

| anchor | partner | shared | score |
|---|---|---:|---:|
| `file:python/uv.lock` | `file:python/pyproject.toml` | 17 | 1.4029 |
| `file:python/pyproject.toml` | `file:python/uv.lock` | 17 | 1.4029 |
| `file:python/CHANGELOG.md` | `file:python/pyproject.toml` | 12 | 1.1302 |
| `file:python/pyproject.toml` | `file:python/CHANGELOG.md` | 12 | 1.1302 |
| `file:rust/cli/Cargo.toml` | `file:rust/cli/Cargo.lock` | 24 | 0.8039 |
| `file:rust/cli/Cargo.lock` | `file:rust/cli/Cargo.toml` | 24 | 0.8039 |
| `file:rust/lib/Cargo.lock` | `file:rust/cli/Cargo.lock` | 20 | 0.7449 |
| `file:rust/cli/Cargo.lock` | `file:rust/lib/Cargo.lock` | 20 | 0.7449 |
| `file:python/CHANGELOG.md` | `file:python/uv.lock` | 9 | 0.7378 |
| `file:python/uv.lock` | `file:python/CHANGELOG.md` | 9 | 0.7378 |

### Weak-anchor signal (candidates for `anchor_confidence_gate`)

- q1 (25th pct) score: `0.0001` — 3554 rows at or below
- q2 (median): `0.0019`
- q3 (75th pct): `0.0019`
- rows with `shared_commits = 1`: `11664` (82.7%) — candidate for "at least 2 co-changes to count" threshold


## magika (file+symbol)

- **Repo path:** `C:/AI_STUFF/temp/magika`
- **Build time:** `3572 ms`
- **Walker stats:**
  - commits_scanned: `262`
  - commits_with_pairs: `262`
  - commits_skipped_large: `0`
  - unique_edges: `50568`
  - rows_written: `101136`

### Partner-count distribution per anchor (directed edges)

| partner count | anchors | share |
|---|---:|---:|
| 1 | 10 | 0.9% |
| 2–5 | 55 | 4.8% |
| 6–20 | 195 | 16.9% |
| 21–100 | 517 | 44.7% |
| >100 | 380 | 32.8% |

### Score distribution (all coupling rows)

| percentile | shared_commits | weighted_score |
|---|---:|---:|
| p50.0 | 1 | 0.0000 |
| p75.0 | 1 | 0.0001 |
| p90.0 | 2 | 0.0019 |
| p95.0 | 2 | 0.0024 |
| p99.0 | 3 | 0.0110 |
| p99.9 | 7 | 0.2551 |
| max | 24 | 1.4029 |

### Top 10 hotspot anchors (by partner count)

| anchor | partners | max score |
|---|---:|---:|
| `symbol:js/src/model.ts#constructor#method` | 377 | 0.0001 |
| `symbol:js/src/model.ts#predict#method` | 375 | 0.0002 |
| `symbol:js/magika.ts#_identifyFromBytes#method` | 338 | 0.0003 |
| `symbol:js/magika.ts#Magika#class` | 337 | 0.0003 |
| `symbol:js/magika.ts#constructor#method` | 337 | 0.0002 |
| `symbol:js/magika.ts#_lstrip#method` | 335 | 0.0002 |
| `symbol:js/magika.ts#_rstrip#method` | 335 | 0.0002 |
| `symbol:js/magika.ts#identifyBytes#method` | 335 | 0.0001 |
| `symbol:js/magika.ts#begBytes#const` | 329 | 0.0002 |
| `symbol:js/magika.ts#begChunk#const` | 329 | 0.0002 |

### Top 10 pairs (by weighted_score)

| anchor | partner | shared | score |
|---|---|---:|---:|
| `file:python/pyproject.toml` | `file:python/uv.lock` | 17 | 1.4029 |
| `file:python/uv.lock` | `file:python/pyproject.toml` | 17 | 1.4029 |
| `file:python/CHANGELOG.md` | `file:python/pyproject.toml` | 12 | 1.1302 |
| `file:python/pyproject.toml` | `file:python/CHANGELOG.md` | 12 | 1.1302 |
| `file:rust/cli/Cargo.lock` | `file:rust/cli/Cargo.toml` | 24 | 0.8039 |
| `file:rust/cli/Cargo.toml` | `file:rust/cli/Cargo.lock` | 24 | 0.8039 |
| `file:rust/lib/Cargo.lock` | `file:rust/cli/Cargo.lock` | 20 | 0.7449 |
| `file:rust/cli/Cargo.lock` | `file:rust/lib/Cargo.lock` | 20 | 0.7449 |
| `file:python/CHANGELOG.md` | `file:python/uv.lock` | 9 | 0.7378 |
| `file:python/uv.lock` | `file:python/CHANGELOG.md` | 9 | 0.7378 |

### Weak-anchor signal (candidates for `anchor_confidence_gate`)

- q1 (25th pct) score: `0.0000` — 38582 rows at or below
- q2 (median): `0.0000`
- q3 (75th pct): `0.0001`
- rows with `shared_commits = 1`: `85522` (84.6%) — candidate for "at least 2 co-changes to count" threshold


test calibrate_against_real_repos ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 55.23s

