AI Agents SDE Task Viewer
      • Context
      • Plan
      • Prd
  1. Home
  2. AgentSDE
  3. agent-core
  4. gh-350
  5. plan
  6. prd.json
prd.json(1.9 KB)ยท Apr 8, 2026
{
  "issueNumber": 350,
  "branchName": "rc/multi-tenant",
  "generatedAt": "2026-04-08T22:10:00Z",
  "stories": [
    {
      "id": "S1",
      "title": "Verify and gap-fill PlatformProvider interface with closePR, deleteBranch, postComment methods",
      "priority": 1,
      "dependsOn": [],
      "acceptanceCriteria": [
        "PlatformProvider interface defines closePR(owner, repo, prNumber)",
        "PlatformProvider interface defines deleteBranch(owner, repo, branch)",
        "PlatformProvider interface defines postComment(repo, issueNumber, body)",
        "GitHubPlatformProvider implements all three methods"
      ],
      "passes": false,
      "completedAt": null
    },
    {
      "id": "S2",
      "title": "Update directive.module.ts and directive.service.ts to use PlatformProvider",
      "priority": 2,
      "dependsOn": [
        "S1"
      ],
      "acceptanceCriteria": [
        "directive.module.ts imports PlatformModule, not GitHubModule",
        "directive.service.ts injects PLATFORM_PROVIDER, not GitHubService",
        "All closePR/deleteBranch calls use this.platform.*",
        "postRawComment replaced with this.platform.postComment",
        "No GitHubService or GitHubModule imports in any directive file"
      ],
      "passes": false,
      "completedAt": null
    },
    {
      "id": "S3",
      "title": "Update directive.service.spec.ts to mock PlatformProvider instead of GitHubService",
      "priority": 3,
      "dependsOn": [
        "S2"
      ],
      "acceptanceCriteria": [
        "Test module provides PLATFORM_PROVIDER token with mock, not GitHubService",
        "Mock includes closePR, deleteBranch, and postComment methods",
        "All global.fetch comment assertions replaced with platformProvider.postComment assertions",
        "All existing tests pass",
        "tsc --noEmit passes",
        "npm run lint passes"
      ],
      "passes": false,
      "completedAt": null
    }
  ]
}
PlanPr description