- Shipped
- July 19, 2026 at 1:49 AM UTC
- Author
- Kamo
- Commit
- dbf81c6
AiOrgSettings gained forcedPreamble/forcedFooter and SalesAgentCompiler already folds them into every agent, but the settings controller neither read nor wrote them - so the capability was dead: a save appeared to succeed and came back blank on reload. GET now returns both fields (including in the no-settings defaults) and PUT persists them, normalizing blank to null so clearing a field actually clears it rather than leaving an empty string to be folded in as a stray separator. Required text now takes effect IMMEDIATELY, by recompiling and republishing every published agent in the org. Letting it apply on each agent's next publish was cheaper and is a trap: an admin who adds 'always say you are an automated assistant' will believe it is live, and an agent nobody happens to republish would keep talking without it indefinitely. A required line that silently does not apply is worse than not offering one. Each affected agent gets one new saved copy labelled with why, and the response reports how many were republished so the UI can say what actually happened instead of just 'Saved'.