LICENSE
MANIFEST.in
README.md
kicad_jbom_plugin.py
pyproject.toml
setup.py
docs/CHANGELOG.md
docs/CONTRIBUTING.md
docs/README.configuration.md
docs/README.developer.md
docs/README.man1.md
docs/README.man3.md
docs/README.man4.md
docs/README.man5.md
docs/README.md
docs/README.tests.md
docs/WARP.md
docs/inventory-field-semantics.md
docs/jbom-config-schema.yaml
docs/lcsc-provider.md
docs/dev/README.md
docs/dev/architecture/README.md
docs/dev/architecture/anti-patterns.md
docs/dev/architecture/component-attribute-enrichment.md
docs/dev/architecture/design-patterns.md
docs/dev/architecture/domain-centric-design.md
docs/dev/architecture/integration-patterns.md
docs/dev/architecture/layer-responsibilities.md
docs/dev/architecture/project-centric-design.md
docs/dev/architecture/testing.md
docs/dev/architecture/why-jbom-new.md
docs/dev/architecture/workflow-architecture.md
docs/dev/architecture/adr/0001-fabricator-inventory-selection-vs-matcher.md
docs/dev/architecture/adr/0002-jlcpcb-lcsc-provider.md
docs/dev/development_notes/BDD_AXIOMS.md
docs/dev/development_notes/BEHAVE_SUBDIRECTORY_LOADING.md
docs/dev/development_notes/PROJECT_INPUT_RESOLUTION_TESTS.feature
docs/dev/development_notes/README.md
docs/dev/development_notes/development_tasks.md
docs/dev/development_notes/gh_PR_and_Issues.md
docs/dev/development_notes/sample_detailed_validation_report.txt
docs/dev/development_notes/active/back_annotation_requirements.md
docs/dev/development_notes/active/component_rotation_correction_requirements.md
docs/dev/development_notes/active/comprehensive_fault_testing_requirements.md
docs/dev/development_notes/active/fabrication_platform_requirements.md
docs/dev/development_notes/active/fabricator_integration_requirements.md
docs/dev/development_notes/completed/QUICK_START.md
docs/dev/development_notes/completed/federated_inventory_requirements.md
docs/dev/development_notes/completed/inventory_management_requirements.md
docs/dev/guides/DEVELOPER_GUIDE.md
docs/dev/guides/README.md
docs/dev/guides/USER_GUIDE.md
docs/dev/requirements/0-User-Scenarios.md
docs/dev/requirements/1-Functional-Scenarios.md
docs/dev/requirements/README.md
docs/dev/validation/JohnExample.csv
docs/dev/validation/issue-123/findings-AltmillSwitches.md
docs/dev/validation/issue-123/findings-Core-wt32-eth0.md
docs/dev/validation/issue-123/findings-LEDStripDriver.md
docs/dev/validation/issue-123/methodology.md
docs/dev/validation/issue-123/summary.md
docs/dev/workflow/GIT_WORKFLOW.md
docs/dev/workflow/HUMAN_WORKFLOW.md
docs/dev/workflow/NEXT.md
docs/dev/workflow/README.md
docs/dev/workflow/WORK_LOG.md
docs/tutorial/README.context.md
docs/tutorial/README.documentation.md
docs/tutorial/README.implementation.md
docs/tutorial/README.integration.md
docs/tutorial/README.md
src/jbom/__init__.py
src/jbom/__main__.py
src/jbom.egg-info/PKG-INFO
src/jbom.egg-info/SOURCES.txt
src/jbom.egg-info/dependency_links.txt
src/jbom.egg-info/entry_points.txt
src/jbom.egg-info/requires.txt
src/jbom.egg-info/top_level.txt
src/jbom/cli/__init__.py
src/jbom/cli/__main__.py
src/jbom/cli/annotate.py
src/jbom/cli/bom.py
src/jbom/cli/discovery.py
src/jbom/cli/formatting.py
src/jbom/cli/inventory.py
src/jbom/cli/inventory_search.py
src/jbom/cli/main.py
src/jbom/cli/output.py
src/jbom/cli/parts.py
src/jbom/cli/pos.py
src/jbom/cli/search.py
src/jbom/common/__init__.py
src/jbom/common/cli_fabricator.py
src/jbom/common/component_classification.py
src/jbom/common/component_filters.py
src/jbom/common/component_utils.py
src/jbom/common/constants.py
src/jbom/common/field_parser.py
src/jbom/common/fields.py
src/jbom/common/options.py
src/jbom/common/package_matching.py
src/jbom/common/packages.py
src/jbom/common/pcb_types.py
src/jbom/common/sexp_parser.py
src/jbom/common/types.py
src/jbom/common/value_parsing.py
src/jbom/config/__init__.py
src/jbom/config/defaults.py
src/jbom/config/fabricators.py
src/jbom/config/profile_search.py
src/jbom/config/providers.py
src/jbom/config/suppliers.py
src/jbom/config/defaults/generic.defaults.yaml
src/jbom/config/fabricators/generic.fab.yaml
src/jbom/config/fabricators/jlc.fab.yaml
src/jbom/config/fabricators/pcbway.fab.yaml
src/jbom/config/fabricators/seeed.fab.yaml
src/jbom/config/presets/common.yaml
src/jbom/config/suppliers/digikey.supplier.yaml
src/jbom/config/suppliers/farnell.supplier.yaml
src/jbom/config/suppliers/generic.supplier.yaml
src/jbom/config/suppliers/lcsc.supplier.yaml
src/jbom/config/suppliers/mouser.supplier.yaml
src/jbom/config/suppliers/newark.supplier.yaml
src/jbom/config/suppliers/seeed.supplier.yaml
src/jbom/services/__init__.py
src/jbom/services/annotation_service.py
src/jbom/services/bom_generator.py
src/jbom/services/fabricator_inventory_selector.py
src/jbom/services/inventory_matcher.py
src/jbom/services/inventory_reader.py
src/jbom/services/inventory_validator.py
src/jbom/services/jlc_loader.py
src/jbom/services/parts_list_generator.py
src/jbom/services/pcb_reader.py
src/jbom/services/pos_generator.py
src/jbom/services/project_context.py
src/jbom/services/project_discovery.py
src/jbom/services/project_file_resolver.py
src/jbom/services/project_inventory.py
src/jbom/services/schematic_reader.py
src/jbom/services/sophisticated_inventory_matcher.py
src/jbom/services/supplier_url_resolver.py
src/jbom/services/readers/__init__.py
src/jbom/services/readers/schematic_reader.py
src/jbom/services/search/__init__.py
src/jbom/services/search/cache.py
src/jbom/services/search/filtering.py
src/jbom/services/search/inventory_search_service.py
src/jbom/services/search/jlcparts_provider.py
src/jbom/services/search/jlcpcb_api.py
src/jbom/services/search/jlcpcb_phase4_heuristics.py
src/jbom/services/search/jlcpcb_provider.py
src/jbom/services/search/models.py
src/jbom/services/search/mouser_provider.py
src/jbom/services/search/provider.py
src/jbom/workflows/__init__.py
src/jbom/workflows/registry.py
tests/conftest.py
tests/test_cli_discovery.py
tests/test_cli_formatting.py
tests/test_fabricators.py
tests/test_project_context.py
tests/test_project_discovery.py
tests/test_project_file_resolver.py
tests/test_workflow_registry.py
tests/integration/test_service_composition.py
tests/integration/test_sophisticated_matcher_self_contained.py
tests/integration/test_target_inventory_contract.py
tests/services/__init__.py
tests/services/generators/__init__.py
tests/services/generators/test_bom_generator.py
tests/services/matchers/__init__.py
tests/services/matchers/test_inventory_matcher.py
tests/services/readers/test_schematic_reader.py
tests/services/search/__init__.py
tests/services/search/test_disk_cache.py
tests/services/search/test_filtering.py
tests/services/search/test_inventory_search_cli_cache_flags.py
tests/services/search/test_inventory_search_dedup.py
tests/services/search/test_inventory_search_mpn_lookup.py
tests/services/search/test_jlcpcb_phase4_heuristics.py
tests/services/search/test_jlcpcb_provider.py
tests/services/search/test_mouser_contract.py
tests/services/search/test_mouser_integration.py
tests/services/search/test_mouser_provider.py
tests/services/search/test_phase4_with_custom_defaults.py
tests/services/search/test_search_cli.py
tests/unit/test_annotation_service.py
tests/unit/test_cli_help.py
tests/unit/test_cli_verbose.py
tests/unit/test_component_classification.py
tests/unit/test_defaults_config.py
tests/unit/test_fabricator_config_schema.py
tests/unit/test_fabricator_inventory_selector.py
tests/unit/test_inventory_no_aggregate.py
tests/unit/test_inventory_tilde_semantics.py
tests/unit/test_issue_133_data_quality.py
tests/unit/test_package_matching.py
tests/unit/test_parts_list_generator.py
tests/unit/test_profile_search.py
tests/unit/test_provider_registry.py
tests/unit/test_sophisticated_inventory_matcher_primary_filtering.py
tests/unit/test_sophisticated_inventory_matcher_scoring_and_ordering.py
tests/unit/test_supplier_config_schema.py
tests/unit/test_supplier_url_resolver.py
tests/unit/test_typed_parametric_fields.py
tests/unit/test_value_parsing.py