Summary
- Add 13 features for widget developers: FieldPacks, prepareForRender hook, render isolation (try/catch), widget validation rules, search tags, deprecation support, onDuplicate lifecycle hook, asset
declaration, WidgetData value object, widget test assertions, default data completeness audit in doctor, make-widget --with-test flag, debug-widget command - Add agents.md -- complete zero-ambiguity reference for AI agents and developers to create widgets without error
- Add developer tooling: layup:list-widgets, layup:search, layup:doctor, ContentWalker, HasLayupContent trait, LayupAssertions, PageFactory
Test plan
- All 1,086 existing tests pass (3,448 assertions)
- All new Widget contract methods have no-op defaults -- fully backward compatible
- 5 new files, 11 modified files, 0 removed files