{
"issueNumber": 349,
"branchName": "feat/349-migrate-phase-hooks-platform-provider",
"generatedAt": "2026-04-08T12:00:00Z",
"stories": [
{
"id": "S1",
"title": "Swap PhaseHooksService constructor injection and call sites from GitHubService to PlatformProvider",
"priority": 1,
"dependsOn": [],
"acceptanceCriteria": [
"No import of GitHubService in phase-hooks.service.ts",
"Constructor uses @Inject(PLATFORM_PROVIDER) private readonly platform: PlatformProvider",
"All this.github.* calls replaced with this.platform.*",
"setProjectItemStatus uses optional chaining (this.platform.setProjectItemStatus?.())"
],
"passes": false,
"completedAt": null
},
{
"id": "S2",
"title": "Replace GitHubModule import with PlatformModule in phase-hooks.module.ts",
"priority": 2,
"dependsOn": [
"S1"
],
"acceptanceCriteria": [
"No import of GitHubModule in phase-hooks.module.ts",
"PlatformModule is in the imports array"
],
"passes": false,
"completedAt": null
},
{
"id": "S3",
"title": "Update phase-hooks.service.spec.ts to mock PlatformProvider instead of GitHubService",
"priority": 3,
"dependsOn": [
"S1"
],
"acceptanceCriteria": [
"Mock provider uses PLATFORM_PROVIDER token",
"Mock type is jest.Mocked<PlatformProvider>",
"All existing tests pass unchanged (only mock wiring changes)"
],
"passes": false,
"completedAt": null
}
]
}