Skip to content

Stop traversal past scalar JSON values - #36

Merged
memotype merged 1 commit into
masterfrom
fix/issues-21-29-scalar-traversal
Aug 31, 2026
Merged

Stop traversal past scalar JSON values#36
memotype merged 1 commit into
masterfrom
fix/issues-21-29-scalar-traversal

Conversation

@memotype

Copy link
Copy Markdown
Owner

Summary

  • stop path traversal when the selected JSON value is a scalar, returning status 1 instead of scanning into a sibling
  • cover string, number, boolean, null, array-element, nested, and multi-term scalar traversal cases
  • cover unsupported empty query terms, left-to-right failure precedence, no-query extraction, and empty-string values
  • regenerate all compact forms while preserving their existing physical line counts

Verification

  • make verify
  • forced regeneration produced byte-identical generated outputs
  • generated totals remain 2 lines for bj-1line.sh, 11 for bj-80-col.sh, and 10 for bj-90-col.sh

Closes #21
Closes #29

@memotype
memotype merged commit 7e12b56 into master Aug 31, 2026
2 checks passed
@memotype
memotype deleted the fix/issues-21-29-scalar-traversal branch August 31, 2026 19:44
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.

Add regression coverage for unsupported empty query terms Traversing past a scalar can return an unrelated sibling with status 0

1 participant