@ameshkin/ticket-mate 0.1.20
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.
- package/LICENSE +22 -0
- package/README.md +1214 -0
- package/config/_design-specs.json +39 -0
- package/config/bugs-demo.json +186 -0
- package/config/design-specs.ts +39 -0
- package/config/envSpec.ts +120 -0
- package/config/nav.admin.ts +165 -0
- package/config/nav.main.json +90 -0
- package/config/nav.main.ts +92 -0
- package/package.json +299 -0
- package/public/acceptance-criteria/extractors.d.ts +30 -0
- package/public/acceptance-criteria/extractors.d.ts.map +1 -0
- package/public/acceptance-criteria/extractors.js +133 -0
- package/public/acceptance-criteria/extractors.js.map +1 -0
- package/public/acceptance-criteria/file-discovery.d.ts +22 -0
- package/public/acceptance-criteria/file-discovery.d.ts.map +1 -0
- package/public/acceptance-criteria/file-discovery.js +102 -0
- package/public/acceptance-criteria/file-discovery.js.map +1 -0
- package/public/acceptance-criteria/file-utils.d.ts +29 -0
- package/public/acceptance-criteria/file-utils.d.ts.map +1 -0
- package/public/acceptance-criteria/file-utils.js +103 -0
- package/public/acceptance-criteria/file-utils.js.map +1 -0
- package/public/acceptance-criteria/merger.d.ts +17 -0
- package/public/acceptance-criteria/merger.d.ts.map +1 -0
- package/public/acceptance-criteria/merger.js +73 -0
- package/public/acceptance-criteria/merger.js.map +1 -0
- package/public/acceptance-criteria/sync.d.ts +12 -0
- package/public/acceptance-criteria/sync.d.ts.map +1 -0
- package/public/acceptance-criteria/sync.js +72 -0
- package/public/acceptance-criteria/sync.js.map +1 -0
- package/public/acceptance-criteria/verifier.d.ts +10 -0
- package/public/acceptance-criteria/verifier.d.ts.map +1 -0
- package/public/acceptance-criteria/verifier.js +54 -0
- package/public/acceptance-criteria/verifier.js.map +1 -0
- package/public/ai/agent-handler-integration.d.ts +67 -0
- package/public/ai/agent-handler-integration.d.ts.map +1 -0
- package/public/ai/agent-handler-integration.js +277 -0
- package/public/ai/agent-handler-integration.js.map +1 -0
- package/public/ai/agent-integration.d.ts +96 -0
- package/public/ai/agent-integration.d.ts.map +1 -0
- package/public/ai/agent-integration.js +82 -0
- package/public/ai/agent-integration.js.map +1 -0
- package/public/ai/ai-ready.d.ts +28 -0
- package/public/ai/ai-ready.d.ts.map +1 -0
- package/public/ai/ai-ready.js +70 -0
- package/public/ai/ai-ready.js.map +1 -0
- package/public/ai/executor.d.ts +108 -0
- package/public/ai/executor.d.ts.map +1 -0
- package/public/ai/executor.js +30 -0
- package/public/ai/executor.js.map +1 -0
- package/public/ai/jira-updates.d.ts +25 -0
- package/public/ai/jira-updates.d.ts.map +1 -0
- package/public/ai/jira-updates.js +132 -0
- package/public/ai/jira-updates.js.map +1 -0
- package/public/ai/progress.d.ts +59 -0
- package/public/ai/progress.d.ts.map +1 -0
- package/public/ai/progress.js +92 -0
- package/public/ai/progress.js.map +1 -0
- package/public/ai/repo.d.ts +54 -0
- package/public/ai/repo.d.ts.map +1 -0
- package/public/ai/repo.js +171 -0
- package/public/ai/repo.js.map +1 -0
- package/public/ai/safeguards.d.ts +59 -0
- package/public/ai/safeguards.d.ts.map +1 -0
- package/public/ai/safeguards.js +139 -0
- package/public/ai/safeguards.js.map +1 -0
- package/public/ai/test-runner.d.ts +37 -0
- package/public/ai/test-runner.d.ts.map +1 -0
- package/public/ai/test-runner.js +114 -0
- package/public/ai/test-runner.js.map +1 -0
- package/public/ai/workflow.d.ts +41 -0
- package/public/ai/workflow.d.ts.map +1 -0
- package/public/ai/workflow.js +205 -0
- package/public/ai/workflow.js.map +1 -0
- package/public/app/api/acceptance-criteria/acceptance-criteria.service.d.ts +8 -0
- package/public/app/api/acceptance-criteria/acceptance-criteria.service.d.ts.map +1 -0
- package/public/app/api/acceptance-criteria/acceptance-criteria.service.js +18 -0
- package/public/app/api/acceptance-criteria/acceptance-criteria.service.js.map +1 -0
- package/public/app/api/automation/automation.service.d.ts +20 -0
- package/public/app/api/automation/automation.service.d.ts.map +1 -0
- package/public/app/api/automation/automation.service.js +112 -0
- package/public/app/api/automation/automation.service.js.map +1 -0
- package/public/app/api/automation/bulk-operations.d.ts +41 -0
- package/public/app/api/automation/bulk-operations.d.ts.map +1 -0
- package/public/app/api/automation/bulk-operations.js +146 -0
- package/public/app/api/automation/bulk-operations.js.map +1 -0
- package/public/app/api/automation/fix-now.d.ts +27 -0
- package/public/app/api/automation/fix-now.d.ts.map +1 -0
- package/public/app/api/automation/fix-now.js +82 -0
- package/public/app/api/automation/fix-now.js.map +1 -0
- package/public/app/api/batch/batch.service.d.ts +7 -0
- package/public/app/api/batch/batch.service.d.ts.map +1 -0
- package/public/app/api/batch/batch.service.js +11 -0
- package/public/app/api/batch/batch.service.js.map +1 -0
- package/public/app/api/bugs/bugs-jira.service.d.ts +27 -0
- package/public/app/api/bugs/bugs-jira.service.d.ts.map +1 -0
- package/public/app/api/bugs/bugs-jira.service.js +103 -0
- package/public/app/api/bugs/bugs-jira.service.js.map +1 -0
- package/public/app/api/bugs/bugs.service.d.ts +29 -0
- package/public/app/api/bugs/bugs.service.d.ts.map +1 -0
- package/public/app/api/bugs/bugs.service.js +51 -0
- package/public/app/api/bugs/bugs.service.js.map +1 -0
- package/public/app/api/config/config.service.d.ts +12 -0
- package/public/app/api/config/config.service.d.ts.map +1 -0
- package/public/app/api/config/config.service.js +45 -0
- package/public/app/api/config/config.service.js.map +1 -0
- package/public/app/api/google/google-maps.service.d.ts +30 -0
- package/public/app/api/google/google-maps.service.d.ts.map +1 -0
- package/public/app/api/google/google-maps.service.js +74 -0
- package/public/app/api/google/google-maps.service.js.map +1 -0
- package/public/app/api/google/google-search.service.d.ts +73 -0
- package/public/app/api/google/google-search.service.d.ts.map +1 -0
- package/public/app/api/google/google-search.service.js +83 -0
- package/public/app/api/google/google-search.service.js.map +1 -0
- package/public/app/api/issues/execution.service.d.ts +13 -0
- package/public/app/api/issues/execution.service.d.ts.map +1 -0
- package/public/app/api/issues/execution.service.js +27 -0
- package/public/app/api/issues/execution.service.js.map +1 -0
- package/public/app/api/issues/git.service.d.ts +10 -0
- package/public/app/api/issues/git.service.d.ts.map +1 -0
- package/public/app/api/issues/git.service.js +22 -0
- package/public/app/api/issues/git.service.js.map +1 -0
- package/public/app/api/issues/issues.service.d.ts +14 -0
- package/public/app/api/issues/issues.service.d.ts.map +1 -0
- package/public/app/api/issues/issues.service.js +32 -0
- package/public/app/api/issues/issues.service.js.map +1 -0
- package/public/app/api/jira/jira-auth.service.d.ts +36 -0
- package/public/app/api/jira/jira-auth.service.d.ts.map +1 -0
- package/public/app/api/jira/jira-auth.service.js +89 -0
- package/public/app/api/jira/jira-auth.service.js.map +1 -0
- package/public/app/api/orchestrator/orchestrator-processor.d.ts +32 -0
- package/public/app/api/orchestrator/orchestrator-processor.d.ts.map +1 -0
- package/public/app/api/orchestrator/orchestrator-processor.js +130 -0
- package/public/app/api/orchestrator/orchestrator-processor.js.map +1 -0
- package/public/app/api/orchestrator/orchestrator.service.d.ts +56 -0
- package/public/app/api/orchestrator/orchestrator.service.d.ts.map +1 -0
- package/public/app/api/orchestrator/orchestrator.service.js +91 -0
- package/public/app/api/orchestrator/orchestrator.service.js.map +1 -0
- package/public/app/api/projects/projects.service.d.ts +12 -0
- package/public/app/api/projects/projects.service.d.ts.map +1 -0
- package/public/app/api/projects/projects.service.js +13 -0
- package/public/app/api/projects/projects.service.js.map +1 -0
- package/public/app/api/prompts/pr.service.d.ts +13 -0
- package/public/app/api/prompts/pr.service.d.ts.map +1 -0
- package/public/app/api/prompts/pr.service.js +12 -0
- package/public/app/api/prompts/pr.service.js.map +1 -0
- package/public/app/api/prompts/prompts.service.d.ts +5 -0
- package/public/app/api/prompts/prompts.service.d.ts.map +1 -0
- package/public/app/api/prompts/prompts.service.js +7 -0
- package/public/app/api/prompts/prompts.service.js.map +1 -0
- package/public/app/api/report/api-report.d.ts +60 -0
- package/public/app/api/report/api-report.d.ts.map +1 -0
- package/public/app/api/report/api-report.js +212 -0
- package/public/app/api/report/api-report.js.map +1 -0
- package/public/app/api/research/research.service.d.ts +82 -0
- package/public/app/api/research/research.service.d.ts.map +1 -0
- package/public/app/api/research/research.service.js +115 -0
- package/public/app/api/research/research.service.js.map +1 -0
- package/public/app/api/sync/sync.service.d.ts +11 -0
- package/public/app/api/sync/sync.service.d.ts.map +1 -0
- package/public/app/api/sync/sync.service.js +20 -0
- package/public/app/api/sync/sync.service.js.map +1 -0
- package/public/app/api/task-folders/task-folders.service.d.ts +15 -0
- package/public/app/api/task-folders/task-folders.service.d.ts.map +1 -0
- package/public/app/api/task-folders/task-folders.service.js +27 -0
- package/public/app/api/task-folders/task-folders.service.js.map +1 -0
- package/public/app/api/ticket-mate-config/ticket-mate-config.service.d.ts +129 -0
- package/public/app/api/ticket-mate-config/ticket-mate-config.service.d.ts.map +1 -0
- package/public/app/api/ticket-mate-config/ticket-mate-config.service.js +140 -0
- package/public/app/api/ticket-mate-config/ticket-mate-config.service.js.map +1 -0
- package/public/app/api/webhooks/webhooks.service.d.ts +11 -0
- package/public/app/api/webhooks/webhooks.service.d.ts.map +1 -0
- package/public/app/api/webhooks/webhooks.service.js +12 -0
- package/public/app/api/webhooks/webhooks.service.js.map +1 -0
- package/public/assets/images/logo.jpg +0 -0
- package/public/automation/bugs-sync.d.ts +36 -0
- package/public/automation/bugs-sync.d.ts.map +1 -0
- package/public/automation/bugs-sync.js +234 -0
- package/public/automation/bugs-sync.js.map +1 -0
- package/public/automation/bugs-watcher.d.ts +22 -0
- package/public/automation/bugs-watcher.d.ts.map +1 -0
- package/public/automation/bugs-watcher.js +100 -0
- package/public/automation/bugs-watcher.js.map +1 -0
- package/public/automation/index.d.ts +17 -0
- package/public/automation/index.d.ts.map +1 -0
- package/public/automation/index.js +21 -0
- package/public/automation/index.js.map +1 -0
- package/public/automation/json-reader.d.ts +102 -0
- package/public/automation/json-reader.d.ts.map +1 -0
- package/public/automation/json-reader.js +147 -0
- package/public/automation/json-reader.js.map +1 -0
- package/public/automation/label-assigner.d.ts +54 -0
- package/public/automation/label-assigner.d.ts.map +1 -0
- package/public/automation/label-assigner.js +233 -0
- package/public/automation/label-assigner.js.map +1 -0
- package/public/automation/pattern-learner.d.ts +47 -0
- package/public/automation/pattern-learner.d.ts.map +1 -0
- package/public/automation/pattern-learner.js +192 -0
- package/public/automation/pattern-learner.js.map +1 -0
- package/public/automation/pattern-matcher.d.ts +86 -0
- package/public/automation/pattern-matcher.d.ts.map +1 -0
- package/public/automation/pattern-matcher.js +215 -0
- package/public/automation/pattern-matcher.js.map +1 -0
- package/public/automation/pattern-store.d.ts +32 -0
- package/public/automation/pattern-store.d.ts.map +1 -0
- package/public/automation/pattern-store.js +97 -0
- package/public/automation/pattern-store.js.map +1 -0
- package/public/automation/ticket-creator.d.ts +54 -0
- package/public/automation/ticket-creator.d.ts.map +1 -0
- package/public/automation/ticket-creator.js +267 -0
- package/public/automation/ticket-creator.js.map +1 -0
- package/public/automation/types.d.ts +96 -0
- package/public/automation/types.d.ts.map +1 -0
- package/public/automation/types.js +7 -0
- package/public/automation/types.js.map +1 -0
- package/public/batch/batch-execute.d.ts +88 -0
- package/public/batch/batch-execute.d.ts.map +1 -0
- package/public/batch/batch-execute.js +182 -0
- package/public/batch/batch-execute.js.map +1 -0
- package/public/batch/batch-sync.d.ts +46 -0
- package/public/batch/batch-sync.d.ts.map +1 -0
- package/public/batch/batch-sync.js +83 -0
- package/public/batch/batch-sync.js.map +1 -0
- package/public/cache/cache.d.ts +65 -0
- package/public/cache/cache.d.ts.map +1 -0
- package/public/cache/cache.js +198 -0
- package/public/cache/cache.js.map +1 -0
- package/public/cache/etag.d.ts +51 -0
- package/public/cache/etag.d.ts.map +1 -0
- package/public/cache/etag.js +108 -0
- package/public/cache/etag.js.map +1 -0
- package/public/ci/github-sync.d.ts +92 -0
- package/public/ci/github-sync.d.ts.map +1 -0
- package/public/ci/github-sync.js +166 -0
- package/public/ci/github-sync.js.map +1 -0
- package/public/cli/commands/agent-instruct.d.ts +8 -0
- package/public/cli/commands/agent-instruct.d.ts.map +1 -0
- package/public/cli/commands/agent-instruct.js +138 -0
- package/public/cli/commands/agent-instruct.js.map +1 -0
- package/public/cli/commands/assign-to-cursor.d.ts +8 -0
- package/public/cli/commands/assign-to-cursor.d.ts.map +1 -0
- package/public/cli/commands/assign-to-cursor.js +84 -0
- package/public/cli/commands/assign-to-cursor.js.map +1 -0
- package/public/cli/commands/assign.d.ts +8 -0
- package/public/cli/commands/assign.d.ts.map +1 -0
- package/public/cli/commands/assign.js +84 -0
- package/public/cli/commands/assign.js.map +1 -0
- package/public/cli/commands/auth-check.d.ts +8 -0
- package/public/cli/commands/auth-check.d.ts.map +1 -0
- package/public/cli/commands/auth-check.js +72 -0
- package/public/cli/commands/auth-check.js.map +1 -0
- package/public/cli/commands/autoplay.d.ts +3 -0
- package/public/cli/commands/autoplay.d.ts.map +1 -0
- package/public/cli/commands/autoplay.js +188 -0
- package/public/cli/commands/autoplay.js.map +1 -0
- package/public/cli/commands/batch.d.ts +8 -0
- package/public/cli/commands/batch.d.ts.map +1 -0
- package/public/cli/commands/batch.js +125 -0
- package/public/cli/commands/batch.js.map +1 -0
- package/public/cli/commands/bug-tix.d.ts +9 -0
- package/public/cli/commands/bug-tix.d.ts.map +1 -0
- package/public/cli/commands/bug-tix.js +306 -0
- package/public/cli/commands/bug-tix.js.map +1 -0
- package/public/cli/commands/bugs-create-jira.d.ts +8 -0
- package/public/cli/commands/bugs-create-jira.d.ts.map +1 -0
- package/public/cli/commands/bugs-create-jira.js +113 -0
- package/public/cli/commands/bugs-create-jira.js.map +1 -0
- package/public/cli/commands/bugs-ls.d.ts +8 -0
- package/public/cli/commands/bugs-ls.d.ts.map +1 -0
- package/public/cli/commands/bugs-ls.js +63 -0
- package/public/cli/commands/bugs-ls.js.map +1 -0
- package/public/cli/commands/bugs-open.d.ts +8 -0
- package/public/cli/commands/bugs-open.d.ts.map +1 -0
- package/public/cli/commands/bugs-open.js +69 -0
- package/public/cli/commands/bugs-open.js.map +1 -0
- package/public/cli/commands/bugs-sync.d.ts +8 -0
- package/public/cli/commands/bugs-sync.d.ts.map +1 -0
- package/public/cli/commands/bugs-sync.js +76 -0
- package/public/cli/commands/bugs-sync.js.map +1 -0
- package/public/cli/commands/check-permissions.d.ts +9 -0
- package/public/cli/commands/check-permissions.d.ts.map +1 -0
- package/public/cli/commands/check-permissions.js +180 -0
- package/public/cli/commands/check-permissions.js.map +1 -0
- package/public/cli/commands/check-statuses.d.ts +8 -0
- package/public/cli/commands/check-statuses.d.ts.map +1 -0
- package/public/cli/commands/check-statuses.js +58 -0
- package/public/cli/commands/check-statuses.js.map +1 -0
- package/public/cli/commands/ci-sync.d.ts +8 -0
- package/public/cli/commands/ci-sync.d.ts.map +1 -0
- package/public/cli/commands/ci-sync.js +45 -0
- package/public/cli/commands/ci-sync.js.map +1 -0
- package/public/cli/commands/clone-project.d.ts +11 -0
- package/public/cli/commands/clone-project.d.ts.map +1 -0
- package/public/cli/commands/clone-project.js +139 -0
- package/public/cli/commands/clone-project.js.map +1 -0
- package/public/cli/commands/cloud-projects.d.ts +9 -0
- package/public/cli/commands/cloud-projects.d.ts.map +1 -0
- package/public/cli/commands/cloud-projects.js +164 -0
- package/public/cli/commands/cloud-projects.js.map +1 -0
- package/public/cli/commands/comment.d.ts +8 -0
- package/public/cli/commands/comment.d.ts.map +1 -0
- package/public/cli/commands/comment.js +64 -0
- package/public/cli/commands/comment.js.map +1 -0
- package/public/cli/commands/config-test.d.ts +10 -0
- package/public/cli/commands/config-test.d.ts.map +1 -0
- package/public/cli/commands/config-test.js +92 -0
- package/public/cli/commands/config-test.js.map +1 -0
- package/public/cli/commands/create-board.d.ts +8 -0
- package/public/cli/commands/create-board.d.ts.map +1 -0
- package/public/cli/commands/create-board.js +84 -0
- package/public/cli/commands/create-board.js.map +1 -0
- package/public/cli/commands/create-bug.d.ts +8 -0
- package/public/cli/commands/create-bug.d.ts.map +1 -0
- package/public/cli/commands/create-bug.js +33 -0
- package/public/cli/commands/create-bug.js.map +1 -0
- package/public/cli/commands/create-epic.d.ts +8 -0
- package/public/cli/commands/create-epic.d.ts.map +1 -0
- package/public/cli/commands/create-epic.js +31 -0
- package/public/cli/commands/create-epic.js.map +1 -0
- package/public/cli/commands/create-label.d.ts +8 -0
- package/public/cli/commands/create-label.d.ts.map +1 -0
- package/public/cli/commands/create-label.js +48 -0
- package/public/cli/commands/create-label.js.map +1 -0
- package/public/cli/commands/create-story.d.ts +8 -0
- package/public/cli/commands/create-story.d.ts.map +1 -0
- package/public/cli/commands/create-story.js +33 -0
- package/public/cli/commands/create-story.js.map +1 -0
- package/public/cli/commands/create-task-folder.d.ts +8 -0
- package/public/cli/commands/create-task-folder.d.ts.map +1 -0
- package/public/cli/commands/create-task-folder.js +45 -0
- package/public/cli/commands/create-task-folder.js.map +1 -0
- package/public/cli/commands/create-ticket.d.ts +32 -0
- package/public/cli/commands/create-ticket.d.ts.map +1 -0
- package/public/cli/commands/create-ticket.js +610 -0
- package/public/cli/commands/create-ticket.js.map +1 -0
- package/public/cli/commands/env-check.d.ts +8 -0
- package/public/cli/commands/env-check.d.ts.map +1 -0
- package/public/cli/commands/env-check.js +131 -0
- package/public/cli/commands/env-check.js.map +1 -0
- package/public/cli/commands/env-debug.d.ts +8 -0
- package/public/cli/commands/env-debug.d.ts.map +1 -0
- package/public/cli/commands/env-debug.js +169 -0
- package/public/cli/commands/env-debug.js.map +1 -0
- package/public/cli/commands/execute.d.ts +9 -0
- package/public/cli/commands/execute.d.ts.map +1 -0
- package/public/cli/commands/execute.js +97 -0
- package/public/cli/commands/execute.js.map +1 -0
- package/public/cli/commands/export.d.ts +8 -0
- package/public/cli/commands/export.d.ts.map +1 -0
- package/public/cli/commands/export.js +126 -0
- package/public/cli/commands/export.js.map +1 -0
- package/public/cli/commands/go.d.ts +15 -0
- package/public/cli/commands/go.d.ts.map +1 -0
- package/public/cli/commands/go.js +326 -0
- package/public/cli/commands/go.js.map +1 -0
- package/public/cli/commands/health-check.d.ts +8 -0
- package/public/cli/commands/health-check.d.ts.map +1 -0
- package/public/cli/commands/health-check.js +209 -0
- package/public/cli/commands/health-check.js.map +1 -0
- package/public/cli/commands/import-template.d.ts +8 -0
- package/public/cli/commands/import-template.d.ts.map +1 -0
- package/public/cli/commands/import-template.js +98 -0
- package/public/cli/commands/import-template.js.map +1 -0
- package/public/cli/commands/init-repo.d.ts +8 -0
- package/public/cli/commands/init-repo.d.ts.map +1 -0
- package/public/cli/commands/init-repo.js +112 -0
- package/public/cli/commands/init-repo.js.map +1 -0
- package/public/cli/commands/interactive.d.ts +11 -0
- package/public/cli/commands/interactive.d.ts.map +1 -0
- package/public/cli/commands/interactive.js +124 -0
- package/public/cli/commands/interactive.js.map +1 -0
- package/public/cli/commands/jm-status.d.ts +8 -0
- package/public/cli/commands/jm-status.d.ts.map +1 -0
- package/public/cli/commands/jm-status.js +81 -0
- package/public/cli/commands/jm-status.js.map +1 -0
- package/public/cli/commands/list-jira-projects.d.ts +12 -0
- package/public/cli/commands/list-jira-projects.d.ts.map +1 -0
- package/public/cli/commands/list-jira-projects.js +109 -0
- package/public/cli/commands/list-jira-projects.js.map +1 -0
- package/public/cli/commands/list-tickets.d.ts +9 -0
- package/public/cli/commands/list-tickets.d.ts.map +1 -0
- package/public/cli/commands/list-tickets.js +73 -0
- package/public/cli/commands/list-tickets.js.map +1 -0
- package/public/cli/commands/ls-issues.d.ts +14 -0
- package/public/cli/commands/ls-issues.d.ts.map +1 -0
- package/public/cli/commands/ls-issues.js +54 -0
- package/public/cli/commands/ls-issues.js.map +1 -0
- package/public/cli/commands/ls-projects.d.ts +10 -0
- package/public/cli/commands/ls-projects.d.ts.map +1 -0
- package/public/cli/commands/ls-projects.js +14 -0
- package/public/cli/commands/ls-projects.js.map +1 -0
- package/public/cli/commands/my-tickets.d.ts +8 -0
- package/public/cli/commands/my-tickets.d.ts.map +1 -0
- package/public/cli/commands/my-tickets.js +96 -0
- package/public/cli/commands/my-tickets.js.map +1 -0
- package/public/cli/commands/orc-go.d.ts +3 -0
- package/public/cli/commands/orc-go.d.ts.map +1 -0
- package/public/cli/commands/orc-go.js +272 -0
- package/public/cli/commands/orc-go.js.map +1 -0
- package/public/cli/commands/orc-notes-get.d.ts +3 -0
- package/public/cli/commands/orc-notes-get.d.ts.map +1 -0
- package/public/cli/commands/orc-notes-get.js +78 -0
- package/public/cli/commands/orc-notes-get.js.map +1 -0
- package/public/cli/commands/orc-notes-go.d.ts +3 -0
- package/public/cli/commands/orc-notes-go.d.ts.map +1 -0
- package/public/cli/commands/orc-notes-go.js +182 -0
- package/public/cli/commands/orc-notes-go.js.map +1 -0
- package/public/cli/commands/orc-notes-status.d.ts +3 -0
- package/public/cli/commands/orc-notes-status.d.ts.map +1 -0
- package/public/cli/commands/orc-notes-status.js +89 -0
- package/public/cli/commands/orc-notes-status.js.map +1 -0
- package/public/cli/commands/plan-ticket.d.ts +8 -0
- package/public/cli/commands/plan-ticket.d.ts.map +1 -0
- package/public/cli/commands/plan-ticket.js +61 -0
- package/public/cli/commands/plan-ticket.js.map +1 -0
- package/public/cli/commands/process-bugs.d.ts +8 -0
- package/public/cli/commands/process-bugs.d.ts.map +1 -0
- package/public/cli/commands/process-bugs.js +106 -0
- package/public/cli/commands/process-bugs.js.map +1 -0
- package/public/cli/commands/project-config.d.ts +8 -0
- package/public/cli/commands/project-config.d.ts.map +1 -0
- package/public/cli/commands/project-config.js +172 -0
- package/public/cli/commands/project-config.js.map +1 -0
- package/public/cli/commands/project-info.d.ts +8 -0
- package/public/cli/commands/project-info.d.ts.map +1 -0
- package/public/cli/commands/project-info.js +289 -0
- package/public/cli/commands/project-info.js.map +1 -0
- package/public/cli/commands/project-link-repo.d.ts +8 -0
- package/public/cli/commands/project-link-repo.d.ts.map +1 -0
- package/public/cli/commands/project-link-repo.js +95 -0
- package/public/cli/commands/project-link-repo.js.map +1 -0
- package/public/cli/commands/project-list.d.ts +8 -0
- package/public/cli/commands/project-list.d.ts.map +1 -0
- package/public/cli/commands/project-list.js +44 -0
- package/public/cli/commands/project-list.js.map +1 -0
- package/public/cli/commands/queue.d.ts +8 -0
- package/public/cli/commands/queue.d.ts.map +1 -0
- package/public/cli/commands/queue.js +106 -0
- package/public/cli/commands/queue.js.map +1 -0
- package/public/cli/commands/quick-sync.d.ts +8 -0
- package/public/cli/commands/quick-sync.d.ts.map +1 -0
- package/public/cli/commands/quick-sync.js +105 -0
- package/public/cli/commands/quick-sync.js.map +1 -0
- package/public/cli/commands/replit-test-webhook.d.ts +8 -0
- package/public/cli/commands/replit-test-webhook.d.ts.map +1 -0
- package/public/cli/commands/replit-test-webhook.js +123 -0
- package/public/cli/commands/replit-test-webhook.js.map +1 -0
- package/public/cli/commands/report.d.ts +8 -0
- package/public/cli/commands/report.d.ts.map +1 -0
- package/public/cli/commands/report.js +86 -0
- package/public/cli/commands/report.js.map +1 -0
- package/public/cli/commands/search.d.ts +9 -0
- package/public/cli/commands/search.d.ts.map +1 -0
- package/public/cli/commands/search.js +87 -0
- package/public/cli/commands/search.js.map +1 -0
- package/public/cli/commands/setup-cursor-board.d.ts +8 -0
- package/public/cli/commands/setup-cursor-board.d.ts.map +1 -0
- package/public/cli/commands/setup-cursor-board.js +72 -0
- package/public/cli/commands/setup-cursor-board.js.map +1 -0
- package/public/cli/commands/show-issue.d.ts +8 -0
- package/public/cli/commands/show-issue.d.ts.map +1 -0
- package/public/cli/commands/show-issue.js +71 -0
- package/public/cli/commands/show-issue.js.map +1 -0
- package/public/cli/commands/start-work.d.ts +12 -0
- package/public/cli/commands/start-work.d.ts.map +1 -0
- package/public/cli/commands/start-work.js +281 -0
- package/public/cli/commands/start-work.js.map +1 -0
- package/public/cli/commands/start.d.ts +3 -0
- package/public/cli/commands/start.d.ts.map +1 -0
- package/public/cli/commands/start.js +127 -0
- package/public/cli/commands/start.js.map +1 -0
- package/public/cli/commands/status.d.ts +13 -0
- package/public/cli/commands/status.d.ts.map +1 -0
- package/public/cli/commands/status.js +175 -0
- package/public/cli/commands/status.js.map +1 -0
- package/public/cli/commands/sync-acceptance.d.ts +8 -0
- package/public/cli/commands/sync-acceptance.d.ts.map +1 -0
- package/public/cli/commands/sync-acceptance.js +167 -0
- package/public/cli/commands/sync-acceptance.js.map +1 -0
- package/public/cli/commands/sync-fields.d.ts +8 -0
- package/public/cli/commands/sync-fields.d.ts.map +1 -0
- package/public/cli/commands/sync-fields.js +71 -0
- package/public/cli/commands/sync-fields.js.map +1 -0
- package/public/cli/commands/sync-tickets.d.ts +8 -0
- package/public/cli/commands/sync-tickets.d.ts.map +1 -0
- package/public/cli/commands/sync-tickets.js +203 -0
- package/public/cli/commands/sync-tickets.js.map +1 -0
- package/public/cli/commands/test-workflow.d.ts +8 -0
- package/public/cli/commands/test-workflow.d.ts.map +1 -0
- package/public/cli/commands/test-workflow.js +205 -0
- package/public/cli/commands/test-workflow.js.map +1 -0
- package/public/cli/commands/tickets-list.d.ts +8 -0
- package/public/cli/commands/tickets-list.d.ts.map +1 -0
- package/public/cli/commands/tickets-list.js +346 -0
- package/public/cli/commands/tickets-list.js.map +1 -0
- package/public/cli/commands/transition.d.ts +8 -0
- package/public/cli/commands/transition.d.ts.map +1 -0
- package/public/cli/commands/transition.js +112 -0
- package/public/cli/commands/transition.js.map +1 -0
- package/public/cli/commands/validate-branch.d.ts +5 -0
- package/public/cli/commands/validate-branch.d.ts.map +1 -0
- package/public/cli/commands/validate-branch.js +35 -0
- package/public/cli/commands/validate-branch.js.map +1 -0
- package/public/cli/commands/validate-commit.d.ts +5 -0
- package/public/cli/commands/validate-commit.d.ts.map +1 -0
- package/public/cli/commands/validate-commit.js +38 -0
- package/public/cli/commands/validate-commit.js.map +1 -0
- package/public/cli/commands/watch-bugs.d.ts +8 -0
- package/public/cli/commands/watch-bugs.d.ts.map +1 -0
- package/public/cli/commands/watch-bugs.js +61 -0
- package/public/cli/commands/watch-bugs.js.map +1 -0
- package/public/cli/commands/watch.d.ts +12 -0
- package/public/cli/commands/watch.d.ts.map +1 -0
- package/public/cli/commands/watch.js +193 -0
- package/public/cli/commands/watch.js.map +1 -0
- package/public/cli/commands/webhooks-debug.d.ts +3 -0
- package/public/cli/commands/webhooks-debug.d.ts.map +1 -0
- package/public/cli/commands/webhooks-debug.js +209 -0
- package/public/cli/commands/webhooks-debug.js.map +1 -0
- package/public/cli/commands/workflow.d.ts +8 -0
- package/public/cli/commands/workflow.d.ts.map +1 -0
- package/public/cli/commands/workflow.js +67 -0
- package/public/cli/commands/workflow.js.map +1 -0
- package/public/cli/index.d.ts +7 -0
- package/public/cli/index.d.ts.map +1 -0
- package/public/cli/index.js +375 -0
- package/public/cli/index.js.map +1 -0
- package/public/cli/orchestrator.d.ts +10 -0
- package/public/cli/orchestrator.d.ts.map +1 -0
- package/public/cli/orchestrator.js +183 -0
- package/public/cli/orchestrator.js.map +1 -0
- package/public/cli/project-list.d.ts +9 -0
- package/public/cli/project-list.d.ts.map +1 -0
- package/public/cli/project-list.js +37 -0
- package/public/cli/project-list.js.map +1 -0
- package/public/cli/utils/auth-helper.d.ts +28 -0
- package/public/cli/utils/auth-helper.d.ts.map +1 -0
- package/public/cli/utils/auth-helper.js +83 -0
- package/public/cli/utils/auth-helper.js.map +1 -0
- package/public/cli/utils/get-cli-client.d.ts +13 -0
- package/public/cli/utils/get-cli-client.d.ts.map +1 -0
- package/public/cli/utils/get-cli-client.js +81 -0
- package/public/cli/utils/get-cli-client.js.map +1 -0
- package/public/cli/utils/oauth-cli-helper.d.ts +32 -0
- package/public/cli/utils/oauth-cli-helper.d.ts.map +1 -0
- package/public/cli/utils/oauth-cli-helper.js +226 -0
- package/public/cli/utils/oauth-cli-helper.js.map +1 -0
- package/public/cli/utils/session-reader.d.ts +14 -0
- package/public/cli/utils/session-reader.d.ts.map +1 -0
- package/public/cli/utils/session-reader.js +48 -0
- package/public/cli/utils/session-reader.js.map +1 -0
- package/public/cli/utils/table.d.ts +35 -0
- package/public/cli/utils/table.d.ts.map +1 -0
- package/public/cli/utils/table.js +179 -0
- package/public/cli/utils/table.js.map +1 -0
- package/public/client/errors.d.ts +63 -0
- package/public/client/errors.d.ts.map +1 -0
- package/public/client/errors.js +219 -0
- package/public/client/errors.js.map +1 -0
- package/public/client/jira-client.d.ts +153 -0
- package/public/client/jira-client.d.ts.map +1 -0
- package/public/client/jira-client.js +636 -0
- package/public/client/jira-client.js.map +1 -0
- package/public/client/jira-debug.d.ts +27 -0
- package/public/client/jira-debug.d.ts.map +1 -0
- package/public/client/jira-debug.js +63 -0
- package/public/client/jira-debug.js.map +1 -0
- package/public/client/jira-errors.d.ts +26 -0
- package/public/client/jira-errors.d.ts.map +1 -0
- package/public/client/jira-errors.js +46 -0
- package/public/client/jira-errors.js.map +1 -0
- package/public/client/jira-sprint.d.ts +39 -0
- package/public/client/jira-sprint.d.ts.map +1 -0
- package/public/client/jira-sprint.js +187 -0
- package/public/client/jira-sprint.js.map +1 -0
- package/public/client/jira-user.d.ts +43 -0
- package/public/client/jira-user.d.ts.map +1 -0
- package/public/client/jira-user.js +96 -0
- package/public/client/jira-user.js.map +1 -0
- package/public/client/resolve-reporter.d.ts +27 -0
- package/public/client/resolve-reporter.d.ts.map +1 -0
- package/public/client/resolve-reporter.js +54 -0
- package/public/client/resolve-reporter.js.map +1 -0
- package/public/client/ticket-mate-client.d.ts +202 -0
- package/public/client/ticket-mate-client.d.ts.map +1 -0
- package/public/client/ticket-mate-client.js +280 -0
- package/public/client/ticket-mate-client.js.map +1 -0
- package/public/components/keyboard/CommandPalette.d.ts +2 -0
- package/public/components/keyboard/CommandPalette.d.ts.map +1 -0
- package/public/components/keyboard/CommandPalette.js +123 -0
- package/public/components/keyboard/CommandPalette.js.map +1 -0
- package/public/components/keyboard/GlobalShortcuts.d.ts +2 -0
- package/public/components/keyboard/GlobalShortcuts.d.ts.map +1 -0
- package/public/components/keyboard/GlobalShortcuts.js +32 -0
- package/public/components/keyboard/GlobalShortcuts.js.map +1 -0
- package/public/config/auth-mode.d.ts +38 -0
- package/public/config/auth-mode.d.ts.map +1 -0
- package/public/config/auth-mode.js +125 -0
- package/public/config/auth-mode.js.map +1 -0
- package/public/config/config-loader.d.ts +142 -0
- package/public/config/config-loader.d.ts.map +1 -0
- package/public/config/config-loader.js +247 -0
- package/public/config/config-loader.js.map +1 -0
- package/public/config/config-wizard.d.ts +58 -0
- package/public/config/config-wizard.d.ts.map +1 -0
- package/public/config/config-wizard.js +147 -0
- package/public/config/config-wizard.js.map +1 -0
- package/public/config/config.d.ts +79 -0
- package/public/config/config.d.ts.map +1 -0
- package/public/config/config.js +462 -0
- package/public/config/config.js.map +1 -0
- package/public/config/jira-mate-config.types.d.ts +27 -0
- package/public/config/jira-mate-config.types.d.ts.map +1 -0
- package/public/config/jira-mate-config.types.js +7 -0
- package/public/config/jira-mate-config.types.js.map +1 -0
- package/public/config/jira-pat-config.d.ts +44 -0
- package/public/config/jira-pat-config.d.ts.map +1 -0
- package/public/config/jira-pat-config.js +78 -0
- package/public/config/jira-pat-config.js.map +1 -0
- package/public/config/jiraConnection.d.ts +81 -0
- package/public/config/jiraConnection.d.ts.map +1 -0
- package/public/config/jiraConnection.js +207 -0
- package/public/config/jiraConnection.js.map +1 -0
- package/public/config/jiraCredentials.d.ts +20 -0
- package/public/config/jiraCredentials.d.ts.map +1 -0
- package/public/config/jiraCredentials.js +35 -0
- package/public/config/jiraCredentials.js.map +1 -0
- package/public/config/jiraProject.d.ts +32 -0
- package/public/config/jiraProject.d.ts.map +1 -0
- package/public/config/jiraProject.js +72 -0
- package/public/config/jiraProject.js.map +1 -0
- package/public/config/loadJiraMateConfig.d.ts +24 -0
- package/public/config/loadJiraMateConfig.d.ts.map +1 -0
- package/public/config/loadJiraMateConfig.js +100 -0
- package/public/config/loadJiraMateConfig.js.map +1 -0
- package/public/config/pricing.d.ts +65 -0
- package/public/config/pricing.d.ts.map +1 -0
- package/public/config/pricing.js +166 -0
- package/public/config/pricing.js.map +1 -0
- package/public/config/project-mapping.d.ts +36 -0
- package/public/config/project-mapping.d.ts.map +1 -0
- package/public/config/project-mapping.js +136 -0
- package/public/config/project-mapping.js.map +1 -0
- package/public/config/project-store.d.ts +35 -0
- package/public/config/project-store.d.ts.map +1 -0
- package/public/config/project-store.js +99 -0
- package/public/config/project-store.js.map +1 -0
- package/public/config/scanMonorepo.d.ts +23 -0
- package/public/config/scanMonorepo.d.ts.map +1 -0
- package/public/config/scanMonorepo.js +96 -0
- package/public/config/scanMonorepo.js.map +1 -0
- package/public/config/ticket-mate-config.types.d.ts +139 -0
- package/public/config/ticket-mate-config.types.d.ts.map +1 -0
- package/public/config/ticket-mate-config.types.js +8 -0
- package/public/config/ticket-mate-config.types.js.map +1 -0
- package/public/diff/diff-engine.d.ts +40 -0
- package/public/diff/diff-engine.d.ts.map +1 -0
- package/public/diff/diff-engine.js +222 -0
- package/public/diff/diff-engine.js.map +1 -0
- package/public/export/export.d.ts +67 -0
- package/public/export/export.d.ts.map +1 -0
- package/public/export/export.js +208 -0
- package/public/export/export.js.map +1 -0
- package/public/fast-tasks/index.d.ts +3 -0
- package/public/fast-tasks/index.d.ts.map +1 -0
- package/public/fast-tasks/index.js +3 -0
- package/public/fast-tasks/index.js.map +1 -0
- package/public/fast-tasks/storage.d.ts +38 -0
- package/public/fast-tasks/storage.d.ts.map +1 -0
- package/public/fast-tasks/storage.js +126 -0
- package/public/fast-tasks/storage.js.map +1 -0
- package/public/fast-tasks/types.d.ts +47 -0
- package/public/fast-tasks/types.d.ts.map +1 -0
- package/public/fast-tasks/types.js +7 -0
- package/public/fast-tasks/types.js.map +1 -0
- package/public/fields/field-generators.d.ts +33 -0
- package/public/fields/field-generators.d.ts.map +1 -0
- package/public/fields/field-generators.js +162 -0
- package/public/fields/field-generators.js.map +1 -0
- package/public/fields/field-mapper.d.ts +87 -0
- package/public/fields/field-mapper.d.ts.map +1 -0
- package/public/fields/field-mapper.js +231 -0
- package/public/fields/field-mapper.js.map +1 -0
- package/public/fields/field-sync.d.ts +45 -0
- package/public/fields/field-sync.d.ts.map +1 -0
- package/public/fields/field-sync.js +98 -0
- package/public/fields/field-sync.js.map +1 -0
- package/public/fields/index.d.ts +9 -0
- package/public/fields/index.d.ts.map +1 -0
- package/public/fields/index.js +9 -0
- package/public/fields/index.js.map +1 -0
- package/public/fields/llm-generator.d.ts +28 -0
- package/public/fields/llm-generator.d.ts.map +1 -0
- package/public/fields/llm-generator.js +90 -0
- package/public/fields/llm-generator.js.map +1 -0
- package/public/git/branch-generator.d.ts +40 -0
- package/public/git/branch-generator.d.ts.map +1 -0
- package/public/git/branch-generator.js +93 -0
- package/public/git/branch-generator.js.map +1 -0
- package/public/git/branch-validation.d.ts +28 -0
- package/public/git/branch-validation.d.ts.map +1 -0
- package/public/git/branch-validation.js +97 -0
- package/public/git/branch-validation.js.map +1 -0
- package/public/git/commit-validation.d.ts +32 -0
- package/public/git/commit-validation.d.ts.map +1 -0
- package/public/git/commit-validation.js +90 -0
- package/public/git/commit-validation.js.map +1 -0
- package/public/import/import.d.ts +49 -0
- package/public/import/import.d.ts.map +1 -0
- package/public/import/import.js +193 -0
- package/public/import/import.js.map +1 -0
- package/public/index.d.ts +120 -0
- package/public/index.d.ts.map +1 -0
- package/public/index.js +161 -0
- package/public/index.js.map +1 -0
- package/public/instrumentation.d.ts +8 -0
- package/public/instrumentation.d.ts.map +1 -0
- package/public/instrumentation.js +14 -0
- package/public/instrumentation.js.map +1 -0
- package/public/integrations/orchestrator-client.d.ts +69 -0
- package/public/integrations/orchestrator-client.d.ts.map +1 -0
- package/public/integrations/orchestrator-client.js +151 -0
- package/public/integrations/orchestrator-client.js.map +1 -0
- package/public/integrations/orchestrator-work-trigger.d.ts +54 -0
- package/public/integrations/orchestrator-work-trigger.d.ts.map +1 -0
- package/public/integrations/orchestrator-work-trigger.js +184 -0
- package/public/integrations/orchestrator-work-trigger.js.map +1 -0
- package/public/jira/jiraClient.d.ts +19 -0
- package/public/jira/jiraClient.d.ts.map +1 -0
- package/public/jira/jiraClient.js +144 -0
- package/public/jira/jiraClient.js.map +1 -0
- package/public/jira-management/boards.d.ts +80 -0
- package/public/jira-management/boards.d.ts.map +1 -0
- package/public/jira-management/boards.js +306 -0
- package/public/jira-management/boards.js.map +1 -0
- package/public/jira-management/cursor-board.d.ts +37 -0
- package/public/jira-management/cursor-board.d.ts.map +1 -0
- package/public/jira-management/cursor-board.js +222 -0
- package/public/jira-management/cursor-board.js.map +1 -0
- package/public/jira-management/custom-fields.d.ts +32 -0
- package/public/jira-management/custom-fields.d.ts.map +1 -0
- package/public/jira-management/custom-fields.js +94 -0
- package/public/jira-management/custom-fields.js.map +1 -0
- package/public/jira-management/epics.d.ts +25 -0
- package/public/jira-management/epics.d.ts.map +1 -0
- package/public/jira-management/epics.js +98 -0
- package/public/jira-management/epics.js.map +1 -0
- package/public/jira-management/index.d.ts +19 -0
- package/public/jira-management/index.d.ts.map +1 -0
- package/public/jira-management/index.js +19 -0
- package/public/jira-management/index.js.map +1 -0
- package/public/jira-management/labels.d.ts +35 -0
- package/public/jira-management/labels.d.ts.map +1 -0
- package/public/jira-management/labels.js +153 -0
- package/public/jira-management/labels.js.map +1 -0
- package/public/jira-management/project-templates.d.ts +48 -0
- package/public/jira-management/project-templates.d.ts.map +1 -0
- package/public/jira-management/project-templates.js +120 -0
- package/public/jira-management/project-templates.js.map +1 -0
- package/public/jira-management/projects.d.ts +45 -0
- package/public/jira-management/projects.d.ts.map +1 -0
- package/public/jira-management/projects.js +127 -0
- package/public/jira-management/projects.js.map +1 -0
- package/public/jira-management/statuses.d.ts +46 -0
- package/public/jira-management/statuses.d.ts.map +1 -0
- package/public/jira-management/statuses.js +116 -0
- package/public/jira-management/statuses.js.map +1 -0
- package/public/jira-management/templates.d.ts +68 -0
- package/public/jira-management/templates.d.ts.map +1 -0
- package/public/jira-management/templates.js +244 -0
- package/public/jira-management/templates.js.map +1 -0
- package/public/jira-management/workflow-columns.d.ts +43 -0
- package/public/jira-management/workflow-columns.d.ts.map +1 -0
- package/public/jira-management/workflow-columns.js +195 -0
- package/public/jira-management/workflow-columns.js.map +1 -0
- package/public/jira-notes/index.d.ts +3 -0
- package/public/jira-notes/index.d.ts.map +1 -0
- package/public/jira-notes/index.js +5 -0
- package/public/jira-notes/index.js.map +1 -0
- package/public/jira-notes/lib/jiraNotesClient.d.ts +18 -0
- package/public/jira-notes/lib/jiraNotesClient.d.ts.map +1 -0
- package/public/jira-notes/lib/jiraNotesClient.js +61 -0
- package/public/jira-notes/lib/jiraNotesClient.js.map +1 -0
- package/public/jira-notes/lib/jiraNotesTypes.d.ts +28 -0
- package/public/jira-notes/lib/jiraNotesTypes.d.ts.map +1 -0
- package/public/jira-notes/lib/jiraNotesTypes.js +2 -0
- package/public/jira-notes/lib/jiraNotesTypes.js.map +1 -0
- package/public/lib/ai/ai-errors.d.ts +49 -0
- package/public/lib/ai/ai-errors.d.ts.map +1 -0
- package/public/lib/ai/ai-errors.js +115 -0
- package/public/lib/ai/ai-errors.js.map +1 -0
- package/public/lib/ai/llmRouter.d.ts +56 -0
- package/public/lib/ai/llmRouter.d.ts.map +1 -0
- package/public/lib/ai/llmRouter.js +190 -0
- package/public/lib/ai/llmRouter.js.map +1 -0
- package/public/lib/ai/models.d.ts +56 -0
- package/public/lib/ai/models.d.ts.map +1 -0
- package/public/lib/ai/models.js +84 -0
- package/public/lib/ai/models.js.map +1 -0
- package/public/lib/ai/openaiClient.d.ts +31 -0
- package/public/lib/ai/openaiClient.d.ts.map +1 -0
- package/public/lib/ai/openaiClient.js +92 -0
- package/public/lib/ai/openaiClient.js.map +1 -0
- package/public/lib/ai/planLimits.d.ts +43 -0
- package/public/lib/ai/planLimits.d.ts.map +1 -0
- package/public/lib/ai/planLimits.js +154 -0
- package/public/lib/ai/planLimits.js.map +1 -0
- package/public/lib/ai/priceConfig.d.ts +53 -0
- package/public/lib/ai/priceConfig.d.ts.map +1 -0
- package/public/lib/ai/priceConfig.js +111 -0
- package/public/lib/ai/priceConfig.js.map +1 -0
- package/public/lib/ai/provider.d.ts +63 -0
- package/public/lib/ai/provider.d.ts.map +1 -0
- package/public/lib/ai/provider.js +199 -0
- package/public/lib/ai/provider.js.map +1 -0
- package/public/lib/ai/replitClient.d.ts +44 -0
- package/public/lib/ai/replitClient.d.ts.map +1 -0
- package/public/lib/ai/replitClient.js +88 -0
- package/public/lib/ai/replitClient.js.map +1 -0
- package/public/lib/ai/usageLogger.d.ts +30 -0
- package/public/lib/ai/usageLogger.d.ts.map +1 -0
- package/public/lib/ai/usageLogger.js +113 -0
- package/public/lib/ai/usageLogger.js.map +1 -0
- package/public/lib/auth/debug.d.ts +3 -0
- package/public/lib/auth/debug.d.ts.map +1 -0
- package/public/lib/auth/debug.js +12 -0
- package/public/lib/auth/debug.js.map +1 -0
- package/public/lib/auth/index.d.ts +2 -0
- package/public/lib/auth/index.d.ts.map +1 -0
- package/public/lib/auth/index.js +2 -0
- package/public/lib/auth/index.js.map +1 -0
- package/public/lib/auth/options.d.ts +16 -0
- package/public/lib/auth/options.d.ts.map +1 -0
- package/public/lib/auth/options.js +893 -0
- package/public/lib/auth/options.js.map +1 -0
- package/public/lib/auth/requireAuthPage.d.ts +23 -0
- package/public/lib/auth/requireAuthPage.d.ts.map +1 -0
- package/public/lib/auth/requireAuthPage.js +33 -0
- package/public/lib/auth/requireAuthPage.js.map +1 -0
- package/public/lib/auth/superadmin.d.ts +20 -0
- package/public/lib/auth/superadmin.d.ts.map +1 -0
- package/public/lib/auth/superadmin.js +40 -0
- package/public/lib/auth/superadmin.js.map +1 -0
- package/public/lib/auth/token-mutex.d.ts +20 -0
- package/public/lib/auth/token-mutex.d.ts.map +1 -0
- package/public/lib/auth/token-mutex.js +36 -0
- package/public/lib/auth/token-mutex.js.map +1 -0
- package/public/lib/automation/engine.d.ts +12 -0
- package/public/lib/automation/engine.d.ts.map +1 -0
- package/public/lib/automation/engine.js +150 -0
- package/public/lib/automation/engine.js.map +1 -0
- package/public/lib/dashboard-widgets.d.ts +22 -0
- package/public/lib/dashboard-widgets.d.ts.map +1 -0
- package/public/lib/dashboard-widgets.js +99 -0
- package/public/lib/dashboard-widgets.js.map +1 -0
- package/public/lib/data/templates/index.d.ts +16 -0
- package/public/lib/data/templates/index.d.ts.map +1 -0
- package/public/lib/data/templates/index.js +37 -0
- package/public/lib/data/templates/index.js.map +1 -0
- package/public/lib/data/templates/it-service.json +122 -0
- package/public/lib/data/templates/marketing.json +122 -0
- package/public/lib/data/templates/software.json +122 -0
- package/public/lib/docs.d.ts +14 -0
- package/public/lib/docs.d.ts.map +1 -0
- package/public/lib/docs.js +87 -0
- package/public/lib/docs.js.map +1 -0
- package/public/lib/email/client.d.ts +18 -0
- package/public/lib/email/client.d.ts.map +1 -0
- package/public/lib/email/client.js +31 -0
- package/public/lib/email/client.js.map +1 -0
- package/public/lib/email/templates/TeamInviteEmail.d.ts +12 -0
- package/public/lib/email/templates/TeamInviteEmail.d.ts.map +1 -0
- package/public/lib/email/templates/TeamInviteEmail.js +12 -0
- package/public/lib/email/templates/TeamInviteEmail.js.map +1 -0
- package/public/lib/encryption/webhook-encryption.d.ts +11 -0
- package/public/lib/encryption/webhook-encryption.d.ts.map +1 -0
- package/public/lib/encryption/webhook-encryption.js +46 -0
- package/public/lib/encryption/webhook-encryption.js.map +1 -0
- package/public/lib/encryption.d.ts +17 -0
- package/public/lib/encryption.d.ts.map +1 -0
- package/public/lib/encryption.js +65 -0
- package/public/lib/encryption.js.map +1 -0
- package/public/lib/env/baseUrl.d.ts +34 -0
- package/public/lib/env/baseUrl.d.ts.map +1 -0
- package/public/lib/env/baseUrl.js +51 -0
- package/public/lib/env/baseUrl.js.map +1 -0
- package/public/lib/env/externalUrl.d.ts +34 -0
- package/public/lib/env/externalUrl.d.ts.map +1 -0
- package/public/lib/env/externalUrl.js +66 -0
- package/public/lib/env/externalUrl.js.map +1 -0
- package/public/lib/env/server.d.ts +26 -0
- package/public/lib/env/server.d.ts.map +1 -0
- package/public/lib/env/server.js +45 -0
- package/public/lib/env/server.js.map +1 -0
- package/public/lib/env.d.ts +75 -0
- package/public/lib/env.d.ts.map +1 -0
- package/public/lib/env.js +108 -0
- package/public/lib/env.js.map +1 -0
- package/public/lib/events/jira-connect-events.d.ts +47 -0
- package/public/lib/events/jira-connect-events.d.ts.map +1 -0
- package/public/lib/events/jira-connect-events.js +104 -0
- package/public/lib/events/jira-connect-events.js.map +1 -0
- package/public/lib/git/local.d.ts +27 -0
- package/public/lib/git/local.d.ts.map +1 -0
- package/public/lib/git/local.js +100 -0
- package/public/lib/git/local.js.map +1 -0
- package/public/lib/git/remote.d.ts +18 -0
- package/public/lib/git/remote.d.ts.map +1 -0
- package/public/lib/git/remote.js +92 -0
- package/public/lib/git/remote.js.map +1 -0
- package/public/lib/github/user-client.d.ts +8 -0
- package/public/lib/github/user-client.d.ts.map +1 -0
- package/public/lib/github/user-client.js +23 -0
- package/public/lib/github/user-client.js.map +1 -0
- package/public/lib/github-public.d.ts +37 -0
- package/public/lib/github-public.d.ts.map +1 -0
- package/public/lib/github-public.js +120 -0
- package/public/lib/github-public.js.map +1 -0
- package/public/lib/integrations/teams/auth.d.ts +14 -0
- package/public/lib/integrations/teams/auth.d.ts.map +1 -0
- package/public/lib/integrations/teams/auth.js +46 -0
- package/public/lib/integrations/teams/auth.js.map +1 -0
- package/public/lib/integrations/teams/event-router.d.ts +15 -0
- package/public/lib/integrations/teams/event-router.d.ts.map +1 -0
- package/public/lib/integrations/teams/event-router.js +122 -0
- package/public/lib/integrations/teams/event-router.js.map +1 -0
- package/public/lib/integrations/teams/message-builder.d.ts +5 -0
- package/public/lib/integrations/teams/message-builder.d.ts.map +1 -0
- package/public/lib/integrations/teams/message-builder.js +19 -0
- package/public/lib/integrations/teams/message-builder.js.map +1 -0
- package/public/lib/integrations/teams/templates.d.ts +237 -0
- package/public/lib/integrations/teams/templates.d.ts.map +1 -0
- package/public/lib/integrations/teams/templates.js +237 -0
- package/public/lib/integrations/teams/templates.js.map +1 -0
- package/public/lib/integrations/teams/transformer.d.ts +39 -0
- package/public/lib/integrations/teams/transformer.d.ts.map +1 -0
- package/public/lib/integrations/teams/transformer.js +83 -0
- package/public/lib/integrations/teams/transformer.js.map +1 -0
- package/public/lib/integrations.d.ts +28 -0
- package/public/lib/integrations.d.ts.map +1 -0
- package/public/lib/integrations.js +40 -0
- package/public/lib/integrations.js.map +1 -0
- package/public/lib/invite/accept.d.ts +30 -0
- package/public/lib/invite/accept.d.ts.map +1 -0
- package/public/lib/invite/accept.js +196 -0
- package/public/lib/invite/accept.js.map +1 -0
- package/public/lib/invite/service.d.ts +11 -0
- package/public/lib/invite/service.d.ts.map +1 -0
- package/public/lib/invite/service.js +87 -0
- package/public/lib/invite/service.js.map +1 -0
- package/public/lib/invite/types.d.ts +19 -0
- package/public/lib/invite/types.d.ts.map +1 -0
- package/public/lib/invite/types.js +2 -0
- package/public/lib/invite/types.js.map +1 -0
- package/public/lib/jql/jqlBuilder.d.ts +47 -0
- package/public/lib/jql/jqlBuilder.d.ts.map +1 -0
- package/public/lib/jql/jqlBuilder.js +258 -0
- package/public/lib/jql/jqlBuilder.js.map +1 -0
- package/public/lib/jql/useJqlBuilder.d.ts +12 -0
- package/public/lib/jql/useJqlBuilder.d.ts.map +1 -0
- package/public/lib/jql/useJqlBuilder.js +97 -0
- package/public/lib/jql/useJqlBuilder.js.map +1 -0
- package/public/lib/keyboard/ShortcutContext.d.ts +7 -0
- package/public/lib/keyboard/ShortcutContext.d.ts.map +1 -0
- package/public/lib/keyboard/ShortcutContext.js +37 -0
- package/public/lib/keyboard/ShortcutContext.js.map +1 -0
- package/public/lib/keyboard/types.d.ts +22 -0
- package/public/lib/keyboard/types.d.ts.map +1 -0
- package/public/lib/keyboard/types.js +2 -0
- package/public/lib/keyboard/types.js.map +1 -0
- package/public/lib/keyboard/useShortcut.d.ts +12 -0
- package/public/lib/keyboard/useShortcut.d.ts.map +1 -0
- package/public/lib/keyboard/useShortcut.js +55 -0
- package/public/lib/keyboard/useShortcut.js.map +1 -0
- package/public/lib/markdown/fallback-handler.d.ts +25 -0
- package/public/lib/markdown/fallback-handler.d.ts.map +1 -0
- package/public/lib/markdown/fallback-handler.js +104 -0
- package/public/lib/markdown/fallback-handler.js.map +1 -0
- package/public/lib/notifications-cli.d.ts +16 -0
- package/public/lib/notifications-cli.d.ts.map +1 -0
- package/public/lib/notifications-cli.js +36 -0
- package/public/lib/notifications-cli.js.map +1 -0
- package/public/lib/notifications.d.ts +77 -0
- package/public/lib/notifications.d.ts.map +1 -0
- package/public/lib/notifications.js +161 -0
- package/public/lib/notifications.js.map +1 -0
- package/public/lib/ollama.d.ts +94 -0
- package/public/lib/ollama.d.ts.map +1 -0
- package/public/lib/ollama.js +249 -0
- package/public/lib/ollama.js.map +1 -0
- package/public/lib/orcMcp/client.d.ts +55 -0
- package/public/lib/orcMcp/client.d.ts.map +1 -0
- package/public/lib/orcMcp/client.js +134 -0
- package/public/lib/orcMcp/client.js.map +1 -0
- package/public/lib/orcMcp/execution.d.ts +24 -0
- package/public/lib/orcMcp/execution.d.ts.map +1 -0
- package/public/lib/orcMcp/execution.js +19 -0
- package/public/lib/orcMcp/execution.js.map +1 -0
- package/public/lib/password.d.ts +12 -0
- package/public/lib/password.d.ts.map +1 -0
- package/public/lib/password.js +18 -0
- package/public/lib/password.js.map +1 -0
- package/public/lib/platform-event-bus.d.ts +15 -0
- package/public/lib/platform-event-bus.d.ts.map +1 -0
- package/public/lib/platform-event-bus.js +46 -0
- package/public/lib/platform-event-bus.js.map +1 -0
- package/public/lib/prisma.d.ts +23 -0
- package/public/lib/prisma.d.ts.map +1 -0
- package/public/lib/prisma.js +135 -0
- package/public/lib/prisma.js.map +1 -0
- package/public/lib/projects.d.ts +38 -0
- package/public/lib/projects.d.ts.map +1 -0
- package/public/lib/projects.js +91 -0
- package/public/lib/projects.js.map +1 -0
- package/public/lib/soft-failure.d.ts +38 -0
- package/public/lib/soft-failure.d.ts.map +1 -0
- package/public/lib/soft-failure.js +46 -0
- package/public/lib/soft-failure.js.map +1 -0
- package/public/lib/ticket-mate/dataLoader.d.ts +52 -0
- package/public/lib/ticket-mate/dataLoader.d.ts.map +1 -0
- package/public/lib/ticket-mate/dataLoader.js +128 -0
- package/public/lib/ticket-mate/dataLoader.js.map +1 -0
- package/public/lib/ticket-mate/filtering.d.ts +33 -0
- package/public/lib/ticket-mate/filtering.d.ts.map +1 -0
- package/public/lib/ticket-mate/filtering.js +190 -0
- package/public/lib/ticket-mate/filtering.js.map +1 -0
- package/public/lib/ticket-mate/logging.d.ts +42 -0
- package/public/lib/ticket-mate/logging.d.ts.map +1 -0
- package/public/lib/ticket-mate/logging.js +83 -0
- package/public/lib/ticket-mate/logging.js.map +1 -0
- package/public/lib/ticket-mate/repoRoot.d.ts +15 -0
- package/public/lib/ticket-mate/repoRoot.d.ts.map +1 -0
- package/public/lib/ticket-mate/repoRoot.js +34 -0
- package/public/lib/ticket-mate/repoRoot.js.map +1 -0
- package/public/lib/webhook-events-store.d.ts +23 -0
- package/public/lib/webhook-events-store.d.ts.map +1 -0
- package/public/lib/webhook-events-store.js +39 -0
- package/public/lib/webhook-events-store.js.map +1 -0
- package/public/lib/webhook-notifications.d.ts +32 -0
- package/public/lib/webhook-notifications.d.ts.map +1 -0
- package/public/lib/webhook-notifications.js +107 -0
- package/public/lib/webhook-notifications.js.map +1 -0
- package/public/lib/webhooks/delivery.d.ts +11 -0
- package/public/lib/webhooks/delivery.d.ts.map +1 -0
- package/public/lib/webhooks/delivery.js +54 -0
- package/public/lib/webhooks/delivery.js.map +1 -0
- package/public/lib/workflow-compiler.d.ts +6 -0
- package/public/lib/workflow-compiler.d.ts.map +1 -0
- package/public/lib/workflow-compiler.js +110 -0
- package/public/lib/workflow-compiler.js.map +1 -0
- package/public/observability/metrics.d.ts +52 -0
- package/public/observability/metrics.d.ts.map +1 -0
- package/public/observability/metrics.js +177 -0
- package/public/observability/metrics.js.map +1 -0
- package/public/pr/pr-builder.d.ts +16 -0
- package/public/pr/pr-builder.d.ts.map +1 -0
- package/public/pr/pr-builder.js +117 -0
- package/public/pr/pr-builder.js.map +1 -0
- package/public/progress/task-manager.d.ts +53 -0
- package/public/progress/task-manager.d.ts.map +1 -0
- package/public/progress/task-manager.js +204 -0
- package/public/progress/task-manager.js.map +1 -0
- package/public/progress/template.d.ts +38 -0
- package/public/progress/template.d.ts.map +1 -0
- package/public/progress/template.js +232 -0
- package/public/progress/template.js.map +1 -0
- package/public/prompts/prompt-builder.d.ts +11 -0
- package/public/prompts/prompt-builder.d.ts.map +1 -0
- package/public/prompts/prompt-builder.js +161 -0
- package/public/prompts/prompt-builder.js.map +1 -0
- package/public/research/types.d.ts +158 -0
- package/public/research/types.d.ts.map +1 -0
- package/public/research/types.js +5 -0
- package/public/research/types.js.map +1 -0
- package/public/scripts/seed-epics.d.ts +2 -0
- package/public/scripts/seed-epics.d.ts.map +1 -0
- package/public/scripts/seed-epics.js +88 -0
- package/public/scripts/seed-epics.js.map +1 -0
- package/public/search/search-engine.d.ts +75 -0
- package/public/search/search-engine.d.ts.map +1 -0
- package/public/search/search-engine.js +176 -0
- package/public/search/search-engine.js.map +1 -0
- package/public/server/auth/account-provisioning.d.ts +16 -0
- package/public/server/auth/account-provisioning.d.ts.map +1 -0
- package/public/server/auth/account-provisioning.js +109 -0
- package/public/server/auth/account-provisioning.js.map +1 -0
- package/public/server/auth/atlassian-user-mapping.d.ts +36 -0
- package/public/server/auth/atlassian-user-mapping.d.ts.map +1 -0
- package/public/server/auth/atlassian-user-mapping.js +97 -0
- package/public/server/auth/atlassian-user-mapping.js.map +1 -0
- package/public/server/auth.d.ts +14 -0
- package/public/server/auth.d.ts.map +1 -0
- package/public/server/auth.js +35 -0
- package/public/server/auth.js.map +1 -0
- package/public/server/jira/client.d.ts +17 -0
- package/public/server/jira/client.d.ts.map +1 -0
- package/public/server/jira/client.js +55 -0
- package/public/server/jira/client.js.map +1 -0
- package/public/server/jira/cloudInfo.d.ts +30 -0
- package/public/server/jira/cloudInfo.d.ts.map +1 -0
- package/public/server/jira/cloudInfo.js +152 -0
- package/public/server/jira/cloudInfo.js.map +1 -0
- package/public/server/jira/ensure-user.d.ts +20 -0
- package/public/server/jira/ensure-user.d.ts.map +1 -0
- package/public/server/jira/ensure-user.js +59 -0
- package/public/server/jira/ensure-user.js.map +1 -0
- package/public/server/jira/errors.d.ts +18 -0
- package/public/server/jira/errors.d.ts.map +1 -0
- package/public/server/jira/errors.js +30 -0
- package/public/server/jira/errors.js.map +1 -0
- package/public/server/jira/fieldResolver.d.ts +76 -0
- package/public/server/jira/fieldResolver.d.ts.map +1 -0
- package/public/server/jira/fieldResolver.js +320 -0
- package/public/server/jira/fieldResolver.js.map +1 -0
- package/public/server/jira/jiraClient.d.ts +84 -0
- package/public/server/jira/jiraClient.d.ts.map +1 -0
- package/public/server/jira/jiraClient.js +330 -0
- package/public/server/jira/jiraClient.js.map +1 -0
- package/public/server/jira/tokens.d.ts +37 -0
- package/public/server/jira/tokens.d.ts.map +1 -0
- package/public/server/jira/tokens.js +161 -0
- package/public/server/jira/tokens.js.map +1 -0
- package/public/server/jira/unified-client.d.ts +48 -0
- package/public/server/jira/unified-client.d.ts.map +1 -0
- package/public/server/jira/unified-client.js +227 -0
- package/public/server/jira/unified-client.js.map +1 -0
- package/public/server/mcp/execution.d.ts +22 -0
- package/public/server/mcp/execution.d.ts.map +1 -0
- package/public/server/mcp/execution.js +15 -0
- package/public/server/mcp/execution.js.map +1 -0
- package/public/server/openai/client.d.ts +23 -0
- package/public/server/openai/client.d.ts.map +1 -0
- package/public/server/openai/client.js +43 -0
- package/public/server/openai/client.js.map +1 -0
- package/public/server/startup/orcMcpHealthCheck.d.ts +8 -0
- package/public/server/startup/orcMcpHealthCheck.d.ts.map +1 -0
- package/public/server/startup/orcMcpHealthCheck.js +24 -0
- package/public/server/startup/orcMcpHealthCheck.js.map +1 -0
- package/public/services/config.service.d.ts +2 -0
- package/public/services/config.service.d.ts.map +1 -0
- package/public/services/config.service.js +3 -0
- package/public/services/config.service.js.map +1 -0
- package/public/services/index.d.ts +20 -0
- package/public/services/index.d.ts.map +1 -0
- package/public/services/index.js +21 -0
- package/public/services/index.js.map +1 -0
- package/public/services/issues.service.d.ts +2 -0
- package/public/services/issues.service.d.ts.map +1 -0
- package/public/services/issues.service.js +3 -0
- package/public/services/issues.service.js.map +1 -0
- package/public/services/jiraBootstrap.d.ts +18 -0
- package/public/services/jiraBootstrap.d.ts.map +1 -0
- package/public/services/jiraBootstrap.js +288 -0
- package/public/services/jiraBootstrap.js.map +1 -0
- package/public/services/jiraProjectCheck.d.ts +60 -0
- package/public/services/jiraProjectCheck.d.ts.map +1 -0
- package/public/services/jiraProjectCheck.js +264 -0
- package/public/services/jiraProjectCheck.js.map +1 -0
- package/public/services/prompts.service.d.ts +2 -0
- package/public/services/prompts.service.d.ts.map +1 -0
- package/public/services/prompts.service.js +3 -0
- package/public/services/prompts.service.js.map +1 -0
- package/public/services/sync.service.d.ts +2 -0
- package/public/services/sync.service.d.ts.map +1 -0
- package/public/services/sync.service.js +3 -0
- package/public/services/sync.service.js.map +1 -0
- package/public/shared/migrations/bugsMigrations.d.ts +46 -0
- package/public/shared/migrations/bugsMigrations.d.ts.map +1 -0
- package/public/shared/migrations/bugsMigrations.js +252 -0
- package/public/shared/migrations/bugsMigrations.js.map +1 -0
- package/public/shared/migrations/ticketMateMigrations.d.ts +53 -0
- package/public/shared/migrations/ticketMateMigrations.d.ts.map +1 -0
- package/public/shared/migrations/ticketMateMigrations.js +223 -0
- package/public/shared/migrations/ticketMateMigrations.js.map +1 -0
- package/public/shared/ticketMateHelpers.d.ts +46 -0
- package/public/shared/ticketMateHelpers.d.ts.map +1 -0
- package/public/shared/ticketMateHelpers.js +197 -0
- package/public/shared/ticketMateHelpers.js.map +1 -0
- package/public/shared/ticketMateProjectLinks.d.ts +27 -0
- package/public/shared/ticketMateProjectLinks.d.ts.map +1 -0
- package/public/shared/ticketMateProjectLinks.js +64 -0
- package/public/shared/ticketMateProjectLinks.js.map +1 -0
- package/public/shared/ticketMateTypes.d.ts +155 -0
- package/public/shared/ticketMateTypes.d.ts.map +1 -0
- package/public/shared/ticketMateTypes.js +56 -0
- package/public/shared/ticketMateTypes.js.map +1 -0
- package/public/sync/authoritative-sync.d.ts +111 -0
- package/public/sync/authoritative-sync.d.ts.map +1 -0
- package/public/sync/authoritative-sync.js +459 -0
- package/public/sync/authoritative-sync.js.map +1 -0
- package/public/sync/ensure-jira-before-md.d.ts +34 -0
- package/public/sync/ensure-jira-before-md.d.ts.map +1 -0
- package/public/sync/ensure-jira-before-md.js +40 -0
- package/public/sync/ensure-jira-before-md.js.map +1 -0
- package/public/sync/epic-sync.d.ts +23 -0
- package/public/sync/epic-sync.d.ts.map +1 -0
- package/public/sync/epic-sync.js +77 -0
- package/public/sync/epic-sync.js.map +1 -0
- package/public/sync/index.d.ts +11 -0
- package/public/sync/index.d.ts.map +1 -0
- package/public/sync/index.js +92 -0
- package/public/sync/index.js.map +1 -0
- package/public/sync/reports.d.ts +9 -0
- package/public/sync/reports.d.ts.map +1 -0
- package/public/sync/reports.js +55 -0
- package/public/sync/reports.js.map +1 -0
- package/public/sync/status.d.ts +31 -0
- package/public/sync/status.d.ts.map +1 -0
- package/public/sync/status.js +100 -0
- package/public/sync/status.js.map +1 -0
- package/public/sync/sync-engine.d.ts +38 -0
- package/public/sync/sync-engine.d.ts.map +1 -0
- package/public/sync/sync-engine.js +166 -0
- package/public/sync/sync-engine.js.map +1 -0
- package/public/sync/ticket-sync.d.ts +25 -0
- package/public/sync/ticket-sync.d.ts.map +1 -0
- package/public/sync/ticket-sync.js +148 -0
- package/public/sync/ticket-sync.js.map +1 -0
- package/public/templates/template-engine.d.ts +86 -0
- package/public/templates/template-engine.d.ts.map +1 -0
- package/public/templates/template-engine.js +214 -0
- package/public/templates/template-engine.js.map +1 -0
- package/public/ticket-mate/bugs/loader.d.ts +30 -0
- package/public/ticket-mate/bugs/loader.d.ts.map +1 -0
- package/public/ticket-mate/bugs/loader.js +242 -0
- package/public/ticket-mate/bugs/loader.js.map +1 -0
- package/public/ticket-mate/bugs/paths.d.ts +12 -0
- package/public/ticket-mate/bugs/paths.d.ts.map +1 -0
- package/public/ticket-mate/bugs/paths.js +17 -0
- package/public/ticket-mate/bugs/paths.js.map +1 -0
- package/public/ticket-mate/bugs/types.d.ts +99 -0
- package/public/ticket-mate/bugs/types.d.ts.map +1 -0
- package/public/ticket-mate/bugs/types.js +9 -0
- package/public/ticket-mate/bugs/types.js.map +1 -0
- package/public/ticket-mate/errors.d.ts +57 -0
- package/public/ticket-mate/errors.d.ts.map +1 -0
- package/public/ticket-mate/errors.js +98 -0
- package/public/ticket-mate/errors.js.map +1 -0
- package/public/ticket-mate/fsConfig.d.ts +34 -0
- package/public/ticket-mate/fsConfig.d.ts.map +1 -0
- package/public/ticket-mate/fsConfig.js +68 -0
- package/public/ticket-mate/fsConfig.js.map +1 -0
- package/public/ticket-mate/fsHelpers.d.ts +34 -0
- package/public/ticket-mate/fsHelpers.d.ts.map +1 -0
- package/public/ticket-mate/fsHelpers.js +199 -0
- package/public/ticket-mate/fsHelpers.js.map +1 -0
- package/public/ticket-mate/fsLayout.d.ts +115 -0
- package/public/ticket-mate/fsLayout.d.ts.map +1 -0
- package/public/ticket-mate/fsLayout.js +282 -0
- package/public/ticket-mate/fsLayout.js.map +1 -0
- package/public/ticket-mate/fsTickets.d.ts +62 -0
- package/public/ticket-mate/fsTickets.d.ts.map +1 -0
- package/public/ticket-mate/fsTickets.js +303 -0
- package/public/ticket-mate/fsTickets.js.map +1 -0
- package/public/ticket-mate/replitWebhook.d.ts +13 -0
- package/public/ticket-mate/replitWebhook.d.ts.map +1 -0
- package/public/ticket-mate/replitWebhook.js +102 -0
- package/public/ticket-mate/replitWebhook.js.map +1 -0
- package/public/ticket-mate/types.d.ts +89 -0
- package/public/ticket-mate/types.d.ts.map +1 -0
- package/public/ticket-mate/types.js +11 -0
- package/public/ticket-mate/types.js.map +1 -0
- package/public/ticket-mate/webhookSigning.d.ts +12 -0
- package/public/ticket-mate/webhookSigning.d.ts.map +1 -0
- package/public/ticket-mate/webhookSigning.js +21 -0
- package/public/ticket-mate/webhookSigning.js.map +1 -0
- package/public/types/common.d.ts +59 -0
- package/public/types/common.d.ts.map +1 -0
- package/public/types/common.js +28 -0
- package/public/types/common.js.map +1 -0
- package/public/types/workflow.d.ts +35 -0
- package/public/types/workflow.d.ts.map +1 -0
- package/public/types/workflow.js +2 -0
- package/public/types/workflow.js.map +1 -0
- package/public/types.d.ts +311 -0
- package/public/types.d.ts.map +1 -0
- package/public/types.js +5 -0
- package/public/types.js.map +1 -0
- package/public/utils/adf.d.ts +45 -0
- package/public/utils/adf.d.ts.map +1 -0
- package/public/utils/adf.js +197 -0
- package/public/utils/adf.js.map +1 -0
- package/public/utils/bug-reporter.d.ts +39 -0
- package/public/utils/bug-reporter.d.ts.map +1 -0
- package/public/utils/bug-reporter.js +189 -0
- package/public/utils/bug-reporter.js.map +1 -0
- package/public/utils/filesystem.d.ts +32 -0
- package/public/utils/filesystem.d.ts.map +1 -0
- package/public/utils/filesystem.js +78 -0
- package/public/utils/filesystem.js.map +1 -0
- package/public/utils/formatCurrency.d.ts +11 -0
- package/public/utils/formatCurrency.d.ts.map +1 -0
- package/public/utils/formatCurrency.js +27 -0
- package/public/utils/formatCurrency.js.map +1 -0
- package/public/utils/instruction-writer.d.ts +35 -0
- package/public/utils/instruction-writer.d.ts.map +1 -0
- package/public/utils/instruction-writer.js +84 -0
- package/public/utils/instruction-writer.js.map +1 -0
- package/public/utils/jira-keys.d.ts +26 -0
- package/public/utils/jira-keys.d.ts.map +1 -0
- package/public/utils/jira-keys.js +46 -0
- package/public/utils/jira-keys.js.map +1 -0
- package/public/utils/jiraAvatar.d.ts +20 -0
- package/public/utils/jiraAvatar.d.ts.map +1 -0
- package/public/utils/jiraAvatar.js +78 -0
- package/public/utils/jiraAvatar.js.map +1 -0
- package/public/utils/logger.d.ts +33 -0
- package/public/utils/logger.d.ts.map +1 -0
- package/public/utils/logger.js +73 -0
- package/public/utils/logger.js.map +1 -0
- package/public/utils/path-migration.d.ts +7 -0
- package/public/utils/path-migration.d.ts.map +1 -0
- package/public/utils/path-migration.js +57 -0
- package/public/utils/path-migration.js.map +1 -0
- package/public/utils/progress-reporter.d.ts +39 -0
- package/public/utils/progress-reporter.d.ts.map +1 -0
- package/public/utils/progress-reporter.js +66 -0
- package/public/utils/progress-reporter.js.map +1 -0
- package/public/utils/project-code-generator.d.ts +88 -0
- package/public/utils/project-code-generator.d.ts.map +1 -0
- package/public/utils/project-code-generator.js +212 -0
- package/public/utils/project-code-generator.js.map +1 -0
- package/public/utils/retry.d.ts +20 -0
- package/public/utils/retry.d.ts.map +1 -0
- package/public/utils/retry.js +82 -0
- package/public/utils/retry.js.map +1 -0
- package/public/utils/slugify.d.ts +5 -0
- package/public/utils/slugify.d.ts.map +1 -0
- package/public/utils/slugify.js +13 -0
- package/public/utils/slugify.js.map +1 -0
- package/public/utils/string.d.ts +8 -0
- package/public/utils/string.d.ts.map +1 -0
- package/public/utils/string.js +19 -0
- package/public/utils/string.js.map +1 -0
- package/public/utils/ticket-template.d.ts +28 -0
- package/public/utils/ticket-template.d.ts.map +1 -0
- package/public/utils/ticket-template.js +55 -0
- package/public/utils/ticket-template.js.map +1 -0
- package/public/utils/validation.d.ts +33 -0
- package/public/utils/validation.d.ts.map +1 -0
- package/public/utils/validation.js +86 -0
- package/public/utils/validation.js.map +1 -0
- package/public/validation/brief-validator.d.ts +55 -0
- package/public/validation/brief-validator.d.ts.map +1 -0
- package/public/validation/brief-validator.js +168 -0
- package/public/validation/brief-validator.js.map +1 -0
- package/public/validation/ticket-validator.d.ts +47 -0
- package/public/validation/ticket-validator.d.ts.map +1 -0
- package/public/validation/ticket-validator.js +155 -0
- package/public/validation/ticket-validator.js.map +1 -0
- package/public/webhooks/assignment-handler.d.ts +33 -0
- package/public/webhooks/assignment-handler.d.ts.map +1 -0
- package/public/webhooks/assignment-handler.js +187 -0
- package/public/webhooks/assignment-handler.js.map +1 -0
- package/public/webhooks/in-progress-handler.d.ts +36 -0
- package/public/webhooks/in-progress-handler.d.ts.map +1 -0
- package/public/webhooks/in-progress-handler.js +170 -0
- package/public/webhooks/in-progress-handler.js.map +1 -0
- package/public/webhooks/orchestrator-notifier.d.ts +42 -0
- package/public/webhooks/orchestrator-notifier.d.ts.map +1 -0
- package/public/webhooks/orchestrator-notifier.js +84 -0
- package/public/webhooks/orchestrator-notifier.js.map +1 -0
- package/public/webhooks/ticket-created-handler.d.ts +33 -0
- package/public/webhooks/ticket-created-handler.d.ts.map +1 -0
- package/public/webhooks/ticket-created-handler.js +150 -0
- package/public/webhooks/ticket-created-handler.js.map +1 -0
- package/public/webhooks/webhook-handler.d.ts +81 -0
- package/public/webhooks/webhook-handler.d.ts.map +1 -0
- package/public/webhooks/webhook-handler.js +186 -0
- package/public/webhooks/webhook-handler.js.map +1 -0
- package/public/webhooks/webhook-security.d.ts +58 -0
- package/public/webhooks/webhook-security.d.ts.map +1 -0
- package/public/webhooks/webhook-security.js +258 -0
- package/public/webhooks/webhook-security.js.map +1 -0
- package/public/workers/teams-delivery-worker.d.ts +91 -0
- package/public/workers/teams-delivery-worker.d.ts.map +1 -0
- package/public/workers/teams-delivery-worker.js +328 -0
- package/public/workers/teams-delivery-worker.js.map +1 -0
- package/scripts/cli-wrapper.mjs +28 -0
package/README.md
ADDED
|
@@ -0,0 +1,1214 @@
|
|
|
1
|
+
# TICKET MATE
|
|
2
|
+
|
|
3
|
+
### QUICK NOTES
|
|
4
|
+
|
|
5
|
+
1. Test tickets with `ticket-mate sync --ticket NOVA-123`
|
|
6
|
+
|
|
7
|
+
## CURSOR DO NOT UPDATE THIS FILE
|
|
8
|
+
|
|
9
|
+
**Jira integration and AI execution layer** - Bridges Jira tickets and AI-assisted development workflows.
|
|
10
|
+
|
|
11
|
+
### Jira AppSettings
|
|
12
|
+
|
|
13
|
+
https://developer.atlassian.com/console/myapps/
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
`@ameshkin/ticket-mate` is a production-ready npm package that provides comprehensive Jira integration capabilities. It includes a CLI interface, REST API server, Next.js dashboard, and automation features for managing Jira tickets, syncing progress files, generating AI prompts, building PR descriptions, and automating ticket creation from JSON files.
|
|
18
|
+
|
|
19
|
+
## Database
|
|
20
|
+
|
|
21
|
+
https://console.prisma.io/cmixzg6nk03vo2sflg2pzq64u/cmixzgvue03sd1efplmdnimkj/cmixzgvue03se1efpm49q18z0/studio#table=users&schema=public&view=table
|
|
22
|
+
|
|
23
|
+
## Error Logs
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
vercel logs ticket-mate.app
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Vercel Environment Variables
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
# list env
|
|
36
|
+
vercel env ls
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
# pull all production vars into a test file .test-prod.env
|
|
40
|
+
vercel env pull .test-prod.env --environment=production
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
# Or if you want all environments in one file:
|
|
44
|
+
vercel env pull .env.vercel.production --environment=production
|
|
45
|
+
|
|
46
|
+
"code": "OLLAMA_MODEL_MISSING",
|
|
47
|
+
"message": "Model \"qwen2.5-coder:latest\n\" is not installed on http://72.61.71.227:11434. Using fallback \"qwen2.5-coder:latest\".",
|
|
48
|
+
"requested": "qwen2.5-coder:latest\n",
|
|
49
|
+
"fallbackUsed": "qwen2.5-coder:latest"
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
vercel env add GITHUB_CLIENT_ID development
|
|
53
|
+
# paste the value when prompted
|
|
54
|
+
|
|
55
|
+
vercel env add GITHUB_CLIENT_SECRET development
|
|
56
|
+
|
|
57
|
+
vercel env add NEXTAUTH_URL development
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
#remove if exists undefined
|
|
61
|
+
#https://jira-mate.vercel.app
|
|
62
|
+
vercel env ls production
|
|
63
|
+
vercel env rm NEXTAUTH_URL production --yes
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
vercel env add OLLAMA_DEMO_MODEL production
|
|
67
|
+
vercel env add OLLAMA_DEMO_MODEL development
|
|
68
|
+
vercel env add OLLAMA_DEMO_MODEL preview
|
|
69
|
+
|
|
70
|
+
vercel env add OLLAMA_CODE_MODEL development
|
|
71
|
+
|
|
72
|
+
OLLAMA_CODE_MODEL
|
|
73
|
+
|
|
74
|
+
qwen2.5-coder:7b
|
|
75
|
+
|
|
76
|
+
vercel env add NEXTAUTH_URL production
|
|
77
|
+
=https://ticket-mate.app
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
#https://ticket-mate.app
|
|
81
|
+
|
|
82
|
+
OLLAMA_CODE_MODEL=
|
|
83
|
+
OLLAMA_DEMO_MODEL=
|
|
84
|
+
|
|
85
|
+
# AI Runtime Configuration
|
|
86
|
+
AI_RUNTIME=auto
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
# VERCEL LOGS
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
vercel logs ticket-mate.app
|
|
93
|
+
|
|
94
|
+
RESEND_API_KEY=re_36qa2oNt_HyHhz8N9AXjtmnCkcDUGa3Wh
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
vercel env add DATABASE_URL production
|
|
99
|
+
#postgres://3bc59484969a8f4dd008a6300b7c79daa72fc00ec9db1d3545013fe8e48afd0c:sk_IJnKo655RyEjZhfoDiGel@db.prisma.io:5432/postgres?sslmode=require
|
|
100
|
+
#
|
|
101
|
+
#
|
|
102
|
+
#ATLASSIAN_WEBHOOK_PATH="/api/webhooks/jira"
|
|
103
|
+
#ATLASSIAN_PROJECT_KEY=JM
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
hostinger ollama
|
|
107
|
+
root
|
|
108
|
+
|
|
109
|
+
Brootgroot17+
|
|
110
|
+
|
|
111
|
+
export OLLAMA_BASE_URL="http://72.61.71.227:8080"
|
|
112
|
+
export OLLAMA_DEMO_MODEL="qwen2.5-coder:latest"
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
vercel env add GITHUB_CLIENT_ID development
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
cp /Users/amirmeshkin/_code/_work/proveoautomation/CHAT/Web/frontend/src/pages/admin/profile/ProfilePage.tsx
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
OLLAMA_BASE_URL
|
|
126
|
+
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### Ollama Server
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
ssh root@72.61.71.227
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
ssh -i /Users/amirmeshkin/.ssh/hostinger_ollama root@72.61.71.227
|
|
136
|
+
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
ollama pull qwen2.5-coder:14b
|
|
140
|
+
|
|
141
|
+
ollama run qwen2.5-coder:14b
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
ollama pull deepseek-coder
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### ORC MCP
|
|
152
|
+
|
|
153
|
+
LOCAL
|
|
154
|
+
|
|
155
|
+
```
|
|
156
|
+
ORC_MCP_BASE_URL=http://localhost:7777
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
ORC_MCP_BASE_URL=http://localhost:7777
|
|
160
|
+
ORC_MCP_CLIENT_ID=ticket-mate-internal
|
|
161
|
+
ORC_MCP_CLIENT_SECRET=sfagsdgfhmfghjrty
|
|
162
|
+
ORC_MCP_TIMEOUT_MS=30000
|
|
163
|
+
ORC_MCP_DRY_RUN_DEFAULT=true
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
cp -R \
|
|
167
|
+
"/Users/amirmeshkin/\_code/my-npm-packages/orchestrator-core" \
|
|
168
|
+
"/Users/amirmeshkin/\_code/my-npm-packages/orchestrator/\_packages/nevaroAI/"
|
|
169
|
+
|
|
170
|
+
```bash
|
|
171
|
+
|
|
172
|
+
# copy CHAT from component examples to CHAT
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
cp -R \
|
|
176
|
+
"/Users/amirmeshkin/_code/_work/proveoautomation/component-examples/CHAT/" \
|
|
177
|
+
"/Users/amirmeshkin/_code/_work/proveoautomation/CHAT"
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
# copy CHAT from CHAT back to COMPONENT
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
cp -R \
|
|
187
|
+
"/Users/amirmeshkin/_code/_work/proveoautomation/CHAT/" \
|
|
188
|
+
"/Users/amirmeshkin/_code/_work/proveoautomation/component-examples/CHAT"
|
|
189
|
+
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
### Demo Account and Page
|
|
193
|
+
|
|
194
|
+
https://www.ticket-mate.app/demo
|
|
195
|
+
|
|
196
|
+
demo@gmail.com
|
|
197
|
+
welcome123
|
|
198
|
+
|
|
199
|
+
## Ticket Mate v1.0 Roadmap
|
|
200
|
+
|
|
201
|
+
Ticket Mate v1.0 unifies four pillars into a single coherent flow:
|
|
202
|
+
|
|
203
|
+
- ✅ **Ticket Mate CLI + `.ticket-mate`** - Command-line tools that sync Jira tickets to local markdown files
|
|
204
|
+
- ✅ **Next.js Admin UI + Webhook** - Web interface for viewing and managing tickets, bugs, and AI-assisted planning
|
|
205
|
+
- ⏳ **Replit Extension** - In-editor tool tab for working with tickets and bugs directly in Replit
|
|
206
|
+
- ✅ **Orchestrator-derived `bugs.json`** - Unified bug tracking that can be promoted to Jira Bug issues
|
|
207
|
+
|
|
208
|
+
All four pillars share the same data structures and read from the same `.ticket-mate` directory, ensuring consistency across tools.
|
|
209
|
+
|
|
210
|
+
**Progress:** 75% Complete (3 of 4 pillars fully implemented)
|
|
211
|
+
|
|
212
|
+
**Completed Features:**
|
|
213
|
+
|
|
214
|
+
- ✅ CLI with 20+ commands (`tm`, `ticket-mate`)
|
|
215
|
+
- ✅ `.ticket-mate` file-based integration
|
|
216
|
+
- ✅ Next.js Admin UI with full dashboard
|
|
217
|
+
- ✅ OAuth authentication (GitHub, Google, Atlassian, Apple, Credentials)
|
|
218
|
+
- ✅ Jira REST API client
|
|
219
|
+
- ✅ Ticket syncing to markdown files
|
|
220
|
+
- ✅ AI prompt generation
|
|
221
|
+
- ✅ Board management with AI columns
|
|
222
|
+
- ✅ Bugs.json integration
|
|
223
|
+
- ✅ Webhook handling
|
|
224
|
+
- ✅ Git integration (branch/commit validation)
|
|
225
|
+
|
|
226
|
+
**In Progress:**
|
|
227
|
+
|
|
228
|
+
- ⏳ Replit Extension (planned - architecture defined, implementation pending)
|
|
229
|
+
|
|
230
|
+
**Recent Completions (2025-01-12):**
|
|
231
|
+
|
|
232
|
+
- ✅ Local email/password authentication
|
|
233
|
+
- ✅ OAuth security enhancements (CSRF protection, token encryption)
|
|
234
|
+
- ✅ Authentication-aware data fetching
|
|
235
|
+
- ✅ Production deployment (ticket-mate.app)
|
|
236
|
+
- ✅ Branding update (Ticket Mate → Ticket Mate)
|
|
237
|
+
- ✅ Ticket organization restructured (`.orchestrator/tickets/`)
|
|
238
|
+
|
|
239
|
+
**Tracking:**
|
|
240
|
+
|
|
241
|
+
- Progress: [`.orchestrator/tickets/`](.orchestrator/tickets/)
|
|
242
|
+
- Epics: [`.orchestrator/tickets/epics/`](.orchestrator/tickets/epics/) (2 files)
|
|
243
|
+
- Stories: [`.orchestrator/tickets/stories/`](.orchestrator/tickets/stories/) (1 file)
|
|
244
|
+
- Bugs: [`.orchestrator/tickets/bugs/`](.orchestrator/tickets/bugs/) (5 files)
|
|
245
|
+
- Tasks: [`.orchestrator/tickets/tasks/`](.orchestrator/tickets/tasks/) (9 files)
|
|
246
|
+
- Master Progress: [`.orchestrator/master-progress.md`](.orchestrator/master-progress.md)
|
|
247
|
+
|
|
248
|
+
**Documentation:**
|
|
249
|
+
|
|
250
|
+
- **[User Guide](docs/user-guide.md)** - Comprehensive guide for features and usage.
|
|
251
|
+
- **[API Documentation](docs/api.md)** - Reference for API endpoints.
|
|
252
|
+
|
|
253
|
+
## Features
|
|
254
|
+
|
|
255
|
+
### Core Features
|
|
256
|
+
|
|
257
|
+
- ✅ **[Jira Integration](docs-dev/JIRA-AUTH-ISSUE.md)** - Full REST API client for Jira operations (OAuth + PAT support)
|
|
258
|
+
- ✅ **[Ticket Syncing](docs-dev/COMMANDS.md)** - Sync Jira tickets to markdown files for documentation
|
|
259
|
+
- ✅ **[AI Prompts](docs-dev/AI-WORKFLOW.md)** - Generate AI-consumable prompts from ticket briefs
|
|
260
|
+
- ✅ **[PR Builder](docs-dev/COMMANDS.md)** - Generate structured PR descriptions from tickets
|
|
261
|
+
- ✅ **[CLI Interface](docs-dev/COMMANDS.md)** - 20+ command-line tools (`tm`, `ticket-mate`)
|
|
262
|
+
- ✅ **[REST API Server](docs-dev/API-REPORT.md)** - Next.js API routes with authentication
|
|
263
|
+
- ✅ **[Next.js Dashboard](docs-dev/NEW-PAGES-REFERENCE.md)** - Full web UI for projects, boards, tickets, and admin
|
|
264
|
+
- ✅ **Board Management** - Create boards, add columns (including "AI: In Progress")
|
|
265
|
+
- ✅ **[Automation](docs-dev/AUTOMATION-GUIDE.md)** - Process JSON files (bugs-wip.json) and create Jira tickets
|
|
266
|
+
- ✅ **Git Integration** - Branch and commit message validation
|
|
267
|
+
- ✅ **[Webhook Handling](docs-dev/WEBHOOK-TESTING.md)** - Process Jira webhook events with security validation
|
|
268
|
+
- ✅ **Acceptance Criteria** - Extract and sync from test files
|
|
269
|
+
- ✅ **[File-based Integration](docs-dev/AGENT-HANDLER-INTEGRATION.md)** - Repository-based ticket management for AI agents
|
|
270
|
+
- ✅ **[Authentication](docs-dev/AUTH-MODES.md)** - Local email/password + OAuth (GitHub, Google, Atlassian, Apple)
|
|
271
|
+
- ✅ **Token Management** - AI token usage tracking and limits
|
|
272
|
+
|
|
273
|
+
### Phase 5 Features (Completed)
|
|
274
|
+
|
|
275
|
+
- ✅ **Authority** - End-to-end provenance for audits.
|
|
276
|
+
- ✅ **Reliability** - Quality gates and health scorecards.
|
|
277
|
+
- ✅ **Contracts** - Team agreement management.
|
|
278
|
+
- ✅ **Automation** - Workflow builder (Triggers/Actions).
|
|
279
|
+
- ✅ **Events** - Real-time observability feed.
|
|
280
|
+
- ✅ **Usage** - Credit consumption tracking.
|
|
281
|
+
|
|
282
|
+
### Advanced Features
|
|
283
|
+
|
|
284
|
+
- ✅ **[AI Execution Integration](docs-dev/AI-WORKFLOW.md)** - Execute tickets with AI agents
|
|
285
|
+
- ✅ **Queue Processing** - Process queues of AI-ready tickets
|
|
286
|
+
- ✅ **Batch Operations** - Bulk sync and status updates
|
|
287
|
+
- ✅ **Observability** - Metrics and logging
|
|
288
|
+
- ✅ **Template System** - Customizable markdown templates
|
|
289
|
+
- ✅ **[Multi-tenant Support](docs-dev/ACCOUNT-USER-MODEL.md)** - Account-based organization with seat management
|
|
290
|
+
- ✅ **Subscription Management** - Plan tiers, billing, and usage limits
|
|
291
|
+
|
|
292
|
+
## Feature Spotlight
|
|
293
|
+
|
|
294
|
+
### 🤖 AI-Driven Workflow
|
|
295
|
+
|
|
296
|
+
Ticket Mate bridges the gap between Jira and AI agents. It converts tickets into context-rich prompts that agents can understand.
|
|
297
|
+
|
|
298
|
+
```typescript
|
|
299
|
+
import { buildTicketPrompts } from "@ameshkin/ticket-mate";
|
|
300
|
+
|
|
301
|
+
// Generate a comprehensive prompt for an AI agent
|
|
302
|
+
const prompts = await buildTicketPrompts({
|
|
303
|
+
ticketKey: "NOVA-123",
|
|
304
|
+
// Includes ticket details, acceptance criteria, and plan
|
|
305
|
+
markdownPath: ".orchestrator/tickets/tasks/NOVA-123.md",
|
|
306
|
+
repoRoot: process.cwd(),
|
|
307
|
+
});
|
|
308
|
+
|
|
309
|
+
console.log(prompts.system); // "You are an expert engineer..."
|
|
310
|
+
console.log(prompts.task); // "Implement feature X following these criteria..."
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
### ⚡ Automated Bug Filing
|
|
314
|
+
|
|
315
|
+
Turn JSON reports or linter output into Jira tickets automatically, preventing issue drift.
|
|
316
|
+
|
|
317
|
+
```bash
|
|
318
|
+
# Process a bugs.json file and create/update Jira tickets
|
|
319
|
+
ticket-mate process-bugs --file ./reports/security-audit.json --sync-status
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
```typescript
|
|
323
|
+
// Programmatic automation
|
|
324
|
+
import { processJsonInstructionsDirect } from "@ameshkin/ticket-mate/api/automation";
|
|
325
|
+
|
|
326
|
+
await processJsonInstructionsDirect(
|
|
327
|
+
{
|
|
328
|
+
bugs: [{ title: "Memory Leak in Auth", severity: "critical" }],
|
|
329
|
+
},
|
|
330
|
+
{ projectKey: "PROJ" }
|
|
331
|
+
);
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
### 🔐 Secure Multi-Mode Auth
|
|
335
|
+
|
|
336
|
+
Switch seamlessly between Personal Access Tokens for CLI usage and OAuth for SaaS deployment.
|
|
337
|
+
|
|
338
|
+
```env
|
|
339
|
+
# Mode 1: Personal Access Token (CLI / Local)
|
|
340
|
+
ATLASSIAN_AUTH_MODE=PAT
|
|
341
|
+
ATLASSIAN_EMAIL=me@example.com
|
|
342
|
+
ATLASSIAN_API_KEY=my-token
|
|
343
|
+
|
|
344
|
+
# Mode 2: OAuth 2.0 (SaaS / Multi-user)
|
|
345
|
+
ATLASSIAN_AUTH_MODE=OAUTH
|
|
346
|
+
ATLASSIAN_CLIENT_ID=...
|
|
347
|
+
ATLASSIAN_CLIENT_SECRET=...
|
|
348
|
+
```
|
|
349
|
+
|
|
350
|
+
For a deep dive into all features and architecture, see the **[Developer Documentation Index](docs-dev/README.md)**.
|
|
351
|
+
|
|
352
|
+
## Installation
|
|
353
|
+
|
|
354
|
+
### From GitHub Packages (Private)
|
|
355
|
+
|
|
356
|
+
First, configure npm to use GitHub Packages for the `@ameshkin` scope:
|
|
357
|
+
|
|
358
|
+
```bash
|
|
359
|
+
# Create or edit .npmrc in your project root
|
|
360
|
+
echo "@ameshkin:registry=https://npm.pkg.github.com" >> .npmrc
|
|
361
|
+
echo "//npm.pkg.github.com/:_authToken=YOUR_GITHUB_TOKEN" >> .npmrc
|
|
362
|
+
```
|
|
363
|
+
|
|
364
|
+
Then install:
|
|
365
|
+
|
|
366
|
+
```bash
|
|
367
|
+
npm install @ameshkin/ticket-mate
|
|
368
|
+
```
|
|
369
|
+
|
|
370
|
+
**Note**: You need a GitHub Personal Access Token (PAT) with `read:packages` permission to install private packages.
|
|
371
|
+
|
|
372
|
+
## Configuration
|
|
373
|
+
|
|
374
|
+
### Environment Variables
|
|
375
|
+
|
|
376
|
+
Create a `.env` file or set environment variables:
|
|
377
|
+
|
|
378
|
+
#### Required Jira Configuration
|
|
379
|
+
|
|
380
|
+
```env
|
|
381
|
+
ATLASSIAN_BASE_URL=https://pamcms.atlassian.net
|
|
382
|
+
ATLASSIAN_EMAIL=your-email@example.com
|
|
383
|
+
ATLASSIAN_API_KEY=your-api-token
|
|
384
|
+
```
|
|
385
|
+
|
|
386
|
+
**Optional:**
|
|
387
|
+
|
|
388
|
+
```env
|
|
389
|
+
ATLASSIAN_PROJECT_KEY=YOUR_PROJECT # Optional: CLI prefers --project flag or config file
|
|
390
|
+
```
|
|
391
|
+
|
|
392
|
+
- Generate your Jira API token at: https://id.atlassian.com/manage-profile/security/api-tokens
|
|
393
|
+
- **Important**: Your Jira user must have "Create Issues" permission in the project
|
|
394
|
+
- **[Setup Jira Keys Guide](docs/SETUP-JIRA-KEYS.md)** - Complete guide for getting and configuring all Jira keys
|
|
395
|
+
- See [Permissions & Access Guide](docs/PERMISSIONS-AND-ACCESS.md) for complete setup
|
|
396
|
+
- See [Quick Permission Fix](docs/QUICK-PERMISSION-FIX.md) if you get permission errors
|
|
397
|
+
- See [Jira Setup Guide](docs/jira/JIRA-SETUP.md) for detailed instructions
|
|
398
|
+
- See [ATLASSIAN_SCOPES.md](ATLASSIAN_SCOPES.md) for required OAuth scopes
|
|
399
|
+
|
|
400
|
+
#### Authentication Modes
|
|
401
|
+
|
|
402
|
+
ticket-mate supports two authentication modes:
|
|
403
|
+
|
|
404
|
+
1. **Personal Access Token (PAT)** - Default mode
|
|
405
|
+
|
|
406
|
+
- Uses `ATLASSIAN_EMAIL` + `ATLASSIAN_API_KEY` for Basic Auth
|
|
407
|
+
- Simple setup, good for local dev and single-user scenarios
|
|
408
|
+
- Optional: `ATLASSIAN_CLOUD_ID` for Cloud API calls (not required)
|
|
409
|
+
- Set `ATLASSIAN_AUTH_MODE=PAT` explicitly, or leave unset (defaults to PAT)
|
|
410
|
+
|
|
411
|
+
2. **OAuth 2.0** - For production/SaaS
|
|
412
|
+
- Uses `ATLASSIAN_CLIENT_ID` + `ATLASSIAN_CLIENT_SECRET` in env
|
|
413
|
+
- Per-user tokens and `cloudId` stored in database (not in env)
|
|
414
|
+
- Multi-user support, per-user authentication
|
|
415
|
+
- Set `ATLASSIAN_AUTH_MODE=OAUTH` to enable
|
|
416
|
+
- **Atlassian Developer Console**: [View/Manage OAuth Apps](https://developer.atlassian.com/console/myapps/)
|
|
417
|
+
- **Required Callback URLs** (register both in Atlassian Developer Console, one per line):
|
|
418
|
+
- `http://localhost:4000/api/auth/callback/atlassian` (local dev)
|
|
419
|
+
- `https://ticket-mate.app/api/auth/callback/atlassian` (production)
|
|
420
|
+
- **Environment Variables**:
|
|
421
|
+
- Local: `NEXTAUTH_URL="http://localhost:4000"`, `ATLASSIAN_CLIENT_ID`, `ATLASSIAN_CLIENT_SECRET`
|
|
422
|
+
- Production: `NEXTAUTH_URL="https://ticket-mate.app"`, `ATLASSIAN_CLIENT_ID`, `ATLASSIAN_CLIENT_SECRET`
|
|
423
|
+
- See [OAuth Setup Guide](docs/OAUTH-SETUP.md) for details
|
|
424
|
+
- See [OAuth Callback URL Setup](docs/OAUTH-CALLBACK-URL-SETUP.md) for callback URL configuration
|
|
425
|
+
|
|
426
|
+
**Important Notes:**
|
|
427
|
+
|
|
428
|
+
- `ATLASSIAN_CLOUD_ID` is **not required** in env. In PAT mode it's optional for Cloud API. In OAuth mode it's stored per-connection in the database.
|
|
429
|
+
- `ATLASSIAN_PROJECT_KEY` is **optional**. CLI prefers `--project` flag or config file. Use env only as fallback.
|
|
430
|
+
- If you previously used `ATLASSIAN_API_TOKEN`, rename it to `ATLASSIAN_API_KEY`. The old variable is deprecated.
|
|
431
|
+
|
|
432
|
+
#### Cloud API Configuration (for Scoped API Tokens)
|
|
433
|
+
|
|
434
|
+
If you're using Atlassian scoped API tokens and projects/keys don't appear, enable cloud API mode:
|
|
435
|
+
|
|
436
|
+
```env
|
|
437
|
+
ATLASSIAN_USE_CLOUD_API=true
|
|
438
|
+
ATLASSIAN_CLOUD_ID=your-cloud-id
|
|
439
|
+
```
|
|
440
|
+
|
|
441
|
+
**How to find your Cloud ID:**
|
|
442
|
+
|
|
443
|
+
1. Go to https://admin.atlassian.com
|
|
444
|
+
2. Select your site
|
|
445
|
+
3. Copy the Cloud ID from the URL or site settings
|
|
446
|
+
|
|
447
|
+
**When to use Cloud API:**
|
|
448
|
+
|
|
449
|
+
- Using scoped API tokens (long tokens starting with `ATATT3x...`)
|
|
450
|
+
- Projects are not appearing with standard configuration
|
|
451
|
+
- Getting 403/404 errors when listing projects
|
|
452
|
+
|
|
453
|
+
**Cloud API URL format:**
|
|
454
|
+
|
|
455
|
+
- Standard: `https://pamcms.atlassian.net/rest/api/3`
|
|
456
|
+
- Cloud API: `https://api.atlassian.com/ex/jira/{cloudId}/rest/api/3`
|
|
457
|
+
|
|
458
|
+
Alternatively, add to your `jira.json`:
|
|
459
|
+
|
|
460
|
+
```json
|
|
461
|
+
{
|
|
462
|
+
"baseUrl": "https://pamcms.atlassian.net",
|
|
463
|
+
"email": "your-email@example.com",
|
|
464
|
+
"apiToken": "your-token",
|
|
465
|
+
"cloudId": "your-cloud-id",
|
|
466
|
+
"useCloudApi": true
|
|
467
|
+
}
|
|
468
|
+
```
|
|
469
|
+
|
|
470
|
+
#### API Authentication (for Next.js API routes)
|
|
471
|
+
|
|
472
|
+
```env
|
|
473
|
+
TICKET_MATE_API_KEY=your-secure-api-key
|
|
474
|
+
NEXT_PUBLIC_TICKET_MATE_API_KEY=your-secure-api-key
|
|
475
|
+
```
|
|
476
|
+
|
|
477
|
+
#### Dashboard Configuration (for Next.js dashboard)
|
|
478
|
+
|
|
479
|
+
```env
|
|
480
|
+
NEXT_PUBLIC_ATLASSIAN_BASE_URL=https://pamcms.atlassian.net
|
|
481
|
+
```
|
|
482
|
+
|
|
483
|
+
**Important**: Never commit `.env` files - they contain sensitive credentials.
|
|
484
|
+
|
|
485
|
+
## Quick Start
|
|
486
|
+
|
|
487
|
+
### CLI Usage
|
|
488
|
+
|
|
489
|
+
```bash
|
|
490
|
+
# Test configuration
|
|
491
|
+
ticket-mate config:test
|
|
492
|
+
|
|
493
|
+
# Sync a single ticket
|
|
494
|
+
ticket-mate sync --ticket NOVA-123
|
|
495
|
+
|
|
496
|
+
# Sync all tickets in project
|
|
497
|
+
ticket-mate sync --all
|
|
498
|
+
|
|
499
|
+
# Generate AI prompt from ticket
|
|
500
|
+
ticket-mate prompt NOVA-123
|
|
501
|
+
|
|
502
|
+
# List projects
|
|
503
|
+
ticket-mate ls-projects
|
|
504
|
+
|
|
505
|
+
# List issues
|
|
506
|
+
ticket-mate ls-issues --status "In Progress"
|
|
507
|
+
|
|
508
|
+
# Create a board with AI column
|
|
509
|
+
ticket-mate create-board --name "Cursor Board" --ai-column
|
|
510
|
+
|
|
511
|
+
# Process bugs from JSON file
|
|
512
|
+
ticket-mate process-bugs --file public/bugs.json
|
|
513
|
+
|
|
514
|
+
# Show project information
|
|
515
|
+
ticket-mate project-info
|
|
516
|
+
ticket-mate project-info --health # Include health check
|
|
517
|
+
|
|
518
|
+
# Run health check
|
|
519
|
+
ticket-mate health-check
|
|
520
|
+
ticket-mate health-check --fix # Attempt to fix issues
|
|
521
|
+
|
|
522
|
+
# Quick sync with progress indicators
|
|
523
|
+
ticket-mate quick-sync --ticket NOVA-123
|
|
524
|
+
ticket-mate quick-sync --all
|
|
525
|
+
|
|
526
|
+
# Export tickets to various formats
|
|
527
|
+
ticket-mate export --format json --output tickets.json
|
|
528
|
+
ticket-mate export --format csv --status "In Progress"
|
|
529
|
+
ticket-mate export --format markdown --label "AI-READY"
|
|
530
|
+
|
|
531
|
+
# Batch operations
|
|
532
|
+
ticket-mate batch --keys "NOVA-123,NOVA-124" --action transition --status "Done"
|
|
533
|
+
ticket-mate batch --file tickets.txt --action comment --comment "Reviewed"
|
|
534
|
+
ticket-mate batch --keys "NOVA-123" --action update --labels "reviewed,tested"
|
|
535
|
+
|
|
536
|
+
# Export and batch operations
|
|
537
|
+
ticket-mate export --format json --output tickets.json
|
|
538
|
+
ticket-mate batch --keys "NOVA-123,NOVA-124" --action transition --status "Done"
|
|
539
|
+
```
|
|
540
|
+
|
|
541
|
+
### Programmatic Usage
|
|
542
|
+
|
|
543
|
+
```typescript
|
|
544
|
+
import {
|
|
545
|
+
getJiraConfig,
|
|
546
|
+
syncSingleTicket,
|
|
547
|
+
buildTicketPrompts,
|
|
548
|
+
listProjects,
|
|
549
|
+
} from "@ameshkin/ticket-mate";
|
|
550
|
+
|
|
551
|
+
// Get configuration
|
|
552
|
+
const config = getJiraConfig();
|
|
553
|
+
|
|
554
|
+
// Sync a ticket
|
|
555
|
+
const result = await syncSingleTicket("NOVA-123", config);
|
|
556
|
+
|
|
557
|
+
// Generate AI prompts
|
|
558
|
+
const prompts = await buildTicketPrompts({
|
|
559
|
+
ticketKey: "NOVA-123",
|
|
560
|
+
markdownPath: ".orchestrator/tickets/epics/NOVA-10/NOVA-123.md",
|
|
561
|
+
repoRoot: process.cwd(),
|
|
562
|
+
});
|
|
563
|
+
|
|
564
|
+
// List projects
|
|
565
|
+
const projects = await listProjects();
|
|
566
|
+
```
|
|
567
|
+
|
|
568
|
+
### Next.js Dashboard
|
|
569
|
+
|
|
570
|
+
The package includes a Next.js dashboard. Start it with:
|
|
571
|
+
|
|
572
|
+
```bash
|
|
573
|
+
npm run dev
|
|
574
|
+
```
|
|
575
|
+
|
|
576
|
+
Then visit `http://localhost:4000` to see the dashboard with projects and boards.
|
|
577
|
+
|
|
578
|
+
## Usage
|
|
579
|
+
|
|
580
|
+
### CLI Commands
|
|
581
|
+
|
|
582
|
+
#### Sync Commands
|
|
583
|
+
|
|
584
|
+
```bash
|
|
585
|
+
# Sync specific ticket
|
|
586
|
+
ticket-mate sync --ticket NOVA-123
|
|
587
|
+
|
|
588
|
+
# Sync epic and all tickets
|
|
589
|
+
ticket-mate sync --epic NOVA-10
|
|
590
|
+
|
|
591
|
+
# Sync all tickets
|
|
592
|
+
ticket-mate sync --all
|
|
593
|
+
|
|
594
|
+
# Custom output directory
|
|
595
|
+
ticket-mate sync --all --output .custom-progress
|
|
596
|
+
```
|
|
597
|
+
|
|
598
|
+
#### Issue Management
|
|
599
|
+
|
|
600
|
+
```bash
|
|
601
|
+
# List projects
|
|
602
|
+
ticket-mate ls-projects
|
|
603
|
+
|
|
604
|
+
# List issues with filters
|
|
605
|
+
ticket-mate ls-issues --project NOVA --status "In Progress"
|
|
606
|
+
ticket-mate ls-issues --assignee me --label AI-READY
|
|
607
|
+
ticket-mate ls-issues --jql "project = NOVA AND status = 'In Progress'"
|
|
608
|
+
|
|
609
|
+
# Show issue details
|
|
610
|
+
ticket-mate show-issue NOVA-123
|
|
611
|
+
```
|
|
612
|
+
|
|
613
|
+
#### Board Management
|
|
614
|
+
|
|
615
|
+
```bash
|
|
616
|
+
# Create board with AI column
|
|
617
|
+
ticket-mate create-board --name "Cursor Board" --ai-column
|
|
618
|
+
|
|
619
|
+
# List boards for project
|
|
620
|
+
ticket-mate create-board --list
|
|
621
|
+
|
|
622
|
+
# Create board without AI column
|
|
623
|
+
ticket-mate create-board --name "Team Board" --no-ai-column
|
|
624
|
+
```
|
|
625
|
+
|
|
626
|
+
#### Automation
|
|
627
|
+
|
|
628
|
+
```bash
|
|
629
|
+
# Process bugs from JSON file
|
|
630
|
+
ticket-mate process-bugs --file public/bugs.json
|
|
631
|
+
|
|
632
|
+
# Watch for changes and auto-process
|
|
633
|
+
ticket-mate watch-bugs --file public/bugs.json --auto-process
|
|
634
|
+
|
|
635
|
+
# Sync bug statuses from Jira
|
|
636
|
+
ticket-mate process-bugs --file public/bugs.json --sync-status
|
|
637
|
+
```
|
|
638
|
+
|
|
639
|
+
#### AI & Prompts
|
|
640
|
+
|
|
641
|
+
```bash
|
|
642
|
+
# Generate AI prompt from a ticket
|
|
643
|
+
ticket-mate prompt NOVA-123
|
|
644
|
+
|
|
645
|
+
# Save prompt to file
|
|
646
|
+
ticket-mate prompt NOVA-123 --output nova-123.md
|
|
647
|
+
|
|
648
|
+
# Execute AI-assisted work
|
|
649
|
+
ticket-mate execute NOVA-123
|
|
650
|
+
|
|
651
|
+
# Process queue of AI-ready tickets
|
|
652
|
+
ticket-mate queue
|
|
653
|
+
```
|
|
654
|
+
|
|
655
|
+
#### Git Validation
|
|
656
|
+
|
|
657
|
+
```bash
|
|
658
|
+
# Validate branch name
|
|
659
|
+
ticket-mate validate-branch feature/NOVA-123-checkout
|
|
660
|
+
|
|
661
|
+
# Validate commit message
|
|
662
|
+
ticket-mate validate-commit "NOVA-123: Add checkout functionality"
|
|
663
|
+
```
|
|
664
|
+
|
|
665
|
+
#### Other Commands
|
|
666
|
+
|
|
667
|
+
```bash
|
|
668
|
+
# Check sync status
|
|
669
|
+
ticket-mate status
|
|
670
|
+
|
|
671
|
+
# Test configuration
|
|
672
|
+
ticket-mate config:test
|
|
673
|
+
|
|
674
|
+
# Create task folder
|
|
675
|
+
ticket-mate create-task-folder NOVA-123
|
|
676
|
+
|
|
677
|
+
# Sync acceptance criteria
|
|
678
|
+
ticket-mate sync-acceptance NOVA-123
|
|
679
|
+
|
|
680
|
+
# Interactive menu
|
|
681
|
+
ticket-mate interactive
|
|
682
|
+
```
|
|
683
|
+
|
|
684
|
+
### File-based Integration: `.ticket-mate`
|
|
685
|
+
|
|
686
|
+
Ticket Mate provides a file-based integration system that allows AI agents (Cursor, Replit, etc.) to work with Jira tickets directly in your repository. This integration uses a `.ticket-mate` directory structure that is committed to Git and can be used by any AI agent.
|
|
687
|
+
|
|
688
|
+
### Quick Start
|
|
689
|
+
|
|
690
|
+
```bash
|
|
691
|
+
# Initialize repository for Ticket Mate integration
|
|
692
|
+
tm init-repo --jira-base-url https://pamcms.atlassian.net --jira-project-key YOUR_PROJECT
|
|
693
|
+
|
|
694
|
+
# Sync tickets from Jira
|
|
695
|
+
tm sync-tickets
|
|
696
|
+
|
|
697
|
+
# Show status of local tickets
|
|
698
|
+
tm status
|
|
699
|
+
|
|
700
|
+
# Emit instructions for AI agents
|
|
701
|
+
tm emit-agent-instructions --agent cursor
|
|
702
|
+
```
|
|
703
|
+
|
|
704
|
+
### Directory Structure
|
|
705
|
+
|
|
706
|
+
The `.ticket-mate` directory structure:
|
|
707
|
+
|
|
708
|
+
```
|
|
709
|
+
.ticket-mate/
|
|
710
|
+
config.json # Repository configuration
|
|
711
|
+
tickets/
|
|
712
|
+
<ATLASSIAN_KEY>/
|
|
713
|
+
ticket.meta.json # Ticket metadata (status, summary, etc.)
|
|
714
|
+
plan.md # High-level plan and objectives
|
|
715
|
+
tasks.md # Detailed task checklist
|
|
716
|
+
progress.log.md # Append-only progress log
|
|
717
|
+
notes.md # Free-form notes (user-editable)
|
|
718
|
+
```
|
|
719
|
+
|
|
720
|
+
### Configuration
|
|
721
|
+
|
|
722
|
+
The `.ticket-mate/config.json` file contains:
|
|
723
|
+
|
|
724
|
+
```json
|
|
725
|
+
{
|
|
726
|
+
"jiraBaseUrl": "https://pamcms.atlassian.net",
|
|
727
|
+
"jiraProjectKey": "YOUR_PROJECT",
|
|
728
|
+
"jiraCloudId": "optional-cloud-id",
|
|
729
|
+
"defaultBranch": "main",
|
|
730
|
+
"integrations": {
|
|
731
|
+
"cursor": {
|
|
732
|
+
"enabled": true
|
|
733
|
+
},
|
|
734
|
+
"replit": {
|
|
735
|
+
"enabled": true,
|
|
736
|
+
"webhookUrl": "https://your-replit-webhook-url"
|
|
737
|
+
}
|
|
738
|
+
}
|
|
739
|
+
}
|
|
740
|
+
```
|
|
741
|
+
|
|
742
|
+
### CLI Commands
|
|
743
|
+
|
|
744
|
+
#### `tm init-repo`
|
|
745
|
+
|
|
746
|
+
Initialize a repository for Ticket Mate integration:
|
|
747
|
+
|
|
748
|
+
```bash
|
|
749
|
+
tm init-repo --jira-base-url https://pamcms.atlassian.net --jira-project-key YOUR_PROJECT
|
|
750
|
+
tm init-repo --enable-replit --replit-webhook-url https://your-webhook-url
|
|
751
|
+
```
|
|
752
|
+
|
|
753
|
+
Options:
|
|
754
|
+
|
|
755
|
+
- `--jira-base-url <url>` - Jira base URL
|
|
756
|
+
- `--jira-project-key <key>` - Jira project key
|
|
757
|
+
- `--jira-cloud-id <id>` - Optional cloud ID
|
|
758
|
+
- `--default-branch <branch>` - Default Git branch (default: main)
|
|
759
|
+
- `--enable-replit` - Enable Replit integration
|
|
760
|
+
- `--replit-webhook-url <url>` - Replit webhook URL
|
|
761
|
+
- `--enable-cursor` - Enable Cursor integration
|
|
762
|
+
|
|
763
|
+
#### `tm sync-tickets`
|
|
764
|
+
|
|
765
|
+
Sync Jira issues into `.ticket-mate/tickets/`:
|
|
766
|
+
|
|
767
|
+
```bash
|
|
768
|
+
# Sync all tickets with default statuses
|
|
769
|
+
tm sync-tickets
|
|
770
|
+
|
|
771
|
+
# Sync specific statuses
|
|
772
|
+
tm sync-tickets --status "Ready for Dev" --status "In Progress"
|
|
773
|
+
|
|
774
|
+
# Limit number of tickets
|
|
775
|
+
tm sync-tickets --limit 10
|
|
776
|
+
|
|
777
|
+
# Dry run (show what would be created)
|
|
778
|
+
tm sync-tickets --dry-run
|
|
779
|
+
|
|
780
|
+
# Skip webhook notification
|
|
781
|
+
tm sync-tickets --no-webhook
|
|
782
|
+
```
|
|
783
|
+
|
|
784
|
+
#### `tm status`
|
|
785
|
+
|
|
786
|
+
Show status of tickets in `.ticket-mate/tickets/`:
|
|
787
|
+
|
|
788
|
+
```bash
|
|
789
|
+
# Show all tickets
|
|
790
|
+
tm status
|
|
791
|
+
|
|
792
|
+
# Filter by status
|
|
793
|
+
tm status --filter-status "In Progress"
|
|
794
|
+
|
|
795
|
+
# JSON output
|
|
796
|
+
tm status --json
|
|
797
|
+
```
|
|
798
|
+
|
|
799
|
+
#### `tm emit-agent-instructions`
|
|
800
|
+
|
|
801
|
+
Emit instructions for AI agents:
|
|
802
|
+
|
|
803
|
+
```bash
|
|
804
|
+
# Generic instructions
|
|
805
|
+
tm emit-agent-instructions
|
|
806
|
+
|
|
807
|
+
# Cursor-specific
|
|
808
|
+
tm emit-agent-instructions --agent cursor
|
|
809
|
+
|
|
810
|
+
# Replit-specific
|
|
811
|
+
jm emit-agent-instructions --agent replit
|
|
812
|
+
```
|
|
813
|
+
|
|
814
|
+
### Replit Integration
|
|
815
|
+
|
|
816
|
+
Ticket Mate can notify Replit automations when tickets are synced:
|
|
817
|
+
|
|
818
|
+
1. **Create a Replit Automation** with a Custom Webhook Trigger
|
|
819
|
+
2. **Copy the webhook URL** provided by Replit
|
|
820
|
+
3. **Configure in `.ticket-mate/config.json`**:
|
|
821
|
+
|
|
822
|
+
```json
|
|
823
|
+
{
|
|
824
|
+
"integrations": {
|
|
825
|
+
"replit": {
|
|
826
|
+
"enabled": true,
|
|
827
|
+
"webhookUrl": "https://your-replit-webhook-url"
|
|
828
|
+
}
|
|
829
|
+
}
|
|
830
|
+
}
|
|
831
|
+
```
|
|
832
|
+
|
|
833
|
+
4. **Run `tm sync-tickets`** - Ticket Mate will POST a JSON payload to the webhook:
|
|
834
|
+
|
|
835
|
+
```json
|
|
836
|
+
{
|
|
837
|
+
"event": "tickets_synced",
|
|
838
|
+
"projectKey": "YOUR_PROJECT",
|
|
839
|
+
"tickets": [
|
|
840
|
+
{
|
|
841
|
+
"key": "PROJ-123",
|
|
842
|
+
"status": "In Progress",
|
|
843
|
+
"summary": "Implement feature X",
|
|
844
|
+
"url": "https://pamcms.atlassian.net/browse/PROJ-123"
|
|
845
|
+
}
|
|
846
|
+
],
|
|
847
|
+
"syncedAt": "2025-12-09T22:35:00.000Z"
|
|
848
|
+
}
|
|
849
|
+
```
|
|
850
|
+
|
|
851
|
+
### Directory Structure (Multi-Project)
|
|
852
|
+
|
|
853
|
+
The `.ticket-mate` directory uses a project-based structure:
|
|
854
|
+
|
|
855
|
+
```
|
|
856
|
+
.ticket-mate/
|
|
857
|
+
config.json # Global configuration
|
|
858
|
+
projects/
|
|
859
|
+
<projectKey>/
|
|
860
|
+
project.meta.json # Project metadata
|
|
861
|
+
tickets/
|
|
862
|
+
<ticketKey>/
|
|
863
|
+
ticket.meta.json # Ticket metadata
|
|
864
|
+
plan.md # High-level plan
|
|
865
|
+
tasks.md # Task checklist
|
|
866
|
+
progress.log.md # Progress log
|
|
867
|
+
notes.md # Free-form notes
|
|
868
|
+
```
|
|
869
|
+
|
|
870
|
+
Each project has its own folder, and tickets are organized within their project. This allows multiple Jira projects to coexist in the same repository.
|
|
871
|
+
|
|
872
|
+
### Using with AI Agents
|
|
873
|
+
|
|
874
|
+
AI agents (Cursor, Replit Agent, etc.) should:
|
|
875
|
+
|
|
876
|
+
1. **Read ticket metadata** from `.ticket-mate/projects/<projectKey>/tickets/<ticketKey>/ticket.meta.json`
|
|
877
|
+
2. **Follow the plan** in `.ticket-mate/projects/<projectKey>/tickets/<ticketKey>/plan.md`
|
|
878
|
+
3. **Complete tasks** from `.ticket-mate/projects/<projectKey>/tickets/<ticketKey>/tasks.md`
|
|
879
|
+
4. **Log progress** in `.ticket-mate/projects/<projectKey>/tickets/<ticketKey>/progress.log.md`
|
|
880
|
+
5. **Commit changes** with the Jira key in the message (e.g., `feat(PROJ-123): ...`)
|
|
881
|
+
|
|
882
|
+
Use `tm emit-agent-instructions --agent <agent>` to get specific instructions for your agent.
|
|
883
|
+
|
|
884
|
+
### Admin UI
|
|
885
|
+
|
|
886
|
+
Ticket Mate includes admin UI pages for browsing `.ticket-mate` content:
|
|
887
|
+
|
|
888
|
+
- **`/admin/ticket-mate`** - Overview of all projects in `.ticket-mate`
|
|
889
|
+
- **`/admin/ticket-mate/[projectKey]`** - Ticket list for a specific project
|
|
890
|
+
- **`/admin/ticket-mate/[projectKey]/[ticketKey]`** - Detailed ticket view with plan, tasks, progress, and notes
|
|
891
|
+
|
|
892
|
+
These pages read directly from the `.ticket-mate` filesystem structure and provide a read-only view of your tickets. All data is sourced from `.ticket-mate` on disk, not directly from Jira.
|
|
893
|
+
|
|
894
|
+
### Best Practices
|
|
895
|
+
|
|
896
|
+
- **Never delete** user-edited content in `plan.md`, `tasks.md`, or `notes.md`
|
|
897
|
+
- **Always append** to `progress.log.md` (never overwrite)
|
|
898
|
+
- **Check ticket status** before starting work (only work on "Ready for Dev" or "In Progress")
|
|
899
|
+
- **Update task checklists** as you complete items
|
|
900
|
+
- **Commit with Jira keys** in commit messages for traceability
|
|
901
|
+
|
|
902
|
+
## API Integration
|
|
903
|
+
|
|
904
|
+
The package includes a REST API server. Start it with:
|
|
905
|
+
|
|
906
|
+
```bash
|
|
907
|
+
npm run dev:server
|
|
908
|
+
```
|
|
909
|
+
|
|
910
|
+
#### Authentication
|
|
911
|
+
|
|
912
|
+
All API routes require authentication via API key. Include it in requests:
|
|
913
|
+
|
|
914
|
+
```bash
|
|
915
|
+
# Using X-API-Key header
|
|
916
|
+
curl -H "X-API-Key: your-api-key" http://localhost:3001/api/projects
|
|
917
|
+
|
|
918
|
+
# Using Authorization header
|
|
919
|
+
curl -H "Authorization: Bearer your-api-key" http://localhost:3001/api/projects
|
|
920
|
+
```
|
|
921
|
+
|
|
922
|
+
#### API Endpoints
|
|
923
|
+
|
|
924
|
+
**Projects**
|
|
925
|
+
|
|
926
|
+
- `GET /api/projects` - List all accessible Jira projects
|
|
927
|
+
|
|
928
|
+
**Boards**
|
|
929
|
+
|
|
930
|
+
- `GET /api/boards?projectKey=NOVA` - List boards for a project
|
|
931
|
+
|
|
932
|
+
**Automation**
|
|
933
|
+
|
|
934
|
+
- `POST /api/automation/tickets/from-bugs` - Create tickets from bugs-wip.json
|
|
935
|
+
- `POST /api/automation/tickets/from-json` - Create tickets from JSON instructions
|
|
936
|
+
- `POST /api/automation/bugs/sync-status` - Sync bug statuses from Jira
|
|
937
|
+
- `GET /api/automation/bugs/statistics` - Get bug statistics
|
|
938
|
+
- `POST /api/automation/bugs/fix-now` - Process "fix now" bug
|
|
939
|
+
|
|
940
|
+
**Example Request**
|
|
941
|
+
|
|
942
|
+
```bash
|
|
943
|
+
curl -X POST http://localhost:3001/api/automation/tickets/from-bugs \
|
|
944
|
+
-H "X-API-Key: your-api-key" \
|
|
945
|
+
-H "Content-Type: application/json" \
|
|
946
|
+
-d '{"filePath": "public/bugs.json"}'
|
|
947
|
+
```
|
|
948
|
+
|
|
949
|
+
### Next.js Dashboard
|
|
950
|
+
|
|
951
|
+
The package includes a Next.js dashboard that provides a web interface for:
|
|
952
|
+
|
|
953
|
+
- Viewing all Jira projects
|
|
954
|
+
- Expanding projects to see their boards
|
|
955
|
+
- Direct links to Jira backlog for each board
|
|
956
|
+
|
|
957
|
+
Start the dashboard:
|
|
958
|
+
|
|
959
|
+
```bash
|
|
960
|
+
npm run dev
|
|
961
|
+
```
|
|
962
|
+
|
|
963
|
+
The dashboard is available at `http://localhost:4000`.
|
|
964
|
+
|
|
965
|
+
### Automation Features
|
|
966
|
+
|
|
967
|
+
#### bugs-wip.json Format
|
|
968
|
+
|
|
969
|
+
The automation system can process JSON files containing bug information:
|
|
970
|
+
|
|
971
|
+
```json
|
|
972
|
+
{
|
|
973
|
+
"bugs": [
|
|
974
|
+
{
|
|
975
|
+
"id": "bug-1",
|
|
976
|
+
"title": "Checkout button not working",
|
|
977
|
+
"category": "bug_report",
|
|
978
|
+
"status": "open",
|
|
979
|
+
"severity": "high",
|
|
980
|
+
"summary": "The checkout button does not respond when clicked",
|
|
981
|
+
"rootCause": "Event listener not attached",
|
|
982
|
+
"metadata": {
|
|
983
|
+
"jiraIssueKey": "NOVA-456",
|
|
984
|
+
"jiraIssueUrl": "https://.../browse/NOVA-456"
|
|
985
|
+
}
|
|
986
|
+
}
|
|
987
|
+
]
|
|
988
|
+
}
|
|
989
|
+
```
|
|
990
|
+
|
|
991
|
+
#### Status Flow
|
|
992
|
+
|
|
993
|
+
Bugs go through these statuses:
|
|
994
|
+
|
|
995
|
+
- `open` - New bug, needs ticket
|
|
996
|
+
- `sending_to_jira` - Currently being sent to Jira
|
|
997
|
+
- `sent_to_jira` - Ticket created in Jira
|
|
998
|
+
- `fixed` - Bug is fixed
|
|
999
|
+
- `resolved` - Bug is resolved
|
|
1000
|
+
- `closed` - Bug is closed
|
|
1001
|
+
- `unfixable` - Bug cannot be fixed
|
|
1002
|
+
- `fix now` - Priority bug, needs immediate attention
|
|
1003
|
+
|
|
1004
|
+
#### Orchestrator Integration
|
|
1005
|
+
|
|
1006
|
+
The package can process instructions directly from an orchestrator:
|
|
1007
|
+
|
|
1008
|
+
```json
|
|
1009
|
+
{
|
|
1010
|
+
"items": [
|
|
1011
|
+
{
|
|
1012
|
+
"id": "task-1",
|
|
1013
|
+
"title": "Implement feature X",
|
|
1014
|
+
"summary": "Add new feature",
|
|
1015
|
+
"category": "feature_request",
|
|
1016
|
+
"priority": "high"
|
|
1017
|
+
}
|
|
1018
|
+
]
|
|
1019
|
+
}
|
|
1020
|
+
```
|
|
1021
|
+
|
|
1022
|
+
## API Reference
|
|
1023
|
+
|
|
1024
|
+
For detailed API documentation, see:
|
|
1025
|
+
|
|
1026
|
+
- [API Reference](docs/api-reference.md)
|
|
1027
|
+
- [Automation Guide](docs/automation/AUTOMATION-GUIDE.md)
|
|
1028
|
+
- [Host Integration](docs/HOST-PROJECT-INTEGRATION.md)
|
|
1029
|
+
|
|
1030
|
+
## Examples
|
|
1031
|
+
|
|
1032
|
+
### Sync Tickets to Progress Files
|
|
1033
|
+
|
|
1034
|
+
```typescript
|
|
1035
|
+
import { syncAll, getJiraConfig } from "@ameshkin/ticket-mate";
|
|
1036
|
+
|
|
1037
|
+
const config = getJiraConfig();
|
|
1038
|
+
const result = await syncAll(config, {
|
|
1039
|
+
baseDir: "./ticket-mate",
|
|
1040
|
+
generateReports: true,
|
|
1041
|
+
generateIndex: true,
|
|
1042
|
+
});
|
|
1043
|
+
|
|
1044
|
+
console.log(`Synced ${result.ticketsSynced} tickets`);
|
|
1045
|
+
```
|
|
1046
|
+
|
|
1047
|
+
### Create Jira Tickets from JSON
|
|
1048
|
+
|
|
1049
|
+
```typescript
|
|
1050
|
+
import { processBugsJson } from "@ameshkin/ticket-mate";
|
|
1051
|
+
|
|
1052
|
+
const result = await processBugsJson("public/bugs.json", {
|
|
1053
|
+
projectKey: "NOVA",
|
|
1054
|
+
issueType: "Bug",
|
|
1055
|
+
epicKey: "NOVA-10",
|
|
1056
|
+
labels: ["automated", "from-json"],
|
|
1057
|
+
});
|
|
1058
|
+
|
|
1059
|
+
console.log(`Created ${result.created} tickets`);
|
|
1060
|
+
```
|
|
1061
|
+
|
|
1062
|
+
### Generate AI Prompts
|
|
1063
|
+
|
|
1064
|
+
```typescript
|
|
1065
|
+
import { buildTicketPrompts } from "@ameshkin/ticket-mate";
|
|
1066
|
+
|
|
1067
|
+
const prompts = await buildTicketPrompts({
|
|
1068
|
+
ticketKey: "NOVA-123",
|
|
1069
|
+
markdownPath: ".orchestrator/epics/NOVA-10/NOVA-123.md",
|
|
1070
|
+
repoRoot: process.cwd(),
|
|
1071
|
+
});
|
|
1072
|
+
|
|
1073
|
+
console.log(prompts.systemPrompt);
|
|
1074
|
+
console.log(prompts.userPrompt);
|
|
1075
|
+
```
|
|
1076
|
+
|
|
1077
|
+
### Create Board with AI Column
|
|
1078
|
+
|
|
1079
|
+
```typescript
|
|
1080
|
+
import {
|
|
1081
|
+
createCursorBoard,
|
|
1082
|
+
ensureAiInProgressColumn,
|
|
1083
|
+
} from "@ameshkin/ticket-mate";
|
|
1084
|
+
|
|
1085
|
+
const board = await createCursorBoard("NOVA", "Cursor Board");
|
|
1086
|
+
await ensureAiInProgressColumn(board.id);
|
|
1087
|
+
console.log(`Board created: ${board.name} (ID: ${board.id})`);
|
|
1088
|
+
```
|
|
1089
|
+
|
|
1090
|
+
## Development
|
|
1091
|
+
|
|
1092
|
+
### Setup
|
|
1093
|
+
|
|
1094
|
+
```bash
|
|
1095
|
+
# Install dependencies
|
|
1096
|
+
npm install
|
|
1097
|
+
|
|
1098
|
+
# Build the package
|
|
1099
|
+
npm run build
|
|
1100
|
+
|
|
1101
|
+
# Run tests
|
|
1102
|
+
npm run test
|
|
1103
|
+
|
|
1104
|
+
# Run type checking
|
|
1105
|
+
npm run typecheck
|
|
1106
|
+
|
|
1107
|
+
# Start development server
|
|
1108
|
+
npm run dev
|
|
1109
|
+
|
|
1110
|
+
# Start API server
|
|
1111
|
+
npm run dev:server
|
|
1112
|
+
|
|
1113
|
+
# Start both
|
|
1114
|
+
npm run dev:all
|
|
1115
|
+
```
|
|
1116
|
+
|
|
1117
|
+
### Project Structure
|
|
1118
|
+
|
|
1119
|
+
```
|
|
1120
|
+
ticket-mate/
|
|
1121
|
+
├── src/
|
|
1122
|
+
│ ├── cli/ # CLI commands
|
|
1123
|
+
│ ├── client/ # Jira REST API client
|
|
1124
|
+
│ ├── config/ # Configuration management
|
|
1125
|
+
│ ├── sync/ # Ticket syncing
|
|
1126
|
+
│ ├── prompts/ # AI prompt generation
|
|
1127
|
+
│ ├── automation/ # Automation features
|
|
1128
|
+
│ ├── jira-management/ # Board, label, epic management
|
|
1129
|
+
│ └── server/ # REST API server
|
|
1130
|
+
├── app/ # Next.js dashboard
|
|
1131
|
+
│ ├── api/ # Next.js API routes
|
|
1132
|
+
│ └── page.tsx # Dashboard UI
|
|
1133
|
+
└── dist/ # Built output
|
|
1134
|
+
```
|
|
1135
|
+
|
|
1136
|
+
### Testing
|
|
1137
|
+
|
|
1138
|
+
```bash
|
|
1139
|
+
# Run all tests
|
|
1140
|
+
npm run test
|
|
1141
|
+
|
|
1142
|
+
# Run tests in watch mode
|
|
1143
|
+
npm run test:watch
|
|
1144
|
+
|
|
1145
|
+
# Run with coverage
|
|
1146
|
+
npm run test:coverage
|
|
1147
|
+
|
|
1148
|
+
# Run E2E tests
|
|
1149
|
+
npm run test:e2e
|
|
1150
|
+
```
|
|
1151
|
+
|
|
1152
|
+
## Database Access
|
|
1153
|
+
|
|
1154
|
+
### Prisma Studio (Cloud)
|
|
1155
|
+
|
|
1156
|
+
Access the database via Prisma Studio Cloud:
|
|
1157
|
+
|
|
1158
|
+
**Direct Link:**
|
|
1159
|
+
|
|
1160
|
+
- [Prisma Studio Cloud](https://console.prisma.io/cmixzg6nk03vo2sflg2pzq64u/cmixzgvue03sd1efplmdnimkj/cmixzgvue03se1efpm49q18z0/studio#table=notifications&schema=public&view=table)
|
|
1161
|
+
|
|
1162
|
+
**How to Access:**
|
|
1163
|
+
|
|
1164
|
+
1. Click the link above or navigate to [Prisma Console](https://console.prisma.io)
|
|
1165
|
+
2. Log in with your Prisma account credentials
|
|
1166
|
+
3. Select the project: `ticket-mate`
|
|
1167
|
+
4. Navigate to the database you want to view
|
|
1168
|
+
5. Use the table browser to explore data
|
|
1169
|
+
|
|
1170
|
+
**Note:** You must have access to the Prisma project to view the database. Contact the project owner if you need access.
|
|
1171
|
+
|
|
1172
|
+
### Local Prisma Studio
|
|
1173
|
+
|
|
1174
|
+
You can also run Prisma Studio locally to view and edit the database:
|
|
1175
|
+
|
|
1176
|
+
```bash
|
|
1177
|
+
# Make sure DATABASE_URL is set in your .env file
|
|
1178
|
+
npx prisma studio
|
|
1179
|
+
```
|
|
1180
|
+
|
|
1181
|
+
This will open Prisma Studio at `http://localhost:5555` where you can:
|
|
1182
|
+
|
|
1183
|
+
- Browse all tables
|
|
1184
|
+
- View and edit records
|
|
1185
|
+
- Run queries
|
|
1186
|
+
- Export data
|
|
1187
|
+
|
|
1188
|
+
**Prerequisites:**
|
|
1189
|
+
|
|
1190
|
+
- `DATABASE_URL` must be configured in `.env`
|
|
1191
|
+
- Database must be accessible from your local machine
|
|
1192
|
+
- Prisma client must be generated: `npm run prisma:generate`
|
|
1193
|
+
|
|
1194
|
+
### Database Schema
|
|
1195
|
+
|
|
1196
|
+
The database schema is defined in `prisma/schema.prisma`. Key models include:
|
|
1197
|
+
|
|
1198
|
+
- **User** - User accounts and authentication
|
|
1199
|
+
- **Account** - Tenant/organization accounts
|
|
1200
|
+
- **JiraCredential** - Per-user Jira OAuth credentials
|
|
1201
|
+
- **TokenUsage** - AI token usage tracking
|
|
1202
|
+
- **PlanTier** - Subscription plan tiers
|
|
1203
|
+
- **Project** - Jira project mappings
|
|
1204
|
+
- **IntegrationConnection** - Third-party integrations
|
|
1205
|
+
|
|
1206
|
+
See `prisma/schema.prisma` for the complete schema definition.
|
|
1207
|
+
|
|
1208
|
+
## License
|
|
1209
|
+
|
|
1210
|
+
MIT
|
|
1211
|
+
|
|
1212
|
+
## Author
|
|
1213
|
+
|
|
1214
|
+
Amir Meshkin <amir.meshkin@gmail.com>
|