| ... | ... | @@ -1188,6 +1188,36 @@ it.layer(GitManagerTestLayer)("GitManager", (it) => { |
| 1188 | 1188 | }), |
| 1189 | 1189 | ); |
| 1190 | 1190 | |
| 1191 | it.effect("status hides merged PRs on the default branch", () => |
| 1192 | Effect.gen(function* () { |
| 1193 | const repoDir = yield* makeTempDir("t3code-git-manager-"); |
| 1194 | yield* initRepo(repoDir); |
| 1195 | |
| 1196 | const { manager } = yield* makeManager({ |
| 1197 | ghScenario: { |
| 1198 | prListSequence: [ |
| 1199 | JSON.stringify([ |
| 1200 | { |
| 1201 | number: 23, |
| 1202 | title: "Merged PR", |
| 1203 | url: "https://github.com/pingdotgg/codething-mvp/pull/23", |
| 1204 | baseRefName: "feature/status-default-branch-target", |
| 1205 | headRefName: "main", |
| 1206 | state: "MERGED", |
| 1207 | mergedAt: "2026-01-30T10:00:00Z", |
| 1208 | updatedAt: "2026-01-30T10:00:00Z", |
| 1209 | }, |
| 1210 | ]), |
| 1211 | ], |
| 1212 | }, |
| 1213 | }); |
| 1214 | |
| 1215 | const status = yield* manager.status({ cwd: repoDir }); |
| 1216 | expect(status.branch).toBe("main"); |
| 1217 | expect(status.pr).toBeNull(); |
| 1218 | }), |
| 1219 | ); |
| 1220 | |
| 1191 | 1221 | it.effect("status prefers open PR when merged PR has newer updatedAt", () => |
| 1192 | 1222 | Effect.gen(function* () { |
| 1193 | 1223 | const repoDir = yield* makeTempDir("t3code-git-manager-"); |