Skip to content

Integrations

GuardSQL is intended to be shared across Grokify and PlexusOne analytics products while keeping product-specific execution outside the core module.

This repository is the Go engine. Integrations that require another runtime should live outside the root Go module. Hibernate support should be implemented in a Java-focused repository such as github.com/grokify/guardsql-java or a more specific github.com/grokify/guardsql-hibernate.

UIForge

UIForge uses GuardSQL for Metabase-style Questions and ad-hoc analytics queries.

The UIForge server:

  • reads a neutral analytics catalog
  • converts datasets and fields into a GuardSQL schema
  • asks SystemForge/SpiceDB for dataset and field authorization
  • compiles that authorization into guardsql.Policy
  • checks policy before saving Questions and before executing ad-hoc queries

OmniRoadmap

OmniRoadmap exposes product-roadmap analytics over a DoltDB-backed store. It can act as a UIForge analytics provider or expose its own GuardSQL-compatible API.

Recommended boundary:

  • OmniRoadmap owns canonical roadmap data and tenant/product permissions.
  • GuardSQL owns AST parsing and policy checks.
  • UIForge owns dashboard composition and saved Questions.

Aha Studio

Aha Studio can expose Aha-imported data through a product-specific dialect name such as AQL while reusing GuardSQL internals.

VisionStudio

VisionStudio can use the same pattern as OmniRoadmap when exposing DoltDB-backed analytics to UIForge or other tools.

Dialect Names

Product-specific dialect names such as AQL and ORQL can be useful in APIs and UIs, but the shared AST and policy model should remain GuardSQL-compatible.

Java and Hibernate

Java/Hibernate should be treated as an external integration target rather than part of the Go engine.

Recommended boundary:

  • The Go engine defines the query language, AST semantics, policy model, and security invariants.
  • A Java module can implement Java-native AST bindings, Criteria/Hibernate compilation, and JVM package conventions.
  • Cross-runtime compatibility should use documented AST/policy semantics and conformance tests instead of importing JVM dependencies into the Go module.