Commit 5dd18c3
RealDiligent
fix(visual): filter a vision finding's model-authored path through toPublicSafe
VisualVisionFinding's JSDoc says both path and body are already public-safe, but
parseVisualVisionResponse only ran body through toPublicSafe — path got a bare .trim().
path is model-authored free text off the vision response JSON, interpolated verbatim
into a public finding title ("Possible visual regression: <path>"), and visual-followup's
renderer trusts the JSDoc and does not re-scrub. So injected markdown/@mentions in a
model path reached a public comment live.
Run path through toPublicSafe exactly as body is (drop the entry when it returns null),
and bound it with a new MAX_VISUAL_PATH_CHARS constant so one finding's title cannot
flood a comment. An ordinary route path survives toPublicSafe byte-identically, so
findVisualEvidence's route.path === path lookup still matches (pinned by a test). body's
filtering, MAX_VISUAL_FINDINGS, the category parse, and the followup re-scrub are unchanged.
Closes #100621 parent a7673e2 commit 5dd18c3
3 files changed
Lines changed: 43 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
134 | 134 | | |
135 | 135 | | |
136 | 136 | | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
137 | 141 | | |
138 | 142 | | |
139 | 143 | | |
| |||
217 | 221 | | |
218 | 222 | | |
219 | 223 | | |
220 | | - | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
221 | 228 | | |
222 | 229 | | |
223 | | - | |
| 230 | + | |
| 231 | + | |
224 | 232 | | |
225 | 233 | | |
226 | 234 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
200 | 200 | | |
201 | 201 | | |
202 | 202 | | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
203 | 225 | | |
204 | 226 | | |
205 | 227 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
8 | | - | |
| 8 | + | |
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
| |||
135 | 135 | | |
136 | 136 | | |
137 | 137 | | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
138 | 148 | | |
0 commit comments