회기 집계와 기록 복귀 및 감독 근거 링크 수정
Some checks failed
API contract / OpenAPI type drift (push) Failing after 4m46s

This commit is contained in:
Yun Chan 2026-09-09 14:41:54 +09:00
parent aa951c6c4a
commit 1306c524c1
20 changed files with 4631 additions and 60 deletions

View file

@ -562,6 +562,59 @@ test.describe("uc-teacher-console: 수퍼비전 attention 큐", () => {
page.locator(".pf-depth-strip .is-current"),
).toContainText("학습자 상세");
});
test("legacy 감독 근거 링크는 엄격히 교사 경로로 정규화하고 canonical 경로는 유지한다", async ({
page,
}) => {
const legacySessionId = "62000000-0000-0000-0000-000000000801";
const canonicalSessionId = "62000000-0000-0000-0000-000000000802";
await routeUnmockedApi(page);
await routeAuthedTeacher(page);
await routeSupervision(page, [
attentionItemFixture(1, "legacy-session", "growth_stagnation", [
`/teacher/sessions/${legacySessionId}/`,
]),
attentionItemFixture(2, "canonical-session", "deterioration", [
`/teach/session/${canonicalSessionId}/review`,
]),
attentionItemFixture(3, "legacy-dashboard", "safety_boundary", [
"/teacher/dashboard",
]),
]);
await routeConsole(page, {
pending_reviews: [
{
...pendingReviewFixture(1, "62000000-0000-0000-0000-000000000111"),
session_id: legacySessionId,
},
],
});
await routeTeacherSessionReview(page, legacySessionId);
await routeSupervisorCalibration(page, emptyCalibrationReadModelFixture());
await page.goto("/teach/supervision");
await expect(page.locator(".g6-drilldown a")).toHaveAttribute(
"href",
`/teach/session/${legacySessionId}/review`,
);
await page.getByRole("button", { name: /canonical-session/ }).click();
await expect(page.locator(".g6-drilldown a")).toHaveAttribute(
"href",
`/teach/session/${canonicalSessionId}/review`,
);
await page.getByRole("button", { name: /legacy-dashboard/ }).click();
await expect(page.locator(".g6-drilldown a")).toHaveAttribute("href", "/teach");
await page.getByRole("button", { name: /legacy-session/ }).click();
await page.locator(".g6-drilldown a").click();
await expect(page).toHaveURL(
new RegExp(`/teach/session/${legacySessionId}/review$`),
);
await expect(
page.getByText("교수자 검토 화면", { exact: true }),
).toBeVisible();
});
});
test.describe("uc-teacher-console: 학습자 상세 측정 근거", () => {