Files
Genarrative/packages/shared/test-fixtures/sound-effect-prompt-canonicalization.json
lhk229 5c316fc680 统一SFX提示词 trim 规范化
将 SFX Prompt 首尾规范化改为 ECMAScript String.trim 语义并同步 Rust 等值实现

更新共享边界 fixture、前后端与 Worker 回归测试

同步权威设计、实施计划、决策日志和 External OpenAPI 描述
2026-08-07 07:27:52 +00:00

83 lines
1.8 KiB
JSON

[
{
"name": "plain-ascii-boundary-space",
"input": " thunder crack ",
"prompt": "thunder crack",
"charCount": 13
},
{
"name": "ecmascript-trim-keeps-u0085-boundary",
"input": "\u0085\u2003金币叮当\u00a0\r\n",
"prompt": "\u0085\u2003金币叮当",
"charCount": 6
},
{
"name": "internal-white-space-and-u0085-preserved",
"input": "\u2003A \n B\u0085",
"prompt": "A \n B\u0085",
"charCount": 6
},
{
"name": "bom-is-trimmed-at-boundaries-and-preserved-internally",
"input": "\ufeff\u200b音\ufeff效\ufeff",
"prompt": "\u200b音\ufeff效",
"charCount": 4
},
{
"name": "combining-mark-preserved",
"input": "\u2003e\u0301\u00a0",
"prompt": "e\u0301",
"charCount": 2
},
{
"name": "zwj-emoji-counts-code-points",
"input": "\n👩‍💻\r",
"prompt": "👩‍💻",
"charCount": 3
},
{
"name": "ecmascript-trim-only",
"input": "\u0009\u000a\u000b\u000c\u000d\u0020\u00a0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff",
"prompt": "",
"charCount": 0
},
{
"name": "empty",
"input": "",
"prompt": "",
"charCount": 0
},
{
"name": "one-code-point-boundary",
"input": "声",
"prompt": "声",
"charCount": 1,
"validation": "valid"
},
{
"name": "u0085-is-a-valid-code-point",
"input": "\u0085",
"prompt": "\u0085",
"charCount": 1,
"validation": "valid"
},
{
"name": "exactly-2048-code-points",
"prefix": "\ufeff",
"input": "声",
"suffix": "\u2003",
"prompt": "声",
"repeat": 2048,
"charCount": 2048,
"validation": "valid"
},
{
"name": "over-limit-2049-code-points",
"input": "声",
"prompt": "声",
"repeat": 2049,
"charCount": 2049,
"validation": "too-long"
}
]