Skip to content

Seshat BI v0.8.0

Choose a tag to compare

@Kemetra Kemetra released this 01 Aug 19:24
· 424 commits to main since this release
fc0015c

Minor release. Full detail in docs/releases/v0.8.md and CHANGELOG.md.

Install

pipx install seshat-bi==0.8.0

Headlines

  • PBIP X-Rayseshat xray builds a model graph by resolving measure/column references across parsed TMDL, reads PBIR visual bindings, and reports findings X0–X4. seshat model-diff classifies TMDL changes as semantic / cosmetic / additive / removed. Advisory and read-only: neither grants an approval, moves a readiness stage, or emits a confidence score. (#549, #550, #551)
  • The ten compass verbs now ship in the packaged bundles — the Claude and Codex bundles go from 11 skills to 21, behind a portability gate, with the capability inventory as the authored source of what ships. Spec 138 remains partially implemented (US2/US3). (#547, #548)
  • A governed statistical evidence engine (seshat analyze) — eight closed methods, strict schemas, immutable derived evidence, deterministic pending-human review. No result grants approval or changes readiness. (#529)
  • A headless TMDL doc-comment lint (seshat tmdl-doc-comment-lint) — one rule: a /// block must be followed by a declaration. Deliberately not a TMDL validator; a pass does not mean Power BI Desktop can load the model. (partial fix for #494)
  • Three further read-only surfacesseshat readiness-diff (#536), seshat cvd-evidence (#541), and seshat profile over a landed CSV/TSV/Excel file (#535).

Six new CLI verbs in total: xray, model-diff, readiness-diff, cvd-evidence, analyze, tmdl-doc-comment-lint.

One behavior change worth reading before upgrading

HR1 gold_placement now ERRORs on an unresolvable prefix (#499, #505), where it previously returned {} silently. This can newly fail a repo that was passing only because the resolution was empty.

Placement prefixes resolve against the physical bare dimension name. For a dimension declared gold.dim_product_rss, write dim:dim_product_rss.item — a schema-qualified dim:gold.dim_product_rss.item is parsed only up to the first . and will be rejected.

Classified under the bug-fix-restores-intended-behavior row of docs/operations/versioning-policy.md, which is why this release is MINOR rather than MAJOR.

Scope of this release

199 commits across 49 merged pull requests since v0.7.1, measured 363c41a..44bb00c — 158 non-merge commits (42 feat, 51 fix, 39 docs, 15 refactor). The cutoff excludes the release-preparation commits that follow it.

Spec 137 (the Finance GL genericity proof) landed in this window but ships no runtime change — it is fixtures, worked examples and mapping artifacts under mappings/, docs/worked-examples/ and benchmark/scenarios/, with no change to src/seshat/. It is evidence that the engine is not retail-specific, not a feature.

Provenance

Published to PyPI via Trusted Publishing (GitHub OIDC) with attestations, from the validated artifacts built at fc0015c. Public catalog listing (Claude plugin directory / OpenAI) is a separate owner action and has not been performed.