markitect-main/.ast_cache/test_frontmatter.md.ast.json

231 lines
3.8 KiB
JSON
Raw Normal View History

feat: Complete Issue #2 - Fast Document Loading & CLI Manipulation Major milestone: Implemented complete document manipulation workflow with roundtrip validation capabilities. New features: - markitect get: Retrieve and output processed markdown files - markitect modify: Content manipulation with --add-section and --update-front-matter - AST serialization: Complete AST-to-Markdown conversion with modification support - Roundtrip validation: add → modify → get → verify workflow operational Implementation details: - Added markitect/serializer.py with comprehensive AST-to-Markdown serialization - Extended CLI with get and modify commands using Click framework - Support for section addition and front matter updates - Comprehensive error handling and user feedback - Integration with existing AST cache and database systems Testing: - All 11 Issue #2 tests passing (100% success rate) - Manual roundtrip validation successfully completed - Performance optimization maintained (<50% cache loading time) - Core USP 'Parse once, manipulate many times' fully operational Files changed: - NEW: markitect/serializer.py (AST serialization and modification) - MODIFIED: markitect/cli.py (added get and modify commands) - Test files demonstrating working roundtrip functionality Issue #2 requirements fully satisfied: ✅ Performance-first storage strategy ✅ Complete CLI workflow with roundtrip validation ✅ Document manipulation capabilities ✅ AST serialization and content modification ✅ All success criteria met 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-25 03:03:04 +02:00
[
{
"type": "hr",
"tag": "hr",
"attrs": {},
"map": [
0,
1
],
"nesting": 0,
"level": 0,
"content": "",
"markup": "----",
"info": "",
"meta": {},
"block": true,
"hidden": false
},
{
"type": "heading_open",
"tag": "h2",
"attrs": {},
"map": [
1,
4
],
"nesting": 1,
"level": 0,
"content": "",
"markup": "-",
"info": "",
"meta": {},
"block": true,
"hidden": false
},
{
"type": "inline",
"tag": "",
"attrs": {},
"map": [
1,
3
],
"nesting": 0,
"level": 1,
"children": [
{
"type": "text",
"tag": "",
"attrs": {},
"nesting": 0,
"level": 0,
"content": "title: Test Document",
"markup": "",
"info": "",
"meta": {},
"block": false,
"hidden": false
},
{
"type": "softbreak",
"tag": "br",
"attrs": {},
"nesting": 0,
"level": 0,
"content": "",
"markup": "",
"info": "",
"meta": {},
"block": false,
"hidden": false
},
{
"type": "text",
"tag": "",
"attrs": {},
"nesting": 0,
"level": 0,
"content": "status: draft",
"markup": "",
"info": "",
"meta": {},
"block": false,
"hidden": false
}
],
"content": "title: Test Document\nstatus: draft",
"markup": "",
"info": "",
"meta": {},
"block": true,
"hidden": false
},
{
"type": "heading_close",
"tag": "h2",
"attrs": {},
"nesting": -1,
"level": 0,
"content": "",
"markup": "-",
"info": "",
"meta": {},
"block": true,
"hidden": false
},
{
"type": "heading_open",
"tag": "h1",
"attrs": {},
"map": [
5,
6
],
"nesting": 1,
"level": 0,
"content": "",
"markup": "#",
"info": "",
"meta": {},
"block": true,
"hidden": false
},
{
"type": "inline",
"tag": "",
"attrs": {},
"map": [
5,
6
],
"nesting": 0,
"level": 1,
"children": [
{
"type": "text",
"tag": "",
"attrs": {},
"nesting": 0,
"level": 0,
"content": "Test with Front Matter",
"markup": "",
"info": "",
"meta": {},
"block": false,
"hidden": false
}
],
"content": "Test with Front Matter",
"markup": "",
"info": "",
"meta": {},
"block": true,
"hidden": false
},
{
"type": "heading_close",
"tag": "h1",
"attrs": {},
"nesting": -1,
"level": 0,
"content": "",
"markup": "#",
"info": "",
"meta": {},
"block": true,
"hidden": false
},
{
"type": "paragraph_open",
"tag": "p",
"attrs": {},
"map": [
7,
8
],
"nesting": 1,
"level": 0,
"content": "",
"markup": "",
"info": "",
"meta": {},
"block": true,
"hidden": false
},
{
"type": "inline",
"tag": "",
"attrs": {},
"map": [
7,
8
],
"nesting": 0,
"level": 1,
"children": [
{
"type": "text",
"tag": "",
"attrs": {},
"nesting": 0,
"level": 0,
"content": "This document has YAML front matter.",
"markup": "",
"info": "",
"meta": {},
"block": false,
"hidden": false
}
],
"content": "This document has YAML front matter.",
"markup": "",
"info": "",
"meta": {},
"block": true,
"hidden": false
},
{
"type": "paragraph_close",
"tag": "p",
"attrs": {},
"nesting": -1,
"level": 0,
"content": "",
"markup": "",
"info": "",
"meta": {},
"block": true,
"hidden": false
}
]