Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion frontend/src/app/projects/page.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -422,7 +422,7 @@ describe("ProjectsPage", () => {
expect(container.textContent).toContain("Scope clarity");
expect(container.textContent).toContain("Data/infra readiness");
expect(container.textContent).toContain("Owner/action readiness");
expect(container.textContent).toContain("실행 준비 요약: 5개 컨트롤이 문단 근거로 준비됨");
expect(container.textContent).toContain("실행 준비 종합: 5개 컨트롤이 문단 근거로 준비됨");
expect(container.textContent).toContain("검토자 액션: 누락 근거 없음, 인수 검토 가능");

const reviewButton = Array.from(container.querySelectorAll("button")).find((button) => button.textContent?.includes("문단 근거 검토 저장"));
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/app/prompt-studio/page.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,7 @@ describe("PromptStudioPage", () => {
expectNoPublicIdentityHeaders((fetchMock.mock.calls[0] as unknown as [RequestInfo, RequestInit?])?.[1]?.headers);

act(() => {
getButton(page, "데이터 분석 인사이트").click();
getButton(page, "데이터 분석 판단 포인트").click();
});
expect(page.textContent).not.toContain("맥락 종합 결과");
});
Expand Down
14 changes: 7 additions & 7 deletions frontend/src/app/prompt-studio/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -102,10 +102,10 @@ function getSafeErrorSummary(error: unknown, fallback: string) {

const TEMPLATE_GROUPS = [
{
name: '업무 요약',
name: '업무 종합',
items: [
{ id: 'summary', title: '문서 요약/초안 작성', favorite: true },
{ id: 'insight', title: '데이터 분석 인사이트' },
{ id: 'summary', title: '문서 종합/초안 작성', favorite: true },
{ id: 'insight', title: '데이터 분석 판단 포인트' },
{ id: 'mail', title: '이메일 작성' },
{ id: 'automation', title: '업무 자동화 제안' },
],
Expand All @@ -114,7 +114,7 @@ const TEMPLATE_GROUPS = [
name: '회의/리포트',
items: [
{ id: 'meeting', title: '회의록 작성' },
{ id: 'decision', title: '의사결정 요약' },
{ id: 'decision', title: '의사결정 종합' },
{ id: 'weekly', title: '주간 보고서 작성' },
],
},
Expand Down Expand Up @@ -148,7 +148,7 @@ const MODEL_OPTIONS = [
{ label: 'OpenAI Compatible', value: 'provider-default' },
];
const RESPONSE_STYLES = ['전문적이고 간결하게', '친근하고 상세하게', '실행 항목 중심'];
const OUTPUT_FORMATS = ['마크다운 (Markdown)', 'JSON 구조화', '짧은 요약'];
const OUTPUT_FORMATS = ['마크다운 (Markdown)', 'JSON 구조화', '짧은 종합'];

const QUALITY_CHECKS = ['요구사항 충족', '구조 및 가독성', '정확성/사실성', '근거/출처 포함', '톤 & 스타일 일관성'];

Expand All @@ -160,10 +160,10 @@ const VERSION_HISTORY = [
];

const RECENT_TEST_RESULTS = [
{ time: '2024.05.25 10:22', case: '분기 성과 보고서 요약', result: '성공', score: 92, tokens: '1,024', duration: '2.8초' },
{ time: '2024.05.25 10:22', case: '분기 성과 보고서 종합', result: '성공', score: 92, tokens: '1,024', duration: '2.8초' },
{ time: '2024.05.25 10:18', case: '고객 피드백 분석', result: '성공', score: 88, tokens: '1,156', duration: '3.1초' },
{ time: '2024.05.25 10:12', case: '경쟁사 분석 리포트', result: '부분 성공', score: 76, tokens: '1,432', duration: '3.6초' },
{ time: '2024.05.25 10:05', case: '제품 출시 계획 요약', result: '성공', score: 95, tokens: '987', duration: '2.6초' },
{ time: '2024.05.25 10:05', case: '제품 출시 계획 종합', result: '성공', score: 95, tokens: '987', duration: '2.6초' },
];

const DEPLOYMENT_HISTORY = [
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/app/search/page.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ describe("SearchPage", () => {
expect(container.textContent).toContain("증거 바인딩");
expect(container.textContent).toContain("맥락 정보");
expect(container.textContent).toContain("메일 열기");
expect(container.textContent).toContain("관계 그래프와 타임라인");
expect(container.textContent).toContain("관계 맥락과 타임라인");
expect(container.textContent).toContain("발신자 DAG");
expect(container.textContent).toContain("track_reply_and_tasks");
expect(container.textContent).toContain("source=<q2@example.com>");
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/app/tools/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@ export default function ToolsPage() {
</header>

{!loading && !loadError && tools.length > 0 && (
<section aria-label="도구 레지스트리 요약" className="grid gap-3 sm:grid-cols-2 xl:grid-cols-4">
<section aria-label="도구 레지스트리 종합" className="grid gap-3 sm:grid-cols-2 xl:grid-cols-4">
{summaryCards.map(({ label, value, detail, icon: Icon }) => (
<Card key={label} size="sm">
<CardHeader>
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/components/NetworkGraph.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@ export default function NetworkGraph() {
}, [nodes]);

if (loading) {
return <div role="status" aria-live="polite" className="flex h-full min-h-[320px] w-full items-center justify-center text-sm text-muted-foreground sm:min-h-[420px]">관계 그래프를 불러오는 중입니다...</div>;
return <div role="status" aria-live="polite" className="flex h-full min-h-[320px] w-full items-center justify-center text-sm text-muted-foreground sm:min-h-[420px]">관계 맥락을 불러오는 중입니다...</div>;
}

if (error) {
Expand Down
4 changes: 2 additions & 2 deletions frontend/src/components/ProjectsLayout.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -547,7 +547,7 @@ function buildProjectControlReadinessLayer(objects: ProjectTraceObject[]): Proje
readyItemCount,
totalItemCount: items.length,
missingEvidenceCount,
summary: `실행 준비 요약: ${readyItemCount}개 컨트롤이 문단 근거로 준비됨`,
summary: `실행 준비 종합: ${readyItemCount}개 컨트롤이 문단 근거로 준비됨`,
reviewerAction: missingEvidenceCount > 0
? `검토자 액션: ${missingEvidenceCount}개 컨트롤 근거 보강`
: '검토자 액션: 누락 근거 없음, 인수 검토 가능',
Expand Down Expand Up @@ -1152,7 +1152,7 @@ export function ProjectsLayout() {
<span className="font-mono text-xs font-bold text-muted-foreground">{Math.round(projectObject.confidence * 100)}%</span>
</div>
<h3 className="line-clamp-2 break-keep text-sm font-bold">{safeText(projectObject.title, '제목 없는 그래프 객체')}</h3>
<p className="line-clamp-2 text-xs leading-5 text-muted-foreground">{safeText(projectObject.summary, '요약 대기')}</p>
<p className="line-clamp-2 text-xs leading-5 text-muted-foreground">{safeText(projectObject.summary, '종합 대기')}</p>
</button>
))}
</div>
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/components/SearchLayout.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -764,7 +764,7 @@ export function SearchLayout() {
</section>

<div className="flex items-center justify-between gap-3">
<h2 className="text-lg font-bold">관계 그래프와 타임라인</h2>
<h2 className="text-lg font-bold">관계 맥락과 타임라인</h2>
<span className="rounded-full bg-primary/10 px-3 py-1 text-xs font-bold text-primary">
source/thread API 연결
</span>
Expand Down
Loading