SAM3 refine guard: off | on | on + guard | human

332 frozen holdout (test-holdout-ids-canonical.json, frozen 2026-08-25), v29 finder, unified chain, 2026-09-29. Lines-perfect: SAM3 off 262 · SAM3 on 187 · SAM3 on + guard 261. Guard = keep a SAM3 line only if it moves the finder line by at most 3% of the image diagonal. "err" = mean line distance from human (% diag; miss/extra = 5).

Guard keeps SAM3 clean-ups (prior gallery BETTER ids) (31)

Photos Alex saw improve with SAM3; err off vs guard.

0f6e6446-8fb8-455d-bfbe-de26f09eefd2 · err off 1.52 · on 1.38 · guard 1.38
0f6e6446-8fb8-455d-bfbe-de26f09eefd2
301a8bbf-f797-47c6-ae7c-ea73ac1abd7f · err off 2.04 · on 1.83 · guard 1.83
301a8bbf-f797-47c6-ae7c-ea73ac1abd7f
3a951997-0e8f-4988-a03b-629c32423f0d · err off 0.35 · on 0.2 · guard 0.2
3a951997-0e8f-4988-a03b-629c32423f0d
45ac5c40-de3c-48a7-a2e4-4d2e35ffa295 · err off 0.33 · on 0.12 · guard 0.12
45ac5c40-de3c-48a7-a2e4-4d2e35ffa295
522f3e04-0242-482d-965d-dcd3aa7e02d7 · err off 0.43 · on 0.08 · guard 0.08
522f3e04-0242-482d-965d-dcd3aa7e02d7
53694a34-355d-4a5b-a840-33e17d3fe8cf · err off 0.31 · on 0.11 · guard 0.11
53694a34-355d-4a5b-a840-33e17d3fe8cf
56e036ce-5c31-4aa6-8140-9c255f0e1060 · err off 0.3 · on 0.16 · guard 0.16
56e036ce-5c31-4aa6-8140-9c255f0e1060
61810429-f4cb-4bb2-b21e-8bfe08860d1b · err off 0.46 · on 0.22 · guard 0.22
61810429-f4cb-4bb2-b21e-8bfe08860d1b
69957601443405551b9fa83f · err off 0.24 · on 0.18 · guard 0.18
69957601443405551b9fa83f
699715b67e37b6370385b8a3 · err off 1.06 · on 0.85 · guard 0.71
699715b67e37b6370385b8a3
69bac4ee630c918d087bf580 · err off 0.39 · on 2.38 · guard 0.28
69bac4ee630c918d087bf580
69c44d5c8c718d5d543a2010 · err off 0.22 · on 1.84 · guard 0.12
69c44d5c8c718d5d543a2010
69e6c64b5e24eefa6fe383d3 · err off 0.65 · on 0.22 · guard 0.63
69e6c64b5e24eefa6fe383d3
69e9db7d500996e6f1b74c95 · err off 0.39 · on 0.24 · guard 0.24
69e9db7d500996e6f1b74c95
69f09238270a835330087b8c · err off 10.0 · on 8.52 · guard 10.0
69f09238270a835330087b8c
6a041bd3065edc0805862206 · err off 5.0 · on 5.0 · guard 5.0
6a041bd3065edc0805862206
6a04bedf065edc0805862212 · err off 0.71 · on 0.86 · guard 0.86
6a04bedf065edc0805862212
6a0b0cd2f1700585b2a2ea61 · err off 1.9 · on 1.9 · guard 1.9
6a0b0cd2f1700585b2a2ea61
6a0c0839707878e84c12fcbc · err off 0.37 · on 0.18 · guard 0.18
6a0c0839707878e84c12fcbc
6a2839a8814eb7b517af9a21 · err off 0.4 · on 0.32 · guard 0.32
6a2839a8814eb7b517af9a21
6a3a90bc1f2499a7cd5f8ab9 · err off 0.5 · on 2.25 · guard 0.52
6a3a90bc1f2499a7cd5f8ab9
6a4e9ec4c92b93d3597eea36 · err off 0.36 · on 0.22 · guard 0.22
6a4e9ec4c92b93d3597eea36
6cb1b894-a716-4a8b-b43d-3eec1868df7e · err off 0.47 · on 0.34 · guard 0.34
6cb1b894-a716-4a8b-b43d-3eec1868df7e
6e03a539-4d62-4013-9696-8c870c37ee82 · err off 0.29 · on 0.32 · guard 0.32
6e03a539-4d62-4013-9696-8c870c37ee82
903b76d3-792f-4f39-ae12-83c1058606db · err off 0.26 · on 0.17 · guard 0.17
903b76d3-792f-4f39-ae12-83c1058606db
9a9bf03c-3ca7-4657-95df-27854f96ca1e · err off 0.29 · on 0.09 · guard 0.09
9a9bf03c-3ca7-4657-95df-27854f96ca1e
a9b92597-14ce-45ab-9251-f7d5cb6f8421 · err off 0.31 · on 0.16 · guard 0.16
a9b92597-14ce-45ab-9251-f7d5cb6f8421
c721b1b7-5d73-4a04-b496-c6a6c9025c4e · err off 0.44 · on 0.3 · guard 0.3
c721b1b7-5d73-4a04-b496-c6a6c9025c4e
e27c97c2-2dfd-4ef3-be71-3be10a9a19ec · err off 0.44 · on 0.3 · guard 0.3
e27c97c2-2dfd-4ef3-be71-3be10a9a19ec
f1753171-8e94-4ad0-9d43-baeabaa8aa29 · err off 0.32 · on 0.19 · guard 0.19
f1753171-8e94-4ad0-9d43-baeabaa8aa29
f8a02b2a-6548-474d-9515-e64a66f9dc1d · err off 3.43 · on 0.12 · guard 3.42
f8a02b2a-6548-474d-9515-e64a66f9dc1d

Guard fixed what SAM3 broke (on not perfect, guard perfect) (40)

0ac738e0-20e8-490f-8c1c-568387bed433 · on->guard gained
0ac738e0-20e8-490f-8c1c-568387bed433
1153ea94-b235-4d64-a13c-5833d6dcedc7 · on->guard gained
1153ea94-b235-4d64-a13c-5833d6dcedc7
1a2cdec6-9fc0-4483-9380-67cfa8462c7f · on->guard gained
1a2cdec6-9fc0-4483-9380-67cfa8462c7f
29d1cbf5-cb92-4419-bd71-18f55c107883 · on->guard gained
29d1cbf5-cb92-4419-bd71-18f55c107883
2d4768fe-d369-4f93-8b4d-418d8ca262eb · on->guard gained
2d4768fe-d369-4f93-8b4d-418d8ca262eb
2fc51b49-44ea-48a8-b85e-d326e77f2f15 · on->guard gained
2fc51b49-44ea-48a8-b85e-d326e77f2f15
44e0c409-2ffd-4535-98c6-697beecb292b · on->guard gained
44e0c409-2ffd-4535-98c6-697beecb292b
4a8f14d5-3584-485a-aa07-c643343a8beb · on->guard gained
4a8f14d5-3584-485a-aa07-c643343a8beb
59448c98-a593-415c-b14a-194e16ba9867 · on->guard gained
59448c98-a593-415c-b14a-194e16ba9867
68d28725ad361b3bb79ce87f · on->guard gained
68d28725ad361b3bb79ce87f
69008e349264e691fd1120da · on->guard gained
69008e349264e691fd1120da
69028174ad76bbe1dff9bb72 · on->guard gained
69028174ad76bbe1dff9bb72
691217d9e05a8133399d027e · on->guard gained
691217d9e05a8133399d027e
6914d3ff106b899d3b58b153 · on->guard gained
6914d3ff106b899d3b58b153
69935b1fdf1675b371e9c291 · on->guard gained
69935b1fdf1675b371e9c291
6993969edb7956f74534f476 · on->guard gained
6993969edb7956f74534f476
6994f87966293f7fd25a5147 · on->guard gained
6994f87966293f7fd25a5147
699649075940ef60b9951537 · on->guard gained
699649075940ef60b9951537
6999eeea7e37b6370385b8cb · on->guard gained
6999eeea7e37b6370385b8cb
69a20e5040043e516bbf86eb · on->guard gained
69a20e5040043e516bbf86eb
69a6de5e8d0a3e30f5ad0884 · on->guard gained
69a6de5e8d0a3e30f5ad0884
69afc9c7ab578cafd5995ed1 · on->guard gained
69afc9c7ab578cafd5995ed1
69b0324cab578cafd5995ee4 · on->guard gained
69b0324cab578cafd5995ee4
69bac4ee630c918d087bf580 · on->guard gained
69bac4ee630c918d087bf580
69bbd2cfc73b02df6f09e863 · on->guard gained
69bbd2cfc73b02df6f09e863
69bc6709a43e8f768f2b15b0 · on->guard gained
69bc6709a43e8f768f2b15b0
69c44d5c8c718d5d543a2010 · on->guard gained
69c44d5c8c718d5d543a2010
69cd6833ff1309d410514961 · on->guard gained
69cd6833ff1309d410514961
69ce4d660079da88e9ac9cb1 · on->guard gained
69ce4d660079da88e9ac9cb1
69cfbfe32b1792f6c6e98621 · on->guard gained
69cfbfe32b1792f6c6e98621
69d95bd7d52b6bc2d8090bcf · on->guard gained
69d95bd7d52b6bc2d8090bcf
69e22c1513569618c9ace5ce · on->guard gained
69e22c1513569618c9ace5ce
69e32023f82b375040537ab1 · on->guard gained
69e32023f82b375040537ab1
69e79f87c95a901d97c33267 · on->guard gained
69e79f87c95a901d97c33267
69e8891cb5165b7c70a07056 · on->guard gained
69e8891cb5165b7c70a07056
69eaeb47755c1b22c56f805b · on->guard gained
69eaeb47755c1b22c56f805b
69fb43f41a52e27ff879271b · on->guard gained
69fb43f41a52e27ff879271b
69fb469b814ff18a4dc8452a · on->guard gained
69fb469b814ff18a4dc8452a
69fbb0408c5ea70616cc22df · on->guard gained
69fbb0408c5ea70616cc22df
69fbcd82f3170197ba0edb1d · on->guard gained
69fbcd82f3170197ba0edb1d

Guard lost vs SAM3 on / vs off (2)

f8a02b2a-6548-474d-9515-e64a66f9dc1d · on->guard lost
f8a02b2a-6548-474d-9515-e64a66f9dc1d
788356aa-7d0d-4523-a062-b6727b213788 · off->guard lost
788356aa-7d0d-4523-a062-b6727b213788

Rules-engine misses: served hairpin/kink >30° (off or guard column) (28)

maxTurnDeg / production geometryViolationReasons per stripe

1a2cdec6-9fc0-4483-9380-67cfa8462c7f · s0 170.4° hasHairpin,hasSharpLocalKink,excessReverseTurn,nonMonotonicProgress
1a2cdec6-9fc0-4483-9380-67cfa8462c7f
2d4768fe-d369-4f93-8b4d-418d8ca262eb · s0 74.1° hasHairpin,hasSharpLocalKink,excessReverseTurn,nonMonotonicProgress
2d4768fe-d369-4f93-8b4d-418d8ca262eb
3797a0a1-f76a-435b-8e82-5a31dce962e9 · s0 175.7° hasHairpin,nonMonotonicProgress
3797a0a1-f76a-435b-8e82-5a31dce962e9
3a57b31f-9804-4d14-9fc9-a40b945b9b71 · s1 149.3° hasHairpin,hasSharpLocalKink,nonMonotonicProgress
3a57b31f-9804-4d14-9fc9-a40b945b9b71
3a951997-0e8f-4988-a03b-629c32423f0d · s0 179.3° hasHairpin
3a951997-0e8f-4988-a03b-629c32423f0d
44e0c409-2ffd-4535-98c6-697beecb292b · s0 20.2° excessReverseTurn
44e0c409-2ffd-4535-98c6-697beecb292b
5e2a465c-9aaf-4d04-9ef0-2c830450d263 · s0 177.8° hasHairpin,hasSharpLocalKink,excessReverseTurn,nonMonotonicProgress
5e2a465c-9aaf-4d04-9ef0-2c830450d263
5f0ae07e-73f3-47a4-86ec-a72d9ce1bfe1 · s0 177.2° hasHairpin,hasSharpLocalKink,nonMonotonicProgress
5f0ae07e-73f3-47a4-86ec-a72d9ce1bfe1
61632de3-8dc9-403b-a2e5-d9ec128769c3 · s0 178° hasHairpin,excessReverseTurn,nonMonotonicProgress
61632de3-8dc9-403b-a2e5-d9ec128769c3
658ba7e5-61b1-47c1-a292-d130b6469e52 · s0 32.2°
658ba7e5-61b1-47c1-a292-d130b6469e52
699715b67e37b6370385b8a3 · s0 178.8° hasHairpin,hasSharpLocalKink,nonMonotonicProgress
699715b67e37b6370385b8a3
69fb43f41a52e27ff879271b · s0 179.5° hasHairpin,hasSharpLocalKink,excessReverseTurn,nonMonotonicProgress
69fb43f41a52e27ff879271b
69fc867c423270442082c665 · s0 178.5° hasHairpin,nonMonotonicProgress
69fc867c423270442082c665
6a04bedf065edc0805862212 · s0 161.7° hasHairpin,hasSharpLocalKink,nonMonotonicProgress
6a04bedf065edc0805862212
6a0c4f07482a96f4c6a53544 · s1 43° hasSharpLocalKink,excessReverseTurn
6a0c4f07482a96f4c6a53544
6a0d90806a75200cf346f67b · s0 179.4° hasHairpin,hasSharpLocalKink,nonMonotonicProgress
6a0d90806a75200cf346f67b
6a0d9a07455d55d696170a40 · s0 178° hasHairpin,hasSharpLocalKink,nonMonotonicProgress
6a0d9a07455d55d696170a40
6a414d8fc425fdfed0e5f5a1 · s1 31°
6a414d8fc425fdfed0e5f5a1
6ca1ca46-85eb-4cde-881d-7813579f26e2 · s2 31.2°
6ca1ca46-85eb-4cde-881d-7813579f26e2
7f3e673a-976c-4e5a-90e9-ff3bcc23dbc9 · s2 164° hasHairpin,hasSharpLocalKink,nonMonotonicProgress
7f3e673a-976c-4e5a-90e9-ff3bcc23dbc9
85e3e22a-aa1f-477f-a7e9-5b42240490d3 · s1 30.6°
85e3e22a-aa1f-477f-a7e9-5b42240490d3
9ad0a1f4-ee77-40f9-a507-25c29984c824 · s0 178.1° hasHairpin,nonMonotonicProgress; s1 176.1° hasHairpin,hasSharpLocalKink,excessReverseTurn,nonMonotonicProgress
9ad0a1f4-ee77-40f9-a507-25c29984c824
b89aa759-62ff-4fd0-85fb-9483fa7651e0 · s0 179.7° hasHairpin,nonMonotonicProgress; s1 176.9° hasHairpin
b89aa759-62ff-4fd0-85fb-9483fa7651e0
bbd5d738-666f-4665-a7ec-25f78f1c4326 · s0 26.5° excessReverseTurn
bbd5d738-666f-4665-a7ec-25f78f1c4326
c28257a4-0807-49c5-88dd-66800bfe00b9 · s2 171.9° hasHairpin
c28257a4-0807-49c5-88dd-66800bfe00b9
c7dfbc8d-82de-4a9a-8ebf-12e0501be4d7 · s2 156° hasHairpin,nonMonotonicProgress
c7dfbc8d-82de-4a9a-8ebf-12e0501be4d7
f8a02b2a-6548-474d-9515-e64a66f9dc1d · s2 179° hasHairpin,hasSharpLocalKink,nonMonotonicProgress
f8a02b2a-6548-474d-9515-e64a66f9dc1d
fd203e72-4c9f-417d-8920-33247905e968 · s0 177.9° hasHairpin,excessReverseTurn,nonMonotonicProgress
fd203e72-4c9f-417d-8920-33247905e968