From 04bb023c2e0633c215b4773fbc82cf0a5e12d85d Mon Sep 17 00:00:00 2001 From: yuetsh <517252939@qq.com> Date: Mon, 9 Mar 2026 10:51:17 +0800 Subject: [PATCH] feat: auto-submit on AI code generation in challenge Co-Authored-By: Claude Sonnet 4.6 --- src/pages/ChallengeHome.vue | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/pages/ChallengeHome.vue b/src/pages/ChallengeHome.vue index 9b87cdc..8fcfe25 100644 --- a/src/pages/ChallengeHome.vue +++ b/src/pages/ChallengeHome.vue @@ -60,7 +60,7 @@ import Preview from "../components/Preview.vue" import { Challenge, Submission } from "../api" import { html, css, js } from "../store/editors" import { taskId } from "../store/task" -import { connectPrompt, disconnectPrompt, conversationId, streaming } from "../store/prompt" +import { connectPrompt, disconnectPrompt, conversationId, streaming, onCodeComplete } from "../store/prompt" const route = useRoute() const router = useRouter() @@ -84,6 +84,19 @@ async function loadChallenge() { challengeTitle.value = `#${data.display} ${data.title}` challengeContent.value = await marked.parse(data.content, { async: true }) connectPrompt(data.task_ptr) + onCodeComplete = async () => { + if (!conversationId.value) return + try { + await Submission.create(taskId.value, { + html: html.value, + css: css.value, + js: js.value, + conversationId: conversationId.value, + }) + } catch { + // 静默失败,不打扰用户 + } + } } function back() {