Resolve the integration issue where outline mode schema generation captured
heading text correctly but draft generation didn't use it, resulting in
generic placeholders instead of preserved document structure.
Key changes:
- Enhanced StubGenerator._extract_heading_text_from_schema() to extract actual heading text from enum constraints
- Modified heading generation logic in _generate_content_from_headings() to use captured text
- Fixed both H1 and H2+ heading handling to preserve source document structure
- Added comprehensive test suite covering all outline mode functionality
- Updated end-to-end test to reflect expected behavior (stubs vs full validation)
Impact:
- Outline schemas now properly integrate with draft generation
- Generated drafts preserve actual heading text from source documents
- End-to-end workflow: example → outline schema → draft maintains document structure
- Backward compatibility maintained for existing functionality
Tests: 8/8 passing in test_issue_46_schema_generation_outline.py
Resolves: coulomb/markitect_project#46🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
This implementation enhances the existing generate-stub command to utilize
content field instructions from schemas, providing guided document generation
with specific placeholder text instead of generic "TODO" messages.
## Key Features Added:
### Enhanced Schema-Based Generation
- Content instructions from schemas (x-markitect-content-instructions) are now used
- Schema reference metadata included in generated drafts for traceability
- Intelligent fallback to generic placeholders for schemas without instructions
- Full integration with existing generate-stub CLI command and options
### StubGenerator Enhancements
- New _extract_content_instruction_from_heading_schema method for instruction parsing
- Enhanced _get_placeholder_content method with schema-aware content generation
- Updated method signatures to support schema_file_path parameter throughout
- Robust handling of both content instruction and legacy schema formats
### CLI Integration
- Updated generate-stub command documentation with content instruction examples
- Enhanced help text explaining automatic content instruction usage
- Fixed output file generation to include schema references correctly
- Maintained full backward compatibility with existing usage patterns
### Technical Implementation
- Schema reference comments (<!-- Generated from schema: path -->) in generated drafts
- Content instruction text extracted from x-markitect-content-instructions fields
- Support for all instruction types (description, example, constraint, template)
- Integration with existing heading hierarchy and placeholder style systems
## Integration and Compatibility:
- Seamless integration with Issue #54 content field instructions
- Full backward compatibility with existing schemas and usage
- Works with outline mode schemas and heading text capture features
- Comprehensive error handling and graceful degradation
## Testing and Validation:
- Comprehensive test suite covering all acceptance criteria
- Integration tests with schema-generate → generate-stub workflow
- Validation of schema reference metadata and content instruction usage
- Backward compatibility testing with legacy schemas
This completes Issue #55 with full feature implementation, comprehensive testing,
and enhanced documentation for schema-based draft generation capabilities.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>