getEngineMaxTurnsToTopLevelCodemod migrates deprecated engine.max-turns to top-level max-turns.
()
| 7 | // getEngineMaxTurnsToTopLevelCodemod migrates deprecated engine.max-turns to |
| 8 | // top-level max-turns. |
| 9 | func getEngineMaxTurnsToTopLevelCodemod() Codemod { |
| 10 | return Codemod{ |
| 11 | ID: "engine-max-turns-to-top-level", |
| 12 | Name: "Move engine.max-turns to top-level max-turns", |
| 13 | Description: "Moves deprecated 'engine.max-turns' to top-level 'max-turns' so AWF enforces turn caps consistently across all agentic engines.", |
| 14 | IntroducedIn: "0.68.4", |
| 15 | Apply: func(content string, frontmatter map[string]any) (string, bool, error) { |
| 16 | return migrateEngineFieldToTopLevel( |
| 17 | content, |
| 18 | frontmatter, |
| 19 | migrateEngineFieldToTopLevelOptions{ |
| 20 | engineField: "max-turns", |
| 21 | targetTopLevelField: "max-turns", |
| 22 | preserveTopLevelFields: []string{"max-turns"}, |
| 23 | log: engineMaxTurnsCodemodLog, |
| 24 | skipInlineMessage: "Skipping engine.max-turns migration for inline-map engine syntax; migrate to top-level max-turns manually", |
| 25 | removedMessage: "Removed deprecated engine.max-turns (top-level max-turns already present)", |
| 26 | migratedMessage: "Migrated engine.max-turns to top-level max-turns", |
| 27 | }, |
| 28 | ) |
| 29 | }, |
| 30 | } |
| 31 | } |