How trashr0x/fcabedrock works
FcaBedrock is a .NET preprocessing tool that turns wide CSV/TSV or triple data into deterministic FCA formal contexts using a Bedrock spec. The main workflow is CLI request → run orchestration → spec loading and resolution → source reading and any required calibration → planning and conversion → CXT/DAT writing and transactional publication. Separate capabilities include probing data to draft specs, migrating legacy BED specs, and fingerprints. Some links are based on README documentation or the RunPipeline SOURCE INDEX references; unsampled implementation details are not inferred.
Main entry points: RunPipeline.cs Run orchestration · Commands CLI commands · ConversionPlanner.cs Conversion planning · Prober.cs Spec discovery
Components 21
CLI
- CLI commands
src/FcaBedrock.Cli/Commands - CLI host
src/FcaBedrock.Cli/Program.cs
Specs
- Spec loading
src/FcaBedrock.Spec/Toml/SpecReader.cs - Spec composition
src/FcaBedrock.Spec/Toml/SpecComposer.cs - Spec resolution
src/FcaBedrock.Spec/Toml/SpecResolver.cs - BED migration
src/FcaBedrock.Spec/BedMigrator.cs
Conversion
- CSV source readers
src/FcaBedrock.Sources/CsvReadPipeline.cs - Calibration
src/FcaBedrock.Core/Calibration/AttributeCalibration.cs - Effective spec
src/FcaBedrock.Core/Calibration/CalibratedSpec.cs - Conversion planning
src/FcaBedrock.Core/Planning/ConversionPlanner.cs - Discretization
src/FcaBedrock.Core/Discretization/Discretizer.cs - Conceptual scaling
src/FcaBedrock.Core/Scaling/Scale.cs - Context emission
src/FcaBedrock.Conversion/Emitter.cs - CXT and DAT writers
src/FcaBedrock.Export/CxtWriter.cs
Operations
- Run orchestration
src/FcaBedrock.Orchestration/RunPipeline.cs - Publication transaction
src/FcaBedrock.Orchestration/Publication/PublicationTransaction.cs - Fingerprints
src/FcaBedrock.Core/Fingerprinting/FingerprintCalculator.cs - Run manifest
src/FcaBedrock.Spec/Manifest/RunManifestWriter.cs
Discovery
- Spec discovery
src/FcaBedrock.Discovery/Prober.cs
Other components
- User
- Input and output files
Connections 24
- User → CLI commands: invokes
README.md - CLI commands → CLI host: dispatches
src/FcaBedrock.Cli/Program.cs - CLI host → Run orchestration: starts run
src/FcaBedrock.Cli/Program.cs - Run orchestration → Spec loading: reads spec
src/FcaBedrock.Orchestration/RunPipeline.cs - Run orchestration → Spec composition: composes spec
src/FcaBedrock.Orchestration/RunPipeline.cs - Run orchestration → Spec resolution: resolves spec
src/FcaBedrock.Orchestration/RunPipeline.cs - Run orchestration → CSV source readers: opens source
src/FcaBedrock.Orchestration/RunPipeline.cs - CSV source readers → Input and output files: reads records
README.md - Run orchestration → Calibration: calibrates
README.md - Calibration → Effective spec: produces effective spec
src/FcaBedrock.Core/Calibration/CalibratedSpec.cs - Run orchestration → Conversion planning: plans conversion
README.md - Conversion planning → Discretization: uses bin definitions
src/FcaBedrock.Core/Planning/ConversionPlanner.cs - Conversion planning → Conceptual scaling: uses scale definitions
src/FcaBedrock.Core/Planning/ConversionPlanner.cs - Run orchestration → Context emission: emits context
README.md - Context emission → CXT and DAT writers: writes formats
README.md - Run orchestration → Publication transaction: publishes outputs
README.md - Publication transaction → Input and output files: commits files
README.md - CLI commands → Spec discovery: runs probe
README.md - Spec discovery → Input and output files: reads data
README.md - Spec discovery → Spec loading: drafts spec
README.md - CLI commands → BED migration: runs migration
README.md - BED migration → Input and output files: converts BED
README.md - Run orchestration → Fingerprints: computes fingerprints
src/FcaBedrock.Core/Fingerprinting/FingerprintCalculator.cs - Run orchestration → Run manifest: records run
README.md