You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -626,6 +629,153 @@ export function devMockApi(): Plugin {
626
629
627
630
if(req.url==='/api/plan'){
628
631
res.setHeader('Content-Type','application/json');
632
+
if(USE_GOAL_SETUP_DEMO){
633
+
res.end(JSON.stringify({
634
+
plan: '',
635
+
origin: 'claude-code',
636
+
mode: 'goal-setup',
637
+
sharingEnabled: false,
638
+
goalSetup: GOAL_SETUP_DEMO==="facts" ? {
639
+
stage: "facts",
640
+
title: "Interactive goal setup facts",
641
+
goalSlug: "interactive-goal-setup-ui",
642
+
facts: [
643
+
{
644
+
id: "skill-batch",
645
+
text: "The setup-goal skill should package all interview questions into one Plannotator UI session.",
646
+
accepted: false,
647
+
removed: false,
648
+
recommendedAutomatedVerification: true,
649
+
automatedVerification: true,
650
+
},
651
+
{
652
+
id: "facts-verify",
653
+
text: "Each fact can be accepted, edited, removed, commented on, and marked for automated verification.",
654
+
accepted: false,
655
+
removed: false,
656
+
recommendedAutomatedVerification: true,
657
+
automatedVerification: true,
658
+
},
659
+
{
660
+
id: "header-submit",
661
+
text: "Goal setup submission should use the Plannotator app header action area instead of local form buttons.",
662
+
accepted: false,
663
+
removed: false,
664
+
recommendedAutomatedVerification: false,
665
+
automatedVerification: false,
666
+
},
667
+
{
668
+
id: "question-modes",
669
+
text: "The interview UI should cover text answers, single-select choices, multi-select choices, and custom option entry.",
670
+
accepted: false,
671
+
removed: false,
672
+
recommendedAutomatedVerification: true,
673
+
automatedVerification: true,
674
+
},
675
+
{
676
+
id: "previous",
677
+
text: "Previously accepted facts remain visible in the facts review with their accepted state preserved.",
678
+
accepted: true,
679
+
removed: false,
680
+
recommendedAutomatedVerification: false,
681
+
automatedVerification: false,
682
+
},
683
+
{
684
+
id: "bulk-accept",
685
+
text: "The facts UI provides a single action to accept every visible fact while keeping the review open for final edits.",
686
+
accepted: false,
687
+
removed: false,
688
+
recommendedAutomatedVerification: true,
689
+
automatedVerification: true,
690
+
},
691
+
{
692
+
id: "copy-export",
693
+
text: "The interview and facts UIs can copy the current state as raw JSON or markdown for provenance and debugging.",
694
+
accepted: false,
695
+
removed: false,
696
+
recommendedAutomatedVerification: false,
697
+
automatedVerification: false,
698
+
},
699
+
],
700
+
} : {
701
+
stage: "interview",
702
+
title: "Interactive goal setup interview",
703
+
goalSlug: "interactive-goal-setup-ui",
704
+
questions: [
705
+
{
706
+
id: "objective",
707
+
prompt: "What is the primary outcome of this goal?",
708
+
description: "One sentence that captures what 'done' looks like.",
709
+
answerMode: "text",
710
+
recommendedAnswer: "A bundled goal setup UI where agents launch one browser session for interview Q&A and a second for facts acceptance, replacing multi-turn chat prompting.",
711
+
},
712
+
{
713
+
id: "audience",
714
+
prompt: "Which inferred audience assumption should change?",
715
+
description: "The agent should not need basic confirmation here; only change this if the default is wrong.",
716
+
answerMode: "single",
717
+
recommendedAnswer: "Developers using Claude Code with Plannotator installed.",
718
+
recommendedOptionIds: ["devs-cc"],
719
+
options: [
720
+
{id: "devs-cc",label: "Developers on Claude Code"},
721
+
{id: "devs-oc",label: "Developers on OpenCode"},
722
+
{id: "devs-all",label: "All Plannotator users"},
723
+
],
724
+
},
725
+
{
726
+
id: "scope",
727
+
prompt: "Which inferred scope items should stay or be added?",
728
+
description: "Recommended items are based on the code paths the agent can infer. Add only missing nuance.",
729
+
answerMode: "multi-custom",
730
+
recommendedAnswer: "Skill text, interactive UI, server endpoints, and tests.",
recommendedAnswer: "Vertical list with per-fact accept, edit, remove, comment, and automated-verification toggle. Accepted facts hidden by default on re-review.",
767
+
},
768
+
{
769
+
id: "out-of-scope",
770
+
prompt: "Anything explicitly out of scope?",
771
+
answerMode: "custom",
772
+
required: false,
773
+
},
774
+
],
775
+
},
776
+
}));
777
+
return;
778
+
}
629
779
res.end(JSON.stringify({
630
780
plan: undefined,// Editor uses its own DIFF_DEMO_PLAN_CONTENT
631
781
origin: 'claude-code',
@@ -636,6 +786,15 @@ export function devMockApi(): Plugin {
0 commit comments