This release adds comprehensive support for ML training workflows, event
relationships, advanced querying, and telemetry integration while
maintaining full backward compatibility with v0.2.x saved chains.
New Modules:
CrucibleTrace.Training provides helpers for ML training workflows
including training_started, epoch_completed, checkpoint_saved, and
deployment events. The trace_training/3 function wraps training
functions with automatic event generation.
CrucibleTrace.Query adds advanced querying with content search, regex
matching, and boolean query logic. The aggregate_by/3 function enables
grouping events by any field with custom aggregation functions.
CrucibleTrace.Stage wraps pipeline stage functions with automatic
tracing, capturing start/complete events with duration measurements
and error handling.
CrucibleTrace.Telemetry integrates with the telemetry library for
real-time event emission and can subscribe to crucible_framework
pipeline events for automatic trace collection.
Event System Enhancements:
Added 21 new event types covering training lifecycle, metrics,
checkpoints, deployment, and reinforcement learning workflows.
Events now support relationships via parent_id, depends_on, stage_id,
and experiment_id fields. Chain module provides get_children/2,
get_parent/2, get_root_events/1, get_leaf_events/1, and
validate_relationships/1 for traversing and validating event graphs.
Dependencies:
Added telemetry ~> 1.2 for event emission
Added credo ~> 1.7 for code analysis
Updated crucible_ir to ~> 0.2.0
Testing:
Added 6 new test files with comprehensive coverage for Training, Query,
Stage, Telemetry, relationships, and new event types. Extended existing
event tests for all new event type validation.
Documentation:
Updated README with ML training integration examples, event relationship
usage, telemetry integration, and advanced querying documentation.
Added current_state.md, gaps.md, and implementation_prompt.md in
docs/20251225/ for project documentation.