@bridge_gpt/mcp-server 0.2.1 → 0.2.3

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.
Files changed (113) hide show
  1. package/README.md +97 -15
  2. package/build/agent-config-credential-migration.js +272 -0
  3. package/build/agents.generated.js +1 -1
  4. package/build/chain-orchestrator.js +16 -1
  5. package/build/commands.generated.js +9 -7
  6. package/build/conductor/bridge-api-client.js +625 -0
  7. package/build/conductor/claude-hook.js +251 -0
  8. package/build/conductor/cli.js +1048 -0
  9. package/build/conductor/data-normalization.js +114 -0
  10. package/build/conductor/doctor.js +164 -0
  11. package/build/conductor/done-gate.js +325 -0
  12. package/build/conductor/epic-reconcile.js +139 -0
  13. package/build/conductor/epic-runtime.js +611 -0
  14. package/build/conductor/epic-state.js +125 -0
  15. package/build/conductor/errors.js +85 -0
  16. package/build/conductor/git-ci-types.js +129 -0
  17. package/build/conductor/git-hooks.js +218 -0
  18. package/build/conductor/git-inspection.js +185 -0
  19. package/build/conductor/git-producer.js +137 -0
  20. package/build/conductor/merge-ledger.js +198 -0
  21. package/build/conductor/paths.js +224 -0
  22. package/build/conductor/plan.js +77 -0
  23. package/build/conductor/pr-ci-producer.js +427 -0
  24. package/build/conductor/pr-discovery.js +135 -0
  25. package/build/conductor/producer-ledger.js +125 -0
  26. package/build/conductor/redaction.js +112 -0
  27. package/build/conductor/store.js +1156 -0
  28. package/build/conductor/supervisor-config.js +150 -0
  29. package/build/conductor/supervisor-escalation.js +244 -0
  30. package/build/conductor/supervisor-judgment-python.js +141 -0
  31. package/build/conductor/supervisor-judgment.js +215 -0
  32. package/build/conductor/supervisor-ledger.js +119 -0
  33. package/build/conductor/supervisor-merge.js +127 -0
  34. package/build/conductor/supervisor-message-relay.js +61 -0
  35. package/build/conductor/supervisor-notification.js +39 -0
  36. package/build/conductor/supervisor-runtime.js +351 -0
  37. package/build/conductor/supervisor-state.js +572 -0
  38. package/build/conductor/supervisor-types.js +16 -0
  39. package/build/conductor/taxonomy.js +58 -0
  40. package/build/conductor/tools.js +367 -0
  41. package/build/conductor/types.js +9 -0
  42. package/build/conductor-bin.js +21 -0
  43. package/build/conductor-claude-hook-bin.js +21 -0
  44. package/build/credential-store.js +175 -4
  45. package/build/credentials-cli.js +223 -0
  46. package/build/decision-page-schema.js +60 -0
  47. package/build/decision-page-template.js +262 -10
  48. package/build/doctor.js +5 -1
  49. package/build/index.js +558 -63
  50. package/build/pipeline-orchestrator.js +5 -1
  51. package/build/pipeline-utils.js +45 -5
  52. package/build/pipelines.generated.js +37 -9
  53. package/build/readme.generated.js +3 -0
  54. package/build/review-tickets.js +596 -0
  55. package/build/scheduled-prompt.js +16 -10
  56. package/build/start-tickets-conductor.js +496 -0
  57. package/build/start-tickets-prereqs.js +32 -23
  58. package/build/start-tickets-repo.js +49 -0
  59. package/build/start-tickets.js +683 -82
  60. package/build/version.generated.js +1 -1
  61. package/design-assets/favicon/android-chrome-192x192.png +0 -0
  62. package/design-assets/favicon/android-chrome-512x512.png +0 -0
  63. package/design-assets/favicon/apple-touch-icon.png +0 -0
  64. package/design-assets/favicon/favicon-16x16.png +0 -0
  65. package/design-assets/favicon/favicon-32x32.png +0 -0
  66. package/design-assets/favicon/favicon.ico +0 -0
  67. package/design-assets/favicon/site.webmanifest +1 -0
  68. package/design-assets/just-logo-rough-draft.png +0 -0
  69. package/package.json +18 -6
  70. package/pipelines/idea-to-ticket.json +5 -0
  71. package/pipelines/plan-epic.json +16 -1
  72. package/pipelines/review-ticket.json +2 -1
  73. package/public/css/main.min.css +2 -0
  74. package/public/css/main.min.css.map +1 -0
  75. package/public/fonts/OFL.txt +93 -0
  76. package/public/fonts/SourceSansPro-Black.ttf +0 -0
  77. package/public/fonts/SourceSansPro-BlackItalic.ttf +0 -0
  78. package/public/fonts/SourceSansPro-Bold.ttf +0 -0
  79. package/public/fonts/SourceSansPro-BoldItalic.ttf +0 -0
  80. package/public/fonts/SourceSansPro-ExtraLight.ttf +0 -0
  81. package/public/fonts/SourceSansPro-ExtraLightItalic.ttf +0 -0
  82. package/public/fonts/SourceSansPro-Italic.ttf +0 -0
  83. package/public/fonts/SourceSansPro-Light.ttf +0 -0
  84. package/public/fonts/SourceSansPro-LightItalic.ttf +0 -0
  85. package/public/fonts/SourceSansPro-Regular.ttf +0 -0
  86. package/public/fonts/SourceSansPro-SemiBold.ttf +0 -0
  87. package/public/fonts/SourceSansPro-SemiBoldItalic.ttf +0 -0
  88. package/public/img/bridge-logo-160x51.webp +0 -0
  89. package/public/img/bridge-logo-300x92.webp +0 -0
  90. package/public/img/favicon/android-chrome-192x192.png +0 -0
  91. package/public/img/favicon/android-chrome-512x512.png +0 -0
  92. package/public/img/favicon/apple-touch-icon.png +0 -0
  93. package/public/img/favicon/favicon-16x16.png +0 -0
  94. package/public/img/favicon/favicon-32x32.png +0 -0
  95. package/public/img/favicon/favicon.ico +0 -0
  96. package/public/img/favicon/site.webmanifest +1 -0
  97. package/public/img/installation/bitbucket/app-password-1.png +0 -0
  98. package/public/img/installation/bitbucket/app-password-2.png +0 -0
  99. package/public/img/installation/bitbucket/create-token-1.png +0 -0
  100. package/public/img/installation/bitbucket/create-token-2.png +0 -0
  101. package/public/img/installation/bitbucket/webhook-1.png +0 -0
  102. package/public/img/installation/github/github-review-webhook.png +0 -0
  103. package/public/img/installation/jira/credentials/api-key.png +0 -0
  104. package/public/img/installation/jira/webhook/create-rule.png +0 -0
  105. package/public/img/installation/jira/webhook/project-settings.png +0 -0
  106. package/public/img/installation/jira/webhook/rule-create-1.png +0 -0
  107. package/public/img/installation/jira/webhook/rule-create-2.png +0 -0
  108. package/public/img/installation/jira/webhook/rule-create-3.png +0 -0
  109. package/public/img/installation/pinecone/pinecone-api-key.png +0 -0
  110. package/public/img/installation/pinecone/pinecone-index.png +0 -0
  111. package/public/js/main.min.js +2 -0
  112. package/public/js/main.min.js.map +1 -0
  113. package/smoke-test/SMOKE-TEST.md +16 -8
@@ -342,11 +342,16 @@ Ask for one explicit Tier 3 consent decision; if granted, the user may pick whic
342
342
  flows to run. Use **bounded polling with increasing intervals and a maximum wait
343
343
  of about 15 minutes** for any async flow.
344
344
 
345
- ### Synchronous Tier 3 tool
345
+ ### Single-call Tier 3 tool
346
346
 
347
- - **`second_opinion` is synchronous and token-costing.** It blocks and returns
348
- its result directly it is **not** an async request/get flow. Do not try to
349
- capture an ID for it.
347
+ - **`second_opinion` returns its result in one call and is token-costing.** The
348
+ backend is now async (submit poll result, so a slow opinion no longer trips
349
+ the 30s Heroku request timeout / H12), but the tool **absorbs that polling
350
+ internally** — it still returns the reply directly. It is **not** an async
351
+ request/get flow: do not try to capture an ID for it. If an opinion is still
352
+ processing after ~5 minutes, the tool returns a **recoverable-result message**
353
+ (with the `request_id` and a `GET /llm/second-opinion/{id}/result` URL) rather
354
+ than failing — treat that as `PASS`, not an error.
350
355
 
351
356
  ### Async request/get Tier 3 tools
352
357
 
@@ -489,7 +494,7 @@ and raw protocol noise.** Sensitive values are redacted.
489
494
  Every registered MCP tool appears **exactly once** below with its smoke tier.
490
495
  Tier 4 (mutating/hazardous) tools are **deferred in v1**.
491
496
 
492
- Coverage reconciliation: **8 + 21 + 1 + 11 + 18 = 59**.
497
+ Coverage reconciliation: **8 + 22 + 1 + 12 + 19 = 62**.
493
498
 
494
499
  | Tier | Tool | Default action / expected-empty / special handling |
495
500
  |---|---|---|
@@ -507,7 +512,8 @@ Coverage reconciliation: **8 + 21 + 1 + 11 + 18 = 59**.
507
512
  | Tier 1 | `get_comments` | Read-only; needs ticket key (preferred default-pass tool). |
508
513
  | Tier 1 | `get_plan` | Artifact retriever; `PASS` with content, `PASS_EXPECTED_404` when cleanly empty; boolean probe target. |
509
514
  | Tier 1 | `get_architecture` | Artifact retriever; `PASS_EXPECTED_404` when cleanly empty. |
510
- | Tier 1 | `get_design_doc` | Artifact retriever (tdd/fsd via `doc_type`); `PASS_EXPECTED_404` when cleanly empty. |
515
+ | Tier 1 | `get_doc` | Artifact retriever (tdd/fsd/prd via `doc_type`); `PASS_EXPECTED_404` when cleanly empty. |
516
+ | Tier 1 | `get_prd` | Artifact retriever (Product Requirements Document); `PASS_EXPECTED_404` when cleanly empty. |
511
517
  | Tier 1 | `get_install_manifest` | Read-only; returns the easy-install bootstrap manifest + signed snapshot token; a clean 404 (no config row) is `PASS_EXPECTED_404`. |
512
518
  | Tier 1 | `get_clarifying_questions` | Artifact retriever; `PASS_EXPECTED_404` when cleanly empty. |
513
519
  | Tier 1 | `get_ticket_critique` | Artifact retriever; `PASS_EXPECTED_404` when cleanly empty. |
@@ -523,11 +529,12 @@ Coverage reconciliation: **8 + 21 + 1 + 11 + 18 = 59**.
523
529
  | Tier 1 | `poll_ci_checks` | `available:true` with empty or populated checks is `PASS`; `SKIP_NOT_APPLICABLE` when disabled with `TOOL_DISABLED`/503, or when `resolve_ci_checks` has not populated CI configuration. |
524
530
  | Tier 1 | `get_pipeline_recipe` | Read-only; needs a pipeline name plus required variables for variable-declaring pipelines; use `learn-repository` as the no-variable smoke target. |
525
531
  | Tier 2 | `generate_decision_page` | Local-only file-write canary; always run with the verbatim payload above. |
526
- | Tier 3 | `second_opinion` | Synchronous, token-costing; opt-in. |
532
+ | Tier 3 | `second_opinion` | Single-call (absorbs async polling under the hood — H12-safe); token-costing; opt-in. A ~5-min recoverable-result message is `PASS`, not a failure. |
527
533
  | Tier 3 | `generate_image` | Synchronous, token/credit-costing; spends provider credits; opt-in. |
528
534
  | Tier 3 | `request_plan_generation` | Async (ticket-key based); retrieve with `get_plan`; opt-in. |
529
535
  | Tier 3 | `request_architecture` | Async (ticket-key based); retrieve with `get_architecture`; opt-in. |
530
- | Tier 3 | `request_design_doc` | Async (ticket-key based; `doc_type` tdd/fsd); retrieve with `get_design_doc`; opt-in. |
536
+ | Tier 3 | `create_doc` | Async (ticket-key based; `doc_type` tdd/fsd/prd); retrieve with `get_doc`; opt-in. |
537
+ | Tier 3 | `request_prd` | Async (ticket-key based; Product Requirements Document); retrieve with `get_prd`; opt-in. |
531
538
  | Tier 3 | `request_clarifying_questions` | Async (ticket-key based); retrieve with `get_clarifying_questions`; opt-in. |
532
539
  | Tier 3 | `request_ticket_critique` | Async (ticket-key based); retrieve with `get_ticket_critique`; opt-in. |
533
540
  | Tier 3 | `request_ticket_review` | Async submit; retrieve with `get_clarifying_questions` + `get_ticket_critique`; opt-in. |
@@ -552,3 +559,4 @@ Coverage reconciliation: **8 + 21 + 1 + 11 + 18 = 59**.
552
559
  | Tier 4 | `run_full_automation` | Orchestration (dispatches mutating child pipelines / spawns worktrees); deferred in v1. |
553
560
  | Tier 4 | `resume_full_automation` | Orchestration; deferred in v1. |
554
561
  | Tier 4 | `apply_install_manifest` | Mutating (atomically writes easy-install config across the four config tables); deferred in v1. |
562
+ | Tier 4 | `persist_routing_credential` | Mutating (writes the routing credential to the user-scoped store `~/.config/bridge/credentials.json`); deferred in v1. |