foundry-mcp 0.3.2__tar.gz → 0.8.19__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.
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/.gitignore +4 -0
- foundry_mcp-0.8.19/CHANGELOG.md +714 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/CLAUDE.md +1 -2
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/PKG-INFO +8 -1
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/README.md +6 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/codebase_standards/naming-conventions.md +1 -1
- foundry_mcp-0.8.19/docs/concepts/deep_research_workflow.md +1289 -0
- foundry_mcp-0.8.19/docs/examples/deep-research/README.md +144 -0
- foundry_mcp-0.8.19/docs/examples/deep-research/llm-judges-audit.jsonl +87 -0
- foundry_mcp-0.8.19/docs/examples/deep-research/llm-judges-report.md +60 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/guides/development-guide.md +200 -1
- foundry_mcp-0.8.19/docs/guides/intake.md +436 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/guides/observability.md +17 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/mcp_best_practices/README.md +1 -1
- foundry_mcp-0.8.19/foundry-mcp.toml +145 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/mcp/capabilities_manifest.json +555 -14
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/pyproject.toml +9 -1
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/pytest.ini +4 -2
- foundry_mcp-0.8.19/samples/foundry-mcp.toml +765 -0
- foundry_mcp-0.8.19/specs/.plans/bikelane.md +503 -0
- foundry_mcp-0.8.19/specs/.plans/dashboard_improvement.md +326 -0
- foundry_mcp-0.8.19/specs/.plans/research-router-implementation.md +234 -0
- foundry_mcp-0.8.19/specs/.plans/test-coverage-parity.md +128 -0
- foundry_mcp-0.8.19/specs/archived/validate-fix-auto-cleanup-2025-12-15-001.json +143 -0
- foundry_mcp-0.8.19/specs/completed/bikelane-intake-2025-12-28-001.json +1173 -0
- foundry_mcp-0.8.19/specs/completed/deep-research-workflow-2025-12-30-001.json +2543 -0
- foundry_mcp-0.8.19/specs/completed/minified-json-responses-2025-12-31-001.json +588 -0
- foundry_mcp-0.8.19/specs/completed/phase-first-spec-authoring-improvements-2025-12-23-001.json +1405 -0
- foundry_mcp-0.8.19/specs/completed/research-router-2025-12-29-001.json +1407 -0
- foundry_mcp-0.8.19/specs/completed/spec-modification-capabilities-2025-12-23-001.json +2566 -0
- foundry_mcp-0.8.19/src/foundry_mcp/__init__.py +13 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/__init__.py +0 -13
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/commands/plan.py +11 -4
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/commands/review.py +19 -4
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/commands/session.py +1 -8
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/commands/specs.py +38 -208
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/context.py +39 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/output.py +3 -3
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/config.py +615 -11
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/ai_consultation.py +146 -9
- foundry_mcp-0.8.19/src/foundry_mcp/core/batch_operations.py +1196 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/discovery.py +7 -7
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/error_store.py +9 -4
- foundry_mcp-0.8.19/src/foundry_mcp/core/intake.py +933 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/llm_config.py +40 -12
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/metrics_store.py +17 -2
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/naming.py +25 -2
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/observability.py +21 -5
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/progress.py +70 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/prometheus.py +0 -13
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/prompts/fidelity_review.py +149 -4
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/prompts/markdown_plan_review.py +5 -1
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/prompts/plan_review.py +5 -1
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/providers/__init__.py +12 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/providers/base.py +39 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/providers/claude.py +73 -60
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/providers/codex.py +111 -68
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/providers/cursor_agent.py +45 -57
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/providers/detectors.py +34 -7
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/providers/gemini.py +91 -69
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/providers/opencode.py +154 -52
- foundry_mcp-0.8.19/src/foundry_mcp/core/providers/opencode_wrapper.js +308 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/providers/package-lock.json +24 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/providers/package.json +25 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/providers/validation.py +128 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/__init__.py +68 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/memory.py +528 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/models.py +1234 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/providers/__init__.py +40 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/providers/base.py +242 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/providers/google.py +507 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/providers/perplexity.py +442 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/providers/semantic_scholar.py +544 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/providers/tavily.py +383 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/workflows/__init__.py +25 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/workflows/base.py +298 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/workflows/chat.py +271 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/workflows/consensus.py +539 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/workflows/deep_research.py +4142 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/workflows/ideate.py +682 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/research/workflows/thinkdeep.py +405 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/responses.py +690 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/spec.py +3853 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/task.py +2463 -0
- foundry_mcp-0.8.19/src/foundry_mcp/core/testing.py +839 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/validation.py +319 -43
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/dashboard/app.py +3 -4
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/dashboard/components/charts.py +0 -57
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/dashboard/data/stores.py +94 -32
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/dashboard/launcher.py +129 -18
- foundry_mcp-0.8.19/src/foundry_mcp/dashboard/views/__init__.py +12 -0
- {foundry_mcp-0.3.2/src/foundry_mcp/dashboard/pages → foundry_mcp-0.8.19/src/foundry_mcp/dashboard/views}/errors.py +2 -2
- foundry_mcp-0.8.19/src/foundry_mcp/dashboard/views/metrics.py +164 -0
- foundry_mcp-0.8.19/src/foundry_mcp/dashboard/views/overview.py +96 -0
- foundry_mcp-0.8.19/src/foundry_mcp/dashboard/views/tool_usage.py +139 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/resources/specs.py +25 -25
- foundry_mcp-0.8.19/src/foundry_mcp/schemas/intake-schema.json +89 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/schemas/sdd-spec-schema.json +33 -5
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/server.py +0 -14
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/__init__.py +39 -18
- foundry_mcp-0.8.19/src/foundry_mcp/tools/unified/authoring.py +3635 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/documentation_helpers.py +76 -6
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/environment.py +434 -32
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/error.py +18 -1
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/lifecycle.py +8 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/plan.py +134 -3
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/provider.py +0 -40
- foundry_mcp-0.8.19/src/foundry_mcp/tools/unified/research.py +1283 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/review.py +374 -17
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/review_helpers.py +17 -2
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/server.py +9 -24
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/spec.py +367 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/task.py +1666 -30
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/test.py +69 -8
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/conftest.py +46 -2
- foundry_mcp-0.8.19/tests/core/__init__.py +0 -0
- foundry_mcp-0.8.19/tests/core/research/__init__.py +0 -0
- foundry_mcp-0.8.19/tests/core/research/providers/__init__.py +0 -0
- foundry_mcp-0.8.19/tests/core/research/providers/test_perplexity.py +496 -0
- foundry_mcp-0.8.19/tests/core/research/workflows/test_deep_research.py +1352 -0
- foundry_mcp-0.8.19/tests/fixtures/intake/README.md +58 -0
- foundry_mcp-0.8.19/tests/fixtures/intake/edge_cases.jsonl +13 -0
- foundry_mcp-0.8.19/tests/fixtures/intake/empty.jsonl +0 -0
- foundry_mcp-0.8.19/tests/fixtures/intake/malformed.jsonl +12 -0
- foundry_mcp-0.8.19/tests/fixtures/intake/sample_items.jsonl +6 -0
- foundry_mcp-0.8.19/tests/integration/providers/conftest.py +254 -0
- foundry_mcp-0.8.19/tests/integration/providers/fixtures/simple_plan.md +18 -0
- foundry_mcp-0.8.19/tests/integration/providers/fixtures/simple_spec.json +33 -0
- foundry_mcp-0.8.19/tests/integration/providers/test_fidelity_review_flow.py +264 -0
- foundry_mcp-0.8.19/tests/integration/providers/test_plan_review_flow.py +265 -0
- foundry_mcp-0.8.19/tests/integration/providers/test_provider_smoke.py +250 -0
- foundry_mcp-0.8.19/tests/integration/providers/test_router_smoke.py +321 -0
- foundry_mcp-0.8.19/tests/integration/providers/test_synthesis_flow.py +750 -0
- foundry_mcp-0.8.19/tests/integration/test_ai_consultation_e2e.py +717 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/integration/test_authoring_tools.py +37 -16
- foundry_mcp-0.8.19/tests/integration/test_json_minification.py +84 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/integration/test_mcp_smoke.py +1 -1
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/integration/test_mcp_tools.py +3 -2
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/integration/test_provider_tools.py +3 -2
- foundry_mcp-0.8.19/tests/integration/test_research_e2e.py +651 -0
- foundry_mcp-0.8.19/tests/tools/__init__.py +0 -0
- foundry_mcp-0.8.19/tests/tools/unified/__init__.py +0 -0
- foundry_mcp-0.8.19/tests/tools/unified/test_research.py +845 -0
- foundry_mcp-0.8.19/tests/unit/test_ai_consultation.py +2033 -0
- foundry_mcp-0.8.19/tests/unit/test_batch_operations.py +1643 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_cli_review_helpers.py +64 -0
- foundry_mcp-0.8.19/tests/unit/test_contracts/__init__.py +1 -0
- foundry_mcp-0.8.19/tests/unit/test_contracts/test_phase3_contracts.py +1010 -0
- foundry_mcp-0.8.19/tests/unit/test_contracts/test_phase4_contracts.py +1474 -0
- foundry_mcp-0.8.19/tests/unit/test_contracts/test_phase5_contracts.py +1338 -0
- foundry_mcp-0.8.19/tests/unit/test_contracts/test_phase6_contracts.py +1126 -0
- foundry_mcp-0.8.19/tests/unit/test_contracts/test_phase7_contracts.py +524 -0
- foundry_mcp-0.8.19/tests/unit/test_core/research/__init__.py +1 -0
- foundry_mcp-0.8.19/tests/unit/test_core/research/test_memory.py +789 -0
- foundry_mcp-0.8.19/tests/unit/test_core/research/test_models.py +633 -0
- foundry_mcp-0.8.19/tests/unit/test_core/research/test_workflows.py +883 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_core/test_discovery.py +2 -2
- foundry_mcp-0.8.19/tests/unit/test_core/test_intake.py +821 -0
- foundry_mcp-0.8.19/tests/unit/test_core/test_phase_metadata_update.py +384 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_core/test_provider_spec.py +18 -17
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_core/test_spec.py +615 -2
- foundry_mcp-0.8.19/tests/unit/test_core/test_spec_find_replace.py +290 -0
- foundry_mcp-0.8.19/tests/unit/test_core/test_spec_history.py +780 -0
- foundry_mcp-0.8.19/tests/unit/test_core/test_spec_validation.py +422 -0
- foundry_mcp-0.8.19/tests/unit/test_core/test_task.py +1610 -0
- foundry_mcp-0.8.19/tests/unit/test_core/test_task_batch_update.py +527 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_core/test_validation.py +66 -5
- foundry_mcp-0.8.19/tests/unit/test_disabled_tools.py +94 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_environment.py +426 -6
- foundry_mcp-0.8.19/tests/unit/test_fix_verification_types.py +355 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_llm_provider.py +8 -0
- foundry_mcp-0.8.19/tests/unit/test_phase_add_bulk.py +256 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_providers_implementations.py +47 -69
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_review.py +2 -1
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_sdd_cli_core.py +0 -1
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_sdd_cli_runtime.py +4 -126
- foundry_mcp-0.8.19/tests/unit/test_task_metadata_batch.py +240 -0
- foundry_mcp-0.3.2/CHANGELOG.md +0 -55
- foundry_mcp-0.3.2/docs/mcp_best_practices/14-feature-flags.md +0 -463
- foundry_mcp-0.3.2/foundry-mcp.toml +0 -84
- foundry_mcp-0.3.2/samples/foundry-mcp.toml +0 -386
- foundry_mcp-0.3.2/src/foundry_mcp/__init__.py +0 -7
- foundry_mcp-0.3.2/src/foundry_mcp/cli/flags.py +0 -266
- foundry_mcp-0.3.2/src/foundry_mcp/core/feature_flags.py +0 -592
- foundry_mcp-0.3.2/src/foundry_mcp/core/spec.py +0 -1650
- foundry_mcp-0.3.2/src/foundry_mcp/core/task.py +0 -1289
- foundry_mcp-0.3.2/src/foundry_mcp/core/testing.py +0 -450
- foundry_mcp-0.3.2/src/foundry_mcp/dashboard/pages/__init__.py +0 -20
- foundry_mcp-0.3.2/src/foundry_mcp/dashboard/pages/metrics.py +0 -128
- foundry_mcp-0.3.2/src/foundry_mcp/dashboard/pages/overview.py +0 -128
- foundry_mcp-0.3.2/src/foundry_mcp/tools/unified/authoring.py +0 -1487
- foundry_mcp-0.3.2/tests/unit/test_ai_consultation.py +0 -892
- foundry_mcp-0.3.2/tests/unit/test_core/test_feature_flags.py +0 -874
- foundry_mcp-0.3.2/tests/unit/test_core/test_task.py +0 -613
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/.github/workflows/publish.yml +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/AGENTS.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/LICENSE +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/bin/foundry-mcp +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/architecture/adr-001-cli-architecture.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/cli_best_practices/01-cli-runtime.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/cli_best_practices/02-command-shaping.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/cli_best_practices/03-shared-services.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/cli_best_practices/04-testing-parity.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/cli_best_practices/README.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/codebase_standards/cli-output.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/codebase_standards/mcp_response_schema.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/concepts/sdd-philosophy.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/dashboards/README.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/dashboards/foundry-mcp-errors.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/dashboards/foundry-mcp-overview.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/dashboards/foundry-mcp-slo.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/dashboards/foundry-mcp-tools.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/dashboards/prometheus-rules/README.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/dashboards/prometheus-rules/foundry-mcp-alerting-rules.yaml +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/dashboards/prometheus-rules/foundry-mcp-recording-rules.yaml +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/guides/ai-consultation.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/guides/llm-configuration.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/guides/testing.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/mcp_best_practices/01-versioned-contracts.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/mcp_best_practices/02-envelopes-metadata.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/mcp_best_practices/03-serialization-helpers.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/mcp_best_practices/04-validation-input-hygiene.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/mcp_best_practices/05-observability-telemetry.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/mcp_best_practices/06-pagination-streaming.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/mcp_best_practices/07-error-semantics.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/mcp_best_practices/08-security-trust-boundaries.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/mcp_best_practices/09-spec-driven-development.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/mcp_best_practices/10-testing-fixtures.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/mcp_best_practices/11-ai-llm-integration.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/mcp_best_practices/12-timeout-resilience.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/mcp_best_practices/13-tool-discovery.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/docs/mcp_best_practices/15-concurrency-patterns.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/ai-consultation-layer-2025-12-03-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/cli-provider-abstraction-2025-11-30-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/foundry-cli-gap-remediation-2025-12-02-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/foundry-mcp-2025-01-25-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/internal-cli-elimination-2025-12-01-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/mcp-best-practices-remediation-2025-11-26-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/mcp-tool-consolidation-2025-12-10-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/multi-model-consensus-2025-12-05-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/observability-stack-2025-12-05-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/parity-testing-framework-2025-01-26-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/phase-remove-tool-2025-12-05-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/remove-docquery-rendering-docgen-2025-12-09-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/response-schema-standardization-2025-11-26-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/sdd-cli-native-parity-2025-11-27-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/sdd-core-operations-2025-11-27-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/specs/completed/sdd-llm-features-2025-11-27-001.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/__main__.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/agent.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/commands/__init__.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/commands/cache.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/commands/dashboard.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/commands/dev.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/commands/journal.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/commands/lifecycle.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/commands/modify.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/commands/pr.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/commands/tasks.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/commands/testing.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/commands/validate.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/config.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/logging.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/main.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/registry.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/resilience.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/cli/transcript.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/__init__.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/cache.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/capabilities.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/concurrency.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/context.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/error_collection.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/health.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/journal.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/lifecycle.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/llm_patterns.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/llm_provider.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/logging_config.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/metrics_persistence.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/metrics_registry.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/modifications.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/otel.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/otel_stubs.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/pagination.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/prompts/__init__.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/providers/registry.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/providers/test_provider.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/rate_limit.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/resilience.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/review.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/core/security.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/dashboard/__init__.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/dashboard/components/__init__.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/dashboard/components/cards.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/dashboard/components/filters.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/dashboard/components/tables.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/dashboard/data/__init__.py +0 -0
- {foundry_mcp-0.3.2/src/foundry_mcp/dashboard/pages → foundry_mcp-0.8.19/src/foundry_mcp/dashboard/views}/providers.py +0 -0
- {foundry_mcp-0.3.2/src/foundry_mcp/dashboard/pages → foundry_mcp-0.8.19/src/foundry_mcp/dashboard/views}/sdd_workflow.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/prompts/__init__.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/prompts/workflows.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/resources/__init__.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/schemas/__init__.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/__init__.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/context_helpers.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/health.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/journal.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/metrics.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/pr.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/router.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/src/foundry_mcp/tools/unified/verification.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/__init__.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/contract/__init__.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/contract/response_schema.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/contract/test_response_schema.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/ai_responses/fidelity_review_response.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/ai_responses/plan_review_response.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/context_tracker/transcript.jsonl +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/README.md +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/error_not_found.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/error_validation_failure.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/provider_execute_missing_prompt.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/provider_execute_success.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/provider_execute_timeout.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/provider_execute_unavailable.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/provider_list_success.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/provider_list_with_unavailable.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/provider_status_missing_id.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/provider_status_not_found.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/provider_status_success.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/success_specs_list.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/success_task_progress.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/success_test_presets.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/fixtures/golden/success_validation.json +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/integration/test_environment_tools.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/integration/test_fallback_integration.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/integration/test_notifications_sampling.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/integration/test_prepare_task_cli.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/integration/test_sdd_cli_advanced.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/integration/test_sdd_cli_parity.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/property/__init__.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/property/test_input_validation.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/test_responses.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/__init__.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/core/test_review.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_core/__init__.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_core/test_concurrency.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_core/test_journal.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_core/test_lifecycle.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_core/test_llm_patterns.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_core/test_pagination.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_core/test_resilience.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_core/test_security.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_error_collection.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_golden_fixtures.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_metrics_persistence.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_observability_graceful.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_providers_base.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_providers_detectors.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_providers_registry.py +0 -0
- {foundry_mcp-0.3.2 → foundry_mcp-0.8.19}/tests/unit/test_transcript.py +0 -0
|
@@ -51,6 +51,8 @@ settings.json
|
|
|
51
51
|
|
|
52
52
|
# Ignore all dotfolders under specs/ (reports, reviews, etc.)
|
|
53
53
|
specs/.*/
|
|
54
|
+
!specs/.plans/
|
|
55
|
+
!specs/.plans/**
|
|
54
56
|
|
|
55
57
|
# ModelChorus configuration
|
|
56
58
|
.model-chorusrc
|
|
@@ -62,3 +64,5 @@ uv.lock
|
|
|
62
64
|
.venv
|
|
63
65
|
.hypothesis/
|
|
64
66
|
.ruff_cache/
|
|
67
|
+
node_modules/
|
|
68
|
+
.opencode/
|