璇璣 / xuanji
執璣為度,三儀同歸。 — Hold the jade-pivot as the measure; the three instruments converge on it.
The shared reaction model of Tianheng — the 底 (bedrock).
璇璣 (the jade pivot of the armillary sphere) is the dimension-agnostic measure every Tianheng observation dimension reacts in. It carries no observation engine and depends on no other workspace member — every dimension sits above it, reusing the reaction vocabulary without dragging in another dimension's engine.
It defines:
Severity—Enforce(fails the reaction) orWarn(advisory).Violation— the dimension-agnostic finding:kind,target,rule,finding,reason,severity,baselined, with its intrinsic JSON serialization.Report— every violation from one evaluation.Baseline— a generated snapshot of accepted violations, so a dirty project can adopt a boundary and gate only on new drift. A baseline is a JSON snapshot.Outcome—Clean/Violations(Report)/ConstitutionError(String), projected by the CI dimensions as an exit code (0/1/2) and by the runtime dimension as an event.BoundaryKind—Crate,Module,Semantic,Runtime: which instrument observed it.
serde_json-only by law: Baseline is a JSON snapshot and the per-type renderings are
intrinsic to those types, so they live here. Document assembly (folding in coverage, stale
baseline entries, constitution projection) stays in the dimensions and the shell, never in
the model.
You rarely depend on xuanji directly — you get it re-exported through the dimension crates
and the tianheng shell.
License
Licensed under either of Apache-2.0 or MIT, at your option.