feat: direct-execute main agent landing quick actions
Some checks failed
StoryForge CI / Baseline checks (push) Has been cancelled
StoryForge CI / Backend tests (push) Has been cancelled
StoryForge CI / Web tests (push) Has been cancelled

This commit is contained in:
kris
2026-04-05 07:15:28 +08:00
parent f73d5cd406
commit de36ce7fe9
3 changed files with 82 additions and 8 deletions

View File

@@ -983,6 +983,21 @@ test("main agent route actions keep landing context and destination screens rend
assert.match(production, /renderMainAgentLandingNotice\("production"\)/);
});
test("main agent landing quick actions prefer direct execute flows where executors already exist", () => {
const landingActions = extractBetween(APP, "function renderMainAgentLandingQuickActions(screenKey)", "function renderMainAgentLandingNotice(screenKey)");
assert.match(landingActions, /direct-analyze-top-videos/);
assert.match(landingActions, /direct-search-similar/);
assert.match(landingActions, /direct-create-assistant/);
assert.match(landingActions, /direct-review-draft/);
assert.match(landingActions, /direct-create-ai-video/);
assert.match(landingActions, /direct-create-real-cut/);
assert.match(APP, /if \(name === "direct-create-assistant"\)/);
assert.match(APP, /if \(name === "direct-review-draft"\)/);
assert.match(APP, /if \(name === "direct-create-ai-video"\)/);
assert.match(APP, /if \(name === "direct-create-real-cut"\)/);
assert.match(APP, /async function runDirectWorkbenchAction\(executorKey, options = \{\}\)/);
});
test("main agent landing notices expose a compact mobile follow-up strip", () => {
const landing = extractBetween(APP, "function renderMainAgentLandingNotice(screenKey)", "function renderEmptyState(title, description)");
assert.match(landing, /mobile-only compact-summary-row/);