补齐音频响应脱敏回归测试
Project CI / Repository checks (pull_request) Successful in 1m9s
Project CI / Frontend tests (pull_request) Successful in 2m50s
Project CI / Backend tests (pull_request) Successful in 3m52s
Project CI / Native shell tests (pull_request) Successful in 13m15s

更新 Agent 音频结果紧凑化断言

同步画板音乐成功响应契约文档
This commit is contained in:
2026-08-08 12:41:05 +00:00
parent dea6576f89
commit 2d82ac55e4
2 changed files with 5 additions and 4 deletions
@@ -441,7 +441,6 @@ POST /api/editor/audios/background-music/prompts/simplifications
prompt: string,
actualPrompt?: string | null,
model: string,
provider: string,
taskId: string,
priceMudPoints: number,
audioKind: "sound-effect" | "background-music",
@@ -450,6 +449,7 @@ POST /api/editor/audios/background-music/prompts/simplifications
}
```
- 成功响应不携带 `provider`;该信息只保留在服务端持久化、任务追踪、日志和后台排障中。
- BGM 成功响应必须同时填充 `prompt``actualPrompt`,两者都与本次 canonical Prompt 逐 code point 等值,不得携带助手模板、内部引导或隐藏前后缀;共享响应类型为兼容 SFX 与历史数据仍可保留 `actualPrompt` 可选。
- SFX V2 成功响应的 `prompt` 必须等于 canonical `userPrompt``actualPrompt` 必须等于验收通过且实际提交给 ElevenLabs 的英文 Prompt`durationSeconds` 必须来自 MP3 探测,`loop` 必须等于本次冻结并发送的布尔值。
- 默认 queue 模式的首次生成响应继续只携带现有 `queueState`;上面的完整音频响应是 inline 或 worker 内部完成边界,不要求给 queue 首次响应或普通 metadata-only job result 新增 Prompt 字段。
@@ -2037,9 +2037,10 @@ mod tests {
let payload: Value =
serde_json::from_str(&editor_generation_result_payload_json(&job, &response))
.expect("worker compact payload should serialize");
assert_eq!(
payload["editor-agent-tool-call-result"]["provider"],
json!(provider)
assert!(
payload["editor-agent-tool-call-result"]
.get("provider")
.is_none()
);
let mut message: EditorAgentMessage = serde_json::from_value(json!({
"id": 1,