Skip to content
This repository was archived by the owner on Feb 11, 2026. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ const KnowledgeSeedExamples: React.FC<Props> = ({ isGithubMode, seedExamples, on
}
};

if (fileSelectIndex > 0 && !knowledgeFiles.length) {
if (fileSelectIndex >= 0 && !knowledgeFiles.length) {
fetchKnowledgeFiles();
}
}, [fileSelectIndex, isGithubMode, knowledgeFiles.length]);
Expand All @@ -78,7 +78,7 @@ const KnowledgeSeedExamples: React.FC<Props> = ({ isGithubMode, seedExamples, on
};

const handleSelectContextInput = (contextValue: string) => {
handleKnowledgeSeedExamplesContextInputChange(seedExamples, fileSelectIndex, contextValue, true);
onUpdateSeedExamples(handleKnowledgeSeedExamplesContextInputChange(seedExamples, fileSelectIndex, contextValue, true));
};

const handleContextBlur = (seedExampleIndex: number): void => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,37 +67,32 @@ const STEP_IDS = ['author-info', 'knowledge-info', 'file-path-info', 'document-i

export const KnowledgeWizard: React.FunctionComponent<KnowledgeFormProps> = ({ knowledgeEditFormData, isGithubMode }) => {
const { data: session } = useSession();
const [knowledgeFormData, setKnowledgeFormData] = React.useState<KnowledgeFormData>(knowledgeEditFormData?.formData || DefaultKnowledgeFormData);
const [knowledgeFormData, setKnowledgeFormData] = React.useState<KnowledgeFormData>(
knowledgeEditFormData?.formData
? {
...knowledgeEditFormData.formData,
seedExamples: knowledgeEditFormData.formData.seedExamples.map((example) => ({
...example,
immutable: example.immutable !== undefined ? example.immutable : true, // Ensure immutable is set
isContextValid: example.isContextValid || ValidatedOptions.default,
validationError: example.validationError || '',
questionAndAnswers: example.questionAndAnswers.map((qa) => ({
...qa,
immutable: qa.immutable !== undefined ? qa.immutable : true, // Ensure immutable is set
isQuestionValid: qa.isQuestionValid || ValidatedOptions.default,
questionValidationError: qa.questionValidationError || '',
isAnswerValid: qa.isAnswerValid || ValidatedOptions.default,
answerValidationError: qa.answerValidationError || ''
}))
}))
}
: DefaultKnowledgeFormData
);
const [actionGroupAlertContent, setActionGroupAlertContent] = useState<ActionGroupAlertContent | undefined>();
const [isYamlModalOpen, setIsYamlModalOpen] = useState<boolean>(false); // **New State Added**

const router = useRouter();

useEffect(() => {
// Set all elements from the knowledgeFormData to the state
if (knowledgeEditFormData) {
setKnowledgeFormData({
...knowledgeEditFormData.formData,
seedExamples: knowledgeEditFormData.formData.seedExamples.map((example) => ({
...example,
immutable: example.immutable !== undefined ? example.immutable : true, // Ensure immutable is set
isContextValid: example.isContextValid || ValidatedOptions.default,
validationError: example.validationError || '',
questionAndAnswers: example.questionAndAnswers.map((qa) => ({
...qa,
immutable: qa.immutable !== undefined ? qa.immutable : true, // Ensure immutable is set
isQuestionValid: qa.isQuestionValid || ValidatedOptions.default,
questionValidationError: qa.questionValidationError || '',
isAnswerValid: qa.isAnswerValid || ValidatedOptions.default,
answerValidationError: qa.answerValidationError || ''
}))
}))
});

devLog('Seed Examples Set from Edit Form Data:', knowledgeEditFormData.formData.seedExamples);
}
}, [knowledgeEditFormData]);

// Function to append document information (Updated for single repositoryUrl and commitSha)
// Within src/components/Contribute/Native/index.tsx
const addDocumentInfoHandler = React.useCallback(
Expand Down
46 changes: 21 additions & 25 deletions src/components/Contribute/Skill/SkillWizard/SkillWizard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -57,36 +57,32 @@ const STEP_IDS = ['author-info', 'skill-info', 'file-path-info', 'document-info'

export const SkillWizard: React.FunctionComponent<Props> = ({ skillEditFormData, isGithubMode }) => {
const { data: session } = useSession();
const [skillFormData, setSkillFormData] = React.useState<SkillFormData>(skillEditFormData?.formData || DefaultSkillFormData);
const [skillFormData, setSkillFormData] = React.useState<SkillFormData>(
skillEditFormData?.formData
? {
...skillEditFormData.formData,
seedExamples: skillEditFormData.formData.seedExamples.map((example) => ({
...example,
immutable: example.immutable !== undefined ? example.immutable : true, // Ensure immutable is set
isContextValid: example.isContextValid || ValidatedOptions.default,
validationError: example.validationError || '',
questionAndAnswer: {
...example.questionAndAnswer,
immutable: example.questionAndAnswer.immutable !== undefined ? example.questionAndAnswer.immutable : true, // Ensure immutable is set
isQuestionValid: example.questionAndAnswer.isQuestionValid || ValidatedOptions.default,
questionValidationError: example.questionAndAnswer.questionValidationError || '',
isAnswerValid: example.questionAndAnswer.isAnswerValid || ValidatedOptions.default,
answerValidationError: example.questionAndAnswer.answerValidationError || ''
}
}))
}
: DefaultSkillFormData
);
const [actionGroupAlertContent, setActionGroupAlertContent] = useState<ActionGroupAlertContent | undefined>();
const [isYamlModalOpen, setIsYamlModalOpen] = useState<boolean>(false);

const router = useRouter();

useEffect(() => {
if (skillEditFormData) {
setSkillFormData({
...skillEditFormData.formData,
seedExamples: skillEditFormData.formData.seedExamples.map((example) => ({
...example,
immutable: example.immutable !== undefined ? example.immutable : true, // Ensure immutable is set
isContextValid: example.isContextValid || ValidatedOptions.default,
validationError: example.validationError || '',
questionAndAnswer: {
...example.questionAndAnswer,
immutable: example.questionAndAnswer.immutable !== undefined ? example.questionAndAnswer.immutable : true, // Ensure immutable is set
isQuestionValid: example.questionAndAnswer.isQuestionValid || ValidatedOptions.default,
questionValidationError: example.questionAndAnswer.questionValidationError || '',
isAnswerValid: example.questionAndAnswer.isAnswerValid || ValidatedOptions.default,
answerValidationError: example.questionAndAnswer.answerValidationError || ''
}
}))
});

devLog('Seed Examples Set from Edit Form Data:', skillEditFormData.formData.seedExamples);
}
}, [skillEditFormData]);

const setFilePath = React.useCallback((filePath: string) => setSkillFormData((prev) => ({ ...prev, filePath })), []);

const onCloseActionGroupAlert = () => {
Expand Down
2 changes: 1 addition & 1 deletion src/components/Contribute/Utils/seedExampleUtils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ export const handleKnowledgeSeedExamplesContextInputChange = (
contextValue: string,
validate = false
): KnowledgeSeedExample[] => {
const { msg, status } = validateContext(seedExamples[seedExampleIndex].context);
const { msg, status } = validateContext(contextValue);
return seedExamples.map((seedExample: KnowledgeSeedExample, index: number) =>
index === seedExampleIndex
? {
Expand Down