copy: drop em-dashes from user-facing strings
Mechanical AI-tell sweep across UI copy, hover text, log lines, and error
messages: em-dash replaced with a colon, semicolon, or split sentence per
context. No behavior change.
13 files changed,
+22 insertions,
-23 deletions
| 286 |
286 |
|
"Trial expired".to_string()
|
| 287 |
287 |
|
}
|
| 288 |
288 |
|
}
|
| 289 |
|
- |
None => "Start free trial — 30 days, no card".to_string(),
|
|
289 |
+ |
None => "Start free trial: 30 days, no card".to_string(),
|
| 290 |
290 |
|
}
|
| 291 |
291 |
|
}
|
| 292 |
292 |
|
|
| 375 |
375 |
|
fn label_no_trial_offers_start() {
|
| 376 |
376 |
|
assert_eq!(
|
| 377 |
377 |
|
trial_button_label(None),
|
| 378 |
|
- |
"Start free trial — 30 days, no card"
|
|
378 |
+ |
"Start free trial: 30 days, no card"
|
| 379 |
379 |
|
);
|
| 380 |
380 |
|
}
|
| 381 |
381 |
|
|
| 228 |
228 |
|
let test_suite_dir = samples_dir.join("test-suite");
|
| 229 |
229 |
|
|
| 230 |
230 |
|
println!("╔══════════════════════════════════════════════════════════════╗");
|
| 231 |
|
- |
println!("║ Audiofiles Analysis Pipeline — Benchmark Report ║");
|
|
231 |
+ |
println!("║ Audiofiles Analysis Pipeline: Benchmark Report ║");
|
| 232 |
232 |
|
println!("╚══════════════════════════════════════════════════════════════╝");
|
| 233 |
233 |
|
println!();
|
| 234 |
234 |
|
|
| 56 |
56 |
|
// User plugin overrides another user plugin, warn about ambiguity
|
| 57 |
57 |
|
tracing::warn!(
|
| 58 |
58 |
|
device = %plugin.profile.name,
|
| 59 |
|
- |
"Multiple user plugins with the same device name — last one loaded wins"
|
|
59 |
+ |
"Multiple user plugins with the same device name; last one loaded wins"
|
| 60 |
60 |
|
);
|
| 61 |
61 |
|
}
|
| 62 |
62 |
|
}
|
| 95 |
95 |
|
// Parse GET /callback?code=X&state=Y or GET /?code=X&state=Y
|
| 96 |
96 |
|
if let Some((code, cb_state)) = parse_oauth_callback(&request) {
|
| 97 |
97 |
|
if cb_state != thread_expected_state {
|
| 98 |
|
- |
tracing::warn!("OAuth callback state mismatch — rejecting");
|
|
98 |
+ |
tracing::warn!("OAuth callback state mismatch: rejecting");
|
| 99 |
99 |
|
let body = "<html><body><h1>Authentication failed</h1><p>CSRF state mismatch. Please try again.</p></body></html>";
|
| 100 |
100 |
|
let response = format!(
|
| 101 |
101 |
|
"HTTP/1.1 403 Forbidden\r\nContent-Type: text/html\r\nContent-Length: {}\r\nAccess-Control-Allow-Origin: *\r\nConnection: close\r\n\r\n{}",
|