crackerjack 0.91.2__tar.gz → 0.91.3__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.91.2 → crackerjack-0.91.3}/CHANGELOG.md +41 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/PKG-INFO +2 -2
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/refactor/refurb.py +47 -4
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/config/hooks.py +27 -7
- crackerjack-0.91.3/crackerjack/config/refurb_args.py +189 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/config/tool_commands.py +9 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/preflight.py +6 -1
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/executors/cached_hook_executor.py +6 -1
- crackerjack-0.91.3/docs/plans/.archive/implementation-plans/2026-10-29-plan-index-sync-delegate-to-repo-script.md +308 -0
- crackerjack-0.91.3/docs/plans/2026-10-28-oneiric-action-kit-adoption.md +366 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/PLAN_INDEX.md +3 -2
- {crackerjack-0.91.2 → crackerjack-0.91.3}/pyproject.toml +34 -2
- {crackerjack-0.91.2 → crackerjack-0.91.3}/settings/crackerjack.yaml +8 -3
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/checks/test_release_audit.py +31 -4
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/test_refurb_adapter.py +21 -0
- crackerjack-0.91.3/tests/unit/config/test_refurb_mypy_args.py +320 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/test_preflight.py +12 -2
- {crackerjack-0.91.2 → crackerjack-0.91.3}/uv.lock +127 -117
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.betterleaks.toml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude/decisions/2026-09-26-mcp-launcher-migration.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude/decisions/2026-10-12-canonical-claude-gitignore-policy.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude/decisions/2026-10-12-hook-stage-documentary-vs-enforced.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude/decisions/2026-10-12-publish-auto-sync-gitignore.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude/decisions/2026-10-13-checkpoint-disabled.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude/decisions/2026-10-13-ratchet-publish-only-gate.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude/decisions/2026-10-13-ratchet-staleness.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude/decisions/2026-10-13-store-2-opt-in.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude/decisions/2026-10-13-workflow-architecture-cleanup.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude/decisions/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude/decisions/deployability-discipline.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude/hooks/_hook_io.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude/hooks/agent-merge-on-end.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude/settings.json +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude/workflows/ai-fix-loop.js +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.claude-plugin/plugin.json +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.codespell-ignore +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.cov_test +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.crackerjack.example.yaml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.envrc +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.github/FUNDING.yml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.gitignore +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.gitleaks.toml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.gitleaksignore +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.lycheeignore +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.mdformat.toml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.pyscn.toml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/.python-version +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/AGENTS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/CLAUDE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/CONTRIBUTING.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/LICENSE +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/QUICKSTART.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/QWEN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/RULES.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/SECURITY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/assets/crackerjack_logo_favicon.png +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/assets/crackerjack_logo_github.png +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/assets/crackerjack_logo_icon.png +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/assets/crackerjack_logo_medium.png +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/assets/crackerjack_logo_small.png +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/assets/crackerjack_logo_tiny.png +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/__main__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/_output_paths.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/_qa_adapter_base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/_tool_adapter_base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/ai/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/ai/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/ai/base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/ai/registry.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/ai/unified.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/benchmark/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/benchmark/adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/benchmark/baseline.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/complexity/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/complexity/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/complexity/complexipy.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/complexity/pymetrica.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/dependency/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/dependency/pip_audit.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/factory.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/format/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/format/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/format/mdformat.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/format/ruff.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/health_mixin.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/kotlin/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/kotlin/git_backend.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/kotlin/hooks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/kotlin/lifecycle.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/kotlin/version_source.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/lint/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/lint/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/lint/codespell.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/performance/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/performance/scalene.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/python/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/python/hooks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/python/lifecycle.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/python/version_source.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/refactor/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/refactor/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/refactor/cohesion.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/refactor/creosote.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/refactor/vulture.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/registry.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/sast/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/sast/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/sast/_base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/sast/bandit.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/sast/pyscn.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/sast/semgrep.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/security/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/security/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/security/betterleaks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/security/gitleaks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/swift/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/swift/git_backend.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/swift/hooks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/swift/lifecycle.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/swift/platforms.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/swift/version_source.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/test/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/test/syrupy.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/treesitter/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/treesitter/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/treesitter/treesitter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/type/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/type/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/type/pyrefly.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/type/pyright.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/type/ty.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/utility/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/utility/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/utility/checks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/web/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/web/hooks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/adapters/web/jinja_formatter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/agents/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/agents/base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/api.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/bin/validate-mermaid.mjs +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/checks/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/checks/bodai_registry.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/checks/gitignore_conformance.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/checks/release_audit.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/ci_feedback.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/_rich_utils.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/anti_ai_flavor_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/audit_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/cache_handlers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/clone_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/constants.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/coverage_ratchet_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/docs_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/facade.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/formatting.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/gitignore_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/handlers/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/handlers/advanced.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/handlers/ai_features.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/handlers/analytics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/handlers/changelog.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/handlers/config_handlers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/handlers/coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/handlers/docs_commands.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/handlers/documentation.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/handlers/health.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/handlers/main_handlers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/handlers/provider_selection.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/hypothesis_lock_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/interactive.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/lifecycle_handlers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/mcp_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/options.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/profile_handlers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/replay.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/semantic_handlers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/skills_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/cli/version.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/clone/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/clone/classifier.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/clone/grouper.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/clone/refactor_engine.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/code_cleaner.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/config/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/config/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/config/ecosystem_synthesis.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/config/global_lock_config.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/config/loader.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/config/mcp_settings_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/config/per_file_ignores.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/config/pip_audit_ignores.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/config/profile_loader.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/config/settings.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/config/validators.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/contracts.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/ai_fix_event_bus.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/ai_fix_events.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/ai_fix_sinks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/async_workflow_orchestrator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/autofix_coordinator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/console.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/defaults.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/eventbridge_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/eventbridge_publisher.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/eventbridge_resolver.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/file_lifecycle.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/hypothesis_lock.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/language_detector.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/performance.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/performance_monitor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/phase_coordinator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/proactive_workflow.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/resource_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/retry.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/runtime_facts.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/self_heal/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/self_heal/l1_retry.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/self_heal/l2_noop.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/self_heal/l3_rule_store.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/service_watchdog.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/session_coordinator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/timeout_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/core/workflow_orchestrator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/decorators/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/decorators/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/decorators/error_handling.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/decorators/error_handling_decorators.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/decorators/helpers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/decorators/patterns.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/docs/INDEX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/docs/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/docs/generated/api/API_REFERENCE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/docs/generated/api/CLI_REFERENCE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/docs/generated/api/CROSS_REFERENCES.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/docs/generated/api/PROTOCOLS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/docs/generated/api/SERVICES.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/documentation/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/documentation/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/documentation/ai_templates.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/documentation/docstring_enricher.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/documentation/docstring_extractor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/documentation/dual_output_generator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/documentation/mkdocs_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/documentation/reference_generator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/errors.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/exceptions/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/exceptions/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/exceptions/config.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/exceptions/plugin_trust_error.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/exceptions/tool_execution_error.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/executors/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/executors/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/executors/async_hook_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/executors/hook_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/executors/hook_lock_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/executors/individual_hook_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/executors/process_monitor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/executors/progress_hook_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/executors/tool_proxy.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/anti_pattern.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/architecture.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/ast_transform/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/ast_transform/engine.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/ast_transform/exceptions.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/ast_transform/pattern_matcher.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/ast_transform/patterns/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/ast_transform/patterns/data_processing.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/ast_transform/patterns/decompose_conditional.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/ast_transform/patterns/early_return.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/ast_transform/patterns/extract_method.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/ast_transform/patterns/guard_clause.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/ast_transform/surgeons/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/ast_transform/surgeons/base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/ast_transform/surgeons/libcst_surgeon.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/ast_transform/surgeons/redbaron_surgeon.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/ast_transform/validator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/dead_code.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/dependency.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/documentation.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/dry.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/formatting.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/import_optimization.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/performance.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/planning.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/refactoring.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/refurb.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/security.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/semantic.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/test_creation.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/test_specialist.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/fixers/type_errors.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/hooks/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/hooks/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/integration/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/integration/adapter_learning.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/integration/akosha_learning.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/integration/git_metrics_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/integration/mahavishnu_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/integration/mahavishnu_learning.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/integration/oneiric_learning.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/integration/session_buddy_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/integration/session_buddy_mcp.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/integration/session_buddy_skills_compat.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/integration/skills_tracking.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/intelligence/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/interactive.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mahavishnu/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mahavishnu/mcp/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mahavishnu/mcp/tools/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mahavishnu/mcp/tools/git_analytics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mahavishnu/observability/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mahavishnu/observability/adapter_runtime.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mahavishnu/tenancy/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mahavishnu/tenancy/context_packs.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mahavishnu/workflows/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mahavishnu/workflows/progress.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/managers/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/managers/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/managers/async_hook_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/managers/constants.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/managers/hook_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/managers/publish_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/managers/test_command_builder.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/managers/test_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/managers/test_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/managers/test_progress.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/agent_schema.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/agents/bump-strategist.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/agents/crackerjack-specialist.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/agents/quality-strategist.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/cache.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/client_runner.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/context.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/health.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/oneiric_runtime.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/persistence.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/rate_limiter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/server_core.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/service_watchdog.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/signer_feed.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/skill_schema.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/skills_catalog/review-pr.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/skills_catalog/run-quality-checks.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/skills_catalog/smart-error-analysis.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/skills_catalog/version-bump.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/state.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/task_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/agent_registry.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/async_task_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/core_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/discover_query.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/doc_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/error_analyzer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/eventbridge_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/eventbridge_tools_wrapper.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/execution_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/health_tools_wrapper.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/language_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/monitoring_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/otel_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/proactive_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/profiles.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/progress_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/pycharm_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/semantic_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/skill_registry.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/utility_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/mcp/tools/workflow_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/memory/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/memory/git_metrics_collector.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/adapter_metadata.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/config.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/config_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/enums.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/fix_plan.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/git_analytics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/health_check.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/issues.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/protocols.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/pydantic_models.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/qa_config.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/qa_results.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/resource_protocols.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/results.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/semantic_models.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/session_metrics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/task.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/test_models.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/tool_config.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/models/validation_contracts.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/parsers/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/parsers/base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/parsers/factory.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/parsers/json_parsers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/parsers/lychee_parser.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/parsers/regex_parsers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/plugins/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/plugins/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/plugins/base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/plugins/hooks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/plugins/loader.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/plugins/managers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/py313.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/runtime/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/runtime/health_snapshot.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/runtime/oneiric_workflow.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/security/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/security/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/security/audit.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/server.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/ai/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/ai/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/ai/advanced_optimizer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/ai/contextual_ai_assistant.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/ai/embeddings.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/ai/intelligent_commit.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/ai/predictive_analytics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/ai_fix_progress.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/anomaly_detector.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/api_extractor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/async_file_io.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/backup_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/bounded_status_operations.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/cache.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/changelog_automation.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/command_execution_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/config_cleanup.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/config_integrity.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/config_merge.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/config_parsers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/config_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/config_template.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/connection_pool.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/constants.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/constitution.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/coverage_badge_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/coverage_ratchet.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/debug.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/dependency_analyzer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/doc_categorizer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/doc_update_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/documentation_cleanup.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/documentation_generator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/documentation_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/enhanced_filesystem.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/failure_metrics_repository.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/failure_recorder.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/file_chunker.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/file_filter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/file_hasher.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/file_io_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/file_modifier.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/filesystem.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/frontmatter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/frontmatter_validator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/git.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/git_cleanup_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/heatmap_generator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/import_resolution.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/improvement_generator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/improvement_overseer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/incremental_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/incremental_scanner.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/initialization.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/input_validator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/intelligent_commit.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/log_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/logging.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/mahavishnu_discovery.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/marker_tracker.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/memory_aware_scanner.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/memory_optimizer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/mermaid_renderer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/message_deduplicator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/metrics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/metrics_old.py.bak4 +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/parallel_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/pattern_cache.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/pattern_detector.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/agents.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/code/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/code/detection.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/code/imports.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/code/paths.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/code/performance.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/code/replacement.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/core.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/documentation/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/documentation/badges_markdown.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/documentation/comments_blocks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/documentation/docstrings.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/formatting.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/operations.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/security/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/security/code_injection.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/security/credentials.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/security/path_traversal.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/security/unsafe_operations.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/templates.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/testing/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/testing/error_patterns.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/testing/pytest_output.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/tool_output/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/tool_output/bandit.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/tool_output/other.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/tool_output/pyright.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/tool_output/ruff.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/url_sanitization.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/utilities.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/validation.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/patterns/versioning.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/pool_client.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/pool_orchestrator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/pool_router.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/pool_scaler.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/predictive_analytics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/profiler.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/prompt_evolution.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/pycharm_mcp_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/pypi_auth/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/pypi_auth/_auth.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/pypi_auth/_keyring.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/pypi_auth/_providers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/pypi_auth/_trusted_publishing.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/pypistats_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/quality/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/quality/anti_ai_flavor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/quality/anti_ai_flavor_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/quality/pattern_cache.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/quality/quality_baseline_enhanced.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/quality/quality_intelligence.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/refurb_fixer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/regex_patterns.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/regex_utils.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/safe_code_modifier.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/secure_path_utils.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/secure_status_formatter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/secure_subprocess.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/security.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/security_logger.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/self_patcher.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/server_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/smart_file_filter_v2.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/smart_scheduling.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/status_authentication.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/status_security_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/swarm_client.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/template_applicator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/template_detector.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/terminal_utils.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/testing/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/testing/coverage_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/testing/test_result_parser.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/testing/test_result_renderer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/thread_safe_status_collector.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/tool_filter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/tool_version_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/unified_config.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/validation_rate_limiter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/vector_store.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/version_analyzer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/version_checker.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/version_math.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/services/workflow_optimization.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/shell/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/shell/adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/shell/session_compat.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/skills/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/skills/comment_poster.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/skills/durable_queue.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/skills/github_client.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/skills/health.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/skills/review_metrics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/skills/review_pr.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/skills_signer/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/skills_signer/canonicalize.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/skills_signer/errors.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/skills_signer/keys.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/skills_signer/manifest.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/skills_signer/sign.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/skills_signer/verify.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/slash_commands/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/sop/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/sop/cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/sop/evolution.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/sop/models.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/sop/persisters.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/storage/migrations/V5__uuid7_contract__down.sql +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/storage/migrations/V5__uuid7_contract__up.sql +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/test_selection.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tests/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tests/checks/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tests/checks/test_gitignore_conformance.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tests/checks/test_release_audit.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tests/test_runtime_facts.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/_git_utils.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/_linkcheckmd_runner.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/audit_type_checking_runtime_refs.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/check_added_large_files.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/check_ast.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/check_json.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/check_jsonschema.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/check_toml.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/check_yaml.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/codespell_wrapper.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/end_of_file_fixer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/fix_terminal.sh +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/format_json.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/linkcheckmd_wrapper.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/local_link_checker.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/mdformat_wrapper.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/no_conflict_markers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/plan_index_sync.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/trailing_whitespace.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/ty_audit.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/ty_classify.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/ty_cleanup.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/ty_ignore_syntax.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/ty_imports.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/ty_narrow.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/ty_ratchet.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/validate_input_validator_patterns.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/tools/validate_regex_patterns.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/ui/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/ui/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/utils/console_utils.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/utils/error_handling.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/utils/issue_detection.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/utils/path_redaction.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/utils/python_fixups.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/utils/retry_utils.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/utils/temp_file_cleanup.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/websocket/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/websocket/auth.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/websocket/server.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/crackerjack/websocket/tls_config.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/2025-02-12-multi-agent-ai-fix-quality-system-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/2026-02-12-v2-multi-agent-quality-system.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/2026-07-07-ai-fix-improvement-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/2026-07-11-ai-fix-e501-post-processor-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/2026-08-06-ai-fix-removal-external-loop-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/2026-08-06-ai-fix-removal-extraction.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/ADR-002-multi-agent-orchestration.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/ADR-005-agent-skill-routing.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AGENT_COORDINATION_ARCHITECTURE_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AGENT_COORDINATION_FIX_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AGENT_PERFORMANCE_TRACKING.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AGENT_TEST_COVERAGE_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_BUGS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_EXECUTION_TRACE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_EXPECTED_BEHAVIOR.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_FAILURE_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_INVESTIGATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_ISSUES_RESOLUTION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_METRICS_REVIEW.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_REFACTOR_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AI_FIX_TEST_FAILURE_IMPLEMENTATION_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/AUDIT_RESULTS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/BATCHPROCESSOR_TROUBLESHOOTING.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/BATCHPROCESSOR_USER_GUIDE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/CHECKPOINT_ANALYSIS_2026-02-05.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/COMPLEXITY_REFACTORING_PLAN_GAMMA.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/COMPREHENSIVE_REMEDIATION_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/EXECUTIVE-SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/IMPLEMENTATION_STATUS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/PERFORMANCE_OPTIMIZATION_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/PROTOCOL_DOCUMENTATION_REVIEW.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/PROTOCOL_EXAMPLES.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/PROTOCOL_QUICK_REFERENCE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/PROTOCOL_REFERENCE_GUIDE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/PROVIDER_ARCHITECTURE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/QWEN_PROVIDER.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/README_AUDIT_REPORT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/REMEDIATION_PLAN_2026-02-05.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/SKILL_SYSTEM.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/STRUCTURED_LOGGING.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/TEST_IMPLEMENTATION_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/WARNING_AGENT_INTEGRATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/WARNING_SUPPRESSION_AGENT_DESIGN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/complexipy_adapter_fix.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/layer-6-agent-system.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/swarm-autofix-integration.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/2026-08-06-ai-fix-removal-cleanup/test-coverage.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/MAHAVISHNU_POOL_INTEGRATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/MAHAVISHNU_POOL_QUICKSTART.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/ARCHITECTURE_IMPROVEMENTS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/ASYNC_ADAPTER_FALLBACK_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/COMPREHENSIVE_HOOKS_FAILURE_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/COMPREHENSIVE_HOOKS_UI_UX_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/COMPREHENSIVE_HOOKS_WORKFLOW_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/PHASE_3.3_SOLID_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/SESSION_CHECKPOINT_2025-01-22.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/SESSION_CHECKPOINT_2025-01-22_PT2.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/SESSION_CHECKPOINT_2025-01-30.legacy.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/SESSION_CHECKPOINT_2025-01-30.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/SESSION_CHECKPOINT_2025-02-08-POSTTASKS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/SESSION_CHECKPOINT_2025-02-08-PRETASKS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/SESSION_CHECKPOINT_2025-02-08.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/TEST_COVERAGE_IMPROVEMENT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/TEST_COVERAGE_PLAN_CORE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/TEST_COVERAGE_SERVICES_LAYER.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/ULID_MIGRATION_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/python-improvements-summary.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/analysis/test_selection.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/audits/AI_FIX_WORKFLOW_AUDIT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/audits/AUDIT_HOOKS_TOOLS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/audits/CLI_OPTIONS_AUDIT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/audits/COMPREHENSIVE_HOOKS_TIMEOUT_AUDIT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/audits/CONFIG_CONSOLIDATION_AUDIT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/audits/CROSS_PROJECT_CONFIG_AUDIT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/audits/MCP_SERVER_AUDIT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/audits/PROGRESS_BAR_AUDIT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/audits/comprehensive_hooks_audit.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completed-analyses/TEMPFILE_COVERAGE_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completed-analyses/TEMPFILE_JSON_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completed-analyses/TEST_OPTIMIZATION_SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completed-analyses/TEST_TIMEOUT_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completed-audits/DOCUMENTATION_AUDIT_REPORT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completed-audits/README-AUDIT-RESULTS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completed-planning/REFACTORING_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completed-planning/TEST_IMPROVEMENT_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completed-planning/refactoring_plan_test_management.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completed-projects/FINAL_PROJECT_SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completed-projects/IMPLEMENTATION_SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/AI_AGENT_IMPROVEMENTS_SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/AI_AGENT_PROMPT_IMPROVEMENTS_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/AI_FIX_CONVERGENCE_FIX_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/AI_FIX_DIAGNOSTIC_IMPROVEMENTS_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/ALIVE_PROGRESS_REMOVAL_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/COMPREHENSIVE_HOOKS_FIX_IMPLEMENTATION_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/COVERAGE_AUDIT_REPORT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/CRACKERJACK_ADMIN_SHELL_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/CRACKERJACK_TEST_SELECTION_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/DOCS_CONSOLIDATION_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/FULL_WORKFLOW_TEST_RESULTS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/OPERATIONAL_SIMPLIFICATION_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/OPERATIONAL_SIMPLIFICATION_SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/PHASE2_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/PHASES_1_AND_2_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/PHASE_1_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/PHASE_3.1_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/PHASE_3.3_CONFIGPARSER_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/PHASE_3.3_STATUS_ENUMS_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/PHASE_3.5_CODE_DUPLICATION_SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/PHASE_3_FINAL_STATUS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/PHASE_3_PROGRESS_SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/PHASE_3_UPDATE_COORDINATORS_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/SESSION_SUMMARY_2025-02-08.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/SESSION_SUMMARY_TIMEOUTS_CACHING_UX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/TESTMANAGER_REFACTORING_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/TEST_COVERAGE_EXPANSION_SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/TEST_COVERAGE_INIT_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/V2_INTEGRATION_SUCCESS_WITH_ISSUE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/V2_LAYER1_COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/completion-reports/complexity_refactoring_complete.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/docs/CLAUDE_MD_VALIDATION_IMPLEMENTATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/docs/CRACKERJACK_TEST_COVERAGE_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/docs/DOCS_CONSOLIDATION_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/docs/GIT_METRICS_COLLECTOR_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/docs/OPERATIONAL_SIMPLIFICATION_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/docs/PHASE_3_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/docs/REFACTORING_PLAN_NAMING.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/docs/TESTMANAGER_REFACTORING_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/ACB-AI-AGENT-INTEGRATION-DESIGN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/ACB-EVENT-BRIDGE-DESIGN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/ACB-MIGRATION-ABORT-CRITERIA.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/ACB-WORKFLOW-ARCHITECTURE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/ACB-WORKFLOW-INTEGRATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/ACB-WORKFLOW-MIGRATION-PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/ADAPTER_PROTOCOL_FIX_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/ADAPTER_TEST_COVERAGE_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/COMPLEXITY_REFACTORING_PLAN_2025-12-31.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/COMP_HOOKS_OPTIMIZATION_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/FAST_HOOKS_OPTIMIZATION_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/FINAL_ZUBAN_CONQUEST_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/MANAGER_TEST_IMPLEMENTATION_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/MIGRATION_AUDIT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/ONEIRIC_MIGRATION_EXECUTION_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/ONEIRIC_MIGRATION_STATUS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/PHASE-3-IMPLEMENTATION-PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/PHASE-4-IMPLEMENTATION-PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/PHASES-5-6-7-SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/PHASE_5-7_IMPLEMENTATION_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/PROTOCOL_DOCUMENTATION_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/PUBLISH-WORKFLOW-ORDERING-FIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/TEST-PARALLELIZATION-IMPLEMENTATION-SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/TEST-PARALLELIZATION-REVIEW.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/TEST-PARALLELIZATION-STRATEGIES.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/TOOLS_PARSERS_TEST_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/complexity_refactoring_plan.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/error_handling_refactoring_plan.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/health_check_implementation_plan.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/implementation-plan-logging-progress-fixes.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/refactoring-plan-complexity-violations.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-plans/workflow_orchestrator_refactoring_plan.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-reports/AGENT_TEST_DELIVERY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-reports/DOCS_CLEANUP_IMPLEMENTATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-reports/JSON_PARSING_IMPLEMENTATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-reports/TEST_AI_FIX_IMPLEMENTATION_JAN_2025.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-reports/TEST_AI_STAGE_IMPLEMENTATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-reports/progress-bar-implementation.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-reports/progress-indicator-analysis.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/implementation-reports/python-review-logging-progress-implementation.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/AI_FIX_ADAPTER_FIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/AI_FIX_ARCHITECTURAL_FIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/AI_FIX_BROKEN_PATTERNS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/AI_FIX_DEBUGGING_METHODOLOGY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/AI_FIX_DIAGNOSTIC_READY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/AI_FIX_DOCUMENTATION_LINKS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/AI_FIX_INVESTIGATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/AI_FIX_PRODUCTION_TEST_DEBUG.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/AI_FIX_REGRESSION_CORPUS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/AI_FIX_ROOT_CAUSE_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/AI_FIX_SAFETY_VALIDATION_IMPLEMENTED.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/AI_FIX_SHADOWING_DAMAGE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/AI_FIX_VALIDATION_ISSUES.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/MCP_SERVER_INVESTIGATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/bandit-performance-investigation.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/investigations/reporting_tools_investigation.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/ACB-WORKFLOW-PHASE2-COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/ACB-WORKFLOW-PHASE2-DEPENDENCY-MAP.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/ACB-WORKFLOW-PHASE2-PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/ACB-WORKFLOW-PHASE2-PROGRESS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/ACB-WORKFLOW-PHASE3-COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/ACB-WORKFLOW-PHASE4.0-COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/ACB-WORKFLOW-PHASE4.1-COMPLETE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/PHASE-2-REGRESSION-FIX-SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/PHASE-3-COMPLETION-SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/PHASE-4.2-COMPLETION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/PHASE-6-COMPLETION-SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/PHASE-6-IMPLEMENTATION-PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/PHASE-6-PERFORMANCE-OPTIMIZATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/PHASE-7-EVENT-BUS-INTEGRATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/PHASE-7.2-COMPLETION-SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/PHASE-7.3-COMPLETION-SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/PHASE2_OPTIMIZATION_SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/PHASE5B_PROGRESS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/phase-completions/PHASE5_TEST_FAILURE_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/session-artifacts/analyze_test_imports.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/session-artifacts/check_gitignore.v1.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/session-artifacts/session-handoff.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/session-artifacts/verify_connection_pool.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/AGENT_B_IMPORT_UNION_FIXES.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/AI_AGENT_CODE_GENERATION_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/AI_AGENT_FAILURE_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/AI_AGENT_LOGGING_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/CHECK_YAML_AI_FIX_BUG_FIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/COMPLEXIPY_PARSER_FIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/COMPREHENSIVE_HOOKS_TIMEOUT_FIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/CRACKERJACK_ADMIN_SHELL_TESTING.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/CRITICAL_FIXES_APPLIED.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/ERROR_DETAILS_DISPLAY_FIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/FIX_AI_FIX_PROGRESS_BAR.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/FIX_FALSE_HUNG_WARNINGS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/FIX_FROZEN_PROGRESS_DISPLAY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/FIX_JSON_LOGGING_CONSOLE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/PHASE_3_COMPLETE_100.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/PHASE_3_PROGRESS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/PHASE_3_PROGRESS_UPDATE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/RUFF_CHECK_AI_FIX_BUG_FIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/SESSION_SUMMARY_2025-02-11_FIXES.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/SESSION_SUMMARY_POST_TIMEOUT_FIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/SHELL_ADAPTER_FIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/TEST_FIXES_PHASES_1_AND_2.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/TEST_PARSING_FIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/ZUBAN_TYPE_CHECKING_FIXES.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/sprints-and-fixes/reporting_tools_fix.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/summaries/CHECKPOINT_2026-02-05_FINAL.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/summaries/TEST_COVERAGE_RESULTS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/temp-files/fix_broken_functions.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/temp-files/fix_indentation.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/temp-files/fix_test_imports.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/temp-files/plugins.json +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/uncategorized/CLAUDE_ARCHITECTURE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/uncategorized/CLAUDE_PATTERNS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/uncategorized/CLAUDE_PROTOCOLS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/.archive/uncategorized/CLAUDE_QUICKSTART.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/ADMIN_SHELL.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/ARCHITECTURE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/CLI_REFERENCE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/DOCS_CLEANUP_GUIDELINES.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/DOCS_ORGANIZATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/ERROR_HANDLING_MIGRATION_GUIDE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/ERROR_HANDLING_STANDARD.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/HOOK_ISSUE_COUNT_DISPLAY_OPTIONS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/HOOK_ISSUE_COUNT_ROOT_CAUSE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/INTEGRAL_SCANNING_OPTIONS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/ISSUE_COUNT_BUGFIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/JSON_PARSING_ARCHITECTURE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/JSON_PARSING_PERFORMANCE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/MCP_GLOBAL_MIGRATION_GUIDE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/MCP_TOOLS_SPECIFICATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/MIGRATION_GUIDE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/MIGRATION_GUIDE_0.47.0.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/PERFORMANCE_DIAGRAMS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/PERFORMANCE_PHASE_2_1_REGEX_PRECOMPILATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/PROFILES_QUICK_REFERENCE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/PROTOCOL_DX_ASSESSMENT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/PYPROJECT_TIMEOUT_IMPLEMENTATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/QUALITY_SCANNING_STRATEGY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/QUICK_START.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/TEAM_COORDINATION_DIAGRAM.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/TOOLS_PARSERS_TEST_STATUS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/adr/ADR-001-mcp-first-architecture.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/adr/ADR-003-property-based-testing.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/adr/ADR-004-quality-gate-thresholds.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/adr/ADR-025-complexity-scanning-defaults.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/api/reference.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/architecture/MEMORY_ARCHITECTURE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/architecture/protocols.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/architecture/tool-profile-rationale.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/assets/images/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/audits/2026-06-12-furb-handler-audit-driver.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/audits/2026-06-12-furb-handler-audit.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/audits/2026-06-28-tests-ty-audit.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/audits/2026-08-03-crackerjack-orphan-stashes.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/audits/2026-09-09-crackerjack-docs-audit.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/decisions/.archive/implementation-plans/2026-10-16-plan-index-git-aware-and-tool-flag.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/decisions/.archive/sprints-and-fixes/SKILLS_METRICS_ARCHITECTURE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/decisions/2026-10-10-env-prefix-decision.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/design/FIX_STRATEGY_MEMORY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/design/SKILL_METRICS_IMPLEMENTATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/design/SKILL_METRICS_MIGRATION_GUIDE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/design/SKILL_METRICS_QUICK_REFERENCE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/design/SKILL_METRICS_STORAGE_SCHEMA.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/design/SKILL_METRICS_TRANSACTION_PATTERNS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/development/STRUCTURED_LOGGING.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/development/SYMBOL_DISPLAY_CRITICAL_FIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/development/SYMBOL_DISPLAY_IMPLEMENTATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/diagrams/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/diagrams/adapter-taxonomy.png +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/diagrams/ai-agent-orchestration.png +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/diagrams/oneiric-workflow-dag.png +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/diagrams/pattern-management.png +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/diagrams/quality-hooks.png +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/diagrams/security-threat-model.png +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/examples/git_semantic_search_examples.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/feature-tracking/TEMPLATE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/features/AI_FIX_PROGRESS_BAR_REDESIGN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/features/GIT_SEMANTIC_SEARCH_MCP_TOOLS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/features/MAHAVISHNU_INTEGRATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/features/PARALLEL_EXECUTION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/features/PHASE2_OPTIMIZATION_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/features/PHASE_3_LEARNING_QUICK_REFERENCE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/features/QA_RESULT_INTEGRATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/features/SKILLS_INTEGRATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/features/SYMBIOTIC_ECOSYSTEM_INTEGRATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/features/WORKFLOW_OPTIMIZATION_USER_GUIDE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/fixes/test-executor-working-directory-fix.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/followups/2026-07-04-tier3-implementation-plan.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/followups/2026-09-14-delete-dhara-mcp-client-after-decomposition.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/followups/2026-09-18-mcp-subcommand-only.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/followups/triage/2026-07-10-output-validator-import-check.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/followups/triage/2026-07-10-refactoring-agent-ast-fallback.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/followups/triage/2026-07-10-validation-coordinator-concurrency.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/guides/AGENTS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/guides/CLAUDE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/guides/contributing.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/guides/progressive-complexity.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/guides/testing.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/ARGUMENT_LIST_TOO_LONG_FIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/AUDIT_HOOKS_TOOLS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/CONFIG_CONSOLIDATION_AUDIT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/CROSS_PROJECT_CONFIG_AUDIT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/ERROR_DETAILS_DISPLAY_FIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/FINAL_IMPLEMENTATION_SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/HOOK_ISSUE_COUNT_DISPLAY_OPTIONS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/HOOK_ISSUE_COUNT_FIX_SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/HOOK_ISSUE_COUNT_ROOT_CAUSE.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/HOOK_REPORTING_ANALYSIS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/HOOK_REPORTING_FIX_SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/IMPLEMENTATION_PLAN_ALL_FILES.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/ISSUE_COUNT_SUMMARY_TOTAL_FIX.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/PHASE5_SERVICE_CONSOLIDATION_AUDIT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/TEST_IMPROVEMENT_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/UNIFIED_IMPLEMENTATION_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation/git_semantic_search_implementation.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation-plans/enhanced-test-error-reporting.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/implementation-status.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/index.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/operations/reindex.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/patterns/ONEIRIC_SKILLS_INTEGRATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/performance/CONNECTION_POOL_IMPLEMENTATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/performance/PHASE_2.2_COMPLETION_REPORT.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/performance-baseline.json +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/performance-baseline.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/.archive/2025-02-12-multi-agent-ai-fix-quality-system.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/.archive/2026-02-22-ast-transform-engine-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/.archive/2026-05-30-ai-fix-dashboard-wiring.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/.archive/2026-06-27-ty-cleanup-and-ai-fix.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/.archive/2026-07-06-ai-fix-tier-architecture.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/.archive/2026-08-06-ai-fix-external-loop.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/.archive/2026-08-11-bodai-coverage-ratchet-followups.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/.archive/2026-08-11-bodai-coverage-ratchet-standard.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/.archive/2026-08-11-skill-coverage-out-of-fast-hooks.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/.archive/2026-09-07-crackerjack-multi-language-phase1.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/.archive/2026-09-07-crackerjack-multi-language-phase2.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/.archive/2026-09-07-crackerjack-multi-language-phase3.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/.archive/2026-09-07-crackerjack-multi-language-phase4.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/.archive/AI_FIX_IMPROVEMENT_PLAN.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-05-20-phase-0-event-bus-plan.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-06-02-ai-fix-display-loop-bugs.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-06-03-dhara-mcp-migration.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-06-29-ty-ratchet-cleanup.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-07-08-fix-sandbox-integration.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-07-10-libcst-surgeon-extract-method-fallback.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-07-10-output-validator-traceback-details.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-07-10-validation-coordinator-serialization.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-07-11-ai-fix-e501-post-processor.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-07-11-ai-fix-no-op-circuit-breaker.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-07-11-ai-fix-regen-timeout.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-07-12-eventbridge-publisher.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-08-06-ai-fix-external-loop.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-08-06-crackerjack-ruff-fix-policy.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-08-10-ai-fix-loop-task-1-kickoff.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-08-11-darnlink-replaces-check-local-links.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-09-07-bodai-shared-gitignore-snippet.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-10-10-crackerjack-oneiric-loader-migration.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-10-11-remove-zuban-skylos-lsp-from-crackerjack.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/2026-10-28-path-disclosure-redaction.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase2-a11y.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase2-api.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase2-mcp.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase2-security.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase2-simplification.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase2-swift.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase2-testing.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase2-writing.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase3-a11y.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase3-api.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase3-kotlin.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase3-mcp.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase3-security.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase3-simplification.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase3-testing.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase3-writing.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase4-a11y.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase4-api.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase4-integration.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase4-mcp.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase4-security.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase4-simplification.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase4-testing.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase4-web.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/plans/reviews/2026-09-07-phase4-writing.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/profile_batch_processor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/prompts/symbiotic-ecosystem-integration.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/pytest_warning_parser_example.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/quality/gates.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/refactoring/TASK_4.3_NAMING_CONVENTIONS.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reference/ADAPTER_UUID_REGISTRY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reference/AI_FIX_QUALITY_QUICKSTART.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reference/BREAKING_CHANGES.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reference/CHANGELOG.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reference/CONFIGURATION.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reference/COVERAGE_POLICY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reference/SECURITY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reference/admin-shell.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reference/service-dependencies.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/refurb_creosote_behavior.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reviews/layer-1-cli-handlers.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reviews/layer-2-services.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reviews/layer-3-managers.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reviews/layer-4-coordinators.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reviews/layer-5-orchestration.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reviews/layer-7-adapters.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/reviews/layer-8-mcp-integration.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/run_agent_tests.sh +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/runbooks/H11_self_patcher_deny_paths.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/schemas/document-frontmatter-v1.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/2026-05-20-ai-fix-comprehensive-overhaul-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/2026-06-03-dhara-mcp-migration-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/2026-06-29-ty-ratchet-cleanup-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/2026-07-08-fix-sandbox-integration-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/2026-07-10-libcst-surgeon-extract-method-fallback-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/2026-07-10-output-validator-traceback-details-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/2026-07-10-validation-coordinator-serialization-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/2026-07-11-ai-fix-no-op-circuit-breaker-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/2026-07-11-ai-fix-regen-timeout-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/2026-08-06-crackerjack-ruff-fix-policy-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/2026-08-11-bodai-coverage-ratchet-standard-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/2026-09-07-crackerjack-multi-language-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/2026-10-10-crackerjack-oneiric-loader-migration-design.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/reviews/2026-09-07-a11y.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/reviews/2026-09-07-api.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/reviews/2026-09-07-jinja.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/reviews/2026-09-07-kotlin.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/reviews/2026-09-07-mcp.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/reviews/2026-09-07-python.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/reviews/2026-09-07-simplification.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/reviews/2026-09-07-swift.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/reviews/2026-09-07-testing.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/reviews/2026-09-07-web.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/specs/reviews/2026-09-07-writing.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/symbiotic-ecosystem-quick-start.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/task-breakdown.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/test_dead_code_agent_validation.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/docs/zensical.yaml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/akosha_git_search_demo.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/backup_system_demo.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/custom_hook_plugin.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/decorator_usage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/enhanced_monitor_demo.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/enhanced_monitor_demo_fixed.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/enhanced_progress_example.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/mcp_client_example.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/plugin_config.json +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/skills_tracking/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/skills_tracking/example_1_basic_tracking.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/skills_tracking/example_2_recommendations.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/skills_tracking/example_3_workflow_aware.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/skills_tracking/example_4_error_handling.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/slash_command_progress_example.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/test_progress_display.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/examples/timeout_handling_example.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/mahavishnu/core/events/confidence_ceiling.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/mahavishnu/tests/unit/test_confidence_ceiling.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/mypy.ini +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/node_modules/.gitkeep +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/ops/crontab.example +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/package-lock.json +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/package.json +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/_frontmatter_apply_C1.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/_frontmatter_restore_C2.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/audit_command_consistency.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/benchmark_performance.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/benchmark_regex_precompilation.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/create_test_templates.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/docs_cleanup.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/integrate_resource_management.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/migrate_skills_to_sessionbuddy.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/migrate_ulids.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/performance_benchmark.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/precompile_regex_parsers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/precompile_regex_test_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/profile_hooks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/quick_fix_type_errors.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/regenerate_plan_index.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/rollback_skills_migration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/run_coverage_audit.sh +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/run_ulid_migration.py.bak3 +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/session_cleanup.sh +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/update_test_manager_regex_usage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/validate_imports.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/scripts/validate_skills_migration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/settings/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/settings/adapters.yaml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/settings/local.yaml.example +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/settings/minimax.example.yaml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/settings/profiles/comprehensive.yaml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/settings/profiles/quick.yaml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/settings/profiles/standard.yaml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/settings/qwen.example.yaml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/templates/GITIGNORE_BODAI.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/templates/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/templates/api_reference.md.template +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/templates/changelog_entry.md.template +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/templates/pyproject-full.toml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/templates/pyproject-library.toml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/templates/pyproject-minimal.toml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/templates/user_guide.md.template +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/TESTING_GUIDELINES.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/kotlin/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/kotlin/_gradle_helpers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/kotlin/test_git_backend.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/kotlin/test_gradle_vanilla_fixture.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/kotlin/test_hooks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/kotlin/test_kotlin_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/kotlin/test_lifecycle.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/kotlin/test_version_source.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/python/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/python/test_hooks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/python/test_lifecycle.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/python/test_python_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/python/test_version_source.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/swift/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/swift/_git_helpers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/swift/test_git_backend.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/swift/test_hooks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/swift/test_lifecycle.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/swift/test_platforms.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/swift/test_swift_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/swift/test_version_source.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_adapter_registry.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_ai_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_ai_registry.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_bandit.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_benchmark_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_codespell.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_complexipy.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_creosote.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_factory.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_health_mixin.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_mdformat.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_osv_scanner.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_osv_scanner_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_output_paths.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_provider_chain.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_pyscn.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_pyscn_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_refurb_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_registry.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_ruff.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_sast_base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_scalene.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_semgrep.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_tool_adapter_base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_treesitter_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_type_adapters.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/test_vulture.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/type/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/type/test_pyright.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/web/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/web/test_detection.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/web/test_hooks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/web/test_jinja_formatter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/web/test_web_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/adapters/web/test_web_vanilla_fixture.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/base_test.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/checks/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/cli/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/cli/handlers/test_docs_commands.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/cli/handlers/test_health_handler.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/cli/handlers/test_main_handlers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/cli/test_base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/cli/test_cache_handlers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/cli/test_clone_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/cli/test_coverage_ratchet_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/cli/test_gitignore_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/cli/test_lifecycle_handlers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/cli/test_profile_handlers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/cli/test_rich_utils.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/cli/test_semantic_handlers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/cli/test_separator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/config/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/config/test_loader.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/config/test_pip_audit_ignores.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/config/test_validators.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/conftest.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/conftest_extensions.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/conftest_reset.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/self_heal/test_l2_noop.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/test_async_workflow_orchestrator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/test_console.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/test_eventbridge_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/test_file_lifecycle.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/test_language_detector.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/test_plan_index_sync_phase.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/test_proactive_workflow.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/test_retry.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/test_safe_directory_creator_unit.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/test_self_heal.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/test_session_controller.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/test_timeout_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/core/test_workflow_orchestrator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/docs/HEALTH_METRICS_TESTING_SUMMARY.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/docs/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/e2e/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/e2e/test_bodai_ratchet_adoption.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/e2e/test_review_pr_e2e.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/exceptions/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/exceptions/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/exceptions/test_config.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/exceptions/test_tool_execution_error.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/executors/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/executors/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/executors/test_cached_hook_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/executors/test_hook_executor_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/executors/test_no_issues_for_failed_hook.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/executors/test_process_monitor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/executors/test_progress_hook_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/ast_transform/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/ast_transform/patterns/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/ast_transform/patterns/test_early_return.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/ast_transform/surgeons/test_libcst_surgeon.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_anti_pattern.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_architecture.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_dead_code.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_dependency.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_documentation.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_dry.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_formatting.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_import_optimization.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_performance.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_planning.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_refactoring.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_refurb.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_security.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_semantic.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_test_creation.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_test_specialist.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixers/test_type_errors.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/_tool_groups_mapping.json +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/_tool_registry_keys.json +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/full/tool_names.json +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/gradle-vanilla/build.gradle.kts +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/gradle-vanilla/gradle.properties +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/gradle-vanilla/settings.gradle.kts +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/gradle-vanilla/src/main/kotlin/Hello.kt +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/jinja-templates/basic.html.j2 +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/jinja-templates/basic.html.j2.expected +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/jinja-templates/custom_delimiters.html.j2 +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/jinja-templates/custom_delimiters.html.j2.expected +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/jinja-templates/whitespace.html.j2 +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/jinja-templates/whitespace.html.j2.expected +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/swift-lib/Package.swift +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/swift-lib/Sources/SwiftLib/SwiftLib.swift +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/web-vanilla/.eslintrc.json +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/web-vanilla/.stylelintrc.json +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/web-vanilla/package.json +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/web-vanilla/src/app.ts +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/web-vanilla/src/index.html +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/web-vanilla/src/style.css +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/web-vanilla/templates/basic.html +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/web-vanilla/templates/custom_delimiters.html +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/web-vanilla/templates/whitespace.html +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/fixtures/web-vanilla/tsconfig.json +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/adapters/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/adapters/test_adapter_parser_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/core/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/core/test_performance_monitor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/core/test_phase_coordinator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/core/test_resource_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/mcp/test_async_task_result_store.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/mcp/test_common_mcp_client.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_adapter_learning.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_ai_fix_loop_acceptance.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_akosha_learning.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_async_task_result_store_e2e.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_eventbridge_e2e.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_get_agent_e2e.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_git_metrics_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_health_e2e.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_list_agents_e2e.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_mahavishnu_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_migration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_oneiric_transport_roundtrip.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_phase_coordinator_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_review_pr.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_sandboxed_fix.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_session_buddy_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_skills_cli_e2e.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/test_tier_architecture_e2e.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/tools/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/integration/tools/test_tool_parser_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/managers/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/managers/test_constants.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/managers/test_managers_constants.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/managers/test_publish_gitignore_autosync.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/managers/test_test_executor_regex.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/managers/test_test_manager_ratchet.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/mcp/test_client_runner.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/mcp/test_error_analyzer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/mcp/test_service_watchdog.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/mcp/test_task_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/mcp/tools/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/mcp/tools/test_eventbridge_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/mcp/tools/test_language_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/mcp_test_helpers/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/mcp_test_helpers/tools/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/mcp_test_helpers/tools/test_execution_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/mcp_test_helpers/tools/test_monitoring_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/mcp_test_helpers/tools/test_pycharm_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/mcp_test_helpers/tools/test_semantic_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/mcp_test_helpers/tools/test_workflow_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/memory/test_git_metrics_collector.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_adapter_metadata.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_enums.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_fix_plan.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_git_analytics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_health_check.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_protocols.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_qa_config.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_qa_results.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_resource_protocols.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_results.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_semantic_models.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_session_metrics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_task.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_test_models.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_tool_config.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/models/test_validation_contracts.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/parsers/test_complexipy_parser.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/parsers/test_json_parsers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/parsers/test_json_parsers_extended.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/parsers/test_json_parsers_gaps.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/parsers/test_lychee_parser.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/parsers/test_parser_factory.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/parsers/test_ruff_parser_edge_cases.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/performance/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/performance/test_core_performance.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/property/test_quality_property.py.disabled +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/run_tests.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/scripts/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/scripts/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/scripts/run_test_suite.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/patterns/core_test.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/pypi_auth/test_trusted_publishing.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/quality/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/quality/test_anti_ai_flavor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/quality/test_anti_ai_flavor_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/quality/test_pattern_cache.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_anomaly_detector.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_async_file_io.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_backup_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_cache.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_config_integrity.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_coverage_badge_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_coverage_ratchet.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_file_chunker.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_file_filter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_file_hasher.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_file_io_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_file_modifier.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_filesystem.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_git.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_import_resolution.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_improvement_overseer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_incremental_scanner.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_input_validator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_intelligent_commit.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_logging.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_marker_tracker.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_memory_aware_scanner.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_pattern_cache.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_pool_client.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_pool_orchestrator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_pool_router.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_pool_scaler.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_prompt_evolution.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_regex_patterns.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_regex_patterns_reexports.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_safe_code_modifier.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_secure_subprocess.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_smart_file_filter_v2.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_swarm_client.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_thread_safe_status_collector.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_version_math.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/services/test_workflow_optimization.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/sop/test_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test___main__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test__git_utils.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_actual_semgrep.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_api.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_async_hook_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_async_hook_executor_concurrency.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_async_hook_executor_parsing.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_async_hook_executor_process_tracking.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_async_hook_executor_ty.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_async_semgrep.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_autofix_coordinator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_changelog_generation.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_changelog_preview_escape.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_check_added_large_files.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_check_ast.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_check_json.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_check_toml.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_check_yaml.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_ci_feedback.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_claude_simple.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_cli/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_cli/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_cli/test_global_lock_options.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_cli_entry_point.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_code_cleaner_comprehensive.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_command_execution_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_config_cleanup.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_config_cleanup_drift_repair.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_config_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_console.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_contracts_reexports.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_core_performance.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_data_models.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_decorators.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_decorators_utils.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_doc_drift.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_doc_updates.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_docs_site/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_docs_site/site/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_docs_site/site/docs/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_docs_site/site/docs/api-reference.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_docs_site/site/docs/getting-started.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_docs_site/site/docs/index.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_docs_site/site/docs/stylesheets/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_docs_site/site/docs/stylesheets/extra.css +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_docs_site/site/mkdocs.yml +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_docstring_conversion.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_documentation_cleanup.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_dual_output_generator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_edge_cases.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_enhanced_filesystem.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_enhanced_filesystem_comprehensive.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_enhanced_filesystem_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_enhanced_reporting.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_error_handling.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_error_handling_decorators.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_errors.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_executors/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_executors/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_executors/test_lock_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_fast_hooks_behavior.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_fast_iteration_mode.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_file_io_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_file_lifecycle.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_filesystem_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_final_validation.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_git_cleanup.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_global_lock_config.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_health_check.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_hook_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_hook_lock_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_hook_manager_simple.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_incremental_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_individual_hook_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_initialization_precommit_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_initialization_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_input_validation.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_integration_new_hooks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_interactive.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_json_hooks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_large_modules_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_mcp_core_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_mcp_monitoring_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_mcp_semantic_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_mcp_server.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_mcp_server_handlers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_mcp_utility_tools.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_mcp_workflow_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_mkdocs_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_models_comprehensive.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_models_config_adapter_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_models_focused.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_models_task_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_modernized_code.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_performance.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_performance_monitor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_phase2_scenarios.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_phase_coordinator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_plugins_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_proactive_workflow.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_profiler.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_profiler_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_property_based.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_publish_manager_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_publish_workflow.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_py313.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_qa_adapters_protocol_compliance.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_qa_config_models.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_qa_tool_adapters.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_qa_utility_check_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_reference_generator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_regex_patterns.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_resource_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_retry.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_secure_path_utils.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_security_audit.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_security_hardening.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_semgrep_parsing.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_semgrep_parsing_after_refactor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_server_panels.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_services_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_session_buddy_git_metrics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_session_coordinator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_session_coordinator_comprehensive.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_session_coordinator_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_shared_contracts.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_simple_workflow.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_skills_signer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_skip_hooks_functionality.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_skip_hooks_simple.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_structured_logging.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_syntax_validation.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_terminal_restoration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_terminal_state.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_test_command_builder_workers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_test_selection.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_timeout_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_timeout_system.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_tool_filter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_updated_semgrep.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_validate_input_validator_patterns.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_validate_regex_patterns.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_validate_regex_patterns_tool.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_version_analyzer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_version_bump_analyzer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_websocket_auth.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_workflow_fast_hooks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_workflow_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/test_workflow_orchestrator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_check_added_large_files.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_check_ast.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_check_json.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_check_jsonschema.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_check_toml.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_check_yaml.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_codespell_wrapper.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_end_of_file_fixer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_format_json.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_linkcheckmd_runner.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_linkcheckmd_wrapper.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_local_link_checker.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_mdformat_wrapper.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_no_conflict_markers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_trailing_whitespace.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_ty_audit.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_ty_classify.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_ty_cleanup.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_ty_imports.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_ty_narrow.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_ty_ratchet.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/tools/test_validate_input_validator_patterns.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/README.md +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/complexity/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/complexity/test_complexipy.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/performance/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/performance/test_scalene_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/refactor/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/refactor/test_refurb.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/test_adapter_settings_contract.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/test_bandit_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/test_betterleaks_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/test_cohesion_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/test_factory.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/test_pymetrica_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/test_pyrefly_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/test_pyscn_cc_suppression.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/test_ruff_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/test_sast_base_direct.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/test_semgrep_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/adapters/test_syrupy_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/cli/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/cli/handlers/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/cli/handlers/test_analytics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/cli/test_anti_ai_flavor_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/cli/test_audit_skills.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/cli/test_docs_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/cli/test_facade.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/cli/test_options_allow_unsafe.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/cli/test_pr0_replay.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/cli/test_rich_utils.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/cli/test_skills_refresh.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/cli/test_version.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/clone/test_clone_grouper.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/clone/test_extraction_classifier.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/clone/test_refactor_engine.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/config/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/config/test_ai_settings.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/config/test_eventbridge_settings.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/config/test_hook_definition_allow_unsafe.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/config/test_hook_settings_ruff_unsafe.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/config/test_hooks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/config/test_per_file_ignores.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/config/test_pip_audit_ignores.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/config/test_tool_commands_ruff_unsafe.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/conftest.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/test_adapter_learning_integration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/test_autofix_coordinator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/test_eventbridge_resolver.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/test_hook_issue_markup_safety.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/test_phase_coordinator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/test_phase_coordinator_additional.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/test_phase_coordinator_flows.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/test_phase_coordinator_set_event_publisher.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/test_pr0_crash_recovery.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/test_resource_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/test_session_coordinator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/test_session_coordinator_enhanced.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/test_structured_data_parser.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/core/test_workflow_pipeline_eventbridge_wiring.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/crackerjack/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/crackerjack/hooks/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/decorators/test_error_handling.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/decorators/test_error_handling_decorators.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/decorators/test_patterns.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/documentation/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/documentation/test_docstring_enricher.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/documentation/test_docstring_extractor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/exceptions/test_tool_execution_error.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/handlers/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/integration/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/mahavishnu/tenancy/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/mahavishnu/tenancy/test_tenant_context_packs.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/managers/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/managers/test_async_orchestration.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/managers/test_failure_parsing.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/managers/test_hook_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/managers/test_hook_manager_extended.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/managers/test_publish_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/managers/test_publish_manager_extended.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/managers/test_publish_manager_gaps.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/managers/test_publish_manager_pyi_auth.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/managers/test_quality_execution.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/managers/test_test_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/managers/test_test_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/managers/test_test_manager_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/managers/test_test_progress.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/managers/test_xdist_fallback.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/mcp/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/mcp/test_async_task_persistence.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/mcp/test_mcp_tool_drift.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/mcp/test_otel_tools_query_local_traces.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/mcp/test_rate_limiter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/mcp/test_reap_zombies.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/mcp/test_state.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/mcp/tools/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/mcp/tools/test_search_code.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/mcp/tools/test_search_semantic.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/models/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/models/fixtures/json_output_v1.json +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/models/test_issues.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/parsers/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/parsers/test_base.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/parsers/test_factory.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/parsers/test_json_parsers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/parsers/test_lychee_parser.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/parsers/test_regex_parsers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/qa/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/qa/test_quality_metrics.py.disabled +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/runtime/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/runtime/test_oneiric_workflow.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/ai/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/ai/test_advanced_optimizer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/ai/test_ai_contextual_assistant.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/ai/test_ai_embeddings.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/ai/test_ai_intelligent_commit.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/ai/test_ai_predictive_analytics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/conftest.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/quality/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/quality/test_anti_ai_flavor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/quality/test_anti_ai_flavor_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/quality/test_quality_baseline_enhanced.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/quality/test_quality_intelligence.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_api_extractor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_changelog_automation.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_config_parsers_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_config_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_config_service_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_config_template_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_config_template_ruff_unsafe.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_connection_pool.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_connection_pool_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_coverage_ratchet.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_debug.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_dependency_analyzer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_documentation_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_enhanced_filesystem.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_failure_recorder.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_failure_trend_noise_gate.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_filesystem.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_git.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_git_cleanup.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_heatmap_generator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_import_resolution.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_import_resolution_direct.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_improvement_generator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_input_validator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_keyring_raw.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_log_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_mahavishnu_discovery.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_memory_optimizer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_message_deduplicator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_metrics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_parallel_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_pattern_detector.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_predictive_analytics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_pypi_auth.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_pypi_auth_providers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_pypistats_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_regex_utils.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_safe_code_modifier.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_secure_status_formatter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_secure_subprocess.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_security.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_security_logger.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_self_patcher.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_self_patcher_deny_paths.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_smart_scheduling_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_status_security.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_thread_safe_status_collector.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_tool_version_service.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_tool_version_service_direct.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_validation_rate_limiter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_vector_store.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_vector_store_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_version_analyzer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_version_checker_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/test_version_math.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/testing/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/testing/test_coverage_manager.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/testing/test_test_result_parser_statistics.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/services/testing/test_test_result_renderer.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/shell/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/shell/test_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/shell/test_adapter_runners.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/shell/test_session_compat.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/skills/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/skills/test_health.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_adapter_observability.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_agent_metadata_schema.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_api.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_audit_type_checking_runtime_refs.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_bodai_build_system_guard.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_bodai_registry.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_cli_comprehensive.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_code_cleaner.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_comprehensive_type_hooks.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_config_settings.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_conftest_reset.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_constants.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_contracts.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_coverage_targets.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_defaults.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_discover_query.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_discover_tools_deletion.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_doc_cli.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_error_scenarios.py.disabled +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_eventbridge_adapter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_eventbridge_publisher.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_frontmatter_validator.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_hook_executor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_hypothesis_lock.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_lychee_hook.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_mermaid_renders.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_model_helpers.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_parallel_workflow.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_phase_task_verbose.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_plan_index_sync.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_process_monitor.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_profile_loader.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_progress_snapshots.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_safe_typer_loader.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_skill_metadata_schema.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_sop_evolution.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_timeout_manager_enhanced.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_tool_profile.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_validate_frontmatter.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_version_runtime_sync.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_websocket_auth.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/test_websocket_server.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/tools/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/tools/test_check_json.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/tools/test_check_toml.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/tools/test_check_yaml.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/tools/test_codespell_wrapper.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/tools/test_git_utils.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/tools/test_mdformat_wrapper.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/tools/test_tools_coverage.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/tools/test_ty_ignore_syntax.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/utils/__init__.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/utils/test_issue_detection.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/unit/utils/test_path_redaction.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/utils/issue_detection_test.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/websocket/test_server.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/tests/websocket/test_tls_config.py +0 -0
- {crackerjack-0.91.2 → crackerjack-0.91.3}/zensical.toml +0 -0
|
@@ -10,6 +10,22 @@ blocks_on: []
|
|
|
10
10
|
topic: changelog
|
|
11
11
|
---
|
|
12
12
|
|
|
13
|
+
## [0.91.3] - 2026-10-29
|
|
14
|
+
|
|
15
|
+
### Performance
|
|
16
|
+
|
|
17
|
+
- Run the Refurb hook with Mypy import traversal skipped
|
|
18
|
+
|
|
19
|
+
### Documentation
|
|
20
|
+
|
|
21
|
+
- changelog: Note the worktree-bucket fix in the registry resolver
|
|
22
|
+
- plans: Plan for plan-index-sync delegating to the repo's renderer
|
|
23
|
+
- plans: Scope the crackerjack action-kit adoption audit
|
|
24
|
+
|
|
25
|
+
### Build
|
|
26
|
+
|
|
27
|
+
- deps: Raise the mcp-common floor to 0.33.1 for the ownership API
|
|
28
|
+
|
|
13
29
|
## [0.91.2] - 2026-10-28
|
|
14
30
|
|
|
15
31
|
### Added
|
|
@@ -25,6 +41,7 @@ topic: changelog
|
|
|
25
41
|
|
|
26
42
|
- deps: Keep the OTel SDK and exporter out of creosote's unused report
|
|
27
43
|
- Resolve hardcoded home paths in scripts and cross-repo tests
|
|
44
|
+
- Do not resolve a git worktree bucket as the projects root
|
|
28
45
|
|
|
29
46
|
### Build
|
|
30
47
|
|
|
@@ -35,6 +52,30 @@ topic: changelog
|
|
|
35
52
|
|
|
36
53
|
### Changed
|
|
37
54
|
|
|
55
|
+
- perf(refurb): the refurb hook now runs with Mypy's import traversal
|
|
56
|
+
skipped (`--follow-imports=skip`). Refurb embeds Mypy, so Mypy's own
|
|
57
|
+
flags are its only speed lever: by default Mypy type-checks every
|
|
58
|
+
import transitively, and any dependency shipping a `py.typed` marker is
|
|
59
|
+
analyzed as if it were first-party source.
|
|
60
|
+
|
|
61
|
+
The effect depends on the repository's Mypy configuration. Where
|
|
62
|
+
`follow_imports` is left at the default, the scan drops from minutes to
|
|
63
|
+
seconds — mcp-common from 294s to 55s, mahavishnu from minutes to
|
|
64
|
+
about 75s. Where a repository's config already sets `follow_imports =
|
|
65
|
+
"skip"` (this repo's mypy.ini does), the flag is effectively a no-op; it
|
|
66
|
+
still makes the behaviour explicit rather than incidental, so a change
|
|
67
|
+
to mypy.ini cannot silently slow the hook back down.
|
|
68
|
+
|
|
69
|
+
This also changes what the hook reports. `--ignore-missing-imports`
|
|
70
|
+
suppresses the third-party "missing stub" failures that previously
|
|
71
|
+
failed the hook, and `--follow-imports=skip` means a rule whose answer
|
|
72
|
+
depends on a third-party library's default value may no longer fire —
|
|
73
|
+
FURB120 is the concrete case. The skipped set is a strict subset: no new
|
|
74
|
+
findings appear, and the default check set is unaffected.
|
|
75
|
+
|
|
76
|
+
A repository's own `[tool.refurb].mypy_args` is authoritative when
|
|
77
|
+
present — including when it is an empty list, which opts out.
|
|
78
|
+
|
|
38
79
|
- deps: the OpenTelemetry SDK and the OTLP exporters are no longer declared
|
|
39
80
|
here. mcp-common's `producer_telemetry` imports them, and mcp-common
|
|
40
81
|
declares them, so they arrive transitively. The `mcp-common` floor moves
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: crackerjack
|
|
3
|
-
Version: 0.91.
|
|
3
|
+
Version: 0.91.3
|
|
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
|
|
@@ -38,7 +38,7 @@ Requires-Dist: jinja2>=3.1.6
|
|
|
38
38
|
Requires-Dist: keyring>=25.7.0
|
|
39
39
|
Requires-Dist: libcst>=1.9.0
|
|
40
40
|
Requires-Dist: linkcheckmd>=1.4.0
|
|
41
|
-
Requires-Dist: mcp-common>=0.33.
|
|
41
|
+
Requires-Dist: mcp-common>=0.33.1
|
|
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
|
|
@@ -14,6 +14,7 @@ from crackerjack.adapters._tool_adapter_base import (
|
|
|
14
14
|
ToolExecutionResult,
|
|
15
15
|
ToolIssue,
|
|
16
16
|
)
|
|
17
|
+
from crackerjack.config.refurb_args import build_refurb_mypy_args_for_file_list
|
|
17
18
|
from crackerjack.models.adapter_metadata import AdapterStatus
|
|
18
19
|
from crackerjack.models.qa_results import QACheckType
|
|
19
20
|
|
|
@@ -127,6 +128,33 @@ class RefurbAdapter(BaseToolAdapter):
|
|
|
127
128
|
files_to_scan = files if files is not None else []
|
|
128
129
|
cmd.extend([str(f) for f in files_to_scan])
|
|
129
130
|
|
|
131
|
+
# NOTE: this adapter scans an explicit *file* list, so it must NOT
|
|
132
|
+
# inherit the package-wide speed flags (--follow-imports=skip; see
|
|
133
|
+
# crackerjack/config/refurb_args.py). That flag suits a whole-package
|
|
134
|
+
# scan, where sibling modules stay in the Mypy build set and their
|
|
135
|
+
# types remain precise; a file list leaves them outside it, so their
|
|
136
|
+
# types degrade to Any and type-aware rules silently stop firing --
|
|
137
|
+
# verified: on a single-file scan FURB123 stops being reported while
|
|
138
|
+
# FURB173 still is.
|
|
139
|
+
#
|
|
140
|
+
# The repository's own flags are carried over and only follow_imports
|
|
141
|
+
# is forced to "normal". Omitting the flags entirely is not enough:
|
|
142
|
+
# Refurb reads [tool.refurb].mypy_args from pyproject.toml when no
|
|
143
|
+
# Mypy args are given on the command line, so the repository config
|
|
144
|
+
# would otherwise supply the skip flag anyway. Carrying the rest over
|
|
145
|
+
# matters too -- dropping --ignore-missing-imports would make Mypy
|
|
146
|
+
# report an unresolved import for an optional dependency that is
|
|
147
|
+
# absent from the venv. That import error is not a blocker, so
|
|
148
|
+
# Refurb drops it; but a blocker Mypy error (a syntax error, a
|
|
149
|
+
# "Duplicate module named" complaint, a rejected command line) is
|
|
150
|
+
# surfaced by Refurb as its own error with exit code 1, and the tool
|
|
151
|
+
# adapter treats "exit 1 with output" as success, so the check would
|
|
152
|
+
# report "No issues found" while Mypy had actually failed.
|
|
153
|
+
#
|
|
154
|
+
# The separator goes last: Refurb forwards everything after it to
|
|
155
|
+
# Mypy, so its own flags and the source targets must stay before it.
|
|
156
|
+
cmd.extend(build_refurb_mypy_args_for_file_list(Path.cwd()))
|
|
157
|
+
|
|
130
158
|
logger.info(
|
|
131
159
|
"Built Refurb command",
|
|
132
160
|
extra={
|
|
@@ -153,12 +181,27 @@ class RefurbAdapter(BaseToolAdapter):
|
|
|
153
181
|
logger.debug("Parsing Refurb text output", extra={"line_count": len(lines)})
|
|
154
182
|
|
|
155
183
|
for line in lines:
|
|
156
|
-
if "[FURB"
|
|
184
|
+
if "[FURB" in line:
|
|
185
|
+
issue = self._parse_refurb_line(line)
|
|
186
|
+
if issue:
|
|
187
|
+
issues.append(issue)
|
|
157
188
|
continue
|
|
158
189
|
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
190
|
+
# Refurb reports its own errors on stdout with a "refurb: "
|
|
191
|
+
# prefix -- including the Mypy errors it surfaces, such as a
|
|
192
|
+
# syntax error, a "Duplicate module named" complaint or a
|
|
193
|
+
# rejected command line. Without this, such a run produces no
|
|
194
|
+
# parseable issues and the adapter reports "No issues found":
|
|
195
|
+
# a clean verdict for a scan that never actually ran.
|
|
196
|
+
if line.startswith("refurb:"):
|
|
197
|
+
issues.append(
|
|
198
|
+
ToolIssue(
|
|
199
|
+
file_path=Path.cwd(),
|
|
200
|
+
message=line.strip(),
|
|
201
|
+
code="REFURB_ERROR",
|
|
202
|
+
severity="error",
|
|
203
|
+
)
|
|
204
|
+
)
|
|
162
205
|
|
|
163
206
|
logger.info(
|
|
164
207
|
"Parsed Refurb output",
|
|
@@ -61,6 +61,13 @@ class HookDefinition:
|
|
|
61
61
|
config_path: Path | None = None
|
|
62
62
|
security_level: SecurityLevel = SecurityLevel.MEDIUM
|
|
63
63
|
accepts_file_paths: bool = False
|
|
64
|
+
# When True the hook's base command already carries its own source
|
|
65
|
+
# target, so build_command must NOT append a file list on top of it.
|
|
66
|
+
# Mypy-backed tools need this: passing both a package directory and a
|
|
67
|
+
# file inside it makes mypy report "Duplicate module named", and a
|
|
68
|
+
# file-only scan drops the sibling modules from the build set, so
|
|
69
|
+
# type-aware rules lose their type information. Refurb sets this.
|
|
70
|
+
scans_own_target: bool = False
|
|
64
71
|
disabled: bool = False
|
|
65
72
|
run_schedule: str | None = None
|
|
66
73
|
allow_unsafe_fixes: bool = False
|
|
@@ -83,15 +90,27 @@ class HookDefinition:
|
|
|
83
90
|
return self._direct_cmd_cache
|
|
84
91
|
|
|
85
92
|
def build_command(self, files: list[Path] | None = None) -> list[str]:
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
93
|
+
# Copy the cached list: get_command() returns the cache itself, and
|
|
94
|
+
# these HookDefinition objects are module-level singletons, so
|
|
95
|
+
# mutating it would leak this call's targets into every later call.
|
|
96
|
+
base_cmd = self.get_command().copy()
|
|
97
|
+
|
|
98
|
+
if files and self.accepts_file_paths and not self.scans_own_target:
|
|
99
|
+
targets = [str(f) for f in files]
|
|
100
|
+
elif self.scans_own_target:
|
|
101
|
+
# The base command already names the source target; adding a
|
|
102
|
+
# file list would either duplicate the module (mypy) or narrow
|
|
103
|
+
# the scan and lose type precision.
|
|
104
|
+
targets = []
|
|
91
105
|
else:
|
|
92
|
-
|
|
106
|
+
targets = ["crackerjack/"]
|
|
93
107
|
|
|
94
|
-
|
|
108
|
+
# Refurb forwards everything after "--" to Mypy, so source targets
|
|
109
|
+
# have to be inserted BEFORE the separator. Mypy's positional is
|
|
110
|
+
# nargs="*": a path after "--" is reported as an unrecognized
|
|
111
|
+
# argument and the hook fails with zero findings.
|
|
112
|
+
separator = base_cmd.index("--") if "--" in base_cmd else len(base_cmd)
|
|
113
|
+
return base_cmd[:separator] + targets + base_cmd[separator:]
|
|
95
114
|
|
|
96
115
|
|
|
97
116
|
@dataclass
|
|
@@ -346,6 +365,7 @@ COMPREHENSIVE_HOOKS = [
|
|
|
346
365
|
auto_run=True,
|
|
347
366
|
security_level=SecurityLevel.MEDIUM,
|
|
348
367
|
accepts_file_paths=True,
|
|
368
|
+
scans_own_target=True,
|
|
349
369
|
),
|
|
350
370
|
HookDefinition(
|
|
351
371
|
name="creosote",
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
"""Resolve the Mypy flags Crackerjack passes to Refurb for a target repo.
|
|
2
|
+
|
|
3
|
+
Refurb drives Mypy internally -- Mypy is a hard dependency rather than a
|
|
4
|
+
pluggable backend (``refurb/main.py`` imports ``mypy.build.build`` and
|
|
5
|
+
``mypy.main.process_options`` directly) -- so Mypy's own flags are the only
|
|
6
|
+
speed lever available. Pyright or ``ty`` cannot be substituted.
|
|
7
|
+
|
|
8
|
+
By default Mypy follows imports transitively (``follow_imports = "normal"``),
|
|
9
|
+
so every dependency shipping a ``py.typed`` marker is analyzed as if it were
|
|
10
|
+
first-party source. On the Bodai repos that meant roughly 8,100 modules
|
|
11
|
+
analyzed to lint ~120 files, costing 120s to 670s per hook run -- warm cache
|
|
12
|
+
included, because Refurb forces fine-grained incremental mode on, which does
|
|
13
|
+
not help while the whole third-party graph is re-verified each time.
|
|
14
|
+
|
|
15
|
+
``--follow-imports=skip`` leaves imported modules unanalyzed (``Any``). The
|
|
16
|
+
scanned package's own modules stay in Mypy's build set, so their types stay
|
|
17
|
+
precise and rules that depend on in-package types still fire. What is lost
|
|
18
|
+
is anything whose "correct" answer comes from a *third-party* library's
|
|
19
|
+
default value: FURB120 (redundant default argument) compares the argument
|
|
20
|
+
against the callee's default, and a skipped library has no default to
|
|
21
|
+
compare against. Measured on mcp-common, ``--enable-all`` drops from 30
|
|
22
|
+
findings to 21 -- the skipped set is a strict subset, no new findings, and
|
|
23
|
+
the repository's default check set is unaffected.
|
|
24
|
+
|
|
25
|
+
The effect depends on the repository's Mypy configuration. Where
|
|
26
|
+
``follow_imports`` is left at the default, the scan drops from minutes to
|
|
27
|
+
seconds -- mcp-common from 294s to 55s, mahavishnu from minutes to about
|
|
28
|
+
75s. Where a repository's config already sets ``follow_imports = "skip"``
|
|
29
|
+
(crackerjack's own mypy.ini does), the flag is effectively a no-op: it
|
|
30
|
+
still makes the behaviour explicit rather than incidental, so a change to
|
|
31
|
+
mypy.ini cannot silently slow the hook back down.
|
|
32
|
+
|
|
33
|
+
**These flags are only safe for package-wide scans.** A scan of an explicit
|
|
34
|
+
*file* list puts no sibling modules in Mypy's build set, so their types
|
|
35
|
+
degrade to ``Any`` too and type-aware rules silently stop firing: on a
|
|
36
|
+
single-file scan FURB123 stopped being reported while FURB173 still was.
|
|
37
|
+
Callers that scan file lists must not add these flags -- see
|
|
38
|
+
``adapters/refactor/refurb.py``, which carries the repository's own flags
|
|
39
|
+
with ``follow_imports`` forced back to ``normal``.
|
|
40
|
+
|
|
41
|
+
Refurb *replaces* the config-file ``mypy_args`` when flags are supplied on the
|
|
42
|
+
command line (``refurb/settings.py``: ``mypy_args=new.mypy_args or
|
|
43
|
+
old.mypy_args``). Passing flags on the command line would therefore silently
|
|
44
|
+
discard a repository's own ``[tool.refurb].mypy_args``. So the repository's
|
|
45
|
+
config is read here and passed through: when a repository configures
|
|
46
|
+
``mypy_args`` at all, its value is authoritative -- including when it is
|
|
47
|
+
explicitly empty, which is how a repository opts out of the speed flags.
|
|
48
|
+
Crackerjack's defaults apply only to repositories that do not configure
|
|
49
|
+
Refurb.
|
|
50
|
+
|
|
51
|
+
The flags are emitted after a ``--`` separator, which is how Refurb forwards
|
|
52
|
+
arguments to Mypy. Source targets must therefore be placed *before* that
|
|
53
|
+
separator: Mypy's positional is ``nargs="*"``, so a path after ``--`` is
|
|
54
|
+
reported as an unrecognized argument and the hook fails with zero findings.
|
|
55
|
+
"""
|
|
56
|
+
|
|
57
|
+
from __future__ import annotations
|
|
58
|
+
|
|
59
|
+
import tomllib
|
|
60
|
+
from collections.abc import Sequence
|
|
61
|
+
from pathlib import Path
|
|
62
|
+
|
|
63
|
+
DEFAULT_REFURB_MYPY_ARGS: tuple[str, ...] = (
|
|
64
|
+
"--follow-imports=skip",
|
|
65
|
+
"--ignore-missing-imports",
|
|
66
|
+
)
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
def read_repo_refurb_mypy_args(repo_root: Path | str | None) -> list[str] | None:
|
|
70
|
+
"""Read ``[tool.refurb].mypy_args`` from a repository's pyproject.toml.
|
|
71
|
+
|
|
72
|
+
Returns ``None`` when the repository does not configure the setting (so
|
|
73
|
+
the caller can fall back to its own defaults), and a list -- possibly
|
|
74
|
+
empty -- when it does. An explicitly empty list is meaningful: it is how
|
|
75
|
+
a repository opts out of the speed flags.
|
|
76
|
+
|
|
77
|
+
A missing or unparsable pyproject.toml is treated as "not configured"
|
|
78
|
+
rather than an error, so a repository that does not use Refurb simply
|
|
79
|
+
inherits the defaults.
|
|
80
|
+
"""
|
|
81
|
+
root = Path.cwd() if repo_root is None else Path(repo_root)
|
|
82
|
+
try:
|
|
83
|
+
with (root / "pyproject.toml").open("rb") as handle:
|
|
84
|
+
data = tomllib.load(handle)
|
|
85
|
+
except OSError, tomllib.TOMLDecodeError:
|
|
86
|
+
return None
|
|
87
|
+
tool = data.get("tool")
|
|
88
|
+
if not isinstance(tool, dict):
|
|
89
|
+
return None
|
|
90
|
+
refurb = tool.get("refurb")
|
|
91
|
+
if not isinstance(refurb, dict):
|
|
92
|
+
return None
|
|
93
|
+
raw = refurb.get("mypy_args")
|
|
94
|
+
if not isinstance(raw, list):
|
|
95
|
+
return None
|
|
96
|
+
return [str(item) for item in raw]
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
def resolve_refurb_mypy_args(
|
|
100
|
+
repo_root: Path | str | None,
|
|
101
|
+
defaults: Sequence[str] | None = None,
|
|
102
|
+
) -> list[str]:
|
|
103
|
+
"""Resolve the Mypy flags Refurb should receive for a repository.
|
|
104
|
+
|
|
105
|
+
The repository's own ``[tool.refurb].mypy_args`` wins when present.
|
|
106
|
+
Otherwise the supplied defaults (or the module defaults) apply.
|
|
107
|
+
"""
|
|
108
|
+
repo = read_repo_refurb_mypy_args(repo_root)
|
|
109
|
+
if repo is not None:
|
|
110
|
+
return repo
|
|
111
|
+
return list(DEFAULT_REFURB_MYPY_ARGS if defaults is None else defaults)
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
def build_refurb_mypy_args(
|
|
115
|
+
repo_root: Path | str | None,
|
|
116
|
+
defaults: Sequence[str] | None = None,
|
|
117
|
+
) -> list[str]:
|
|
118
|
+
"""Return the ``--``-prefixed argument tail for a Refurb invocation."""
|
|
119
|
+
args = resolve_refurb_mypy_args(repo_root, defaults)
|
|
120
|
+
if not args:
|
|
121
|
+
return []
|
|
122
|
+
return ["--", *args]
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
def resolve_refurb_mypy_args_for_file_list(
|
|
126
|
+
repo_root: Path | str | None,
|
|
127
|
+
defaults: Sequence[str] | None = None,
|
|
128
|
+
) -> list[str]:
|
|
129
|
+
"""Mypy flags for a scan of an explicit file list.
|
|
130
|
+
|
|
131
|
+
A file-list scan needs ``--follow-imports=normal``: skipping imports
|
|
132
|
+
leaves the sibling modules outside Mypy's build set, so their types
|
|
133
|
+
degrade to ``Any`` and type-aware rules silently stop firing.
|
|
134
|
+
|
|
135
|
+
Everything else the repository configured is preserved. In particular
|
|
136
|
+
``--ignore-missing-imports`` has to survive: dropping it makes Mypy
|
|
137
|
+
report an unresolved import for an optional dependency that is absent
|
|
138
|
+
from the venv. That import error is not a blocker, so Refurb drops it
|
|
139
|
+
-- but the general case still bites: a *blocker* Mypy error (a syntax
|
|
140
|
+
error, a "Duplicate module named" complaint, a rejected command line)
|
|
141
|
+
is surfaced by Refurb as its own error with exit code 1, and the tool
|
|
142
|
+
adapter treats "exit 1 with output" as success, so the check would
|
|
143
|
+
report "No issues found" while Mypy had actually failed.
|
|
144
|
+
|
|
145
|
+
Only ``follow_imports`` is overridden. Mypy parses its config file
|
|
146
|
+
first and lets command-line args override it, so the rest of the
|
|
147
|
+
repository's list has to be carried over explicitly; Refurb likewise
|
|
148
|
+
replaces the config file's ``mypy_args`` with the command-line value
|
|
149
|
+
rather than merging them.
|
|
150
|
+
|
|
151
|
+
Both spellings of the flag are recognised -- ``--follow-imports=skip``
|
|
152
|
+
and the space-separated ``--follow-imports skip`` -- because Mypy
|
|
153
|
+
accepts either and argparse keeps the last occurrence. Recognising only
|
|
154
|
+
the ``=`` form would let a repository's own ``skip`` survive and
|
|
155
|
+
silently degrade the file-list scan.
|
|
156
|
+
"""
|
|
157
|
+
args = resolve_refurb_mypy_args(repo_root, defaults).copy()
|
|
158
|
+
forced: list[str] = []
|
|
159
|
+
kept: list[str] = []
|
|
160
|
+
skip_next = False
|
|
161
|
+
for arg in args:
|
|
162
|
+
if skip_next:
|
|
163
|
+
# The value belonging to a space-separated --follow-imports.
|
|
164
|
+
skip_next = False
|
|
165
|
+
continue
|
|
166
|
+
if arg == "--follow-imports":
|
|
167
|
+
if not forced:
|
|
168
|
+
forced.append("--follow-imports=normal")
|
|
169
|
+
skip_next = True
|
|
170
|
+
continue
|
|
171
|
+
if arg.startswith("--follow-imports="):
|
|
172
|
+
if not forced:
|
|
173
|
+
forced.append("--follow-imports=normal")
|
|
174
|
+
continue
|
|
175
|
+
kept.append(arg)
|
|
176
|
+
if not forced:
|
|
177
|
+
forced.append("--follow-imports=normal")
|
|
178
|
+
return [*forced, *kept]
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
def build_refurb_mypy_args_for_file_list(
|
|
182
|
+
repo_root: Path | str | None,
|
|
183
|
+
defaults: Sequence[str] | None = None,
|
|
184
|
+
) -> list[str]:
|
|
185
|
+
"""``--``-prefixed Mypy tail for a scan of an explicit file list."""
|
|
186
|
+
args = resolve_refurb_mypy_args_for_file_list(repo_root, defaults)
|
|
187
|
+
if not args:
|
|
188
|
+
return []
|
|
189
|
+
return ["--", *args]
|
|
@@ -7,6 +7,7 @@ from functools import lru_cache
|
|
|
7
7
|
from pathlib import Path
|
|
8
8
|
|
|
9
9
|
from crackerjack.config.per_file_ignores import build_inline_per_file_ignores
|
|
10
|
+
from crackerjack.config.refurb_args import build_refurb_mypy_args
|
|
10
11
|
from crackerjack.config.settings import HookSettings
|
|
11
12
|
|
|
12
13
|
|
|
@@ -355,6 +356,14 @@ def get_tool_command(
|
|
|
355
356
|
|
|
356
357
|
if verbose and hook_name == "ty":
|
|
357
358
|
cmd.append("--verbose")
|
|
359
|
+
|
|
360
|
+
# Refurb has no pluggable type checker, so Mypy's own flags are its only
|
|
361
|
+
# speed lever. They are appended after "--" (Refurb forwards everything
|
|
362
|
+
# past that separator to Mypy) and taken from the repository's own
|
|
363
|
+
# [tool.refurb].mypy_args, which Refurb would otherwise discard.
|
|
364
|
+
if hook_name == "refurb":
|
|
365
|
+
cmd.extend(build_refurb_mypy_args(pkg_path))
|
|
366
|
+
|
|
358
367
|
return cmd
|
|
359
368
|
|
|
360
369
|
|
|
@@ -11,6 +11,7 @@ from pathlib import Path
|
|
|
11
11
|
|
|
12
12
|
from pydantic import BaseModel
|
|
13
13
|
|
|
14
|
+
from crackerjack.config.refurb_args import build_refurb_mypy_args
|
|
14
15
|
from crackerjack.config.settings import HookSettings
|
|
15
16
|
from crackerjack.services.git_cleanup_service import (
|
|
16
17
|
DirtyWorkingTreeError,
|
|
@@ -262,7 +263,11 @@ class PreflightFixer:
|
|
|
262
263
|
# directory instead, falling back to the repo root when no
|
|
263
264
|
# subdirectory can be identified (matches the legacy behaviour).
|
|
264
265
|
target = self._resolve_package_target()
|
|
265
|
-
|
|
266
|
+
cmd = ["uv", "run", "refurb", str(target)]
|
|
267
|
+
# Same Mypy flags as the comprehensive hook: without them
|
|
268
|
+
# Refurb type-checks the whole third-party dependency graph.
|
|
269
|
+
cmd.extend(build_refurb_mypy_args(self._pkg_path))
|
|
270
|
+
return cmd
|
|
266
271
|
return []
|
|
267
272
|
|
|
268
273
|
def _resolve_package_target(self) -> Path:
|
|
@@ -255,12 +255,17 @@ class CachedHookExecutor:
|
|
|
255
255
|
return self.cache.cleanup_all()
|
|
256
256
|
|
|
257
257
|
def _get_tool_version(self, tool_name: str) -> str | None:
|
|
258
|
+
# These strings are cache-key epochs, not upstream versions: bump the
|
|
259
|
+
# entry whenever the hook's effective behaviour changes so stale
|
|
260
|
+
# cached results are not reused. refurb moved to 1.18.0 when the hook
|
|
261
|
+
# started passing Mypy flags (--follow-imports=skip), which changes
|
|
262
|
+
# which findings Refurb reports.
|
|
258
263
|
version_mapping = {
|
|
259
264
|
"pyright": "1.1.0",
|
|
260
265
|
"bandit": "1.7.5",
|
|
261
266
|
"vulture": "2.7.0",
|
|
262
267
|
"complexipy": "0.13.0",
|
|
263
|
-
"refurb": "1.
|
|
268
|
+
"refurb": "1.18.0",
|
|
264
269
|
"ruff": "0.1.0",
|
|
265
270
|
"gitleaks": "8.18.0",
|
|
266
271
|
}
|