Part of epic #173 (Full Unification of GSL Instruction Schema).
Goal
Create Agent currently splits text_instructions content per-line:
content: ["## Terminology\n", "- item1\n", ...]
GSO stores as a single-item list content: [full_text] because Genie UI only renders newlines correctly with one string (see comment in packages/.../optimization/applier.py L204–206: "Stores the full text as a single content list item so that the Genie UI renders newlines correctly. The content field is list[str]; using multiple items causes the UI to concatenate them without line breaks.").
Migrate Create Agent to the canonical shape.
Acceptance criteria
Dependencies
Part of epic #173 (Full Unification of GSL Instruction Schema).
Goal
Create Agent currently splits
text_instructionscontent per-line:GSO stores as a single-item list
content: [full_text]because Genie UI only renders newlines correctly with one string (see comment inpackages/.../optimization/applier.pyL204–206: "Stores the full text as a single content list item so that the Genie UI renders newlines correctly. Thecontentfield islist[str]; using multiple items causes the UI to concatenate them without line breaks.").Migrate Create Agent to the canonical shape.
Acceptance criteria
backend/services/create_agent_tools.py::generate_configL2047–2052 stops the per-line\nsplit; producescontent: [full_text]backend/references/schema.mdL58–66 example rewritten to single-item shapebackend/tests/test_genie_creator.pyasserts the new shape passes through_enforce_constraintsunchangedDependencies