specfact-cli 0.25.0__tar.gz → 0.25.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/PKG-INFO +1 -1
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/pyproject.toml +1 -1
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/__init__.py +1 -1
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/__init__.py +1 -1
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/adapters/__init__.py +3 -1
- specfact_cli-0.25.1/src/specfact_cli/adapters/ado.py +2053 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/adapters/backlog_base.py +12 -2
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/adapters/github.py +270 -109
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/sync.py +284 -14
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/models/bridge.py +32 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/models/project.py +13 -0
- specfact_cli-0.25.1/src/specfact_cli/sync/bridge_sync.py +3155 -0
- specfact_cli-0.25.0/src/specfact_cli/sync/bridge_sync.py +0 -2065
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/.gitignore +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/LICENSE.md +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/README.md +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/mappings/node-async.yaml +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/mappings/python-async.yaml +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/mappings/speckit-default.yaml +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/prompts/shared/cli-enforcement.md +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/prompts/specfact.01-import.md +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/prompts/specfact.02-plan.md +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/prompts/specfact.03-review.md +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/prompts/specfact.04-sdd.md +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/prompts/specfact.05-enforce.md +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/prompts/specfact.06-sync.md +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/prompts/specfact.07-contracts.md +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/prompts/specfact.compare.md +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/prompts/specfact.sync-backlog.md +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/prompts/specfact.validate.md +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/schemas/deviation.schema.json +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/schemas/plan.schema.json +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/schemas/protocol.schema.json +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/github-action.yml.j2 +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/persona/architect.md.j2 +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/persona/developer.md.j2 +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/persona/product-owner.md.j2 +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/plan.bundle.yaml.j2 +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/pr-template.md.j2 +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/protocol.yaml.j2 +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/STRUCTURE.md +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/common/README.md +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/common/adapters.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/common/bindings.yaml.example +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/common/crosshair_plugin.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/common/generate_harness.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/common/harness_contracts.py.example +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/common/populate_contracts.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/common/run_sidecar.sh +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/common/sidecar-init.sh +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/frameworks/django/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/frameworks/django/crosshair_django_wrapper.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/frameworks/django/django_form_extractor.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/frameworks/django/django_url_extractor.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/frameworks/drf/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/frameworks/drf/drf_serializer_extractor.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/frameworks/fastapi/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/sidecar/frameworks/fastapi/fastapi_route_extractor.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/resources/templates/telemetry.yaml.example +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/adapters/base.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/adapters/openspec.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/adapters/openspec_parser.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/adapters/registry.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/adapters/speckit.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/agents/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/agents/analyze_agent.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/agents/base.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/agents/plan_agent.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/agents/registry.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/agents/sync_agent.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/analyzers/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/analyzers/ambiguity_scanner.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/analyzers/code_analyzer.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/analyzers/constitution_evidence_extractor.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/analyzers/contract_extractor.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/analyzers/control_flow_analyzer.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/analyzers/graph_analyzer.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/analyzers/relationship_mapper.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/analyzers/requirement_extractor.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/analyzers/test_pattern_extractor.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/cli.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/analyze.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/contract_cmd.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/drift.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/enforce.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/generate.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/import_cmd.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/init.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/migrate.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/plan.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/project_cmd.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/repro.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/sdd.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/spec.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/commands/validate.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/common/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/common/logger_setup.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/common/logging_utils.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/common/text_utils.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/common/utils.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/comparators/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/comparators/plan_comparator.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/enrichers/constitution_enricher.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/enrichers/plan_enricher.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/generators/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/generators/contract_generator.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/generators/openapi_extractor.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/generators/persona_exporter.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/generators/plan_generator.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/generators/protocol_generator.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/generators/report_generator.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/generators/task_generator.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/generators/test_to_openapi.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/generators/workflow_generator.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/importers/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/importers/speckit_converter.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/importers/speckit_scanner.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/integrations/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/integrations/specmatic.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/merge/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/merge/resolver.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/migrations/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/migrations/plan_migrator.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/models/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/models/capabilities.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/models/change.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/models/contract.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/models/deviation.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/models/enforcement.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/models/persona_template.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/models/plan.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/models/protocol.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/models/quality.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/models/sdd.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/models/source_tracking.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/models/task.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/modes/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/modes/detector.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/modes/router.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/parsers/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/parsers/persona_importer.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/resources/semgrep/async.yml +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/resources/semgrep/code-quality.yml +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/resources/semgrep/feature-detection.yml +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/runtime.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/sync/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/sync/bridge_probe.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/sync/bridge_watch.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/sync/change_detector.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/sync/code_to_spec.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/sync/drift_detector.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/sync/repository_sync.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/sync/spec_to_code.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/sync/spec_to_tests.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/sync/watcher.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/sync/watcher_enhanced.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/telemetry.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/templates/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/templates/bridge_templates.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/templates/specification_templates.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/acceptance_criteria.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/bundle_loader.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/code_change_detector.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/console.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/content_sanitizer.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/context_detection.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/enrichment_context.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/enrichment_parser.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/env_manager.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/feature_keys.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/git.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/github_annotations.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/ide_setup.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/incremental_check.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/optional_deps.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/performance.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/progress.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/progressive_disclosure.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/prompts.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/sdd_discovery.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/source_scanner.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/structure.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/structured_io.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/suggestions.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/terminal.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/utils/yaml_utils.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/agile_validation.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/change_proposal_integration.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/cli_first_validator.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/contract_validator.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/fsm.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/repro_checker.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/schema.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/contract_populator.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/crosshair_runner.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/crosshair_summary.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/dependency_installer.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/framework_detector.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/frameworks/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/frameworks/base.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/frameworks/django.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/frameworks/drf.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/frameworks/fastapi.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/frameworks/flask.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/harness_generator.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/models.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/orchestrator.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/specmatic_runner.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/validators/sidecar/unannotated_detector.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/versioning/__init__.py +0 -0
- {specfact_cli-0.25.0 → specfact_cli-0.25.1}/src/specfact_cli/versioning/analyzer.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: specfact-cli
|
|
3
|
-
Version: 0.25.
|
|
3
|
+
Version: 0.25.1
|
|
4
4
|
Summary: Brownfield-first CLI: Reverse engineer legacy Python → specs → enforced contracts. Automate legacy code documentation and prevent modernization regressions.
|
|
5
5
|
Project-URL: Homepage, https://github.com/nold-ai/specfact-cli
|
|
6
6
|
Project-URL: Repository, https://github.com/nold-ai/specfact-cli.git
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "specfact-cli"
|
|
7
|
-
version = "0.25.
|
|
7
|
+
version = "0.25.1"
|
|
8
8
|
description = "Brownfield-first CLI: Reverse engineer legacy Python → specs → enforced contracts. Automate legacy code documentation and prevent modernization regressions."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.11"
|
|
@@ -7,6 +7,7 @@ This module provides adapter implementations for various external tools
|
|
|
7
7
|
|
|
8
8
|
from __future__ import annotations
|
|
9
9
|
|
|
10
|
+
from specfact_cli.adapters.ado import AdoAdapter
|
|
10
11
|
from specfact_cli.adapters.base import BridgeAdapter
|
|
11
12
|
from specfact_cli.adapters.github import GitHubAdapter
|
|
12
13
|
from specfact_cli.adapters.openspec import OpenSpecAdapter
|
|
@@ -15,8 +16,9 @@ from specfact_cli.adapters.speckit import SpecKitAdapter
|
|
|
15
16
|
|
|
16
17
|
|
|
17
18
|
# Auto-register built-in adapters
|
|
19
|
+
AdapterRegistry.register("ado", AdoAdapter)
|
|
18
20
|
AdapterRegistry.register("github", GitHubAdapter)
|
|
19
21
|
AdapterRegistry.register("openspec", OpenSpecAdapter)
|
|
20
22
|
AdapterRegistry.register("speckit", SpecKitAdapter)
|
|
21
23
|
|
|
22
|
-
__all__ = ["AdapterRegistry", "BridgeAdapter", "GitHubAdapter", "OpenSpecAdapter", "SpecKitAdapter"]
|
|
24
|
+
__all__ = ["AdapterRegistry", "AdoAdapter", "BridgeAdapter", "GitHubAdapter", "OpenSpecAdapter", "SpecKitAdapter"]
|