FractalOps MCP E2E 시나리오 (실측)
FractalOps MCP E2E 시나리오 (실측)
Section titled “FractalOps MCP E2E 시나리오 (실측)”최신 라이브 계정 시나리오 (CT136, 2026-03-09 KST)
Section titled “최신 라이브 계정 시나리오 (CT136, 2026-03-09 KST)”- 실행 스크립트:
ops/lxc/live_persona_user_scenarios.py --inside-ct - 실행 환경:
/opt/fractalops/current,FRACTALOPS_TARGET_CT=136 - 생성 계정:
planner.<timestamp>@example.comdesigner.<timestamp>@example.comdeveloper.<timestamp>@example.com
- 최종 결과:
ok=trueproject_create: PASSdeveloper_dashboard: PASSdeveloper_registry_token: PASSdeveloper_daytona_launch: PASS (302)designer_penpot_launch: PASS (302)
- 리포트 파일:
/opt/fractalops/current/output/live-persona-user-scenarios-20260309-rerun.json/opt/fractalops/current/output/live-persona-user-scenarios-20260309-afterdeploy.json/opt/fractalops/current/output/live-persona-user-scenarios-20260309-branch-contract.json
- 실행 일시: 2026-03-08 (KST)
- 실행 도구: Playwright MCP
- 실행 계정:
staff@example.com - 목적: 스크립트 기반 가정이 아니라, 실제 사용자 흐름 기준 정상 동작 보장/차단점 식별
- 주의:
example.com/org/net/local계열 placeholder URL은 런타임에서 비활성 엔드포인트로 간주되어 솔루션 노출 대상에서 제외됨.
시나리오 매트릭스
Section titled “시나리오 매트릭스”| ID | 시나리오 | 기대 결과 | 실제 결과 | 상태 | 증거 |
|---|---|---|---|---|---|
| FO-E2E-001 | Portal 대시보드 진입 | https://portal.example.com/ 진입 시 세션/온보딩/피드 렌더링 | 정상 렌더링 확인 | PASS | output/playwright/e2e-20260308/portal-dashboard.png |
| FO-E2E-002 | Portal 즐겨찾기 토글/필터 | repo 즐겨찾기 토글 후 즐겨찾기만 필터 동작 | pm-e2e-0307 즐겨찾기 추가 + 필터 시 표시 2개 | PASS | output/playwright/e2e-20260308/portal-favorites-filter.png |
| FO-E2E-003 | Portal 프로젝트 피드 조회 | /에서 프로젝트/피드 카드 노출 | 대시보드와 프로젝트 피드 렌더링 확인 | PASS | output/playwright/e2e-20260308/portal-dashboard.png |
| FO-E2E-004 | Portal → Daytona Sandbox | Portal launch에서 Daytona 클릭 시 sandbox/IDE 진입 | Daytona sandbox launch와 VS Code/CLI handoff 화면 진입 확인 | PASS | output/playwright/e2e-20260308/portal-launch-daytona-success.png, output/playwright/e2e-20260308/daytona-vscode-success.png |
| FO-E2E-005 | Portal → Nexus Launch | Portal launch 경유 시 Nexus 정상 진입 | {"error":"Pomerium authentication failed"} + 401 | FAIL | output/playwright/e2e-20260308/portal-launch-nexus-auth-failed.png |
| FO-E2E-006 | Portal → Penpot Launch | Portal launch 경유 시 Penpot 정상 진입 | Penpot dashboard 진입 확인(팀 생성/프로젝트 화면) | PASS | output/playwright/e2e-20260308/portal-launch-penpot-success.png |
| FO-E2E-007 | Portal 비선형 UX(유저/그룹) | Next Actions + Journey persona 필터 + Group jump 연동 | portal.example.com에서 실측 동작 확인 | PASS | output/playwright/e2e-20260308-ux-linear/portal-filter-pm-after-deploy.png |
| FO-E2E-008 | 다중 사용자 시뮬레이션(Edge Claim) | 사용자별 주체 파싱/위젯 분리 | Loopback MCP 호출로 user-a, user-b, user-c 각각 subject_key 분리 확인 | PASS | MCP run-code 결과 로그(2026-03-08) |
| FO-E2E-009 | keytest 실제 MS 로그인 | 계정 전환 후 keytest 실로그인 | Microsoft 응답: Your account has been locked | FAIL | MCP snapshot (Microsoft sign-in, 2026-03-08) |
실패 시나리오 차단 원인 (현재)
Section titled “실패 시나리오 차단 원인 (현재)”FO-E2E-005 (Nexus Launch)
Section titled “FO-E2E-005 (Nexus Launch)”- 원인: launch 라우트 이후 Nexus 진입 시 Pomerium 인증 문맥 전달 실패.
- 영향: Portal에서 레지스트리 진입이 차단되어 패키지 publish/install 흐름 단절.
FO-E2E-009 (keytest 실로그인)
Section titled “FO-E2E-009 (keytest 실로그인)”- 원인: 애플리케이션 로직 문제가 아니라 Entra 계정 잠금 상태.
- 영향: keytest 기준 실서비스 E2E(계정 전환/신규 사용자 온보딩) 재현 불가.
정상 동작 보장 기준 (Gate)
Section titled “정상 동작 보장 기준 (Gate)”아래 3개가 모두 PASS일 때 “직원 기본 개발 흐름 정상”으로 판정:
- FO-E2E-003 (Portal 프로젝트 피드)
- FO-E2E-004 (Portal → Daytona sandbox 진입)
- FO-E2E-005 (Nexus Launch)
현재 판정: 보장 실패 (Nexus Launch 미해결 1건).
UX 개선 반영 (2026-03-08)
Section titled “UX 개선 반영 (2026-03-08)”- 유저/그룹 흐름 끊김 완화를 위해
Next Actions를 상단에 추가하고 온보딩/여정/시나리오 기반 우선순위 액션을 자동 계산. Journey Board에 persona 필터(all/developer/pm/team_lead/super_admin) 추가.Group Context Map에서 cluster jump 시 persona 필터가 자동 연동되어 비선형 탐색이 가능.PortalLaunchService에서FRACTALOPS_PORTAL_IDP_PROFILE_ENFORCE_SOLUTIONS대상(Penpot 등) launch 전에 IDP profile(email/firstName/lastName) 자동 보정.- Penpot access sync는 최신 native RPC 경로
/api/main/methods/*와FRACTALOPS_PENPOT_API_URL/FRACTALOPS_PENPOT_API_TOKEN계약을 사용한다.