Skip to content

Conversation

@phiSgr
Copy link
Collaborator

@phiSgr phiSgr commented Oct 22, 2025

Note

Introduce rich JSON column support with typed paths/options end-to-end (core, ClickHouse DDL/parsing, TS/Py generators, libs), with tests and docs.

  • Core/Type System:
    • Add structured JSON column with options via JsonOptions (typed paths, max_dynamic_paths/types, skip_paths/regexps) and update ColumnType::Json(JsonOptions) across core.
    • Propagate through serde/proto conversion and lifecycle/diff logic; adjust CSV import to reject complex JSON.
  • ClickHouse Mapping/DDL/Parsing:
    • Map JsonOptions to ClickHouse JSON(...) DDL; parse JSON options from type strings; support in alt client and mapper.
  • Generators:
    • TypeScript: emit inner interfaces for typed JSON and ClickHouseJson<...> annotations; wire through codegen and schema collection.
    • Python: emit inner Pydantic models with ConfigDict(extra='allow') and Annotated[..., ClickHouseJson(...)].
  • Validation/Ingestion:
    • Enforce presence of required JSON typed paths during request validation; allow extra fields; extend map key validation messages.
  • Protobuf:
    • Extend ColumnType with Json message and JsonTypedPath to carry options.
  • Libraries:
    • ts-moose-lib: add ClickHouseJson marker and JSON options plumbing; update type converter to detect JSON mappings.
    • py-moose-lib: add ClickHouseJson dataclass and JSON options; convert Pydantic models to typed JSON specs.
  • Tests/Templates:
    • Add JsonTest models in TS/Py templates; end-to-end test for JSON DDL and data ingestion/querying; update expected schemas.
  • Docs:
    • Expand JSON type docs with typed paths, options, examples for TS/Py and benefits.

Written by Cursor Bugbot for commit d062c50. This will update automatically on new commits. Configure here.

@vercel
Copy link

vercel bot commented Oct 22, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
framework-docs Ready Ready Preview Comment Oct 23, 2025 9:16pm

Copy link
Collaborator

@callicles callicles left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2 nitpicks about making the code smaller and better structured

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

@phiSgr phiSgr added this pull request to the merge queue Oct 23, 2025
Merged via the queue into main with commit 2a73acd Oct 23, 2025
38 checks passed
@phiSgr phiSgr deleted the better-json-support branch October 23, 2025 21: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.

3 participants