AI Agents SDE Task Viewer
      • Pr description
  1. Home
  2. AgentSDE
  3. agent-core
  4. gh-550
  5. changes
  6. pr_description.md
pr_description.md(1.4 KB)· Apr 24, 2026· 1 min read
  • Problem
  • Task / Link
  • Changes
  • Notes
  • Testing

Problem#

ClaudeInvocationService hard-coded GitHub credentials for every Claude invocation. The service needed to select the correct auth provider and inject platform-specific env vars based on task.platform (github | bitbucket | jira).

Task / Link#

BJ-10 — Closes #550

Changes#

  • ClaudeInvocationService: switched from single PLATFORM_AUTH_PROVIDER to per-platform optional injections (@Optional() for Bitbucket and Jira); added a switch on env['PLATFORM'] that emits the correct token/username/config env block per platform
  • InvokeModule: imports BitbucketModule and JiraModule (both optional — app boots without Atlassian credentials)
  • phase-router/buildEnv(): sets env['PLATFORM'] = task.platform ?? 'github' so the platform field flows end-to-end from task to invocation
  • claude-invocation.service.spec.ts: added tests for github regression, bitbucket env injection, jira env injection, and throws-when-provider-missing cases

Notes#

  • task.platform column (BJ-0 / #540) is not yet on TaskEntity; the cast falls back to 'github' until BJ-0 lands
  • Unknown platform values fall through to the default case which uses the GitHub provider (safe fallback)
  • BITBUCKET_REPO env var removed — workspace is the install boundary per #595

Testing#

  • npm run test — 999 tests pass, 62 suites (includes new platform-switching cases)
  • npm run lint — zero warnings
PrdAi-done