Skip to main content

Crate fabula_discovery

Crate fabula_discovery 

Source
Expand description

Automated sifting pattern discovery.

Provides a pluggable generate-evaluate framework for discovering narratively interesting patterns from simulation trace data.

§Architecture

The system works as an iterative loop:

  1. A CandidateGenerator proposes candidate patterns from a TraceCorpus
  2. PatternEvaluators score each candidate
  3. Scored results feed back to the generator for the next round
  4. A PatternFilter decides which patterns to keep

The DiscoverySession orchestrates this loop with configurable budgets.

Modules§

evaluators
generators

Structs§

DiscoverySession
Orchestrates the generate-evaluate loop with configurable budgets.
PairwiseHit
A co-occurrence of two edges sharing a node with a computed Allen relation.
PatternScore
Per-evaluator scores for a candidate pattern.
ScoredPattern
A candidate pattern paired with its evaluation scores.
SessionConfig
Configuration for a discovery session.
SessionHistory
The result of a completed discovery session.
ThresholdFilter
Accepts patterns whose composite score meets or exceeds a threshold.
TraceCorpus
An indexed log of edges for pattern discovery.
TraceEdge
A single edge in a trace corpus.

Enums§

SharedNode
How two edges share a node.

Traits§

CandidateGenerator
Proposes candidate patterns. Receives scored feedback to guide the next round.
PatternEvaluator
Scores a candidate pattern against a corpus.
PatternFilter
Decides whether a scored pattern is worth keeping.

Functions§

pattern_to_dsl
Convert a Pattern<String, String> to fabula DSL text.