Skip to content

tiergraph 0.9.0

Latest

Choose a tag to compare

@lenzo-ka lenzo-ka released this 12 Oct 20:06
b1818e7

Added

  • Added the public parse_path_index_segment() path-index parser.
  • Added Displacement.to_data() for deterministic JSON-compatible edit reports.
  • Added functional, identified, and exact graph equivalence, diagnostics, and fingerprints.
  • Added checked primitive graph edits with displacement and local dependency refusals.
  • Added clock-aware editing under explicit keep-earlier and drop-to-provisional policies.
  • Added positional declaration editing and atomic undeclare_with_contents() cascades.
  • Added opt-in journals with reports, annotations, dry runs, undo, redo, and bounded history.
  • Added guarded, invertible, composable JSON Lines patches with exact replay checks.
  • Added deterministic graph differences and exact graph-to-program construction replay.
  • Added construction programs with machine_version "2"; every other version is refused.
  • Added guarded subtree replacement and swapping with explicit correspondence policies.
  • Added displacement-aware selected bulk editing with shared work budgets.
  • Added graph-editing commands for primitives, patches, differences, bulk edits, and cleanup.
  • Added declared edit costs, exact sequence, tree, and segmentation distances, and bounded graph distance.
  • Added path commitment, exact retiming, and containment reconstruction from timing.
  • Added undoable orphan pruning and immutable-value compaction.
  • Added held item-run moves, unequal run swaps, and identity-preserving ordered-tier shifts.
  • Added exact split and merge operations for nested ordered-containment containers.
  • Added checked link accounting for plain, journaled, clock-aware, and derived edits.
  • Added complete ordered detachment reports for replacements, swaps, path commitment, and clock changes.
  • Added SpanViewProfile.to_data() for saving imported TextGrid profiles.
  • Added lossless strict-JSON path marginal, posterior, and cost serialization.
  • Added an opt-in typed blob vocabulary with ordered graph attachments.
  • Added streaming blob hashing, verified readers, resolver chains, and sink protocols.
  • Added strict lazy reading and deterministic writing of versioned blob bundles.
  • Added exact clock checks and clock-edit guards for blob attachment spans.
  • Added blob and bundle commands for inspection, storage, movement, and verification.
  • Added a lazy tiergraph.tgdb SQLite store with explicit read-only and writable modes.
  • Added content-addressed tgdb object storage with inline and file-backed residency.
  • Added ordered tgdb collections, instances, commits, lifecycle operations, and undo.
  • Added complete tgdb graph versions with fingerprints, history, and verified lazy loading.
  • Added replay-checked tgdb patches, version differences, reverts, and publication undo.
  • Added atomic multi-instance tgdb batches and stable reader snapshots.
  • Added tgdb tier indexes, typed queries, bounded predicates, and fixpoint checks.
  • Added declared tgdb item indexes with typed equality and exact numeric ranges.
  • Added tgdb payload ingestion, blob indexes, resolver and sink adapters, and repacking.
  • Added byte-preserving tgdb bundle import and export with explicit missing-payload handling.
  • Added typed tgdb blob metadata columns and content-checked queries.
  • Added explicit tgdb payload inspectors with bounded nested graph indexing.
  • Added tgdb history pruning, retired-instance purging, payload pins, and safe garbage collection.
  • Added ordered tgdb schema migrations and consistent atomic backups.
  • Added synthetic tgdb corpus-loop measurement of time, memory, storage, history, and replay.

Changed

  • Made grammar-chart paths refuse leading-plus digit segments as noncanonical.
  • Indexed sparse exact-equality pattern alternatives while preserving declared order and scan fallback.
  • Reduced span-matching work for large bounded repeats without changing completed results.
  • Made shifts enforce common containment ancestry and contiguous child seams by default.
  • Made item and relation removal refuse live dependencies before changing an editor.
  • Replaced projection-witness graph-distance admission with the built-in atom-multiset lower bound.
  • Made DistanceInterval.lower_bound_method required for nonexact results.
  • Capped general graph-distance lower bounds at the cheapest container regrouping operation.
  • Made GrammarChartProfile expose its graph and root directly.
  • Made FoldDeclaration refuse repeated roots and Equals require tuple literals.
  • Made Spans predicate binding resolve the other tier before evaluation.
  • Made offset-profile JSON refuse both or neither of extent and end as a staged shape error.

Fixed

  • Kept default package imports within 5% of 0.8.0 by loading opt-in public surfaces on first use.
  • Restored lazy package-attribute access for noncolliding secondary modules.
  • Selected Praat TextGrid long or short syntax from the body independently of the header spelling.
  • Made capped walks report truncation only when a fresh node is omitted.
  • Removed false pending watermarks for start-anchored patterns in open-left scopes.
  • Refused CLI annotations when no output can retain them.
  • Kept journal provenance on durable acted-on subjects and retired it with those subjects.
  • Preserved relation-subject facts while clock editors rebuild binding relations.
  • Checked protected layers against final candidates, including provenance writes.
  • Preserved undo and redo stacks when restoration or dry-run rollback fails.
  • Reconstructed JSON attribute and layer-fact edits atomically.
  • Reported only references whose subjects departed an edit.
  • Reported donor-side crossing relations and facts without coordinate ambiguity.
  • Preserved surviving subtree-swap boundary values and reported only actual losses.
  • Required linear identified subtree correspondence and preserved the source durable ID.
  • Made carried polyadic crossings refuse invalid flattening or trimming.
  • Made checked editors refuse unreported link withdrawal and accept reported endpoint trimming.
  • Applied shift ancestry and boundary reporting to every affected containment seam.
  • Made container regrouping preserve cross-tier targets and exact semantic inverses.
  • Recognized lossy container merges and changed-survivor merges as one semantic difference.
  • Reported complete clock replacements in source coordinates with exact durable targets.
  • Made layer reads resolve coordinate and durable references consistently.

Documentation

  • Restructured the guides around task-oriented construction, querying, editing, and interchange.
  • Documented every command-line option and JSON input form.
  • Added a complete editing guide and tested timing-import and text-cost recipes.
  • Added an external-resource guide and a runnable closed-media profile.
  • Added a tested versioned-corpus guide for atomic passes, correction, fixpoints, and work queues.
  • Clarified that equivalence views are fixed graph-wide projections and declared order remains content.
  • Added QuickTime to the project lineage for general typed time-based interchange.
  • Added a tested DotPresentation guide example.
  • Documented tiergraph.diff and tiergraph.distance as shadowed secondary modules with explicit import forms.