mcp-ticketer 0.3.6__tar.gz → 0.4.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of mcp-ticketer might be problematic. Click here for more details.
- mcp_ticketer-0.4.0/.cursor/mcp.json +14 -0
- mcp_ticketer-0.4.0/CLAUDE.md +49 -0
- mcp_ticketer-0.4.0/CLI_RESTRUCTURING_SUMMARY.md +272 -0
- mcp_ticketer-0.4.0/LINEAR_ADAPTER_REVIEW.md +477 -0
- mcp_ticketer-0.4.0/LINEAR_FIX_RECOMMENDATION.md +292 -0
- mcp_ticketer-0.4.0/LINEAR_GRAPHQL_TYPE_ANALYSIS.md +300 -0
- mcp_ticketer-0.4.0/LINEAR_LABEL_FIX_SUMMARY.md +262 -0
- mcp_ticketer-0.4.0/LINEAR_PATTERN_COMPARISON.md +441 -0
- mcp_ticketer-0.4.0/LINEAR_QUERY_ALTERNATIVE_ANALYSIS.md +278 -0
- mcp_ticketer-0.4.0/LINEAR_RESEARCH_SUMMARY.md +423 -0
- mcp_ticketer-0.4.0/LINEAR_TAGS_FIX_SUMMARY.md +238 -0
- {mcp_ticketer-0.3.6/src/mcp_ticketer.egg-info → mcp_ticketer-0.4.0}/PKG-INFO +1 -1
- mcp_ticketer-0.4.0/QUICK_WINS_IMPLEMENTATION.md +320 -0
- mcp_ticketer-0.4.0/V0.3.2_RELEASE_FIXES_SUMMARY.md +472 -0
- mcp_ticketer-0.4.0/debug_epic_creation.py +75 -0
- mcp_ticketer-0.4.0/debug_full_flow.py +106 -0
- mcp_ticketer-0.4.0/debug_worker_epic.py +105 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/pyproject.toml +1 -1
- mcp_ticketer-0.4.0/src/mcp_ticketer/__init__.py +27 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/__version__.py +1 -1
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/adapters/aitrackdown.py +1 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/adapters/github.py +1 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/adapters/jira.py +1 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/adapters/linear/adapter.py +64 -22
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/adapters/linear/client.py +1 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/adapters/linear/mappers.py +1 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cli/adapter_diagnostics.py +2 -4
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cli/configure.py +9 -3
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cli/discover.py +6 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cli/main.py +109 -35
- mcp_ticketer-0.4.0/src/mcp_ticketer/cli/platform_commands.py +133 -0
- mcp_ticketer-0.4.0/src/mcp_ticketer/cli/ticket_commands.py +765 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/mcp/server.py +74 -14
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0/src/mcp_ticketer.egg-info}/PKG-INFO +1 -1
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer.egg-info/SOURCES.txt +19 -52
- mcp_ticketer-0.4.0/test_linear_fixes.py +297 -0
- mcp_ticketer-0.4.0/test_worker_persistence.py +87 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/linear/test_client.py +5 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/linear/test_mappers.py +7 -3
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/linear/test_queries.py +24 -8
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/linear/test_types.py +11 -9
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/test_aitrackdown.py +8 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/test_github.py +1 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/test_jira_direct.py +1 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/test_linear_config.py +1 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/test_linear_native.py +2 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/conftest.py +8 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/core/test_env_discovery.py +6 -3
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/core/test_unified_env_loading.py +5 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/e2e/test_complete_ticket_workflow.py +8 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/integration/test_all_adapters.py +9 -4
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/integration/test_commenting_functionality.py +1 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/integration/test_comprehensive.py +8 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/integration/test_hierarchy_and_workflow.py +8 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/test_api_usage.py +1 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/test_models.py +8 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/unit/test_cache_memory.py +6 -2
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/unit/test_core_exceptions.py +14 -6
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/unit/test_core_models.py +9 -2
- mcp_ticketer-0.3.6/.claude/agents/.dependency_cache +0 -18
- mcp_ticketer-0.3.6/.claude/agents/.mpm_deployment_state +0 -16
- mcp_ticketer-0.3.6/.claude/agents/agent-manager.md +0 -233
- mcp_ticketer-0.3.6/.claude/agents/agentic-coder-optimizer.md +0 -480
- mcp_ticketer-0.3.6/.claude/agents/api_qa.md +0 -286
- mcp_ticketer-0.3.6/.claude/agents/clerk-ops.md +0 -576
- mcp_ticketer-0.3.6/.claude/agents/code_analyzer.md +0 -258
- mcp_ticketer-0.3.6/.claude/agents/content-agent.md +0 -560
- mcp_ticketer-0.3.6/.claude/agents/dart_engineer.md +0 -695
- mcp_ticketer-0.3.6/.claude/agents/data_engineer.md +0 -800
- mcp_ticketer-0.3.6/.claude/agents/documentation.md +0 -209
- mcp_ticketer-0.3.6/.claude/agents/engineer.md +0 -416
- mcp_ticketer-0.3.6/.claude/agents/gcp_ops_agent.md +0 -380
- mcp_ticketer-0.3.6/.claude/agents/golang_engineer.md +0 -521
- mcp_ticketer-0.3.6/.claude/agents/imagemagick.md +0 -312
- mcp_ticketer-0.3.6/.claude/agents/java_engineer.md +0 -1481
- mcp_ticketer-0.3.6/.claude/agents/local_ops_agent.md +0 -38
- mcp_ticketer-0.3.6/.claude/agents/memory_manager.md +0 -246
- mcp_ticketer-0.3.6/.claude/agents/nextjs_engineer.md +0 -684
- mcp_ticketer-0.3.6/.claude/agents/ops.md +0 -493
- mcp_ticketer-0.3.6/.claude/agents/php-engineer.md +0 -525
- mcp_ticketer-0.3.6/.claude/agents/product_owner.md +0 -794
- mcp_ticketer-0.3.6/.claude/agents/project_organizer.md +0 -403
- mcp_ticketer-0.3.6/.claude/agents/prompt-engineer.md +0 -501
- mcp_ticketer-0.3.6/.claude/agents/python_engineer.md +0 -1346
- mcp_ticketer-0.3.6/.claude/agents/qa.md +0 -304
- mcp_ticketer-0.3.6/.claude/agents/react_engineer.md +0 -609
- mcp_ticketer-0.3.6/.claude/agents/refactoring_engineer.md +0 -179
- mcp_ticketer-0.3.6/.claude/agents/research.md +0 -214
- mcp_ticketer-0.3.6/.claude/agents/ruby-engineer.md +0 -525
- mcp_ticketer-0.3.6/.claude/agents/rust_engineer.md +0 -521
- mcp_ticketer-0.3.6/.claude/agents/security.md +0 -512
- mcp_ticketer-0.3.6/.claude/agents/ticketing.md +0 -339
- mcp_ticketer-0.3.6/.claude/agents/typescript_engineer.md +0 -772
- mcp_ticketer-0.3.6/.claude/agents/vercel_ops_agent.md +0 -645
- mcp_ticketer-0.3.6/.claude/agents/version_control.md +0 -504
- mcp_ticketer-0.3.6/.claude/agents/web_qa.md +0 -511
- mcp_ticketer-0.3.6/.claude/agents/web_ui.md +0 -1170
- mcp_ticketer-0.3.6/.claude/mcp.json +0 -12
- mcp_ticketer-0.3.6/.claude/mcp.local.json +0 -12
- mcp_ticketer-0.3.6/.claude-mpm/config/project.json +0 -11
- mcp_ticketer-0.3.6/.claude-mpm/mcp_auto_config_preference.json +0 -5
- mcp_ticketer-0.3.6/.claude-mpm/memories/README.md +0 -17
- mcp_ticketer-0.3.6/.claude-mpm/memories/agentic_coder_optimizer_memories.md +0 -225
- mcp_ticketer-0.3.6/.claude-mpm/memories/documentation_memories.md +0 -3
- mcp_ticketer-0.3.6/.claude-mpm/memories/engineer_memories.md +0 -3
- mcp_ticketer-0.3.6/.claude-mpm/memories/ops_memories.md +0 -3
- mcp_ticketer-0.3.6/.claude-mpm/memories/project_knowledge_memories.md +0 -298
- mcp_ticketer-0.3.6/.claude-mpm/memories/qa_memories.md +0 -3
- mcp_ticketer-0.3.6/.claude-mpm/memories/research_memories.md +0 -3
- mcp_ticketer-0.3.6/.claude-mpm/memories/version-control_memories.md +0 -3
- mcp_ticketer-0.3.6/.claude-mpm/memories/workflows_memories.md +0 -384
- mcp_ticketer-0.3.6/CLAUDE.md +0 -1254
- mcp_ticketer-0.3.6/src/mcp_ticketer/__init__.py +0 -18
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.aitrackdown-test/comments/comment-20251024141042175430.json +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.aitrackdown-test/comments/comment-20251024141042175768.json +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.aitrackdown-test/comments/comment-20251024141042175888.json +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.aitrackdown-test/comments/comment-20251024141042175987.json +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.aitrackdown-test/comments/comment-20251024141042176075.json +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.aitrackdown-test/comments/comment-20251024141042176163.json +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.aitrackdown-test/tickets/task-20251024141042175062.json +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.aitrackdown-test/tickets/task-20251024141042175285.json +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.claude.json +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.coveragerc +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.env.example +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.github/workflows/docs.yml +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.github/workflows/publish.yml +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.github/workflows/test.yml +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.mcp/config.json +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.pre-commit-config.yaml +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.python-version +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/.readthedocs.yaml +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/CHANGELOG.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/LICENSE +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/MANIFEST.in +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/Makefile +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/README.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/SECURITY_SCAN_REPORT_v0.1.24.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/ADAPTERS.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/AI_CLIENT_INTEGRATION.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/API_REFERENCE.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/CONFIGURATION.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/CONFIG_RESOLUTION_FLOW.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/DEVELOPER_GUIDE.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/ENV_DISCOVERY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/MCP_INTEGRATION.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/MIGRATION_GUIDE.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/PROJECT_CONFIG.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/PR_INTEGRATION.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/QUEUE_SYSTEM.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/QUICK_START.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/QUICK_START_ENV.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/README.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/USER_GUIDE.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/VERSIONING_AND_BUILD_TRACKING.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_archive/README.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/ADAPTERS.md.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/API_REFERENCE.md.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/CONFIGURATION.md.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/DEVELOPER_GUIDE.md.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/MCP_INTEGRATION.md.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/MIGRATION_GUIDE.md.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/USER_GUIDE.md.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/adapters/github.md.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/adapters.rst.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/api.rst.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/cli.rst.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/development.rst.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/examples.rst.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/index.rst.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/installation.rst.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/_build/_sources/prd/mcp-ticketer-prd.md.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/adapters/github.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/adapters.rst +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/api.rst +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/changelogs/CHANGELOG_v0.2.0.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/changelogs/CHANGELOG_v0.3.0.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/changelogs/CHANGELOG_v0.3.1.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/cli.rst +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/conf.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/development/CODE_STRUCTURE.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/development/CONTRIBUTING.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/development/RELEASE.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/development/RELEASING.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/development.rst +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/examples.rst +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/guides/BULLETPROOF_TICKET_CREATION_GUIDE.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/index.rst +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/installation.rst +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/prd/mcp-ticketer-prd.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/releases/PUBLICATION_GUIDE_v0.2.0.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/releases/PUBLICATION_SUCCESS_v0.2.0.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/releases/PUBLICATION_SUCCESS_v0.3.0.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/releases/PUBLICATION_SUCCESS_v0.3.1.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/releases/PUBLICATION_SUCCESS_v0.3.4.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/releases/PUBLICATION_SUCCESS_v0.3.5.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/releases/RELEASE_v0.1.39_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/releases/RELEASE_v0.2.0_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/reports/CONFIG_RESOLUTION_FIX.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/reports/CREDENTIAL_VALIDATION_FIX.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/reports/DIAGNOSTICS_FEATURE.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/reports/ENV_DISCOVERY_COMPLETE.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/reports/FIX_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/reports/HIERARCHY_IMPLEMENTATION_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/reports/IMPLEMENTATION_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/reports/MCP_CONFIGURATION_TEST_REPORT.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/reports/OPTIMIZATION_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/reports/PROJECT_INITIALIZATION_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/reports/TEST_COVERAGE_REPORT.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/reports/TEST_REPORT.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/reports/TEST_RESULTS_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/reports/VERIFICATION_RESULTS.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/requirements.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/setup/CLAUDE_DESKTOP_SETUP.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/setup/CODEX_INTEGRATION.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/setup/JIRA_SETUP.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/setup/LINEAR_SETUP.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/summaries/AUTO_DISCOVERY_BUG_FIX_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/summaries/BULLETPROOF_IMPROVEMENTS_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/summaries/COMMAND_SYNONYMS_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/summaries/COMPREHENSIVE_TESTING_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/summaries/INTERACTIVE_CLI_SETUP_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/summaries/LINEAR_ADAPTER_INITIALIZATION_BUG_FIX.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/summaries/MODULE_REFACTORING_ANALYSIS.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/summaries/MODULE_REFACTORING_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/summaries/PROJECT_CLEANUP_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/docs/summaries/REFACTORED_ENV_SOLUTION_SUMMARY.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/mcp-ticketer +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/mcp-ticketer-server +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/pytest.ini +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/requirements-dev.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/requirements.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/scripts/README.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/scripts/install.sh +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/scripts/manage_version.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/scripts/mcp_server.sh +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/scripts/test_set_command.sh +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/setup.cfg +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/setup.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/adapters/__init__.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/adapters/hybrid.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/adapters/linear/__init__.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/adapters/linear/queries.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/adapters/linear/types.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/adapters/linear.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cache/__init__.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cache/memory.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cli/__init__.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cli/auggie_configure.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cli/codex_configure.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cli/diagnostics.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cli/gemini_configure.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cli/linear_commands.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cli/mcp_configure.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cli/migrate_config.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cli/queue_commands.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cli/simple_health.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/cli/utils.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/core/__init__.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/core/adapter.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/core/config.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/core/env_discovery.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/core/env_loader.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/core/exceptions.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/core/http_client.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/core/mappers.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/core/models.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/core/project_config.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/core/registry.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/mcp/__init__.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/mcp/constants.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/mcp/dto.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/mcp/response_builder.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/py.typed +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/queue/__init__.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/queue/__main__.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/queue/health_monitor.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/queue/manager.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/queue/queue.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/queue/run_worker.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/queue/ticket_registry.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer/queue/worker.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer.egg-info/dependency_links.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer.egg-info/entry_points.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer.egg-info/not-zip-safe +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer.egg-info/requires.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/src/mcp_ticketer.egg-info/top_level.txt +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/test-tickets/tickets/task-20250924002724.json +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/README.md +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/__init__.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/linear/__init__.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/linear/test_adapter.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/test_github_token.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/test_jira.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/test_jira_projects.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/adapters/test_linear.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/core/debug_credential_validation.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/core/test_actual_worker_execution.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/core/test_config_resolution.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/core/test_environment_handoff.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/core/test_queue_processing.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/core/test_queue_system.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/debug/debug_adapter_cache.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/debug/debug_cli_config.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/debug/debug_cli_vs_simulation.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/debug/debug_linear_teams.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/debug/debug_search.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/debug/debug_test.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/debug/debug_worker_adapter.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/debug/debug_worker_simulation.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/debug/debug_worker_subprocess.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/e2e/test_comments_and_attachments.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/e2e/test_complete_workflow.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/e2e/test_hierarchy_validation.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/e2e/test_state_transitions.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/integration/test_aitrackdown_commenting.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/integration/test_jira_github_adapters.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/integration/test_mcp_server_qa.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/integration/test_pr_functionality.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/integration/test_serve_config.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/integration/test_user_assignment.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/performance/test_optimizations.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/performance/test_performance.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/run_comprehensive_tests.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/test_base_adapter.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/test_basic.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/test_codex_config.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/test_comprehensive_qa.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/test_error_handling.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/test_linear_teams.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/test_queue.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/unit/__init__.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tests/unit/test_core_registry.py +0 -0
- {mcp_ticketer-0.3.6 → mcp_ticketer-0.4.0}/tox.ini +0 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# Project Memory Configuration
|
|
2
|
+
|
|
3
|
+
This project uses KuzuMemory for intelligent context management.
|
|
4
|
+
|
|
5
|
+
## Project Information
|
|
6
|
+
- **Path**: /Users/masa/Projects/mcp-ticketer
|
|
7
|
+
- **Language**: Python
|
|
8
|
+
- **Framework**: Unknown
|
|
9
|
+
|
|
10
|
+
## Memory Integration
|
|
11
|
+
|
|
12
|
+
KuzuMemory is configured to enhance all AI interactions with project-specific context.
|
|
13
|
+
|
|
14
|
+
### Available Commands:
|
|
15
|
+
- `kuzu-memory enhance <prompt>` - Enhance prompts with project context
|
|
16
|
+
- `kuzu-memory learn <content>` - Store learning from conversations (async)
|
|
17
|
+
- `kuzu-memory recall <query>` - Query project memories
|
|
18
|
+
- `kuzu-memory stats` - View memory statistics
|
|
19
|
+
|
|
20
|
+
### MCP Tools Available:
|
|
21
|
+
When interacting with Claude Desktop, the following MCP tools are available:
|
|
22
|
+
- **kuzu_enhance**: Enhance prompts with project memories
|
|
23
|
+
- **kuzu_learn**: Store new learnings asynchronously
|
|
24
|
+
- **kuzu_recall**: Query specific memories
|
|
25
|
+
- **kuzu_stats**: Get memory system statistics
|
|
26
|
+
|
|
27
|
+
## Project Context
|
|
28
|
+
|
|
29
|
+
Universal ticket management interface for AI agents with MCP support
|
|
30
|
+
|
|
31
|
+
## Key Technologies
|
|
32
|
+
- Python
|
|
33
|
+
|
|
34
|
+
## Development Guidelines
|
|
35
|
+
- Use kuzu-memory enhance for all AI interactions
|
|
36
|
+
- Store important decisions with kuzu-memory learn
|
|
37
|
+
- Query context with kuzu-memory recall when needed
|
|
38
|
+
- Keep memories project-specific and relevant
|
|
39
|
+
|
|
40
|
+
## Memory Guidelines
|
|
41
|
+
|
|
42
|
+
- Store project decisions and conventions
|
|
43
|
+
- Record technical specifications and API details
|
|
44
|
+
- Capture user preferences and patterns
|
|
45
|
+
- Document error solutions and workarounds
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
*Generated by KuzuMemory Claude Hooks Installer*
|
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
# CLI Restructuring Summary
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
The MCP Ticketer CLI has been restructured to follow the kuzu-memory pattern, with a clear hierarchy of commands organized into logical groups. This restructuring improves discoverability, reduces clutter at the top level, and provides a more intuitive user experience.
|
|
6
|
+
|
|
7
|
+
## New Command Structure
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
mcp-ticketer
|
|
11
|
+
│
|
|
12
|
+
├── Top-Level Commands (System Management)
|
|
13
|
+
│ ├── init # Initialize/setup project
|
|
14
|
+
│ ├── setup # Alias for init
|
|
15
|
+
│ ├── install # Alias for init
|
|
16
|
+
│ ├── status (alias: health) # Quick health check
|
|
17
|
+
│ ├── health (alias: status) # Quick health check
|
|
18
|
+
│ ├── doctor (alias: diagnose) # Comprehensive diagnostics
|
|
19
|
+
│ ├── diagnose (alias: doctor) # Comprehensive diagnostics
|
|
20
|
+
│ ├── configure # Configuration wizard
|
|
21
|
+
│ ├── set # Set adapter configuration
|
|
22
|
+
│ ├── migrate-config # Migrate config format
|
|
23
|
+
│ └── serve # Start MCP server
|
|
24
|
+
│
|
|
25
|
+
├── ticket # Ticket operations (NEW GROUP)
|
|
26
|
+
│ ├── create # Create ticket
|
|
27
|
+
│ ├── list # List tickets
|
|
28
|
+
│ ├── show # Show ticket details
|
|
29
|
+
│ ├── update # Update ticket
|
|
30
|
+
│ ├── transition # Change ticket state
|
|
31
|
+
│ ├── search # Search tickets
|
|
32
|
+
│ ├── comment # Add comment
|
|
33
|
+
│ └── check # Check queued operation
|
|
34
|
+
│
|
|
35
|
+
├── mcp # MCP client configuration
|
|
36
|
+
│ ├── claude # Configure Claude Code/Desktop
|
|
37
|
+
│ ├── gemini # Configure Gemini CLI
|
|
38
|
+
│ ├── codex # Configure Codex CLI
|
|
39
|
+
│ └── auggie # Configure Auggie CLI
|
|
40
|
+
│
|
|
41
|
+
├── platform # Platform-specific commands (NEW GROUP)
|
|
42
|
+
│ ├── linear
|
|
43
|
+
│ │ ├── workspaces # List workspaces
|
|
44
|
+
│ │ ├── teams # List teams
|
|
45
|
+
│ │ ├── configure # Configure Linear adapter
|
|
46
|
+
│ │ └── info # Show team info
|
|
47
|
+
│ ├── jira # Placeholder for future
|
|
48
|
+
│ │ ├── projects # (Placeholder)
|
|
49
|
+
│ │ └── configure # (Placeholder)
|
|
50
|
+
│ ├── github # Placeholder for future
|
|
51
|
+
│ │ ├── repos # (Placeholder)
|
|
52
|
+
│ │ └── configure # (Placeholder)
|
|
53
|
+
│ └── aitrackdown # Placeholder for future
|
|
54
|
+
│ ├── info # (Placeholder)
|
|
55
|
+
│ └── configure # (Placeholder)
|
|
56
|
+
│
|
|
57
|
+
├── queue # Queue management
|
|
58
|
+
│ └── worker
|
|
59
|
+
│ ├── start
|
|
60
|
+
│ ├── stop
|
|
61
|
+
│ ├── status
|
|
62
|
+
│ └── restart
|
|
63
|
+
│
|
|
64
|
+
└── discover # Environment discovery
|
|
65
|
+
└── ...
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Key Changes
|
|
69
|
+
|
|
70
|
+
### 1. New Command Groups
|
|
71
|
+
|
|
72
|
+
#### `ticket` Group
|
|
73
|
+
All ticket-related operations have been consolidated under the `ticket` command group:
|
|
74
|
+
|
|
75
|
+
**Before:**
|
|
76
|
+
```bash
|
|
77
|
+
mcp-ticketer create "My ticket"
|
|
78
|
+
mcp-ticketer list
|
|
79
|
+
mcp-ticketer show TICKET-123
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
**After:**
|
|
83
|
+
```bash
|
|
84
|
+
mcp-ticketer ticket create "My ticket"
|
|
85
|
+
mcp-ticketer ticket list
|
|
86
|
+
mcp-ticketer ticket show TICKET-123
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
#### `platform` Group
|
|
90
|
+
Platform-specific commands are now organized under the `platform` group:
|
|
91
|
+
|
|
92
|
+
**Before:**
|
|
93
|
+
```bash
|
|
94
|
+
mcp-ticketer linear teams
|
|
95
|
+
mcp-ticketer linear configure --team-id ABC123
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
**After:**
|
|
99
|
+
```bash
|
|
100
|
+
mcp-ticketer platform linear teams
|
|
101
|
+
mcp-ticketer platform linear configure --team-id ABC123
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### 2. Command Aliases
|
|
105
|
+
|
|
106
|
+
The following command aliases have been added for convenience:
|
|
107
|
+
|
|
108
|
+
- `status` ↔ `health` - System health check
|
|
109
|
+
- `diagnose` ↔ `doctor` - Comprehensive diagnostics
|
|
110
|
+
|
|
111
|
+
**Examples:**
|
|
112
|
+
```bash
|
|
113
|
+
mcp-ticketer status # Same as: mcp-ticketer health
|
|
114
|
+
mcp-ticketer doctor # Same as: mcp-ticketer diagnose
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
### 3. Backward Compatibility
|
|
118
|
+
|
|
119
|
+
All old top-level ticket commands are still available but are marked as **deprecated** and **hidden**. When used, they will display a deprecation warning and redirect users to the new command structure:
|
|
120
|
+
|
|
121
|
+
```bash
|
|
122
|
+
$ mcp-ticketer create "My ticket"
|
|
123
|
+
⚠️ This command is deprecated. Use 'mcp-ticketer ticket create' instead.
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
The deprecated commands include:
|
|
127
|
+
- `create` → `ticket create`
|
|
128
|
+
- `list` → `ticket list`
|
|
129
|
+
- `show` → `ticket show`
|
|
130
|
+
- `update` → `ticket update`
|
|
131
|
+
- `transition` → `ticket transition`
|
|
132
|
+
- `search` → `ticket search`
|
|
133
|
+
- `comment` → `ticket comment`
|
|
134
|
+
- `check` → `ticket check`
|
|
135
|
+
|
|
136
|
+
### 4. Platform Placeholders
|
|
137
|
+
|
|
138
|
+
Placeholder command groups have been added for future platform integrations:
|
|
139
|
+
- **JIRA** - `mcp-ticketer platform jira`
|
|
140
|
+
- **GitHub** - `mcp-ticketer platform github`
|
|
141
|
+
- **AITrackdown** - `mcp-ticketer platform aitrackdown`
|
|
142
|
+
|
|
143
|
+
These placeholders provide helpful messages directing users to use the generic ticket commands until platform-specific features are implemented.
|
|
144
|
+
|
|
145
|
+
## File Changes
|
|
146
|
+
|
|
147
|
+
### New Files Created
|
|
148
|
+
|
|
149
|
+
1. **`src/mcp_ticketer/cli/ticket_commands.py`**
|
|
150
|
+
- Contains all ticket management commands
|
|
151
|
+
- Includes configuration functions (load_config, save_config, get_adapter)
|
|
152
|
+
- Self-contained to avoid circular imports
|
|
153
|
+
|
|
154
|
+
2. **`src/mcp_ticketer/cli/platform_commands.py`**
|
|
155
|
+
- Platform command group orchestration
|
|
156
|
+
- Imports and registers Linear commands
|
|
157
|
+
- Placeholder apps for JIRA, GitHub, and AITrackdown
|
|
158
|
+
|
|
159
|
+
### Modified Files
|
|
160
|
+
|
|
161
|
+
1. **`src/mcp_ticketer/cli/main.py`**
|
|
162
|
+
- Added imports for new command groups
|
|
163
|
+
- Registered `ticket` and `platform` command groups
|
|
164
|
+
- Deprecated old top-level ticket commands
|
|
165
|
+
- Added command aliases (status/health, diagnose/doctor)
|
|
166
|
+
- Removed direct `linear_app` registration (now under platform)
|
|
167
|
+
|
|
168
|
+
2. **`src/mcp_ticketer/cli/linear_commands.py`**
|
|
169
|
+
- No changes required (works as-is under platform group)
|
|
170
|
+
|
|
171
|
+
## Migration Guide
|
|
172
|
+
|
|
173
|
+
### For End Users
|
|
174
|
+
|
|
175
|
+
#### Updating Scripts
|
|
176
|
+
If you have scripts using the old commands, they will continue to work but will show deprecation warnings. Update them to use the new structure:
|
|
177
|
+
|
|
178
|
+
**Old scripts:**
|
|
179
|
+
```bash
|
|
180
|
+
#!/bin/bash
|
|
181
|
+
mcp-ticketer create "Bug in login"
|
|
182
|
+
mcp-ticketer list --state todo
|
|
183
|
+
mcp-ticketer linear teams
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
**Updated scripts:**
|
|
187
|
+
```bash
|
|
188
|
+
#!/bin/bash
|
|
189
|
+
mcp-ticketer ticket create "Bug in login"
|
|
190
|
+
mcp-ticketer ticket list --state todo
|
|
191
|
+
mcp-ticketer platform linear teams
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
#### Using Aliases
|
|
195
|
+
Take advantage of the new aliases for brevity:
|
|
196
|
+
|
|
197
|
+
```bash
|
|
198
|
+
# Instead of: mcp-ticketer diagnose
|
|
199
|
+
mcp-ticketer doctor
|
|
200
|
+
|
|
201
|
+
# Instead of: mcp-ticketer health
|
|
202
|
+
mcp-ticketer status
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
### For Developers
|
|
206
|
+
|
|
207
|
+
#### Adding New Platform Commands
|
|
208
|
+
|
|
209
|
+
To add commands for a new platform (e.g., JIRA), follow this pattern:
|
|
210
|
+
|
|
211
|
+
1. Create the command module (e.g., `jira_commands.py`)
|
|
212
|
+
2. Import it in `platform_commands.py`
|
|
213
|
+
3. Replace the placeholder app with your real implementation
|
|
214
|
+
|
|
215
|
+
**Example:**
|
|
216
|
+
```python
|
|
217
|
+
# In src/mcp_ticketer/cli/jira_commands.py
|
|
218
|
+
import typer
|
|
219
|
+
|
|
220
|
+
app = typer.Typer(name="jira", help="JIRA workspace and project management")
|
|
221
|
+
|
|
222
|
+
@app.command("projects")
|
|
223
|
+
def list_projects():
|
|
224
|
+
"""List JIRA projects."""
|
|
225
|
+
# Implementation here
|
|
226
|
+
pass
|
|
227
|
+
|
|
228
|
+
# In src/mcp_ticketer/cli/platform_commands.py
|
|
229
|
+
from .jira_commands import app as jira_app
|
|
230
|
+
|
|
231
|
+
# Replace the placeholder:
|
|
232
|
+
# jira_app = typer.Typer(...) # OLD
|
|
233
|
+
# with:
|
|
234
|
+
# from .jira_commands import app as jira_app # NEW
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
## Testing
|
|
238
|
+
|
|
239
|
+
All new command structures have been tested and verified:
|
|
240
|
+
|
|
241
|
+
✅ `mcp-ticketer --help` - Shows new command groups
|
|
242
|
+
✅ `mcp-ticketer ticket --help` - Shows ticket subcommands
|
|
243
|
+
✅ `mcp-ticketer platform --help` - Shows platform groups
|
|
244
|
+
✅ `mcp-ticketer platform linear --help` - Shows Linear commands
|
|
245
|
+
✅ `mcp-ticketer status` / `mcp-ticketer health` - Aliases work
|
|
246
|
+
✅ `mcp-ticketer doctor` / `mcp-ticketer diagnose` - Aliases work
|
|
247
|
+
✅ Old commands show deprecation warnings
|
|
248
|
+
|
|
249
|
+
## Benefits
|
|
250
|
+
|
|
251
|
+
1. **Better Organization** - Commands are logically grouped by function
|
|
252
|
+
2. **Cleaner Top Level** - Reduced clutter at the main help level
|
|
253
|
+
3. **Improved Discoverability** - Users can explore commands by category
|
|
254
|
+
4. **Future-Proof** - Easy to add new platforms without polluting the top level
|
|
255
|
+
5. **Backward Compatible** - Existing scripts continue to work (with warnings)
|
|
256
|
+
6. **Consistent Pattern** - Follows established CLI patterns (kuzu-memory style)
|
|
257
|
+
7. **Alias Convenience** - Common operations have intuitive aliases
|
|
258
|
+
|
|
259
|
+
## Next Steps
|
|
260
|
+
|
|
261
|
+
1. ✅ Implement restructuring
|
|
262
|
+
2. ✅ Add deprecation warnings
|
|
263
|
+
3. ✅ Test all command paths
|
|
264
|
+
4. 📝 Update documentation (in progress)
|
|
265
|
+
5. 🔄 Deprecation cycle (6-12 months before removing old commands)
|
|
266
|
+
6. 🚀 Implement platform-specific commands for JIRA and GitHub
|
|
267
|
+
|
|
268
|
+
---
|
|
269
|
+
|
|
270
|
+
**Version:** 1.0.0
|
|
271
|
+
**Date:** October 26, 2025
|
|
272
|
+
**Author:** Generated via Claude Code MPM
|