Skip to content

Preserve nested JSON objects when splitting frontmatter - #140

Open
rupayon123 wants to merge 1 commit into
eyeseast:mainfrom
rupayon123:contribution/nested-json-boundaries-20260915
Open

rupayon123 wants to merge 1 commit into
eyeseast:mainfrom
rupayon123:contribution/nested-json-boundaries-20260915

Conversation

@rupayon123

Copy link
Copy Markdown

Valid nested JSON exported with indent=0 can contain closing braces at column zero. Splitting on brace-only lines stops at an inner object and raises a JSON decoding error when loading the library's own output.

Use the JSON decoder's complete-object boundary to separate metadata from body content. Preserve the existing delimiter fallback for malformed JSON so delimited invalid metadata still raises, and text without a complete frontmatter boundary retains its existing treatment.

Two round-trip regressions failed before the fix; all 60 local tests and mypy's four-module check pass afterward. Cases include nested arrays/objects, quoted braces, escaped quotes, unchanged body braces, and malformed metadata.

AI-assisted contribution, reviewed and verified locally before submission.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant