crackerjack 0.89.2__tar.gz → 0.91.0__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.
- {crackerjack-0.89.2 → crackerjack-0.91.0}/CHANGELOG.md +27 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/PKG-INFO +3 -3
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/ai/unified.py +28 -2
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/facade.py +15 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/handlers/provider_selection.py +1 -1
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/options.py +1 -1
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/config/settings.py +11 -4
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/async_file_io.py +2 -2
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/plan_index_sync.py +25 -3
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/README.md +1 -1
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/uncategorized/CLAUDE_ARCHITECTURE.md +0 -1
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/uncategorized/CLAUDE_PATTERNS.md +0 -1
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/uncategorized/CLAUDE_PROTOCOLS.md +0 -1
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/uncategorized/CLAUDE_QUICKSTART.md +0 -1
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/decisions/.archive/implementation-plans/2026-10-16-plan-index-git-aware-and-tool-flag.md +1 -1
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/PLAN_INDEX.md +4 -28
- {crackerjack-0.89.2 → crackerjack-0.91.0}/pyproject.toml +8 -3
- {crackerjack-0.89.2 → crackerjack-0.91.0}/settings/crackerjack.yaml +1 -0
- crackerjack-0.91.0/tests/adapters/test_ai_registry.py +191 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_provider_chain.py +102 -1
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_plan_index_sync.py +44 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/uv.lock +498 -444
- crackerjack-0.89.2/tests/adapters/test_ai_registry.py +0 -107
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.betterleaks.toml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude/decisions/2026-09-26-mcp-launcher-migration.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude/decisions/2026-10-12-canonical-claude-gitignore-policy.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude/decisions/2026-10-12-hook-stage-documentary-vs-enforced.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude/decisions/2026-10-12-publish-auto-sync-gitignore.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude/decisions/2026-10-13-checkpoint-disabled.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude/decisions/2026-10-13-ratchet-publish-only-gate.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude/decisions/2026-10-13-ratchet-staleness.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude/decisions/2026-10-13-store-2-opt-in.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude/decisions/2026-10-13-workflow-architecture-cleanup.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude/decisions/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude/decisions/deployability-discipline.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude/hooks/_hook_io.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude/hooks/agent-merge-on-end.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude/settings.json +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude/workflows/ai-fix-loop.js +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.claude-plugin/plugin.json +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.codespell-ignore +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.cov_test +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.crackerjack.example.yaml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.envrc +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.github/FUNDING.yml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.gitignore +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.gitleaks.toml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.gitleaksignore +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.lycheeignore +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.mdformat.toml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.pyscn.toml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/.python-version +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/AGENTS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/CLAUDE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/CONTRIBUTING.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/LICENSE +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/QUICKSTART.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/QWEN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/RULES.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/SECURITY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/assets/crackerjack_logo_favicon.png +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/assets/crackerjack_logo_github.png +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/assets/crackerjack_logo_icon.png +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/assets/crackerjack_logo_medium.png +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/assets/crackerjack_logo_small.png +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/assets/crackerjack_logo_tiny.png +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/__main__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/_output_paths.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/_qa_adapter_base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/_tool_adapter_base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/ai/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/ai/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/ai/base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/ai/registry.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/benchmark/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/benchmark/adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/benchmark/baseline.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/complexity/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/complexity/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/complexity/complexipy.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/complexity/pymetrica.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/dependency/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/dependency/pip_audit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/factory.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/format/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/format/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/format/mdformat.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/format/ruff.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/health_mixin.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/kotlin/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/kotlin/git_backend.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/kotlin/hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/kotlin/lifecycle.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/kotlin/version_source.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/lint/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/lint/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/lint/codespell.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/performance/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/performance/scalene.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/python/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/python/hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/python/lifecycle.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/python/version_source.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/refactor/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/refactor/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/refactor/cohesion.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/refactor/creosote.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/refactor/refurb.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/refactor/vulture.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/registry.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/sast/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/sast/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/sast/_base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/sast/bandit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/sast/pyscn.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/sast/semgrep.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/security/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/security/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/security/betterleaks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/security/gitleaks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/swift/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/swift/git_backend.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/swift/hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/swift/lifecycle.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/swift/platforms.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/swift/version_source.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/test/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/test/syrupy.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/treesitter/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/treesitter/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/treesitter/treesitter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/type/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/type/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/type/pyrefly.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/type/pyright.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/type/ty.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/utility/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/utility/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/utility/checks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/web/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/web/hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/adapters/web/jinja_formatter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/agents/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/agents/base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/api.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/bin/validate-mermaid.mjs +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/checks/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/checks/gitignore_conformance.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/checks/release_audit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/ci_feedback.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/_rich_utils.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/anti_ai_flavor_cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/audit_cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/cache_handlers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/clone_cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/constants.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/coverage_ratchet_cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/docs_cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/formatting.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/gitignore_cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/handlers/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/handlers/advanced.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/handlers/ai_features.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/handlers/analytics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/handlers/changelog.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/handlers/config_handlers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/handlers/coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/handlers/docs_commands.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/handlers/documentation.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/handlers/health.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/handlers/main_handlers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/hypothesis_lock_cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/interactive.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/lifecycle_handlers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/mcp_cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/profile_handlers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/replay.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/semantic_handlers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/skills_cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/cli/version.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/clone/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/clone/classifier.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/clone/grouper.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/clone/refactor_engine.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/code_cleaner.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/config/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/config/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/config/ecosystem_synthesis.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/config/global_lock_config.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/config/hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/config/loader.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/config/mcp_settings_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/config/per_file_ignores.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/config/pip_audit_ignores.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/config/profile_loader.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/config/tool_commands.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/config/validators.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/contracts.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/ai_fix_event_bus.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/ai_fix_events.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/ai_fix_sinks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/async_workflow_orchestrator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/autofix_coordinator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/console.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/defaults.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/eventbridge_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/eventbridge_publisher.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/eventbridge_resolver.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/file_lifecycle.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/hypothesis_lock.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/language_detector.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/performance.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/performance_monitor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/phase_coordinator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/preflight.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/proactive_workflow.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/resource_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/retry.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/runtime_facts.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/self_heal/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/self_heal/l1_retry.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/self_heal/l2_noop.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/self_heal/l3_rule_store.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/service_watchdog.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/session_coordinator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/timeout_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/core/workflow_orchestrator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/data/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/data/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/data/models.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/data/repository.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/decorators/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/decorators/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/decorators/error_handling.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/decorators/error_handling_decorators.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/decorators/helpers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/decorators/patterns.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/docs/INDEX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/docs/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/docs/generated/api/API_REFERENCE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/docs/generated/api/CLI_REFERENCE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/docs/generated/api/CROSS_REFERENCES.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/docs/generated/api/PROTOCOLS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/docs/generated/api/SERVICES.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/documentation/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/documentation/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/documentation/ai_templates.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/documentation/docstring_enricher.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/documentation/docstring_extractor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/documentation/dual_output_generator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/documentation/mkdocs_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/documentation/reference_generator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/errors.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/exceptions/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/exceptions/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/exceptions/config.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/exceptions/plugin_trust_error.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/exceptions/tool_execution_error.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/executors/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/executors/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/executors/async_hook_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/executors/cached_hook_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/executors/hook_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/executors/hook_lock_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/executors/individual_hook_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/executors/process_monitor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/executors/progress_hook_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/executors/tool_proxy.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/anti_pattern.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/architecture.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/ast_transform/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/ast_transform/engine.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/ast_transform/exceptions.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/ast_transform/pattern_matcher.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/ast_transform/patterns/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/ast_transform/patterns/data_processing.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/ast_transform/patterns/decompose_conditional.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/ast_transform/patterns/early_return.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/ast_transform/patterns/extract_method.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/ast_transform/patterns/guard_clause.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/ast_transform/surgeons/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/ast_transform/surgeons/base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/ast_transform/surgeons/libcst_surgeon.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/ast_transform/surgeons/redbaron_surgeon.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/ast_transform/validator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/dead_code.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/dependency.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/documentation.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/dry.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/formatting.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/import_optimization.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/performance.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/planning.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/refactoring.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/refurb.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/security.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/semantic.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/test_creation.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/test_specialist.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/fixers/type_errors.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/hooks/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/hooks/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/integration/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/integration/adapter_learning.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/integration/akosha_learning.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/integration/git_metrics_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/integration/mahavishnu_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/integration/mahavishnu_learning.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/integration/oneiric_learning.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/integration/session_buddy_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/integration/session_buddy_mcp.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/integration/session_buddy_skills_compat.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/integration/skills_tracking.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/intelligence/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/interactive.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mahavishnu/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mahavishnu/mcp/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mahavishnu/mcp/tools/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mahavishnu/mcp/tools/git_analytics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mahavishnu/observability/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mahavishnu/observability/adapter_runtime.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mahavishnu/tenancy/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mahavishnu/tenancy/context_packs.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mahavishnu/workflows/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mahavishnu/workflows/progress.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/managers/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/managers/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/managers/async_hook_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/managers/constants.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/managers/hook_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/managers/publish_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/managers/test_command_builder.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/managers/test_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/managers/test_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/managers/test_progress.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/agent_schema.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/agents/bump-strategist.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/agents/crackerjack-specialist.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/agents/quality-strategist.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/cache.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/client_runner.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/context.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/health.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/oneiric_runtime.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/persistence.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/rate_limiter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/server_core.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/service_watchdog.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/signer_feed.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/skill_schema.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/skills_catalog/review-pr.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/skills_catalog/run-quality-checks.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/skills_catalog/smart-error-analysis.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/skills_catalog/version-bump.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/state.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/task_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/agent_registry.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/async_task_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/core_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/discover_query.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/doc_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/error_analyzer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/eventbridge_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/eventbridge_tools_wrapper.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/execution_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/health_tools_wrapper.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/language_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/monitoring_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/otel_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/proactive_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/profiles.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/progress_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/pycharm_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/semantic_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/skill_registry.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/utility_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/mcp/tools/workflow_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/memory/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/memory/git_metrics_collector.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/adapter_metadata.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/config.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/config_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/enums.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/fix_plan.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/git_analytics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/health_check.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/issues.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/protocols.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/pydantic_models.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/qa_config.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/qa_results.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/resource_protocols.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/results.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/semantic_models.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/session_metrics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/task.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/test_models.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/tool_config.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/models/validation_contracts.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/parsers/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/parsers/base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/parsers/factory.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/parsers/json_parsers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/parsers/lychee_parser.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/parsers/regex_parsers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/plugins/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/plugins/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/plugins/base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/plugins/hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/plugins/loader.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/plugins/managers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/py313.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/runtime/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/runtime/health_snapshot.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/runtime/oneiric_workflow.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/security/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/security/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/security/audit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/server.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/ai/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/ai/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/ai/advanced_optimizer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/ai/contextual_ai_assistant.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/ai/embeddings.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/ai/intelligent_commit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/ai/predictive_analytics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/ai_fix_progress.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/anomaly_detector.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/api_extractor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/backup_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/bounded_status_operations.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/cache.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/changelog_automation.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/command_execution_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/config_cleanup.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/config_integrity.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/config_merge.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/config_parsers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/config_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/config_template.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/connection_pool.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/constants.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/constitution.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/coverage_badge_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/coverage_ratchet.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/debug.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/dependency_analyzer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/doc_categorizer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/doc_update_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/documentation_cleanup.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/documentation_generator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/documentation_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/enhanced_filesystem.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/failure_metrics_repository.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/failure_recorder.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/file_chunker.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/file_filter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/file_hasher.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/file_io_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/file_modifier.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/filesystem.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/frontmatter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/frontmatter_validator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/git.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/git_cleanup_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/heatmap_generator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/import_resolution.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/improvement_generator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/improvement_overseer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/incremental_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/incremental_scanner.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/initialization.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/input_validator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/intelligent_commit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/log_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/logging.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/mahavishnu_discovery.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/marker_tracker.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/memory_aware_scanner.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/memory_optimizer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/mermaid_renderer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/message_deduplicator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/metrics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/metrics_old.py.bak4 +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/parallel_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/pattern_cache.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/pattern_detector.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/agents.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/code/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/code/detection.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/code/imports.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/code/paths.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/code/performance.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/code/replacement.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/core.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/documentation/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/documentation/badges_markdown.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/documentation/comments_blocks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/documentation/docstrings.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/formatting.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/operations.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/security/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/security/code_injection.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/security/credentials.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/security/path_traversal.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/security/unsafe_operations.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/templates.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/testing/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/testing/error_patterns.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/testing/pytest_output.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/tool_output/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/tool_output/bandit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/tool_output/other.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/tool_output/pyright.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/tool_output/ruff.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/url_sanitization.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/utilities.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/validation.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/patterns/versioning.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/pool_client.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/pool_orchestrator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/pool_router.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/pool_scaler.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/predictive_analytics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/profiler.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/prompt_evolution.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/pycharm_mcp_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/pypi_auth/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/pypi_auth/_auth.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/pypi_auth/_keyring.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/pypi_auth/_providers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/pypi_auth/_trusted_publishing.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/pypistats_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/quality/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/quality/anti_ai_flavor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/quality/anti_ai_flavor_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/quality/pattern_cache.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/quality/quality_baseline_enhanced.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/quality/quality_intelligence.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/refurb_fixer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/regex_patterns.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/regex_utils.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/safe_code_modifier.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/secure_path_utils.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/secure_status_formatter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/secure_subprocess.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/security.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/security_logger.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/self_patcher.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/server_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/smart_file_filter_v2.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/smart_scheduling.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/status_authentication.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/status_security_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/swarm_client.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/template_applicator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/template_detector.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/terminal_utils.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/testing/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/testing/coverage_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/testing/test_result_parser.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/testing/test_result_renderer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/thread_safe_status_collector.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/tool_filter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/tool_version_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/unified_config.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/validation_rate_limiter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/vector_store.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/version_analyzer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/version_checker.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/version_math.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/services/workflow_optimization.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/shell/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/shell/adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/shell/session_compat.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/skills/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/skills/comment_poster.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/skills/durable_queue.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/skills/github_client.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/skills/health.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/skills/review_metrics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/skills/review_pr.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/skills_signer/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/skills_signer/canonicalize.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/skills_signer/errors.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/skills_signer/keys.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/skills_signer/manifest.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/skills_signer/sign.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/skills_signer/verify.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/slash_commands/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/sop/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/sop/cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/sop/evolution.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/sop/models.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/sop/persisters.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/storage/migrations/V5__uuid7_contract__down.sql +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/storage/migrations/V5__uuid7_contract__up.sql +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/test_selection.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tests/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tests/checks/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tests/checks/test_gitignore_conformance.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tests/checks/test_release_audit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tests/test_runtime_facts.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/_git_utils.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/audit_type_checking_runtime_refs.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/check_added_large_files.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/check_ast.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/check_json.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/check_jsonschema.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/check_toml.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/check_yaml.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/codespell_wrapper.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/end_of_file_fixer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/fix_terminal.sh +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/format_json.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/linkcheckmd_wrapper.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/local_link_checker.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/mdformat_wrapper.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/no_conflict_markers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/trailing_whitespace.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/ty_audit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/ty_classify.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/ty_cleanup.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/ty_ignore_syntax.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/ty_imports.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/ty_narrow.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/ty_ratchet.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/validate_input_validator_patterns.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/tools/validate_regex_patterns.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/ui/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/ui/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/utils/console_utils.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/utils/error_handling.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/utils/issue_detection.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/utils/python_fixups.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/utils/retry_utils.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/utils/temp_file_cleanup.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/websocket/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/websocket/auth.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/websocket/server.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/crackerjack/websocket/tls_config.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/2025-02-12-multi-agent-ai-fix-quality-system-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/2026-02-12-v2-multi-agent-quality-system.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/2026-07-07-ai-fix-improvement-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/2026-07-11-ai-fix-e501-post-processor-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/2026-08-06-ai-fix-removal-external-loop-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/2026-08-06-ai-fix-removal-extraction.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/ADR-002-multi-agent-orchestration.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/ADR-005-agent-skill-routing.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AGENT_COORDINATION_ARCHITECTURE_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AGENT_COORDINATION_FIX_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AGENT_PERFORMANCE_TRACKING.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AGENT_TEST_COVERAGE_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_BUGS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_EXECUTION_TRACE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_EXPECTED_BEHAVIOR.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_FAILURE_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_INVESTIGATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_ISSUES_RESOLUTION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_METRICS_REVIEW.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_REFACTOR_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_TEST_FAILURE_IMPLEMENTATION_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AUDIT_RESULTS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/BATCHPROCESSOR_TROUBLESHOOTING.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/BATCHPROCESSOR_USER_GUIDE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/CHECKPOINT_ANALYSIS_2026-02-05.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/COMPLEXITY_REFACTORING_PLAN_GAMMA.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/COMPREHENSIVE_REMEDIATION_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/EXECUTIVE-SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/IMPLEMENTATION_STATUS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/PERFORMANCE_OPTIMIZATION_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/PROTOCOL_DOCUMENTATION_REVIEW.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/PROTOCOL_EXAMPLES.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/PROTOCOL_QUICK_REFERENCE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/PROTOCOL_REFERENCE_GUIDE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/PROVIDER_ARCHITECTURE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/QWEN_PROVIDER.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/README_AUDIT_REPORT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/REMEDIATION_PLAN_2026-02-05.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/SKILL_SYSTEM.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/STRUCTURED_LOGGING.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/TEST_IMPLEMENTATION_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/WARNING_AGENT_INTEGRATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/WARNING_SUPPRESSION_AGENT_DESIGN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/complexipy_adapter_fix.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/layer-6-agent-system.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/swarm-autofix-integration.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/test-coverage.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/MAHAVISHNU_POOL_INTEGRATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/MAHAVISHNU_POOL_QUICKSTART.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/ARCHITECTURE_IMPROVEMENTS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/ASYNC_ADAPTER_FALLBACK_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/COMPREHENSIVE_HOOKS_FAILURE_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/COMPREHENSIVE_HOOKS_UI_UX_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/COMPREHENSIVE_HOOKS_WORKFLOW_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/PHASE_3.3_SOLID_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/SESSION_CHECKPOINT_2025-01-22.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/SESSION_CHECKPOINT_2025-01-22_PT2.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/SESSION_CHECKPOINT_2025-01-30.legacy.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/SESSION_CHECKPOINT_2025-01-30.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/SESSION_CHECKPOINT_2025-02-08-POSTTASKS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/SESSION_CHECKPOINT_2025-02-08-PRETASKS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/SESSION_CHECKPOINT_2025-02-08.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/TEST_COVERAGE_IMPROVEMENT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/TEST_COVERAGE_PLAN_CORE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/TEST_COVERAGE_SERVICES_LAYER.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/ULID_MIGRATION_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/python-improvements-summary.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/analysis/test_selection.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/audits/AI_FIX_WORKFLOW_AUDIT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/audits/AUDIT_HOOKS_TOOLS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/audits/CLI_OPTIONS_AUDIT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/audits/COMPREHENSIVE_HOOKS_TIMEOUT_AUDIT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/audits/CONFIG_CONSOLIDATION_AUDIT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/audits/CROSS_PROJECT_CONFIG_AUDIT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/audits/MCP_SERVER_AUDIT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/audits/PROGRESS_BAR_AUDIT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/audits/comprehensive_hooks_audit.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completed-analyses/TEMPFILE_COVERAGE_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completed-analyses/TEMPFILE_JSON_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completed-analyses/TEST_OPTIMIZATION_SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completed-analyses/TEST_TIMEOUT_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completed-audits/DOCUMENTATION_AUDIT_REPORT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completed-audits/README-AUDIT-RESULTS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completed-planning/REFACTORING_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completed-planning/TEST_IMPROVEMENT_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completed-planning/refactoring_plan_test_management.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completed-projects/FINAL_PROJECT_SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completed-projects/IMPLEMENTATION_SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/AI_AGENT_IMPROVEMENTS_SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/AI_AGENT_PROMPT_IMPROVEMENTS_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/AI_FIX_CONVERGENCE_FIX_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/AI_FIX_DIAGNOSTIC_IMPROVEMENTS_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/ALIVE_PROGRESS_REMOVAL_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/COMPREHENSIVE_HOOKS_FIX_IMPLEMENTATION_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/COVERAGE_AUDIT_REPORT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/CRACKERJACK_ADMIN_SHELL_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/CRACKERJACK_TEST_SELECTION_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/DOCS_CONSOLIDATION_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/FULL_WORKFLOW_TEST_RESULTS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/OPERATIONAL_SIMPLIFICATION_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/OPERATIONAL_SIMPLIFICATION_SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/PHASE2_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/PHASES_1_AND_2_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/PHASE_1_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/PHASE_3.1_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/PHASE_3.3_CONFIGPARSER_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/PHASE_3.3_STATUS_ENUMS_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/PHASE_3.5_CODE_DUPLICATION_SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/PHASE_3_FINAL_STATUS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/PHASE_3_PROGRESS_SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/PHASE_3_UPDATE_COORDINATORS_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/SESSION_SUMMARY_2025-02-08.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/SESSION_SUMMARY_TIMEOUTS_CACHING_UX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/TESTMANAGER_REFACTORING_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/TEST_COVERAGE_EXPANSION_SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/TEST_COVERAGE_INIT_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/V2_INTEGRATION_SUCCESS_WITH_ISSUE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/V2_LAYER1_COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/completion-reports/complexity_refactoring_complete.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/docs/CLAUDE_MD_VALIDATION_IMPLEMENTATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/docs/CRACKERJACK_TEST_COVERAGE_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/docs/DOCS_CONSOLIDATION_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/docs/GIT_METRICS_COLLECTOR_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/docs/OPERATIONAL_SIMPLIFICATION_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/docs/PHASE_3_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/docs/REFACTORING_PLAN_NAMING.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/docs/TESTMANAGER_REFACTORING_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/ACB-AI-AGENT-INTEGRATION-DESIGN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/ACB-EVENT-BRIDGE-DESIGN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/ACB-MIGRATION-ABORT-CRITERIA.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/ACB-WORKFLOW-ARCHITECTURE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/ACB-WORKFLOW-INTEGRATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/ACB-WORKFLOW-MIGRATION-PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/ADAPTER_PROTOCOL_FIX_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/ADAPTER_TEST_COVERAGE_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/COMPLEXITY_REFACTORING_PLAN_2025-12-31.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/COMP_HOOKS_OPTIMIZATION_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/FAST_HOOKS_OPTIMIZATION_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/FINAL_ZUBAN_CONQUEST_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/MANAGER_TEST_IMPLEMENTATION_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/MIGRATION_AUDIT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/ONEIRIC_MIGRATION_EXECUTION_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/ONEIRIC_MIGRATION_STATUS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/PHASE-3-IMPLEMENTATION-PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/PHASE-4-IMPLEMENTATION-PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/PHASES-5-6-7-SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/PHASE_5-7_IMPLEMENTATION_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/PROTOCOL_DOCUMENTATION_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/PUBLISH-WORKFLOW-ORDERING-FIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/TEST-PARALLELIZATION-IMPLEMENTATION-SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/TEST-PARALLELIZATION-REVIEW.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/TEST-PARALLELIZATION-STRATEGIES.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/TOOLS_PARSERS_TEST_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/complexity_refactoring_plan.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/error_handling_refactoring_plan.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/health_check_implementation_plan.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/implementation-plan-logging-progress-fixes.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/refactoring-plan-complexity-violations.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-plans/workflow_orchestrator_refactoring_plan.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-reports/AGENT_TEST_DELIVERY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-reports/DOCS_CLEANUP_IMPLEMENTATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-reports/JSON_PARSING_IMPLEMENTATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-reports/TEST_AI_FIX_IMPLEMENTATION_JAN_2025.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-reports/TEST_AI_STAGE_IMPLEMENTATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-reports/progress-bar-implementation.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-reports/progress-indicator-analysis.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/implementation-reports/python-review-logging-progress-implementation.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/AI_FIX_ADAPTER_FIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/AI_FIX_ARCHITECTURAL_FIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/AI_FIX_BROKEN_PATTERNS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/AI_FIX_DEBUGGING_METHODOLOGY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/AI_FIX_DIAGNOSTIC_READY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/AI_FIX_DOCUMENTATION_LINKS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/AI_FIX_INVESTIGATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/AI_FIX_PRODUCTION_TEST_DEBUG.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/AI_FIX_REGRESSION_CORPUS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/AI_FIX_ROOT_CAUSE_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/AI_FIX_SAFETY_VALIDATION_IMPLEMENTED.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/AI_FIX_SHADOWING_DAMAGE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/AI_FIX_VALIDATION_ISSUES.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/MCP_SERVER_INVESTIGATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/bandit-performance-investigation.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/investigations/reporting_tools_investigation.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/ACB-WORKFLOW-PHASE2-COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/ACB-WORKFLOW-PHASE2-DEPENDENCY-MAP.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/ACB-WORKFLOW-PHASE2-PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/ACB-WORKFLOW-PHASE2-PROGRESS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/ACB-WORKFLOW-PHASE3-COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/ACB-WORKFLOW-PHASE4.0-COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/ACB-WORKFLOW-PHASE4.1-COMPLETE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/PHASE-2-REGRESSION-FIX-SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/PHASE-3-COMPLETION-SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/PHASE-4.2-COMPLETION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/PHASE-6-COMPLETION-SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/PHASE-6-IMPLEMENTATION-PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/PHASE-6-PERFORMANCE-OPTIMIZATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/PHASE-7-EVENT-BUS-INTEGRATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/PHASE-7.2-COMPLETION-SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/PHASE-7.3-COMPLETION-SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/PHASE2_OPTIMIZATION_SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/PHASE5B_PROGRESS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/phase-completions/PHASE5_TEST_FAILURE_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/session-artifacts/analyze_test_imports.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/session-artifacts/check_gitignore.v1.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/session-artifacts/session-handoff.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/session-artifacts/verify_connection_pool.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/AGENT_B_IMPORT_UNION_FIXES.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/AI_AGENT_CODE_GENERATION_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/AI_AGENT_FAILURE_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/AI_AGENT_LOGGING_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/CHECK_YAML_AI_FIX_BUG_FIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/COMPLEXIPY_PARSER_FIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/COMPREHENSIVE_HOOKS_TIMEOUT_FIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/CRACKERJACK_ADMIN_SHELL_TESTING.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/CRITICAL_FIXES_APPLIED.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/ERROR_DETAILS_DISPLAY_FIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/FIX_AI_FIX_PROGRESS_BAR.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/FIX_FALSE_HUNG_WARNINGS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/FIX_FROZEN_PROGRESS_DISPLAY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/FIX_JSON_LOGGING_CONSOLE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/PHASE_3_COMPLETE_100.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/PHASE_3_PROGRESS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/PHASE_3_PROGRESS_UPDATE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/RUFF_CHECK_AI_FIX_BUG_FIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/SESSION_SUMMARY_2025-02-11_FIXES.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/SESSION_SUMMARY_POST_TIMEOUT_FIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/SHELL_ADAPTER_FIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/TEST_FIXES_PHASES_1_AND_2.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/TEST_PARSING_FIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/ZUBAN_TYPE_CHECKING_FIXES.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/sprints-and-fixes/reporting_tools_fix.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/summaries/CHECKPOINT_2026-02-05_FINAL.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/summaries/TEST_COVERAGE_RESULTS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/temp-files/fix_broken_functions.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/temp-files/fix_indentation.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/temp-files/fix_test_imports.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/temp-files/plugins.json +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/ADMIN_SHELL.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/ARCHITECTURE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/CLI_REFERENCE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/DOCS_CLEANUP_GUIDELINES.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/DOCS_ORGANIZATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/ERROR_HANDLING_MIGRATION_GUIDE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/ERROR_HANDLING_STANDARD.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/HOOK_ISSUE_COUNT_DISPLAY_OPTIONS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/HOOK_ISSUE_COUNT_ROOT_CAUSE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/INTEGRAL_SCANNING_OPTIONS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/ISSUE_COUNT_BUGFIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/JSON_PARSING_ARCHITECTURE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/JSON_PARSING_PERFORMANCE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/MCP_GLOBAL_MIGRATION_GUIDE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/MCP_TOOLS_SPECIFICATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/MIGRATION_GUIDE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/MIGRATION_GUIDE_0.47.0.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/PERFORMANCE_DIAGRAMS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/PERFORMANCE_PHASE_2_1_REGEX_PRECOMPILATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/PROFILES_QUICK_REFERENCE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/PROTOCOL_DX_ASSESSMENT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/PYPROJECT_TIMEOUT_IMPLEMENTATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/QUALITY_SCANNING_STRATEGY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/QUICK_START.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/TEAM_COORDINATION_DIAGRAM.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/TOOLS_PARSERS_TEST_STATUS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/adr/ADR-001-mcp-first-architecture.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/adr/ADR-003-property-based-testing.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/adr/ADR-004-quality-gate-thresholds.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/adr/ADR-025-complexity-scanning-defaults.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/api/reference.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/architecture/MEMORY_ARCHITECTURE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/architecture/protocols.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/architecture/tool-profile-rationale.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/assets/images/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/audits/2026-06-12-furb-handler-audit-driver.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/audits/2026-06-12-furb-handler-audit.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/audits/2026-06-28-tests-ty-audit.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/audits/2026-08-03-crackerjack-orphan-stashes.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/audits/2026-09-09-crackerjack-docs-audit.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/decisions/.archive/sprints-and-fixes/SKILLS_METRICS_ARCHITECTURE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/decisions/2026-10-10-env-prefix-decision.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/design/FIX_STRATEGY_MEMORY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/design/SKILL_METRICS_IMPLEMENTATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/design/SKILL_METRICS_MIGRATION_GUIDE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/design/SKILL_METRICS_QUICK_REFERENCE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/design/SKILL_METRICS_STORAGE_SCHEMA.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/design/SKILL_METRICS_TRANSACTION_PATTERNS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/development/STRUCTURED_LOGGING.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/development/SYMBOL_DISPLAY_CRITICAL_FIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/development/SYMBOL_DISPLAY_IMPLEMENTATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/diagrams/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/diagrams/adapter-taxonomy.png +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/diagrams/ai-agent-orchestration.png +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/diagrams/oneiric-workflow-dag.png +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/diagrams/pattern-management.png +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/diagrams/quality-hooks.png +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/diagrams/security-threat-model.png +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/examples/git_semantic_search_examples.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/feature-tracking/TEMPLATE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/features/AI_FIX_PROGRESS_BAR_REDESIGN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/features/GIT_SEMANTIC_SEARCH_MCP_TOOLS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/features/MAHAVISHNU_INTEGRATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/features/PARALLEL_EXECUTION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/features/PHASE2_OPTIMIZATION_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/features/PHASE_3_LEARNING_QUICK_REFERENCE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/features/QA_RESULT_INTEGRATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/features/SKILLS_INTEGRATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/features/SYMBIOTIC_ECOSYSTEM_INTEGRATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/features/WORKFLOW_OPTIMIZATION_USER_GUIDE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/fixes/test-executor-working-directory-fix.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/followups/2026-07-04-tier3-implementation-plan.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/followups/2026-09-14-delete-dhara-mcp-client-after-decomposition.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/followups/2026-09-18-mcp-subcommand-only.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/followups/triage/2026-07-10-output-validator-import-check.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/followups/triage/2026-07-10-refactoring-agent-ast-fallback.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/followups/triage/2026-07-10-validation-coordinator-concurrency.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/guides/AGENTS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/guides/CLAUDE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/guides/contributing.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/guides/progressive-complexity.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/guides/testing.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/ARGUMENT_LIST_TOO_LONG_FIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/AUDIT_HOOKS_TOOLS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/CONFIG_CONSOLIDATION_AUDIT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/CROSS_PROJECT_CONFIG_AUDIT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/ERROR_DETAILS_DISPLAY_FIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/FINAL_IMPLEMENTATION_SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/HOOK_ISSUE_COUNT_DISPLAY_OPTIONS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/HOOK_ISSUE_COUNT_FIX_SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/HOOK_ISSUE_COUNT_ROOT_CAUSE.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/HOOK_REPORTING_ANALYSIS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/HOOK_REPORTING_FIX_SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/IMPLEMENTATION_PLAN_ALL_FILES.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/ISSUE_COUNT_SUMMARY_TOTAL_FIX.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/PHASE5_SERVICE_CONSOLIDATION_AUDIT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/TEST_IMPROVEMENT_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/UNIFIED_IMPLEMENTATION_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation/git_semantic_search_implementation.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation-plans/enhanced-test-error-reporting.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/implementation-status.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/index.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/operations/reindex.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/patterns/ONEIRIC_SKILLS_INTEGRATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/performance/CONNECTION_POOL_IMPLEMENTATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/performance/PHASE_2.2_COMPLETION_REPORT.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/performance-baseline.json +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/performance-baseline.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/.archive/2025-02-12-multi-agent-ai-fix-quality-system.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/.archive/2026-02-22-ast-transform-engine-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/.archive/2026-05-30-ai-fix-dashboard-wiring.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/.archive/2026-06-27-ty-cleanup-and-ai-fix.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/.archive/2026-07-06-ai-fix-tier-architecture.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/.archive/2026-08-06-ai-fix-external-loop.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/.archive/2026-08-11-bodai-coverage-ratchet-followups.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/.archive/2026-08-11-bodai-coverage-ratchet-standard.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/.archive/2026-08-11-skill-coverage-out-of-fast-hooks.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/.archive/2026-09-07-crackerjack-multi-language-phase1.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/.archive/2026-09-07-crackerjack-multi-language-phase2.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/.archive/2026-09-07-crackerjack-multi-language-phase3.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/.archive/2026-09-07-crackerjack-multi-language-phase4.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/.archive/AI_FIX_IMPROVEMENT_PLAN.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-05-20-phase-0-event-bus-plan.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-06-02-ai-fix-display-loop-bugs.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-06-03-dhara-mcp-migration.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-06-29-ty-ratchet-cleanup.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-07-08-fix-sandbox-integration.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-07-10-libcst-surgeon-extract-method-fallback.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-07-10-output-validator-traceback-details.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-07-10-validation-coordinator-serialization.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-07-11-ai-fix-e501-post-processor.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-07-11-ai-fix-no-op-circuit-breaker.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-07-11-ai-fix-regen-timeout.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-07-12-eventbridge-publisher.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-08-06-ai-fix-external-loop.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-08-06-crackerjack-ruff-fix-policy.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-08-10-ai-fix-loop-task-1-kickoff.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-08-11-darnlink-replaces-check-local-links.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-09-07-bodai-shared-gitignore-snippet.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-10-10-crackerjack-oneiric-loader-migration.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/2026-10-11-remove-zuban-skylos-lsp-from-crackerjack.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase2-a11y.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase2-api.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase2-mcp.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase2-security.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase2-simplification.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase2-swift.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase2-testing.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase2-writing.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase3-a11y.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase3-api.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase3-kotlin.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase3-mcp.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase3-security.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase3-simplification.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase3-testing.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase3-writing.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase4-a11y.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase4-api.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase4-integration.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase4-mcp.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase4-security.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase4-simplification.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase4-testing.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase4-web.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/plans/reviews/2026-09-07-phase4-writing.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/profile_batch_processor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/prompts/symbiotic-ecosystem-integration.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/pytest_warning_parser_example.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/quality/gates.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/refactoring/TASK_4.3_NAMING_CONVENTIONS.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reference/ADAPTER_UUID_REGISTRY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reference/AI_FIX_QUALITY_QUICKSTART.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reference/BREAKING_CHANGES.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reference/CHANGELOG.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reference/CONFIGURATION.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reference/COVERAGE_POLICY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reference/SECURITY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reference/admin-shell.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reference/service-dependencies.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/refurb_creosote_behavior.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reviews/layer-1-cli-handlers.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reviews/layer-2-services.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reviews/layer-3-managers.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reviews/layer-4-coordinators.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reviews/layer-5-orchestration.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reviews/layer-7-adapters.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/reviews/layer-8-mcp-integration.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/run_agent_tests.sh +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/runbooks/H11_self_patcher_deny_paths.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/schemas/document-frontmatter-v1.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/2026-05-20-ai-fix-comprehensive-overhaul-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/2026-06-03-dhara-mcp-migration-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/2026-06-29-ty-ratchet-cleanup-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/2026-07-08-fix-sandbox-integration-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/2026-07-10-libcst-surgeon-extract-method-fallback-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/2026-07-10-output-validator-traceback-details-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/2026-07-10-validation-coordinator-serialization-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/2026-07-11-ai-fix-no-op-circuit-breaker-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/2026-07-11-ai-fix-regen-timeout-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/2026-08-06-crackerjack-ruff-fix-policy-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/2026-08-11-bodai-coverage-ratchet-standard-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/2026-09-07-crackerjack-multi-language-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/2026-10-10-crackerjack-oneiric-loader-migration-design.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/reviews/2026-09-07-a11y.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/reviews/2026-09-07-api.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/reviews/2026-09-07-jinja.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/reviews/2026-09-07-kotlin.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/reviews/2026-09-07-mcp.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/reviews/2026-09-07-python.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/reviews/2026-09-07-simplification.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/reviews/2026-09-07-swift.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/reviews/2026-09-07-testing.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/reviews/2026-09-07-web.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/specs/reviews/2026-09-07-writing.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/symbiotic-ecosystem-quick-start.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/task-breakdown.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/test_dead_code_agent_validation.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/docs/zensical.yaml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/akosha_git_search_demo.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/backup_system_demo.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/custom_hook_plugin.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/decorator_usage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/enhanced_monitor_demo.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/enhanced_monitor_demo_fixed.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/enhanced_progress_example.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/mcp_client_example.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/plugin_config.json +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/skills_tracking/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/skills_tracking/example_1_basic_tracking.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/skills_tracking/example_2_recommendations.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/skills_tracking/example_3_workflow_aware.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/skills_tracking/example_4_error_handling.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/slash_command_progress_example.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/test_progress_display.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/examples/timeout_handling_example.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/mahavishnu/core/events/confidence_ceiling.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/mahavishnu/tests/unit/test_confidence_ceiling.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/mypy.ini +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/node_modules/.gitkeep +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/ops/crontab.example +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/package-lock.json +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/package.json +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/_frontmatter_apply_C1.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/_frontmatter_restore_C2.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/audit_command_consistency.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/benchmark_performance.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/benchmark_regex_precompilation.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/create_test_templates.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/docs_cleanup.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/integrate_resource_management.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/migrate_skills_to_sessionbuddy.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/migrate_ulids.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/performance_benchmark.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/precompile_regex_parsers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/precompile_regex_test_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/profile_hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/quick_fix_type_errors.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/regenerate_plan_index.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/rollback_skills_migration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/run_coverage_audit.sh +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/run_ulid_migration.py.bak3 +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/session_cleanup.sh +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/update_test_manager_regex_usage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/validate_imports.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/scripts/validate_skills_migration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/settings/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/settings/adapters.yaml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/settings/local.yaml.example +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/settings/minimax.example.yaml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/settings/profiles/comprehensive.yaml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/settings/profiles/quick.yaml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/settings/profiles/standard.yaml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/settings/qwen.example.yaml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/templates/GITIGNORE_BODAI.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/templates/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/templates/api_reference.md.template +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/templates/changelog_entry.md.template +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/templates/pyproject-full.toml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/templates/pyproject-library.toml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/templates/pyproject-minimal.toml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/templates/user_guide.md.template +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/TESTING_GUIDELINES.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/kotlin/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/kotlin/_gradle_helpers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/kotlin/test_git_backend.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/kotlin/test_gradle_vanilla_fixture.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/kotlin/test_hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/kotlin/test_kotlin_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/kotlin/test_lifecycle.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/kotlin/test_version_source.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/python/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/python/test_hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/python/test_lifecycle.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/python/test_python_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/python/test_version_source.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/swift/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/swift/_git_helpers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/swift/test_git_backend.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/swift/test_hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/swift/test_lifecycle.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/swift/test_platforms.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/swift/test_swift_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/swift/test_version_source.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_adapter_registry.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_ai_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_bandit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_benchmark_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_codespell.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_complexipy.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_creosote.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_factory.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_health_mixin.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_mdformat.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_osv_scanner.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_osv_scanner_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_output_paths.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_pyscn.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_pyscn_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_refurb_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_registry.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_ruff.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_sast_base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_scalene.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_semgrep.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_tool_adapter_base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_treesitter_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_type_adapters.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/test_vulture.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/type/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/type/test_pyright.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/web/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/web/test_detection.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/web/test_hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/web/test_jinja_formatter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/web/test_web_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/adapters/web/test_web_vanilla_fixture.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/base_test.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/checks/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/checks/test_release_audit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/cli/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/cli/handlers/test_docs_commands.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/cli/handlers/test_health_handler.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/cli/handlers/test_main_handlers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/cli/test_base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/cli/test_cache_handlers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/cli/test_clone_cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/cli/test_coverage_ratchet_cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/cli/test_lifecycle_handlers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/cli/test_profile_handlers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/cli/test_rich_utils.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/cli/test_semantic_handlers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/cli/test_separator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/config/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/config/test_loader.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/config/test_pip_audit_ignores.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/config/test_validators.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/conftest.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/conftest_extensions.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/conftest_reset.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/self_heal/test_l2_noop.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/test_async_workflow_orchestrator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/test_console.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/test_eventbridge_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/test_file_lifecycle.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/test_language_detector.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/test_plan_index_sync_phase.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/test_proactive_workflow.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/test_retry.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/test_safe_directory_creator_unit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/test_self_heal.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/test_session_controller.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/test_timeout_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/core/test_workflow_orchestrator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/data/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/data/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/data/comments_sample.txt +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/data/docstrings_sample.txt +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/data/expected_comments_sample.txt +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/data/init.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/data/test_repository.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/docs/HEALTH_METRICS_TESTING_SUMMARY.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/docs/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/e2e/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/e2e/test_bodai_ratchet_adoption.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/e2e/test_review_pr_e2e.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/exceptions/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/exceptions/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/exceptions/test_config.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/exceptions/test_tool_execution_error.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/executors/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/executors/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/executors/test_cached_hook_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/executors/test_hook_executor_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/executors/test_no_issues_for_failed_hook.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/executors/test_process_monitor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/executors/test_progress_hook_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/ast_transform/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/ast_transform/patterns/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/ast_transform/patterns/test_early_return.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/ast_transform/surgeons/test_libcst_surgeon.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_anti_pattern.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_architecture.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_dead_code.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_dependency.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_documentation.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_dry.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_formatting.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_import_optimization.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_performance.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_planning.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_refactoring.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_refurb.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_security.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_semantic.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_test_creation.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_test_specialist.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixers/test_type_errors.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/_tool_groups_mapping.json +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/_tool_registry_keys.json +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/full/tool_names.json +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/gradle-vanilla/build.gradle.kts +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/gradle-vanilla/gradle.properties +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/gradle-vanilla/settings.gradle.kts +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/gradle-vanilla/src/main/kotlin/Hello.kt +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/jinja-templates/basic.html.j2 +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/jinja-templates/basic.html.j2.expected +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/jinja-templates/custom_delimiters.html.j2 +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/jinja-templates/custom_delimiters.html.j2.expected +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/jinja-templates/whitespace.html.j2 +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/jinja-templates/whitespace.html.j2.expected +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/swift-lib/Package.swift +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/swift-lib/Sources/SwiftLib/SwiftLib.swift +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/web-vanilla/.eslintrc.json +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/web-vanilla/.stylelintrc.json +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/web-vanilla/package.json +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/web-vanilla/src/app.ts +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/web-vanilla/src/index.html +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/web-vanilla/src/style.css +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/web-vanilla/templates/basic.html +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/web-vanilla/templates/custom_delimiters.html +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/web-vanilla/templates/whitespace.html +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/fixtures/web-vanilla/tsconfig.json +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/adapters/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/adapters/test_adapter_parser_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/core/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/core/test_performance_monitor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/core/test_phase_coordinator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/core/test_resource_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/mcp/test_async_task_result_store.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/mcp/test_common_mcp_client.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_adapter_learning.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_ai_fix_loop_acceptance.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_akosha_learning.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_async_task_result_store_e2e.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_eventbridge_e2e.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_get_agent_e2e.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_git_metrics_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_health_e2e.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_list_agents_e2e.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_mahavishnu_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_migration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_oneiric_transport_roundtrip.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_phase_coordinator_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_review_pr.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_sandboxed_fix.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_session_buddy_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_skills_cli_e2e.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/test_tier_architecture_e2e.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/tools/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/integration/tools/test_tool_parser_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/managers/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/managers/test_constants.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/managers/test_managers_constants.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/managers/test_publish_gitignore_autosync.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/managers/test_test_executor_regex.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/managers/test_test_manager_ratchet.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/mcp/test_client_runner.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/mcp/test_error_analyzer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/mcp/test_service_watchdog.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/mcp/test_task_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/mcp/tools/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/mcp/tools/test_eventbridge_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/mcp/tools/test_language_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/mcp_test_helpers/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/mcp_test_helpers/tools/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/mcp_test_helpers/tools/test_execution_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/mcp_test_helpers/tools/test_monitoring_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/mcp_test_helpers/tools/test_pycharm_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/mcp_test_helpers/tools/test_semantic_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/mcp_test_helpers/tools/test_workflow_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/memory/test_git_metrics_collector.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_adapter_metadata.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_enums.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_fix_plan.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_git_analytics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_health_check.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_protocols.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_qa_config.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_qa_results.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_resource_protocols.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_results.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_semantic_models.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_session_metrics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_task.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_test_models.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_tool_config.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/models/test_validation_contracts.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/parsers/test_complexipy_parser.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/parsers/test_json_parsers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/parsers/test_json_parsers_extended.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/parsers/test_json_parsers_gaps.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/parsers/test_lychee_parser.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/parsers/test_parser_factory.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/parsers/test_ruff_parser_edge_cases.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/performance/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/performance/test_core_performance.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/property/test_quality_property.py.disabled +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/run_tests.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/scripts/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/scripts/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/scripts/run_test_suite.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/patterns/core_test.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/pypi_auth/test_trusted_publishing.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/quality/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/quality/test_anti_ai_flavor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/quality/test_anti_ai_flavor_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/quality/test_pattern_cache.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_anomaly_detector.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_async_file_io.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_backup_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_cache.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_config_integrity.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_coverage_badge_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_coverage_ratchet.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_file_chunker.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_file_filter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_file_hasher.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_file_io_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_file_modifier.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_filesystem.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_git.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_import_resolution.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_improvement_overseer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_incremental_scanner.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_input_validator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_intelligent_commit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_logging.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_marker_tracker.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_memory_aware_scanner.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_pattern_cache.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_pool_client.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_pool_orchestrator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_pool_router.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_pool_scaler.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_prompt_evolution.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_regex_patterns.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_regex_patterns_reexports.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_safe_code_modifier.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_secure_subprocess.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_smart_file_filter_v2.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_swarm_client.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_thread_safe_status_collector.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_version_math.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/services/test_workflow_optimization.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/sop/test_cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test___main__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test__git_utils.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_actual_semgrep.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_api.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_async_hook_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_async_hook_executor_concurrency.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_async_hook_executor_parsing.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_async_hook_executor_process_tracking.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_async_hook_executor_ty.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_async_semgrep.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_autofix_coordinator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_changelog_generation.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_changelog_preview_escape.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_check_added_large_files.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_check_ast.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_check_json.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_check_toml.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_check_yaml.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_ci_feedback.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_claude_simple.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_cli/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_cli/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_cli/test_global_lock_options.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_cli_entry_point.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_code_cleaner_comprehensive.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_command_execution_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_config_cleanup.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_config_cleanup_drift_repair.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_config_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_console.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_contracts_reexports.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_core_performance.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_data_models.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_decorators.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_decorators_utils.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_doc_drift.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_doc_updates.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_docs_site/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_docs_site/site/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_docs_site/site/docs/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_docs_site/site/docs/api-reference.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_docs_site/site/docs/getting-started.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_docs_site/site/docs/index.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_docs_site/site/docs/stylesheets/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_docs_site/site/docs/stylesheets/extra.css +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_docs_site/site/mkdocs.yml +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_docstring_conversion.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_documentation_cleanup.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_dual_output_generator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_edge_cases.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_enhanced_filesystem.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_enhanced_filesystem_comprehensive.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_enhanced_filesystem_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_enhanced_reporting.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_error_handling.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_error_handling_decorators.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_errors.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_executors/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_executors/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_executors/test_lock_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_fast_hooks_behavior.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_fast_iteration_mode.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_file_io_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_file_lifecycle.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_filesystem_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_final_validation.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_git_cleanup.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_global_lock_config.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_health_check.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_hook_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_hook_lock_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_hook_manager_simple.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_incremental_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_individual_hook_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_initialization_precommit_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_initialization_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_input_validation.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_integration_new_hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_interactive.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_json_hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_large_modules_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_mcp_core_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_mcp_monitoring_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_mcp_semantic_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_mcp_server.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_mcp_server_handlers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_mcp_utility_tools.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_mcp_workflow_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_mkdocs_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_models_comprehensive.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_models_config_adapter_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_models_focused.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_models_task_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_modernized_code.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_performance.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_performance_monitor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_phase2_scenarios.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_phase_coordinator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_plugins_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_proactive_workflow.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_profiler.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_profiler_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_property_based.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_publish_manager_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_publish_workflow.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_py313.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_qa_adapters_protocol_compliance.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_qa_config_models.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_qa_tool_adapters.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_qa_utility_check_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_reference_generator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_regex_patterns.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_resource_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_retry.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_secure_path_utils.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_security_audit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_security_hardening.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_semgrep_parsing.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_semgrep_parsing_after_refactor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_server_panels.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_services_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_session_buddy_git_metrics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_session_coordinator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_session_coordinator_comprehensive.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_session_coordinator_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_shared_contracts.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_simple_workflow.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_skills_signer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_skip_hooks_functionality.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_skip_hooks_simple.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_structured_logging.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_syntax_validation.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_terminal_restoration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_terminal_state.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_test_command_builder_workers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_test_selection.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_timeout_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_timeout_system.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_tool_filter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_updated_semgrep.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_validate_input_validator_patterns.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_validate_regex_patterns.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_validate_regex_patterns_tool.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_version_analyzer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_version_bump_analyzer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_websocket_auth.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_workflow_fast_hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_workflow_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/test_workflow_orchestrator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_check_added_large_files.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_check_ast.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_check_json.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_check_jsonschema.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_check_toml.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_check_yaml.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_codespell_wrapper.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_end_of_file_fixer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_format_json.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_linkcheckmd_wrapper.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_local_link_checker.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_mdformat_wrapper.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_no_conflict_markers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_trailing_whitespace.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_ty_audit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_ty_classify.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_ty_cleanup.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_ty_imports.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_ty_narrow.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_ty_ratchet.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/tools/test_validate_input_validator_patterns.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/README.md +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/complexity/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/complexity/test_complexipy.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/performance/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/performance/test_scalene_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/refactor/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/refactor/test_refurb.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/test_bandit_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/test_betterleaks_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/test_cohesion_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/test_factory.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/test_pymetrica_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/test_pyrefly_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/test_pyscn_cc_suppression.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/test_refurb_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/test_ruff_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/test_sast_base_direct.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/test_semgrep_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/adapters/test_syrupy_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/cli/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/cli/handlers/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/cli/handlers/test_analytics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/cli/test_anti_ai_flavor_cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/cli/test_audit_skills.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/cli/test_docs_cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/cli/test_facade.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/cli/test_options_allow_unsafe.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/cli/test_pr0_replay.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/cli/test_rich_utils.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/cli/test_skills_refresh.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/cli/test_version.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/clone/test_clone_grouper.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/clone/test_extraction_classifier.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/clone/test_refactor_engine.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/config/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/config/test_ai_settings.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/config/test_eventbridge_settings.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/config/test_hook_definition_allow_unsafe.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/config/test_hook_settings_ruff_unsafe.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/config/test_hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/config/test_per_file_ignores.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/config/test_pip_audit_ignores.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/config/test_tool_commands_ruff_unsafe.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/conftest.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/core/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/core/test_adapter_learning_integration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/core/test_autofix_coordinator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/core/test_eventbridge_resolver.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/core/test_phase_coordinator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/core/test_phase_coordinator_additional.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/core/test_phase_coordinator_flows.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/core/test_phase_coordinator_set_event_publisher.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/core/test_pr0_crash_recovery.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/core/test_preflight.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/core/test_resource_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/core/test_session_coordinator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/core/test_session_coordinator_enhanced.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/core/test_structured_data_parser.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/core/test_workflow_pipeline_eventbridge_wiring.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/crackerjack/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/crackerjack/hooks/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/decorators/test_error_handling.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/decorators/test_error_handling_decorators.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/decorators/test_patterns.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/documentation/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/documentation/test_docstring_enricher.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/documentation/test_docstring_extractor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/exceptions/test_tool_execution_error.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/handlers/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/integration/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/mahavishnu/tenancy/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/mahavishnu/tenancy/test_tenant_context_packs.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/managers/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/managers/test_async_orchestration.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/managers/test_failure_parsing.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/managers/test_hook_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/managers/test_hook_manager_extended.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/managers/test_publish_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/managers/test_publish_manager_extended.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/managers/test_publish_manager_gaps.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/managers/test_publish_manager_pyi_auth.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/managers/test_quality_execution.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/managers/test_test_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/managers/test_test_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/managers/test_test_manager_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/managers/test_test_progress.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/managers/test_xdist_fallback.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/mcp/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/mcp/test_async_task_persistence.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/mcp/test_mcp_tool_drift.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/mcp/test_otel_tools_query_local_traces.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/mcp/test_rate_limiter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/mcp/test_reap_zombies.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/mcp/test_state.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/mcp/tools/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/mcp/tools/test_search_code.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/mcp/tools/test_search_semantic.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/models/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/models/fixtures/json_output_v1.json +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/models/test_issues.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/parsers/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/parsers/test_base.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/parsers/test_factory.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/parsers/test_json_parsers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/parsers/test_lychee_parser.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/parsers/test_regex_parsers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/qa/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/qa/test_quality_metrics.py.disabled +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/runtime/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/runtime/test_oneiric_workflow.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/ai/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/ai/test_advanced_optimizer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/ai/test_ai_contextual_assistant.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/ai/test_ai_embeddings.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/ai/test_ai_intelligent_commit.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/ai/test_ai_predictive_analytics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/conftest.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/quality/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/quality/test_anti_ai_flavor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/quality/test_anti_ai_flavor_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/quality/test_quality_baseline_enhanced.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/quality/test_quality_intelligence.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_api_extractor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_changelog_automation.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_config_parsers_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_config_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_config_service_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_config_template_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_config_template_ruff_unsafe.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_connection_pool.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_connection_pool_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_coverage_ratchet.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_debug.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_dependency_analyzer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_documentation_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_enhanced_filesystem.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_failure_recorder.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_failure_trend_noise_gate.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_filesystem.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_git.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_git_cleanup.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_heatmap_generator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_import_resolution.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_import_resolution_direct.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_improvement_generator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_input_validator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_keyring_raw.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_log_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_mahavishnu_discovery.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_memory_optimizer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_message_deduplicator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_metrics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_parallel_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_pattern_detector.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_predictive_analytics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_pypi_auth.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_pypi_auth_providers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_pypistats_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_regex_utils.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_safe_code_modifier.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_secure_status_formatter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_secure_subprocess.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_security.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_security_logger.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_self_patcher.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_self_patcher_deny_paths.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_smart_scheduling_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_status_security.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_thread_safe_status_collector.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_tool_version_service.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_tool_version_service_direct.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_validation_rate_limiter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_vector_store.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_vector_store_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_version_analyzer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_version_checker_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/test_version_math.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/testing/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/testing/test_coverage_manager.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/testing/test_test_result_parser_statistics.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/services/testing/test_test_result_renderer.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/shell/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/shell/test_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/shell/test_adapter_runners.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/shell/test_session_compat.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/skills/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/skills/test_health.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_adapter_observability.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_agent_metadata_schema.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_api.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_audit_type_checking_runtime_refs.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_bodai_build_system_guard.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_cli_comprehensive.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_code_cleaner.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_comprehensive_type_hooks.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_config_settings.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_conftest_reset.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_constants.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_contracts.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_coverage_targets.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_defaults.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_discover_query.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_discover_tools_deletion.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_doc_cli.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_error_scenarios.py.disabled +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_eventbridge_adapter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_eventbridge_publisher.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_frontmatter_validator.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_hook_executor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_hypothesis_lock.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_lychee_hook.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_mermaid_renders.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_model_helpers.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_parallel_workflow.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_phase_task_verbose.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_process_monitor.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_profile_loader.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_progress_snapshots.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_safe_typer_loader.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_skill_metadata_schema.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_sop_evolution.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_timeout_manager_enhanced.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_tool_profile.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_validate_frontmatter.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_version_runtime_sync.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_websocket_auth.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/test_websocket_server.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/tools/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/tools/test_check_json.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/tools/test_check_toml.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/tools/test_check_yaml.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/tools/test_codespell_wrapper.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/tools/test_git_utils.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/tools/test_mdformat_wrapper.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/tools/test_tools_coverage.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/tools/test_ty_ignore_syntax.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/utils/__init__.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/unit/utils/test_issue_detection.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/utils/issue_detection_test.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/websocket/test_server.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/tests/websocket/test_tls_config.py +0 -0
- {crackerjack-0.89.2 → crackerjack-0.91.0}/zensical.toml +0 -0
|
@@ -10,6 +10,33 @@ blocks_on: []
|
|
|
10
10
|
topic: changelog
|
|
11
11
|
---
|
|
12
12
|
|
|
13
|
+
## [0.91.0] - 2026-10-20
|
|
14
|
+
|
|
15
|
+
### Added
|
|
16
|
+
|
|
17
|
+
- crackerjack: Dispatch plan_index_sync to oneiric.plan_index via feature flag
|
|
18
|
+
|
|
19
|
+
### Fixed
|
|
20
|
+
|
|
21
|
+
- crackerjack: Drop redundant bool() cast on already-Pydantic-bool setting
|
|
22
|
+
|
|
23
|
+
### Internal
|
|
24
|
+
|
|
25
|
+
- deps: Bump oneiric>= to 0.33 (plan_index library floor)
|
|
26
|
+
|
|
27
|
+
## [0.90.0] - 2026-10-19
|
|
28
|
+
|
|
29
|
+
### Added
|
|
30
|
+
|
|
31
|
+
- crackerjack: Adopt OneiricSettings.substrate for cache + pool fields (Phase E2 substrate rollout)
|
|
32
|
+
- crackerjack: FallbackChainCodeFixer uses oneiric BifrostLLMRouter (plan 6, phase 5)
|
|
33
|
+
- crackerjack: Wire oneiric_report_runtime component-boot hook per oneiric-substrate umbrella Phase 3 (2026-10-18)
|
|
34
|
+
|
|
35
|
+
### Internal
|
|
36
|
+
|
|
37
|
+
- Crackerjack slice — finish residual ollama strings (plan 5)
|
|
38
|
+
- deps: Bump fastmcp pin to >=4.0.0,<5 (operator correction 2026-10-18)
|
|
39
|
+
|
|
13
40
|
## [0.89.2] - 2026-10-16
|
|
14
41
|
|
|
15
42
|
### Added
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: crackerjack
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.91.0
|
|
4
4
|
Summary: Crackerjack Python project management tool
|
|
5
5
|
Project-URL: documentation, https://github.com/lesleslie/crackerjack
|
|
6
6
|
Project-URL: homepage, https://github.com/lesleslie/crackerjack
|
|
@@ -29,7 +29,7 @@ Requires-Dist: creosote>=5.2.0
|
|
|
29
29
|
Requires-Dist: cryptography>=50.0.2
|
|
30
30
|
Requires-Dist: docstring-to-markdown>=0.17
|
|
31
31
|
Requires-Dist: fastapi>=0.142.2
|
|
32
|
-
Requires-Dist: fastmcp
|
|
32
|
+
Requires-Dist: fastmcp<5,>=4.0.0
|
|
33
33
|
Requires-Dist: hatchling>=1.32.4
|
|
34
34
|
Requires-Dist: httpx2>=2.13.1
|
|
35
35
|
Requires-Dist: hypothesis>=6.168.3
|
|
@@ -42,7 +42,7 @@ Requires-Dist: mcp-common>=0.30.2
|
|
|
42
42
|
Requires-Dist: mdformat-ruff>=0.1.3
|
|
43
43
|
Requires-Dist: mdformat>=1.0.0
|
|
44
44
|
Requires-Dist: numpy>=2.5.3
|
|
45
|
-
Requires-Dist: oneiric>=0.
|
|
45
|
+
Requires-Dist: oneiric>=0.33
|
|
46
46
|
Requires-Dist: pydantic>=2.13.5
|
|
47
47
|
Requires-Dist: pyleak>=0.2.0
|
|
48
48
|
Requires-Dist: pymetrica>=1.6.0
|
|
@@ -7,6 +7,8 @@ from uuid import UUID
|
|
|
7
7
|
|
|
8
8
|
from mcp_common.llm import FallbackChain
|
|
9
9
|
from mcp_common.llm.config import LLMSettings, ProviderConfig
|
|
10
|
+
from oneiric.adapters.llm.bifrost import get_router
|
|
11
|
+
from oneiric.adapters.llm.llm_interface import LLMProvider
|
|
10
12
|
|
|
11
13
|
from crackerjack.adapters.ai.base import BaseCodeFixer, BaseCodeFixerSettings
|
|
12
14
|
from crackerjack.models.adapter_metadata import AdapterStatus
|
|
@@ -47,12 +49,36 @@ _DEFAULT_PROVIDERS: dict[str, dict[str, t.Any]] = {
|
|
|
47
49
|
class FallbackChainSettings(BaseCodeFixerSettings):
|
|
48
50
|
model: str = "MiniMax-M2.7"
|
|
49
51
|
task_type: str = "code_generation"
|
|
50
|
-
llama_server_url: str = "http://localhost:
|
|
52
|
+
llama_server_url: str = "http://localhost:8081"
|
|
51
53
|
|
|
52
54
|
|
|
53
55
|
def _build_llm_settings() -> LLMSettings:
|
|
56
|
+
# Phase 5 (REQ-BIFROST-010, bifrost plan §5): the OPENAI-compatible
|
|
57
|
+
# ``minimax`` provider's ``base_url`` comes from the oneiric
|
|
58
|
+
# ``BifrostLLMRouter`` singleton. When the router is enabled and
|
|
59
|
+
# routes OPENAI, the provider transparently hits the local
|
|
60
|
+
# Bifrost gateway (which forwards to the upstream cloud);
|
|
61
|
+
# when the router returns ``None`` (gateway disabled or OPENAI
|
|
62
|
+
# route unconfigured), falls through to the ``MINIMAX_BASE_URL``
|
|
63
|
+
# env-var (operator override) and then to the public
|
|
64
|
+
# ``api.minimax.io`` default. The router → env-var → hardcoded
|
|
65
|
+
# precedence mirrors ``mahavishnu/workers/cloud_worker.py:86-96``.
|
|
66
|
+
# The ``llama_server`` provider keeps its env-var-only resolution
|
|
67
|
+
# (the router's ``_PROVIDER_ROUTE`` only maps ANTHROPIC + OPENAI).
|
|
68
|
+
bifrost_openai_url = get_router().resolve(LLMProvider.OPENAI)
|
|
54
69
|
providers = _DEFAULT_PROVIDERS.copy()
|
|
55
|
-
|
|
70
|
+
providers["minimax"] = providers["minimax"].copy()
|
|
71
|
+
if bifrost_openai_url:
|
|
72
|
+
providers["minimax"]["base_url"] = str(bifrost_openai_url)
|
|
73
|
+
else:
|
|
74
|
+
# Router disabled — honor a ``MINIMAX_BASE_URL`` operator
|
|
75
|
+
# override (added in Phase 5 follow-up so the env var matches
|
|
76
|
+
# the comment that has been there since Phase 0). The default
|
|
77
|
+
# stays at the public ``api.minimax.io`` direct-cloud URL.
|
|
78
|
+
env_minimax_url = os.environ.get("MINIMAX_BASE_URL")
|
|
79
|
+
if env_minimax_url:
|
|
80
|
+
providers["minimax"]["base_url"] = env_minimax_url
|
|
81
|
+
llama_url = os.environ.get("LLAMA_SERVER_URL", "http://localhost:8081")
|
|
56
82
|
providers["llama_server"] = providers["llama_server"].copy()
|
|
57
83
|
providers["llama_server"]["base_url"] = llama_url
|
|
58
84
|
return LLMSettings(
|
|
@@ -105,11 +105,26 @@ class CrackerjackCLIFacade:
|
|
|
105
105
|
|
|
106
106
|
def _start_mcp_server(self) -> None:
|
|
107
107
|
try:
|
|
108
|
+
from crackerjack.mcp.oneiric_runtime import report_runtime_to_oneiric
|
|
109
|
+
from crackerjack.mcp.server_core import _get_default_mcp_app
|
|
108
110
|
from crackerjack.mcp.server_core import main as start_mcp_main
|
|
109
111
|
|
|
110
112
|
self.console.print(
|
|
111
113
|
"[bold cyan]🤖 Starting Crackerjack MCP Server...[/bold cyan]",
|
|
112
114
|
)
|
|
115
|
+
# Phase 3 component-boot hook per the oneiric-substrate umbrella
|
|
116
|
+
# (2026-10-15): fire-and-forget push of runtime facts to Oneiric
|
|
117
|
+
# before the server starts. The helper spawns a daemon thread
|
|
118
|
+
# so this call returns immediately; the thread swallows all errors.
|
|
119
|
+
# The FastMCP app is built lazily via _get_default_mcp_app() so
|
|
120
|
+
# the asyncio.run() inside create_mcp_server() does not fire at
|
|
121
|
+
# module-import time (which would collide with test runners
|
|
122
|
+
# that start an event loop during collection). When FastMCP is
|
|
123
|
+
# unavailable the getter returns None and we skip the early push;
|
|
124
|
+
# main() also reports runtime once its own server is built.
|
|
125
|
+
mcp_app = _get_default_mcp_app()
|
|
126
|
+
if mcp_app is not None:
|
|
127
|
+
report_runtime_to_oneiric(mcp_app)
|
|
113
128
|
start_mcp_main(str(self.pkg_path))
|
|
114
129
|
except ImportError:
|
|
115
130
|
self.console.print(
|
|
@@ -46,7 +46,7 @@ class ProviderSelectionCLI:
|
|
|
46
46
|
header = Panel(
|
|
47
47
|
"[bold cyan]AI Provider Selection[/bold cyan]\n\n"
|
|
48
48
|
"Configure the AI provider for crackerjack's code fixing features.\n"
|
|
49
|
-
"Current options: MiniMax, llama-server
|
|
49
|
+
"Current options: MiniMax, llama-server",
|
|
50
50
|
title="Crackerjack Configuration",
|
|
51
51
|
border_style="cyan",
|
|
52
52
|
)
|
|
@@ -671,7 +671,7 @@ CLI_OPTIONS = {
|
|
|
671
671
|
"--select-provider",
|
|
672
672
|
help=(
|
|
673
673
|
"Launch interactive provider selection menu. "
|
|
674
|
-
"Configure AI provider for code fixing (
|
|
674
|
+
"Configure AI provider for code fixing (minimax, llama_server). "
|
|
675
675
|
"Saves selection to settings/local.yaml."
|
|
676
676
|
),
|
|
677
677
|
),
|
|
@@ -4,6 +4,7 @@ import typing as t
|
|
|
4
4
|
from pathlib import Path
|
|
5
5
|
|
|
6
6
|
from oneiric.core.config import OneiricMCPConfig
|
|
7
|
+
from oneiric.core.substrate_settings import SubstrateSettings
|
|
7
8
|
from pydantic import Field, model_validator
|
|
8
9
|
|
|
9
10
|
from .validators import reshape_adapter_timeouts, warn_unknown_pyproject_subtables
|
|
@@ -143,6 +144,7 @@ class DocumentationSettings(OneiricMCPConfig):
|
|
|
143
144
|
auto_coverage_ratchet_on_publish: bool = True
|
|
144
145
|
dry_run_by_default: bool = False
|
|
145
146
|
backup_before_cleanup: bool = True
|
|
147
|
+
use_shared_regenerator: bool = False # NEW: per Round 3 Decision #10
|
|
146
148
|
essential_files: list[str] = [
|
|
147
149
|
"AGENTS.md",
|
|
148
150
|
"CHANGELOG.md",
|
|
@@ -485,6 +487,15 @@ class AsyncTaskSettings(OneiricMCPConfig):
|
|
|
485
487
|
class CrackerjackSettings(OneiricMCPConfig):
|
|
486
488
|
pkg_path: Path | None = None
|
|
487
489
|
|
|
490
|
+
substrate: SubstrateSettings = Field(
|
|
491
|
+
default_factory=SubstrateSettings,
|
|
492
|
+
description=(
|
|
493
|
+
"Shared Bodai substrate (Phase E1/E2): cache/warm/cold/embedding/"
|
|
494
|
+
"pool/retry/circuit-breaker/telemetry/auth. Owns the cache_* and "
|
|
495
|
+
"pool__* settings that were previously local to CrackerjackSettings."
|
|
496
|
+
),
|
|
497
|
+
)
|
|
498
|
+
|
|
488
499
|
@model_validator(mode="before")
|
|
489
500
|
@classmethod
|
|
490
501
|
def _reshape_adapter_timeouts(cls, data: t.Any) -> t.Any: # REQ-004
|
|
@@ -526,10 +537,6 @@ class CrackerjackSettings(OneiricMCPConfig):
|
|
|
526
537
|
enable_orchestration: bool = True
|
|
527
538
|
orchestration_mode: str = "oneiric"
|
|
528
539
|
enable_caching: bool = True
|
|
529
|
-
cache_backend: str = "memory"
|
|
530
|
-
cache_ttl: int = 3600
|
|
531
|
-
cache_max_entries: int = 100
|
|
532
|
-
max_parallel_hooks: int = 4
|
|
533
540
|
default_timeout: int = 1800
|
|
534
541
|
stop_on_critical_failure: bool = True
|
|
535
542
|
enable_dependency_resolution: bool = True
|
|
@@ -34,11 +34,11 @@ def get_io_executor() -> ThreadPoolExecutor:
|
|
|
34
34
|
from crackerjack.config import CrackerjackSettings
|
|
35
35
|
|
|
36
36
|
settings = CrackerjackSettings()
|
|
37
|
-
max_workers = settings.
|
|
37
|
+
max_workers = settings.substrate.pool__max_workers
|
|
38
38
|
except Exception:
|
|
39
39
|
max_workers = 4
|
|
40
40
|
logger.warning(
|
|
41
|
-
"Could not load
|
|
41
|
+
"Could not load pool__max_workers from substrate, using default: 4"
|
|
42
42
|
)
|
|
43
43
|
|
|
44
44
|
_io_executor = ThreadPoolExecutor(
|
|
@@ -45,6 +45,8 @@ except ImportError as exc: # pragma: no cover - import guard
|
|
|
45
45
|
)
|
|
46
46
|
raise SystemExit(2) from exc
|
|
47
47
|
|
|
48
|
+
from crackerjack.config.loader import load_settings
|
|
49
|
+
from crackerjack.config.settings import CrackerjackSettings
|
|
48
50
|
|
|
49
51
|
# ---------------------------------------------------------------------------
|
|
50
52
|
# Output formatting — local-only helpers for console lines below.
|
|
@@ -107,7 +109,6 @@ DEFAULT_STORES: tuple[str, ...] = (
|
|
|
107
109
|
"docs/adr/",
|
|
108
110
|
"docs/plans/",
|
|
109
111
|
"docs/specs/",
|
|
110
|
-
"docs/plans/",
|
|
111
112
|
".claude/decisions/",
|
|
112
113
|
"docs/followups/",
|
|
113
114
|
)
|
|
@@ -366,7 +367,7 @@ def _render_index(entries_by_store: dict[str, list[Entry]], generated_at: str) -
|
|
|
366
367
|
(
|
|
367
368
|
(
|
|
368
369
|
f"_Regenerated {generated_at} by "
|
|
369
|
-
f"`crackerjack.tools.plan_index_sync` (
|
|
370
|
+
f"`crackerjack.tools.plan_index_sync` (phase)._"
|
|
370
371
|
),
|
|
371
372
|
"",
|
|
372
373
|
)
|
|
@@ -410,7 +411,7 @@ def main(argv: list[str] | None = None) -> int:
|
|
|
410
411
|
prog="plan_index_sync",
|
|
411
412
|
description=(
|
|
412
413
|
"Regenerate docs/plans/PLAN_INDEX.md from per-store frontmatter. "
|
|
413
|
-
"Used as a crackerjack
|
|
414
|
+
"Used as a crackerjack phase (plan-index-sync)."
|
|
414
415
|
),
|
|
415
416
|
)
|
|
416
417
|
parser.add_argument(
|
|
@@ -432,6 +433,27 @@ def main(argv: list[str] | None = None) -> int:
|
|
|
432
433
|
)
|
|
433
434
|
args = parser.parse_args(argv)
|
|
434
435
|
|
|
436
|
+
settings = load_settings(CrackerjackSettings)
|
|
437
|
+
use_shared = getattr(settings.documentation, "use_shared_regenerator", False)
|
|
438
|
+
if use_shared:
|
|
439
|
+
from oneiric.plan_index import regenerate as shared_regenerate
|
|
440
|
+
|
|
441
|
+
# --dry-run ≡ check=True (per spec acceptance criterion I-1)
|
|
442
|
+
return shared_regenerate(
|
|
443
|
+
repo_root=args.repo_root.resolve(),
|
|
444
|
+
out_path=(args.out.resolve() if args.out else None),
|
|
445
|
+
check=bool(args.dry_run),
|
|
446
|
+
)
|
|
447
|
+
|
|
448
|
+
# LEGACY BRANCH: inline the pre-dispatch body of main() (originally
|
|
449
|
+
# at crackerjack/tools/plan_index_sync.py:407-454 before this rewrite).
|
|
450
|
+
#
|
|
451
|
+
# Per crackerjack-specialist review C3: do NOT extract to
|
|
452
|
+
# ``_legacy_render(args)``. Inlining is preferable — fewer new
|
|
453
|
+
# symbols, tighter review diff, and the legacy branch is small
|
|
454
|
+
# once the shared import is removed. The CLI surface
|
|
455
|
+
# (``--repo-root``, ``--out``, ``--dry-run``) stays identical so the
|
|
456
|
+
# existing ``test_help_smoke`` continues to pass.
|
|
435
457
|
new_content = render_plan_index(args.repo_root)
|
|
436
458
|
|
|
437
459
|
if args.dry_run:
|
{crackerjack-0.89.2 → crackerjack-0.91.0}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/README.md
RENAMED
|
@@ -172,4 +172,4 @@ forward-references to them in the active docs were either rewritten
|
|
|
172
172
|
|
|
173
173
|
See `docs/audits/2026-09-09-crackerjack-docs-audit.md` Category F
|
|
174
174
|
("`crackerjack.agents.*` deleted surface still narratively alive")
|
|
175
|
-
for the trigger rationale and a list of broken forward-links.
|
|
175
|
+
for the trigger rationale and a list of broken forward-links.
|
|
@@ -40,4 +40,4 @@ Empty strategies (unknown hook name) run zero hooks in that phase — silent sig
|
|
|
40
40
|
|
|
41
41
|
- **`plan_index_sync` test fixtures in non-git sandboxes** must use the rglob fallback path. The `_tracked_md_names` helper returns `None` on git failure and the discovery falls back to rglob; new tests should construct fixtures via `monkeypatch.setattr(pis, "_tracked_md_names", lambda *_: None)` (see `tests/unit/test_plan_index_sync.py::test_discover_files_falls_back_to_rglob_when_git_missing`).
|
|
42
42
|
- **`--tool <name>` with a mis-typed hook name** completes the phase with zero results — the user sees a successful phase that ran nothing. This is intentional (the gate still passes, the user has a clear signal to check spelling) but worth flagging in onboarding if anyone interprets a fast phase that finishes in <1s as "the hook passed."
|
|
43
|
-
- **Hook naming convention**: the generator normalises `-` ↔ `_` (CLI ergonomics: `--tool ruff-check` matches a hook stored as `ruff_check`). New hooks should pick one and stay consistent within a single repo.
|
|
43
|
+
- **Hook naming convention**: the generator normalises `-` ↔ `_` (CLI ergonomics: `--tool ruff-check` matches a hook stored as `ruff_check`). New hooks should pick one and stay consistent within a single repo.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Plan Index
|
|
2
2
|
|
|
3
|
-
_Regenerated 2026-10-
|
|
3
|
+
_Regenerated 2026-10-20 by `crackerjack.tools.plan_index_sync` (phase)._
|
|
4
4
|
|
|
5
5
|
### Docs: adr
|
|
6
6
|
|
|
@@ -53,30 +53,6 @@ _Regenerated 2026-10-17 by `crackerjack.tools.plan_index_sync` (fast-hook)._
|
|
|
53
53
|
| [`docs/specs/2026-09-07-crackerjack-multi-language-design.md`](../specs/2026-09-07-crackerjack-multi-language-design.md) | 2026-09-07 | `complete` | `canonical` | `architecture` | Crackerjack Multi-Language Extension |
|
|
54
54
|
| [`docs/specs/2026-10-10-crackerjack-oneiric-loader-migration-design.md`](../specs/2026-10-10-crackerjack-oneiric-loader-migration-design.md) | 2026-10-10 | `draft` | `implementation` | `settings-resolution` | Spec: Crackerjack Settings Loader — Migration to Oneiric |
|
|
55
55
|
|
|
56
|
-
### Docs: plans
|
|
57
|
-
|
|
58
|
-
| Path | Date | Status | Role | Topic | Title |
|
|
59
|
-
|---|---|---|---|---|---|
|
|
60
|
-
| [`docs/plans/2026-05-20-phase-0-event-bus-plan.md`](2026-05-20-phase-0-event-bus-plan.md) | 2026-07-17 | `active` | `implementation` | `lifecycle` | Phase 0 Implementation Plan — AI-Fix Event Bus |
|
|
61
|
-
| [`docs/plans/2026-06-02-ai-fix-display-loop-bugs.md`](2026-06-02-ai-fix-display-loop-bugs.md) | 2026-07-17 | `active` | `implementation` | `lifecycle` | AI-Fix Display & Loop Bugs Implementation Plan |
|
|
62
|
-
| [`docs/plans/2026-06-03-dhara-mcp-migration.md`](2026-06-03-dhara-mcp-migration.md) | 2026-07-17 | `active` | `implementation` | `lifecycle` | Dhara MCP Migration Implementation Plan |
|
|
63
|
-
| [`docs/plans/2026-06-29-ty-ratchet-cleanup.md`](2026-06-29-ty-ratchet-cleanup.md) | 2026-07-17 | `active` | `implementation` | `lifecycle` | ty-ratchet pipeline cleanup (E.3 + missing-dir) Implementation Plan |
|
|
64
|
-
| [`docs/plans/2026-07-08-fix-sandbox-integration.md`](2026-07-08-fix-sandbox-integration.md) | 2026-07-17 | `active` | `implementation` | `lifecycle` | FixSandbox Production Integration Plan |
|
|
65
|
-
| [`docs/plans/2026-07-10-libcst-surgeon-extract-method-fallback.md`](2026-07-10-libcst-surgeon-extract-method-fallback.md) | 2026-07-17 | `active` | `implementation` | `lifecycle` | W3 LibcstSurgeon Extract-Method Fallback Fix — Implementation Plan |
|
|
66
|
-
| [`docs/plans/2026-07-10-output-validator-traceback-details.md`](2026-07-10-output-validator-traceback-details.md) | 2026-07-17 | `active` | `implementation` | `lifecycle` | OutputValidator Traceback Details Implementation Plan |
|
|
67
|
-
| [`docs/plans/2026-07-10-validation-coordinator-serialization.md`](2026-07-10-validation-coordinator-serialization.md) | 2026-07-17 | `active` | `implementation` | `lifecycle` | ValidationCoordinator Concurrency Serialization Implementation Plan |
|
|
68
|
-
| [`docs/plans/2026-07-11-ai-fix-e501-post-processor.md`](2026-07-11-ai-fix-e501-post-processor.md) | 2026-07-17 | `active` | `implementation` | `lifecycle` | AI-fix ruff E501 line-length post-processor — Implementation Plan |
|
|
69
|
-
| [`docs/plans/2026-07-11-ai-fix-no-op-circuit-breaker.md`](2026-07-11-ai-fix-no-op-circuit-breaker.md) | 2026-07-17 | `active` | `implementation` | `lifecycle` | AI-fix no-op circuit breaker — Implementation Plan |
|
|
70
|
-
| [`docs/plans/2026-07-11-ai-fix-regen-timeout.md`](2026-07-11-ai-fix-regen-timeout.md) | 2026-07-17 | `active` | `implementation` | `lifecycle` | AI-fix plan-regeneration timeout — Implementation Plan |
|
|
71
|
-
| [`docs/plans/2026-07-12-eventbridge-publisher.md`](2026-07-12-eventbridge-publisher.md) | 2026-07-17 | `active` | `implementation` | `lifecycle` | Crackerjack EventBridge Publisher Implementation Plan |
|
|
72
|
-
| [`docs/plans/2026-08-06-ai-fix-external-loop.md`](2026-08-06-ai-fix-external-loop.md) | 2026-08-06 | `complete` | `historical` | `lifecycle` | AI-Fix External Loop + Akosha Hook Implementation Plan |
|
|
73
|
-
| [`docs/plans/2026-08-06-crackerjack-ruff-fix-policy.md`](2026-08-06-crackerjack-ruff-fix-policy.md) | 2026-08-06 | `draft` | `implementation` | `lifecycle` | Crackerjack Ruff Fix Policy Implementation Plan |
|
|
74
|
-
| [`docs/plans/2026-08-10-ai-fix-loop-task-1-kickoff.md`](2026-08-10-ai-fix-loop-task-1-kickoff.md) | 2026-08-10 | `draft` | `implementation` | `lifecycle` | AI-Fix Loop Plan — Task 1 Execution Kickoff |
|
|
75
|
-
| [`docs/plans/2026-08-11-darnlink-replaces-check-local-links.md`](2026-08-11-darnlink-replaces-check-local-links.md) | 2026-08-11 | `draft` | `implementation` | `lifecycle` | Replace `check-local-links` with `darnlink` across the Bodai ecosystem |
|
|
76
|
-
| [`docs/plans/2026-09-07-bodai-shared-gitignore-snippet.md`](2026-09-07-bodai-shared-gitignore-snippet.md) | 2026-09-07 | `draft` | `implementation` | `gitignore-conformance` | Bodai Shared `.gitignore` Snippet — crackerjack-enforced |
|
|
77
|
-
| [`docs/plans/2026-10-10-crackerjack-oneiric-loader-migration.md`](2026-10-10-crackerjack-oneiric-loader-migration.md) | 2026-10-10 | `draft` | `implementation` | `settings-resolution` | Crackerjack Settings Loader — Migration to Oneiric — Implementation Plan |
|
|
78
|
-
| [`docs/plans/2026-10-11-remove-zuban-skylos-lsp-from-crackerjack.md`](2026-10-11-remove-zuban-skylos-lsp-from-crackerjack.md) | 2026-10-11 | `active` | `implementation` | `architecture` | Remove Zuban + Skylos LSP Adapters from Crackerjack |
|
|
79
|
-
|
|
80
56
|
### .claude/decisions
|
|
81
57
|
|
|
82
58
|
| Path | Date | Status | Role | Topic | Title |
|
|
@@ -107,8 +83,8 @@ _Regenerated 2026-10-17 by `crackerjack.tools.plan_index_sync` (fast-hook)._
|
|
|
107
83
|
| Role \\ Lifecycle | draft | active | partial | shipped | complete | Total |
|
|
108
84
|
|---|---|---|---|---|---|---|
|
|
109
85
|
| `canonical` | · | 10 | · | · | 2 | **12** |
|
|
110
|
-
| `implementation` |
|
|
86
|
+
| `implementation` | 16 | 21 | · | · | 1 | **38** |
|
|
111
87
|
| `umbrella` | · | · | · | · | · | **0** |
|
|
112
|
-
| `historical` | · | · | · | · |
|
|
88
|
+
| `historical` | · | · | · | · | 1 | **1** |
|
|
113
89
|
| `superseded` | · | · | · | · | · | **0** |
|
|
114
|
-
| **Total** | **
|
|
90
|
+
| **Total** | **16** | **31** | **·** | **·** | **4** | **51** |
|
|
@@ -6,7 +6,7 @@ build-backend = "hatchling.build"
|
|
|
6
6
|
|
|
7
7
|
[project]
|
|
8
8
|
name = "crackerjack"
|
|
9
|
-
version = "0.
|
|
9
|
+
version = "0.91.0"
|
|
10
10
|
description = "Crackerjack Python project management tool"
|
|
11
11
|
readme = "README.md"
|
|
12
12
|
authors = [
|
|
@@ -36,7 +36,7 @@ dependencies = [
|
|
|
36
36
|
"cryptography>=50.0.2", # Phase 1.5 skills_signer (ed25519)
|
|
37
37
|
"docstring-to-markdown>=0.17",
|
|
38
38
|
"fastapi>=0.142.2",
|
|
39
|
-
"fastmcp>=
|
|
39
|
+
"fastmcp>=4.0.0,<5",
|
|
40
40
|
"hatchling>=1.32.4",
|
|
41
41
|
"hypothesis>=6.168.3",
|
|
42
42
|
"ipython>=9.17.1",
|
|
@@ -48,7 +48,12 @@ dependencies = [
|
|
|
48
48
|
"mdformat>=1.0.0",
|
|
49
49
|
"mdformat-ruff>=0.1.3",
|
|
50
50
|
"numpy>=2.5.3",
|
|
51
|
-
|
|
51
|
+
# REQ-BIFROST-010 (bifrost plan §5 Phase 5, 2026-10-17): the
|
|
52
|
+
# FallbackChainCodeFixer consults the oneiric BifrostLLMRouter
|
|
53
|
+
# singleton (``oneiric.adapters.llm.bifrost.get_router()``) for
|
|
54
|
+
# the OPENAI-compatible provider's ``base_url``. The 0.32+ floor
|
|
55
|
+
# is the router module's home version.
|
|
56
|
+
"oneiric>=0.33",
|
|
52
57
|
"pyleak>=0.2.0",
|
|
53
58
|
"pyscn==1.5.0",
|
|
54
59
|
"pydantic>=2.13.5",
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
"""Tests for AI adapter registry and provider info.
|
|
2
|
+
|
|
3
|
+
Covers: crackerjack/adapters/ai/registry.py
|
|
4
|
+
"""
|
|
5
|
+
|
|
6
|
+
from __future__ import annotations
|
|
7
|
+
|
|
8
|
+
import pytest
|
|
9
|
+
|
|
10
|
+
from crackerjack.adapters.ai.registry import (
|
|
11
|
+
PROVIDER_INFO,
|
|
12
|
+
ProviderID,
|
|
13
|
+
ProviderInfo,
|
|
14
|
+
get_code_fixer,
|
|
15
|
+
get_provider_info,
|
|
16
|
+
list_providers,
|
|
17
|
+
)
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class TestProviderID:
|
|
21
|
+
"""Tests for ProviderID enum."""
|
|
22
|
+
|
|
23
|
+
def test_provider_id_values(self):
|
|
24
|
+
assert ProviderID.MINIMAX == "minimax"
|
|
25
|
+
assert ProviderID.LLAMA_SERVER == "llama_server"
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class TestProviderInfo:
|
|
29
|
+
"""Tests for ProviderInfo dataclass."""
|
|
30
|
+
|
|
31
|
+
def test_provider_info_str(self):
|
|
32
|
+
info = PROVIDER_INFO[ProviderID.MINIMAX]
|
|
33
|
+
assert "MiniMax" in str(info)
|
|
34
|
+
assert "minimax" in str(info)
|
|
35
|
+
|
|
36
|
+
def test_provider_info_fields(self):
|
|
37
|
+
info = PROVIDER_INFO[ProviderID.MINIMAX]
|
|
38
|
+
assert info.id == ProviderID.MINIMAX
|
|
39
|
+
assert info.name == "MiniMax"
|
|
40
|
+
assert info.requires_api_key is True
|
|
41
|
+
assert info.default_model == "MiniMax-M2.7"
|
|
42
|
+
assert info.cost_tier == "medium"
|
|
43
|
+
|
|
44
|
+
def test_llama_server_info(self):
|
|
45
|
+
info = PROVIDER_INFO[ProviderID.LLAMA_SERVER]
|
|
46
|
+
assert info.requires_api_key is False
|
|
47
|
+
assert info.default_model == "qwen3.5"
|
|
48
|
+
assert info.cost_tier == "free"
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
class TestListProviders:
|
|
52
|
+
"""Tests for list_providers function."""
|
|
53
|
+
|
|
54
|
+
def test_returns_all_providers(self):
|
|
55
|
+
providers = list_providers()
|
|
56
|
+
assert len(providers) == 2
|
|
57
|
+
|
|
58
|
+
def test_returns_provider_info_objects(self):
|
|
59
|
+
providers = list_providers()
|
|
60
|
+
assert all(isinstance(p, ProviderInfo) for p in providers)
|
|
61
|
+
|
|
62
|
+
def test_contains_minimax(self):
|
|
63
|
+
providers = list_providers()
|
|
64
|
+
ids = [p.id for p in providers]
|
|
65
|
+
assert ProviderID.MINIMAX in ids
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
class TestGetProviderInfo:
|
|
69
|
+
"""Tests for get_provider_info function."""
|
|
70
|
+
|
|
71
|
+
def test_get_by_provider_id(self):
|
|
72
|
+
info = get_provider_info(ProviderID.MINIMAX)
|
|
73
|
+
assert info.id == ProviderID.MINIMAX
|
|
74
|
+
|
|
75
|
+
def test_get_by_string_lowercase(self):
|
|
76
|
+
info = get_provider_info("llama_server")
|
|
77
|
+
assert info.id == ProviderID.LLAMA_SERVER
|
|
78
|
+
|
|
79
|
+
def test_get_by_string_uppercase(self):
|
|
80
|
+
info = get_provider_info("LLAMA_SERVER")
|
|
81
|
+
assert info.id == ProviderID.LLAMA_SERVER
|
|
82
|
+
|
|
83
|
+
def test_get_unknown_provider_raises(self):
|
|
84
|
+
with pytest.raises(ValueError, match="Unknown provider"):
|
|
85
|
+
get_provider_info("unknown_provider")
|
|
86
|
+
|
|
87
|
+
def test_unknown_provider_error_message(self):
|
|
88
|
+
with pytest.raises(ValueError) as exc_info:
|
|
89
|
+
get_provider_info("claude")
|
|
90
|
+
assert "claude" in str(exc_info.value)
|
|
91
|
+
assert "Available" in str(exc_info.value)
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
class TestGetCodeFixer:
|
|
95
|
+
"""Tests for get_code_fixer function."""
|
|
96
|
+
|
|
97
|
+
def test_returns_code_fixer_instance(self):
|
|
98
|
+
fixer = get_code_fixer()
|
|
99
|
+
from crackerjack.adapters.ai.unified import FallbackChainCodeFixer
|
|
100
|
+
|
|
101
|
+
assert isinstance(fixer, FallbackChainCodeFixer)
|
|
102
|
+
|
|
103
|
+
def test_returns_same_instance_type(self):
|
|
104
|
+
fixer1 = get_code_fixer()
|
|
105
|
+
fixer2 = get_code_fixer()
|
|
106
|
+
# Both should be the same type
|
|
107
|
+
assert type(fixer1) == type(fixer2)
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
class TestProviderInfoShape:
|
|
111
|
+
"""Structural tests for the ``ProviderInfo`` shape.
|
|
112
|
+
|
|
113
|
+
Phase 5 (bifrost plan §5, generalist H-3) pinned the absence
|
|
114
|
+
of a ``uses_bifrost: bool`` decision field from
|
|
115
|
+
``PROVIDER_INFO``. The field was already absent on main at
|
|
116
|
+
the time of the migration; the structural tests below are
|
|
117
|
+
regression guards so a future refactor that re-adds the
|
|
118
|
+
field (or any structurally-similar per-provider decision
|
|
119
|
+
key that duplicates the router's "is this provider routed
|
|
120
|
+
through the gateway?" query) trips a test failure.
|
|
121
|
+
|
|
122
|
+
Note: legitimate per-provider capability flags
|
|
123
|
+
(``uses_streaming``, ``uses_tool_calling``, ``uses_vision``,
|
|
124
|
+
etc.) are NOT pinned by these tests — only the specific
|
|
125
|
+
set of fields that would re-introduce the
|
|
126
|
+
structural-coupling bug is locked.
|
|
127
|
+
"""
|
|
128
|
+
|
|
129
|
+
# The set of field names that would re-introduce the
|
|
130
|
+
# ``route_qwen_code: True while enabled: False`` bug shape:
|
|
131
|
+
# any per-provider boolean that duplicates the router's
|
|
132
|
+
# "is this provider routed through the gateway?" decision.
|
|
133
|
+
# Naming is intentional — a maintainer adding a field
|
|
134
|
+
# here must rename to ``supports_*`` / ``has_*`` / etc.
|
|
135
|
+
# to avoid the test trip, which surfaces the decision in
|
|
136
|
+
# code review.
|
|
137
|
+
_FORBIDDEN_BIFROST_DECISION_KEYS: frozenset[str] = frozenset(
|
|
138
|
+
{
|
|
139
|
+
"uses_bifrost",
|
|
140
|
+
"uses_claude_route",
|
|
141
|
+
"uses_qwen_route",
|
|
142
|
+
"uses_anthropic_route",
|
|
143
|
+
"uses_gateway",
|
|
144
|
+
}
|
|
145
|
+
)
|
|
146
|
+
|
|
147
|
+
def test_uses_bifrost_field_removed(self) -> None:
|
|
148
|
+
"""REQ-BIFROST-010 evidence (bifrost plan line 573): the
|
|
149
|
+
``uses_bifrost`` field is gone from every ``ProviderInfo``.
|
|
150
|
+
Operators no longer need to set it; the URL source lives
|
|
151
|
+
in the oneiric ``BifrostLLMRouter`` singleton.
|
|
152
|
+
"""
|
|
153
|
+
import dataclasses
|
|
154
|
+
|
|
155
|
+
for provider_id, info in PROVIDER_INFO.items():
|
|
156
|
+
field_names = {f.name for f in dataclasses.fields(info)}
|
|
157
|
+
assert "uses_bifrost" not in field_names, (
|
|
158
|
+
f"ProviderInfo for {provider_id.value!r} unexpectedly has "
|
|
159
|
+
"a 'uses_bifrost' field; the bifrost plan (generalist "
|
|
160
|
+
"H-3) pinned its absence so the URL source stays in "
|
|
161
|
+
"the oneiric router, not per-provider flags."
|
|
162
|
+
)
|
|
163
|
+
|
|
164
|
+
def test_no_bifrost_decision_keys(self) -> None:
|
|
165
|
+
"""Pin the absence of any per-provider decision field
|
|
166
|
+
that would re-introduce the structural coupling to the
|
|
167
|
+
bifrost gateway configuration. The URL source is the
|
|
168
|
+
oneiric router, not per-provider boolean flags.
|
|
169
|
+
|
|
170
|
+
Note: the deny-list is a *name set*, not a ``uses_*``
|
|
171
|
+
prefix ban — legitimate per-provider capability flags
|
|
172
|
+
(``uses_streaming``, ``uses_tool_calling``, etc.) are
|
|
173
|
+
not pinned by this test. The test guards specifically
|
|
174
|
+
against fields that would duplicate the router's
|
|
175
|
+
"is this provider routed through the gateway?" decision.
|
|
176
|
+
"""
|
|
177
|
+
import dataclasses
|
|
178
|
+
|
|
179
|
+
for provider_id, info in PROVIDER_INFO.items():
|
|
180
|
+
for f in dataclasses.fields(info):
|
|
181
|
+
assert (
|
|
182
|
+
f.name not in self._FORBIDDEN_BIFROST_DECISION_KEYS
|
|
183
|
+
), (
|
|
184
|
+
f"ProviderInfo for {provider_id.value!r} has a "
|
|
185
|
+
f"forbidden decision key ({f.name!r}); the bifrost "
|
|
186
|
+
"plan removed 'uses_bifrost' and the URL source "
|
|
187
|
+
"moved to the oneiric router. Add a per-provider "
|
|
188
|
+
"decision key only with a clear consumer (and a "
|
|
189
|
+
"name outside the _FORBIDDEN_BIFROST_DECISION_KEYS "
|
|
190
|
+
"set, so future maintainers can grep for it)."
|
|
191
|
+
)
|