@laitszkin/apollo-toolkit 4.0.11 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +37 -27
- package/CHANGELOG.md +31 -0
- package/CLAUDE.md +37 -27
- package/README.md +15 -2
- package/assets/spec/rg13-1780435029246/test-questions.json +1 -0
- package/assets/spec/rg13-1780468345132/test-questions.json +1 -0
- package/package.json +3 -3
- package/packages/cli/dist/tool-registration.js +1 -0
- package/packages/cli/dist/tsconfig.tsbuildinfo +1 -1
- package/packages/cli/tool-registration.ts +1 -0
- package/packages/tools/architecture/dist/index.js +539 -2
- package/packages/tools/architecture/dist/index.test.d.ts +1 -0
- package/packages/tools/architecture/dist/index.test.js +229 -0
- package/packages/tools/architecture/dist/tsconfig.tsbuildinfo +1 -1
- package/packages/tools/architecture/index.test.ts +329 -0
- package/packages/tools/architecture/index.ts +607 -5
- package/packages/tools/codegraph/dist/index.d.ts +3 -0
- package/packages/tools/codegraph/dist/index.js +157 -0
- package/packages/tools/codegraph/dist/lib/cg-instance.d.ts +29 -0
- package/packages/tools/codegraph/dist/lib/cg-instance.js +59 -0
- package/packages/tools/codegraph/dist/lib/cg-instance.test.d.ts +1 -0
- package/packages/tools/codegraph/dist/lib/cg-instance.test.js +27 -0
- package/packages/tools/codegraph/dist/lib/cmd-explore.d.ts +5 -0
- package/packages/tools/codegraph/dist/lib/cmd-explore.js +95 -0
- package/packages/tools/codegraph/dist/lib/cmd-explore.test.d.ts +1 -0
- package/packages/tools/codegraph/dist/lib/cmd-explore.test.js +133 -0
- package/packages/tools/codegraph/dist/lib/cmd-flag-splice.test.d.ts +1 -0
- package/packages/tools/codegraph/dist/lib/cmd-flag-splice.test.js +83 -0
- package/packages/tools/codegraph/dist/lib/cmd-init.d.ts +5 -0
- package/packages/tools/codegraph/dist/lib/cmd-init.js +50 -0
- package/packages/tools/codegraph/dist/lib/cmd-init.test.d.ts +1 -0
- package/packages/tools/codegraph/dist/lib/cmd-init.test.js +51 -0
- package/packages/tools/codegraph/dist/lib/cmd-list-apis.d.ts +5 -0
- package/packages/tools/codegraph/dist/lib/cmd-list-apis.js +64 -0
- package/packages/tools/codegraph/dist/lib/cmd-list-apis.test.d.ts +1 -0
- package/packages/tools/codegraph/dist/lib/cmd-list-apis.test.js +69 -0
- package/packages/tools/codegraph/dist/lib/cmd-search.d.ts +5 -0
- package/packages/tools/codegraph/dist/lib/cmd-search.js +21 -0
- package/packages/tools/codegraph/dist/lib/cmd-search.test.d.ts +1 -0
- package/packages/tools/codegraph/dist/lib/cmd-search.test.js +30 -0
- package/packages/tools/codegraph/dist/lib/cmd-status.d.ts +4 -0
- package/packages/tools/codegraph/dist/lib/cmd-status.js +44 -0
- package/packages/tools/codegraph/dist/lib/cmd-status.test.d.ts +1 -0
- package/packages/tools/codegraph/dist/lib/cmd-status.test.js +72 -0
- package/packages/tools/codegraph/dist/lib/cmd-survey.d.ts +36 -0
- package/packages/tools/codegraph/dist/lib/cmd-survey.js +142 -0
- package/packages/tools/codegraph/dist/lib/cmd-survey.test.d.ts +1 -0
- package/packages/tools/codegraph/dist/lib/cmd-survey.test.js +136 -0
- package/packages/tools/codegraph/dist/lib/cmd-sync.d.ts +4 -0
- package/packages/tools/codegraph/dist/lib/cmd-sync.js +51 -0
- package/packages/tools/codegraph/dist/lib/cmd-sync.test.d.ts +1 -0
- package/packages/tools/codegraph/dist/lib/cmd-sync.test.js +30 -0
- package/packages/tools/codegraph/dist/lib/cmd-verify.d.ts +4 -0
- package/packages/tools/codegraph/dist/lib/cmd-verify.js +134 -0
- package/packages/tools/codegraph/dist/lib/cmd-verify.test.d.ts +1 -0
- package/packages/tools/codegraph/dist/lib/cmd-verify.test.js +139 -0
- package/packages/tools/codegraph/dist/lib/formatter.d.ts +67 -0
- package/packages/tools/codegraph/dist/lib/formatter.js +107 -0
- package/packages/tools/codegraph/dist/lib/formatter.test.d.ts +1 -0
- package/packages/tools/codegraph/dist/lib/formatter.test.js +41 -0
- package/packages/tools/codegraph/dist/lib/survey/grouper.d.ts +19 -0
- package/packages/tools/codegraph/dist/lib/survey/grouper.js +194 -0
- package/packages/tools/codegraph/dist/lib/survey/grouper.test.d.ts +1 -0
- package/packages/tools/codegraph/dist/lib/survey/grouper.test.js +62 -0
- package/packages/tools/codegraph/dist/lib/survey/scanner.d.ts +31 -0
- package/packages/tools/codegraph/dist/lib/survey/scanner.js +50 -0
- package/packages/tools/codegraph/dist/lib/verify/checker.d.ts +32 -0
- package/packages/tools/codegraph/dist/lib/verify/checker.js +146 -0
- package/packages/tools/codegraph/dist/lib/verify/checker.test.d.ts +1 -0
- package/packages/tools/codegraph/dist/lib/verify/checker.test.js +128 -0
- package/packages/tools/codegraph/dist/tsconfig.tsbuildinfo +1 -0
- package/packages/tools/codegraph/env.d.ts +56 -0
- package/packages/tools/codegraph/index.ts +173 -0
- package/packages/tools/codegraph/lib/cg-instance.test.ts +36 -0
- package/packages/tools/codegraph/lib/cg-instance.ts +66 -0
- package/packages/tools/codegraph/lib/cmd-explore.test.ts +195 -0
- package/packages/tools/codegraph/lib/cmd-explore.ts +129 -0
- package/packages/tools/codegraph/lib/cmd-flag-splice.test.ts +94 -0
- package/packages/tools/codegraph/lib/cmd-init.test.ts +68 -0
- package/packages/tools/codegraph/lib/cmd-init.ts +60 -0
- package/packages/tools/codegraph/lib/cmd-list-apis.test.ts +80 -0
- package/packages/tools/codegraph/lib/cmd-list-apis.ts +90 -0
- package/packages/tools/codegraph/lib/cmd-search.test.ts +37 -0
- package/packages/tools/codegraph/lib/cmd-search.ts +32 -0
- package/packages/tools/codegraph/lib/cmd-status.test.ts +86 -0
- package/packages/tools/codegraph/lib/cmd-status.ts +53 -0
- package/packages/tools/codegraph/lib/cmd-survey.test.ts +161 -0
- package/packages/tools/codegraph/lib/cmd-survey.ts +199 -0
- package/packages/tools/codegraph/lib/cmd-sync.test.ts +41 -0
- package/packages/tools/codegraph/lib/cmd-sync.ts +62 -0
- package/packages/tools/codegraph/lib/cmd-verify.test.ts +162 -0
- package/packages/tools/codegraph/lib/cmd-verify.ts +145 -0
- package/packages/tools/codegraph/lib/formatter.test.ts +47 -0
- package/packages/tools/codegraph/lib/formatter.ts +130 -0
- package/packages/tools/codegraph/lib/survey/grouper.test.ts +72 -0
- package/packages/tools/codegraph/lib/survey/grouper.ts +226 -0
- package/packages/tools/codegraph/lib/survey/scanner.ts +89 -0
- package/packages/tools/codegraph/lib/verify/checker.test.ts +140 -0
- package/packages/tools/codegraph/lib/verify/checker.ts +172 -0
- package/packages/tools/codegraph/package.json +23 -0
- package/packages/tools/codegraph/tsconfig.json +22 -0
- package/resources/project-architecture/atlas/atlas.history.log +32 -0
- package/resources/project-architecture/atlas/atlas.history.undo.json +356 -28
- package/resources/project-architecture/atlas/atlas.history.undo.stack.json +14350 -0
- package/resources/project-architecture/atlas/atlas.index.yaml +76 -12
- package/resources/project-architecture/atlas/features/codegraph.yaml +95 -0
- package/resources/project-architecture/atlas/features/eval-ci-gate.yaml +6 -1
- package/resources/project-architecture/atlas/features/eval-cli.yaml +16 -1
- package/resources/project-architecture/atlas/features/eval-executor.yaml +12 -2
- package/resources/project-architecture/atlas/features/eval-isolation.yaml +6 -1
- package/resources/project-architecture/atlas/features/eval-optimizer.yaml +17 -2
- package/resources/project-architecture/atlas/features/eval-question.yaml +12 -2
- package/resources/project-architecture/atlas/features/eval-reporter.yaml +6 -1
- package/resources/project-architecture/atlas/features/eval-scorer.yaml +12 -2
- package/resources/project-architecture/features/codegraph/cg-discovery.html +47 -0
- package/resources/project-architecture/features/codegraph/cg-lifecycle.html +48 -0
- package/resources/project-architecture/features/codegraph/cg-validation.html +47 -0
- package/resources/project-architecture/features/codegraph/index.html +58 -0
- package/resources/project-architecture/features/eval-ci-gate/workflow-trigger.html +6 -1
- package/resources/project-architecture/features/eval-cli/cli-handler.html +8 -1
- package/resources/project-architecture/features/eval-executor/exec-api-client.html +6 -1
- package/resources/project-architecture/features/eval-executor/trace-recorder.html +6 -1
- package/resources/project-architecture/features/eval-isolation/tool-dispatcher.html +6 -1
- package/resources/project-architecture/features/eval-optimizer/dedup-engine.html +6 -1
- package/resources/project-architecture/features/eval-optimizer/issue-extractor.html +7 -1
- package/resources/project-architecture/features/eval-question/question-loader.html +6 -1
- package/resources/project-architecture/features/eval-question/variant-generator.html +6 -1
- package/resources/project-architecture/features/eval-reporter/report-composer.html +6 -1
- package/resources/project-architecture/features/eval-scorer/judge-api-client.html +6 -1
- package/resources/project-architecture/features/eval-scorer/judge-prompt-builder.html +6 -1
- package/resources/project-architecture/index.html +200 -94
- package/skills/design/SKILL.md +33 -0
- package/skills/init-project-html/SKILL.md +12 -11
- package/tsconfig.json +1 -0
|
@@ -20,7 +20,12 @@
|
|
|
20
20
|
<main class="submodule-main">
|
|
21
21
|
<section aria-label="Function I/O">
|
|
22
22
|
<h2>Function I/O</h2>
|
|
23
|
-
<
|
|
23
|
+
<table class="sub-table">
|
|
24
|
+
<thead><tr><th scope="col">Name</th><th scope="col">In</th><th scope="col">Out</th><th scope="col">Side</th><th scope="col">Purpose</th></tr></thead>
|
|
25
|
+
<tbody>
|
|
26
|
+
<tr><td>runSingleTest</td><td>question, skillDir</td><td>TraceEvent[]</td><td>pure</td><td>執行單一技能測試,記錄 tool call 軌跡</td></tr>
|
|
27
|
+
</tbody>
|
|
28
|
+
</table>
|
|
24
29
|
</section>
|
|
25
30
|
<section aria-label="Variables">
|
|
26
31
|
<h2>Variables</h2>
|
|
@@ -20,7 +20,12 @@
|
|
|
20
20
|
<main class="submodule-main">
|
|
21
21
|
<section aria-label="Function I/O">
|
|
22
22
|
<h2>Function I/O</h2>
|
|
23
|
-
<
|
|
23
|
+
<table class="sub-table">
|
|
24
|
+
<thead><tr><th scope="col">Name</th><th scope="col">In</th><th scope="col">Out</th><th scope="col">Side</th><th scope="col">Purpose</th></tr></thead>
|
|
25
|
+
<tbody>
|
|
26
|
+
<tr><td>buildSystemPrompt</td><td>question</td><td>string</td><td>pure</td><td>建立隔離環境的 system prompt</td></tr>
|
|
27
|
+
</tbody>
|
|
28
|
+
</table>
|
|
24
29
|
</section>
|
|
25
30
|
<section aria-label="Variables">
|
|
26
31
|
<h2>Variables</h2>
|
|
@@ -20,7 +20,12 @@
|
|
|
20
20
|
<main class="submodule-main">
|
|
21
21
|
<section aria-label="Function I/O">
|
|
22
22
|
<h2>Function I/O</h2>
|
|
23
|
-
<
|
|
23
|
+
<table class="sub-table">
|
|
24
|
+
<thead><tr><th scope="col">Name</th><th scope="col">In</th><th scope="col">Out</th><th scope="col">Side</th><th scope="col">Purpose</th></tr></thead>
|
|
25
|
+
<tbody>
|
|
26
|
+
<tr><td>deduplicateIssues</td><td>issues</td><td>DedupedIssue[]</td><td>pure</td><td>Jaccard+Judge 語意去重</td></tr>
|
|
27
|
+
</tbody>
|
|
28
|
+
</table>
|
|
24
29
|
</section>
|
|
25
30
|
<section aria-label="Variables">
|
|
26
31
|
<h2>Variables</h2>
|
|
@@ -20,7 +20,13 @@
|
|
|
20
20
|
<main class="submodule-main">
|
|
21
21
|
<section aria-label="Function I/O">
|
|
22
22
|
<h2>Function I/O</h2>
|
|
23
|
-
<
|
|
23
|
+
<table class="sub-table">
|
|
24
|
+
<thead><tr><th scope="col">Name</th><th scope="col">In</th><th scope="col">Out</th><th scope="col">Side</th><th scope="col">Purpose</th></tr></thead>
|
|
25
|
+
<tbody>
|
|
26
|
+
<tr><td>extractIssues</td><td>scores</td><td>RawIssue[]</td><td>pure</td><td>從 score.json 提取問題與分類統計</td></tr>
|
|
27
|
+
<tr><td>generateOptimizationPlan</td><td>issues</td><td>OptimizationPlan</td><td>pure</td><td>從去重後問題生成 FIND/REPLACE 優化 diff</td></tr>
|
|
28
|
+
</tbody>
|
|
29
|
+
</table>
|
|
24
30
|
</section>
|
|
25
31
|
<section aria-label="Variables">
|
|
26
32
|
<h2>Variables</h2>
|
|
@@ -20,7 +20,12 @@
|
|
|
20
20
|
<main class="submodule-main">
|
|
21
21
|
<section aria-label="Function I/O">
|
|
22
22
|
<h2>Function I/O</h2>
|
|
23
|
-
<
|
|
23
|
+
<table class="sub-table">
|
|
24
|
+
<thead><tr><th scope="col">Name</th><th scope="col">In</th><th scope="col">Out</th><th scope="col">Side</th><th scope="col">Purpose</th></tr></thead>
|
|
25
|
+
<tbody>
|
|
26
|
+
<tr><td>loadQuestions</td><td>specDir</td><td>Question[]</td><td>pure</td><td>載入題目並進行 JSON Schema 驗證</td></tr>
|
|
27
|
+
</tbody>
|
|
28
|
+
</table>
|
|
24
29
|
</section>
|
|
25
30
|
<section aria-label="Variables">
|
|
26
31
|
<h2>Variables</h2>
|
|
@@ -20,7 +20,12 @@
|
|
|
20
20
|
<main class="submodule-main">
|
|
21
21
|
<section aria-label="Function I/O">
|
|
22
22
|
<h2>Function I/O</h2>
|
|
23
|
-
<
|
|
23
|
+
<table class="sub-table">
|
|
24
|
+
<thead><tr><th scope="col">Name</th><th scope="col">In</th><th scope="col">Out</th><th scope="col">Side</th><th scope="col">Purpose</th></tr></thead>
|
|
25
|
+
<tbody>
|
|
26
|
+
<tr><td>generateVariants</td><td>questions, count</td><td>Question[]</td><td>io</td><td>LLM 變體生成,保留評分標準</td></tr>
|
|
27
|
+
</tbody>
|
|
28
|
+
</table>
|
|
24
29
|
</section>
|
|
25
30
|
<section aria-label="Variables">
|
|
26
31
|
<h2>Variables</h2>
|
|
@@ -20,7 +20,12 @@
|
|
|
20
20
|
<main class="submodule-main">
|
|
21
21
|
<section aria-label="Function I/O">
|
|
22
22
|
<h2>Function I/O</h2>
|
|
23
|
-
<
|
|
23
|
+
<table class="sub-table">
|
|
24
|
+
<thead><tr><th scope="col">Name</th><th scope="col">In</th><th scope="col">Out</th><th scope="col">Side</th><th scope="col">Purpose</th></tr></thead>
|
|
25
|
+
<tbody>
|
|
26
|
+
<tr><td>generateReport</td><td>scores</td><td>string</td><td>pure</td><td>彙總評分結果產出結構化 Markdown 報告</td></tr>
|
|
27
|
+
</tbody>
|
|
28
|
+
</table>
|
|
24
29
|
</section>
|
|
25
30
|
<section aria-label="Variables">
|
|
26
31
|
<h2>Variables</h2>
|
|
@@ -20,7 +20,12 @@
|
|
|
20
20
|
<main class="submodule-main">
|
|
21
21
|
<section aria-label="Function I/O">
|
|
22
22
|
<h2>Function I/O</h2>
|
|
23
|
-
<
|
|
23
|
+
<table class="sub-table">
|
|
24
|
+
<thead><tr><th scope="col">Name</th><th scope="col">In</th><th scope="col">Out</th><th scope="col">Side</th><th scope="col">Purpose</th></tr></thead>
|
|
25
|
+
<tbody>
|
|
26
|
+
<tr><td>callJudgeModel</td><td>prompt, options</td><td>ScoreResult</td><td>io</td><td>呼叫 Judge Model API 進行評分</td></tr>
|
|
27
|
+
</tbody>
|
|
28
|
+
</table>
|
|
24
29
|
</section>
|
|
25
30
|
<section aria-label="Variables">
|
|
26
31
|
<h2>Variables</h2>
|
|
@@ -20,7 +20,12 @@
|
|
|
20
20
|
<main class="submodule-main">
|
|
21
21
|
<section aria-label="Function I/O">
|
|
22
22
|
<h2>Function I/O</h2>
|
|
23
|
-
<
|
|
23
|
+
<table class="sub-table">
|
|
24
|
+
<thead><tr><th scope="col">Name</th><th scope="col">In</th><th scope="col">Out</th><th scope="col">Side</th><th scope="col">Purpose</th></tr></thead>
|
|
25
|
+
<tbody>
|
|
26
|
+
<tr><td>buildJudgePrompt</td><td>trace, scoreCriteria</td><td>string</td><td>pure</td><td>將 trace 事件摘要轉為評分提示詞</td></tr>
|
|
27
|
+
</tbody>
|
|
28
|
+
</table>
|
|
24
29
|
</section>
|
|
25
30
|
<section aria-label="Variables">
|
|
26
31
|
<h2>Variables</h2>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<html lang="en" data-atlas-page="macro">
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="utf-8">
|
|
5
|
-
<title>Project architecture</title>
|
|
5
|
+
<title>Project architecture (+ codegraph integration overlay)</title>
|
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
7
7
|
<meta name="color-scheme" content="dark">
|
|
8
8
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
@@ -12,8 +12,9 @@
|
|
|
12
12
|
</head>
|
|
13
13
|
<body>
|
|
14
14
|
<header class="atlas-header">
|
|
15
|
-
<h1>Project architecture</h1>
|
|
16
|
-
|
|
15
|
+
<h1>Project architecture (+ codegraph integration overlay)</h1>
|
|
16
|
+
<p class="atlas-summary">完整 C4 架構圖:eval 評測系統 (8 features) + codegraph 程式碼分析 (1 feature, 3 submodules)。 外部 actor: Judge Model API, GitHub Actions CI, Developer, Skill Files, @colbymchenry/codegraph (npm), @laitszkin/tool-registry, @laitszkin/tui。 Eval 管線包含完整資料流: CLI → Executor → Scorer → Reporter → CI Gate。
|
|
17
|
+
</p>
|
|
17
18
|
</header>
|
|
18
19
|
<main class="atlas-main">
|
|
19
20
|
<section class="atlas-canvas" aria-label="Macro architecture diagram">
|
|
@@ -23,7 +24,7 @@
|
|
|
23
24
|
<button type="button" data-pan-zoom="fit" aria-label="Reset view">Fit</button>
|
|
24
25
|
</div>
|
|
25
26
|
<div class="atlas-canvas__viewport" data-pan-zoom-viewport>
|
|
26
|
-
<svg class="atlas-svg" viewBox="0 0
|
|
27
|
+
<svg class="atlas-svg" viewBox="0 0 4335 1245" preserveAspectRatio="xMidYMid meet" role="img" aria-label="Project architecture atlas" data-atlas-svg="macro">
|
|
27
28
|
<defs>
|
|
28
29
|
<marker id="arrow-call" class="m-arrow m-arrow--call" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="8" markerHeight="8" orient="auto-start-reverse"><path d="M0,0 L10,5 L0,10 Z" /></marker>
|
|
29
30
|
<marker id="arrow-return" class="m-arrow m-arrow--return" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="8" markerHeight="8" orient="auto-start-reverse"><path d="M0,0 L10,5 L0,10 Z" /></marker>
|
|
@@ -31,161 +32,242 @@
|
|
|
31
32
|
<marker id="arrow-failure" class="m-arrow m-arrow--failure" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="8" markerHeight="8" orient="auto-start-reverse"><path d="M0,0 L10,5 L0,10 Z" /></marker>
|
|
32
33
|
</defs>
|
|
33
34
|
<g transform="translate(24,24)">
|
|
35
|
+
<g class="m-cluster" data-feature="codegraph">
|
|
36
|
+
<rect class="m-cluster__bg" x="20.00" y="318.00" width="1748.00" height="252.00" rx="14" ry="14" />
|
|
37
|
+
<text class="m-cluster__title" x="894.00" y="344.00" text-anchor="middle">CodeGraph Integration</text>
|
|
38
|
+
</g>
|
|
34
39
|
<g class="m-cluster" data-feature="eval-optimizer">
|
|
35
|
-
<rect class="m-cluster__bg" x="
|
|
36
|
-
<text class="m-cluster__title" x="
|
|
40
|
+
<rect class="m-cluster__bg" x="3243.00" y="227.75" width="255.00" height="405.00" rx="14" ry="14" />
|
|
41
|
+
<text class="m-cluster__title" x="3370.50" y="253.75" text-anchor="middle">優化引擎</text>
|
|
37
42
|
</g>
|
|
38
43
|
<g class="m-cluster" data-feature="eval-cli">
|
|
39
|
-
<rect class="m-cluster__bg" x="
|
|
40
|
-
<text class="m-cluster__title" x="
|
|
44
|
+
<rect class="m-cluster__bg" x="2129.00" y="368.00" width="291.00" height="295.00" rx="14" ry="14" />
|
|
45
|
+
<text class="m-cluster__title" x="2274.50" y="394.00" text-anchor="middle">CLI命令</text>
|
|
41
46
|
</g>
|
|
42
47
|
<g class="m-cluster" data-feature="eval-ci-gate">
|
|
43
|
-
<rect class="m-cluster__bg" x="
|
|
44
|
-
<text class="m-cluster__title" x="
|
|
48
|
+
<rect class="m-cluster__bg" x="2675.00" y="375.25" width="342.00" height="295.00" rx="14" ry="14" />
|
|
49
|
+
<text class="m-cluster__title" x="2846.00" y="401.25" text-anchor="middle">PR閘門</text>
|
|
45
50
|
</g>
|
|
46
51
|
<g class="m-cluster" data-feature="eval-isolation">
|
|
47
|
-
<rect class="m-cluster__bg" x="
|
|
48
|
-
<text class="m-cluster__title" x="
|
|
52
|
+
<rect class="m-cluster__bg" x="3264.00" y="991.75" width="524.00" height="185.00" rx="14" ry="14" />
|
|
53
|
+
<text class="m-cluster__title" x="3526.00" y="1017.75" text-anchor="middle">上下文隔離與工具模擬</text>
|
|
49
54
|
</g>
|
|
50
55
|
<g class="m-cluster" data-feature="eval-question">
|
|
51
|
-
<rect class="m-cluster__bg" x="
|
|
52
|
-
<text class="m-cluster__title" x="
|
|
56
|
+
<rect class="m-cluster__bg" x="2931.00" y="20.00" width="252.00" height="266.00" rx="14" ry="14" />
|
|
57
|
+
<text class="m-cluster__title" x="3057.00" y="46.00" text-anchor="middle">評測題庫</text>
|
|
53
58
|
</g>
|
|
54
59
|
<g class="m-cluster" data-feature="eval-executor">
|
|
55
|
-
<rect class="m-cluster__bg" x="
|
|
56
|
-
<text class="m-cluster__title" x="
|
|
60
|
+
<rect class="m-cluster__bg" x="2702.00" y="702.25" width="322.00" height="327.00" rx="14" ry="14" />
|
|
61
|
+
<text class="m-cluster__title" x="2863.00" y="728.25" text-anchor="middle">評測執行器</text>
|
|
57
62
|
</g>
|
|
58
63
|
<g class="m-cluster" data-feature="eval-scorer">
|
|
59
|
-
<rect class="m-cluster__bg" x="
|
|
60
|
-
<text class="m-cluster__title" x="
|
|
64
|
+
<rect class="m-cluster__bg" x="3290.00" y="664.75" width="451.00" height="295.00" rx="14" ry="14" />
|
|
65
|
+
<text class="m-cluster__title" x="3515.50" y="690.75" text-anchor="middle">評分引擎</text>
|
|
61
66
|
</g>
|
|
62
67
|
<g class="m-cluster" data-feature="eval-reporter">
|
|
63
|
-
<rect class="m-cluster__bg" x="
|
|
64
|
-
<text class="m-cluster__title" x="
|
|
68
|
+
<rect class="m-cluster__bg" x="4015.00" y="700.25" width="252.00" height="185.00" rx="14" ry="14" />
|
|
69
|
+
<text class="m-cluster__title" x="4141.00" y="726.25" text-anchor="middle">評測報告</text>
|
|
65
70
|
</g>
|
|
71
|
+
<a class="m-node m-node--service" href="features/codegraph/cg-lifecycle.html" data-feature="codegraph" data-submodule="cg-lifecycle" tabindex="0" aria-label="cg-lifecycle — Manage CodeGraph index lifecycle — init, sync, status, search — open sub-module page">
|
|
72
|
+
<title>cg-lifecycle — Manage CodeGraph index lifecycle — init, sync, status, search</title>
|
|
73
|
+
<rect x="36.00" y="447.00" width="393.00" height="94.00" rx="10" ry="10" />
|
|
74
|
+
<text class="m-node__title" x="232.50" y="477.00" text-anchor="middle">cg-lifecycle</text>
|
|
75
|
+
<text class="m-node__kind" x="232.50" y="493.00" text-anchor="middle">Service</text>
|
|
76
|
+
<text class="m-node__role" x="232.50" y="513.00" text-anchor="middle">Manage CodeGraph index lifecycle — init, sync, status, search</text>
|
|
77
|
+
</a>
|
|
78
|
+
<a class="m-node m-node--service" href="features/codegraph/cg-discovery.html" data-feature="codegraph" data-submodule="cg-discovery" tabindex="0" aria-label="cg-discovery — Explore and survey code structure — explore, survey, list-apis — open sub-module page">
|
|
79
|
+
<title>cg-discovery — Explore and survey code structure — explore, survey, list-apis</title>
|
|
80
|
+
<rect x="701.00" y="447.00" width="399.00" height="94.00" rx="10" ry="10" />
|
|
81
|
+
<text class="m-node__title" x="900.50" y="477.00" text-anchor="middle">cg-discovery</text>
|
|
82
|
+
<text class="m-node__kind" x="900.50" y="493.00" text-anchor="middle">Service</text>
|
|
83
|
+
<text class="m-node__role" x="900.50" y="513.00" text-anchor="middle">Explore and survey code structure — explore, survey, list-apis</text>
|
|
84
|
+
</a>
|
|
85
|
+
<a class="m-node m-node--service" href="features/codegraph/cg-validation.html" data-feature="codegraph" data-submodule="cg-validation" tabindex="0" aria-label="cg-validation — Verify architecture proposals and batch-apply atlas mutations — open sub-module page">
|
|
86
|
+
<title>cg-validation — Verify architecture proposals and batch-apply atlas mutations</title>
|
|
87
|
+
<rect x="1352.00" y="422.43" width="400.00" height="94.00" rx="10" ry="10" />
|
|
88
|
+
<text class="m-node__title" x="1552.00" y="452.43" text-anchor="middle">cg-validation</text>
|
|
89
|
+
<text class="m-node__kind" x="1552.00" y="468.43" text-anchor="middle">Service</text>
|
|
90
|
+
<text class="m-node__role" x="1552.00" y="488.43" text-anchor="middle">Verify architecture proposals and batch-apply atlas mutations</text>
|
|
91
|
+
</a>
|
|
66
92
|
<a class="m-node m-node--service" href="features/eval-optimizer/issue-extractor.html" data-feature="eval-optimizer" data-submodule="issue-extractor" tabindex="0" aria-label="issue-extractor — 從score.json提取問題、分類統計 — open sub-module page">
|
|
67
93
|
<title>issue-extractor — 從score.json提取問題、分類統計</title>
|
|
68
|
-
<rect x="
|
|
69
|
-
<text class="m-node__title" x="
|
|
70
|
-
<text class="m-node__kind" x="
|
|
71
|
-
<text class="m-node__role" x="
|
|
94
|
+
<rect x="3260.50" y="410.75" width="220.00" height="94.00" rx="10" ry="10" />
|
|
95
|
+
<text class="m-node__title" x="3370.50" y="440.75" text-anchor="middle">issue-extractor</text>
|
|
96
|
+
<text class="m-node__kind" x="3370.50" y="456.75" text-anchor="middle">Service</text>
|
|
97
|
+
<text class="m-node__role" x="3370.50" y="476.75" text-anchor="middle">從score.json提取問題、分類統計</text>
|
|
72
98
|
</a>
|
|
73
99
|
<a class="m-node m-node--service" href="features/eval-optimizer/dedup-engine.html" data-feature="eval-optimizer" data-submodule="dedup-engine" tabindex="0" aria-label="dedup-engine — Jaccard+Judge語意去重 — open sub-module page">
|
|
74
100
|
<title>dedup-engine — Jaccard+Judge語意去重</title>
|
|
75
|
-
<rect x="
|
|
76
|
-
<text class="m-node__title" x="
|
|
77
|
-
<text class="m-node__kind" x="
|
|
78
|
-
<text class="m-node__role" x="
|
|
101
|
+
<rect x="3260.50" y="520.75" width="220.00" height="94.00" rx="10" ry="10" />
|
|
102
|
+
<text class="m-node__title" x="3370.50" y="550.75" text-anchor="middle">dedup-engine</text>
|
|
103
|
+
<text class="m-node__kind" x="3370.50" y="566.75" text-anchor="middle">Service</text>
|
|
104
|
+
<text class="m-node__role" x="3370.50" y="586.75" text-anchor="middle">Jaccard+Judge語意去重</text>
|
|
79
105
|
</a>
|
|
80
106
|
<a class="m-node m-node--service" href="features/eval-optimizer/diff-generator.html" data-feature="eval-optimizer" data-submodule="diff-generator" tabindex="0" aria-label="diff-generator — FIND/REPLACE diff生成與備份/復原 — open sub-module page">
|
|
81
107
|
<title>diff-generator — FIND/REPLACE diff生成與備份/復原</title>
|
|
82
|
-
<rect x="
|
|
83
|
-
<text class="m-node__title" x="
|
|
84
|
-
<text class="m-node__kind" x="
|
|
85
|
-
<text class="m-node__role" x="
|
|
108
|
+
<rect x="3259.00" y="300.75" width="223.00" height="94.00" rx="10" ry="10" />
|
|
109
|
+
<text class="m-node__title" x="3370.50" y="330.75" text-anchor="middle">diff-generator</text>
|
|
110
|
+
<text class="m-node__kind" x="3370.50" y="346.75" text-anchor="middle">Service</text>
|
|
111
|
+
<text class="m-node__role" x="3370.50" y="366.75" text-anchor="middle">FIND/REPLACE diff生成與備份/復原</text>
|
|
86
112
|
</a>
|
|
87
113
|
<a class="m-node m-node--service" href="features/eval-cli/cli-handler.html" data-feature="eval-cli" data-submodule="cli-handler" tabindex="0" aria-label="cli-handler — ToolDefinition註冊、參數解析、流程編排 — open sub-module page">
|
|
88
114
|
<title>cli-handler — ToolDefinition註冊、參數解析、流程編排</title>
|
|
89
|
-
<rect x="
|
|
90
|
-
<text class="m-node__title" x="
|
|
91
|
-
<text class="m-node__kind" x="
|
|
92
|
-
<text class="m-node__role" x="
|
|
115
|
+
<rect x="2145.00" y="551.00" width="259.00" height="94.00" rx="10" ry="10" />
|
|
116
|
+
<text class="m-node__title" x="2274.50" y="581.00" text-anchor="middle">cli-handler</text>
|
|
117
|
+
<text class="m-node__kind" x="2274.50" y="597.00" text-anchor="middle">Service</text>
|
|
118
|
+
<text class="m-node__role" x="2274.50" y="617.00" text-anchor="middle">ToolDefinition註冊、參數解析、流程編排</text>
|
|
93
119
|
</a>
|
|
94
120
|
<a class="m-node m-node--ui" href="features/eval-cli/progress-display.html" data-feature="eval-cli" data-submodule="progress-display" tabindex="0" aria-label="progress-display — 終端機進度指示 — open sub-module page">
|
|
95
121
|
<title>progress-display — 終端機進度指示</title>
|
|
96
|
-
<rect x="
|
|
97
|
-
<text class="m-node__title" x="
|
|
98
|
-
<text class="m-node__kind" x="
|
|
99
|
-
<text class="m-node__role" x="
|
|
122
|
+
<rect x="2164.50" y="441.00" width="220.00" height="94.00" rx="10" ry="10" />
|
|
123
|
+
<text class="m-node__title" x="2274.50" y="471.00" text-anchor="middle">progress-display</text>
|
|
124
|
+
<text class="m-node__kind" x="2274.50" y="487.00" text-anchor="middle">UI</text>
|
|
125
|
+
<text class="m-node__role" x="2274.50" y="507.00" text-anchor="middle">終端機進度指示</text>
|
|
100
126
|
</a>
|
|
101
127
|
<a class="m-node m-node--service" href="features/eval-ci-gate/workflow-trigger.html" data-feature="eval-ci-gate" data-submodule="workflow-trigger" tabindex="0" aria-label="workflow-trigger — GitHub Actions workflow on PR skill file change — open sub-module page">
|
|
102
128
|
<title>workflow-trigger — GitHub Actions workflow on PR skill file change</title>
|
|
103
|
-
<rect x="
|
|
104
|
-
<text class="m-node__title" x="
|
|
105
|
-
<text class="m-node__kind" x="
|
|
106
|
-
<text class="m-node__role" x="
|
|
129
|
+
<rect x="2691.00" y="448.25" width="310.00" height="94.00" rx="10" ry="10" />
|
|
130
|
+
<text class="m-node__title" x="2846.00" y="478.25" text-anchor="middle">workflow-trigger</text>
|
|
131
|
+
<text class="m-node__kind" x="2846.00" y="494.25" text-anchor="middle">Service</text>
|
|
132
|
+
<text class="m-node__role" x="2846.00" y="514.25" text-anchor="middle">GitHub Actions workflow on PR skill file change</text>
|
|
107
133
|
</a>
|
|
108
134
|
<a class="m-node m-node--service" href="features/eval-ci-gate/pr-reporter.html" data-feature="eval-ci-gate" data-submodule="pr-reporter" tabindex="0" aria-label="pr-reporter — PR評論回報評測結果 — open sub-module page">
|
|
109
135
|
<title>pr-reporter — PR評論回報評測結果</title>
|
|
110
|
-
<rect x="
|
|
111
|
-
<text class="m-node__title" x="
|
|
112
|
-
<text class="m-node__kind" x="
|
|
113
|
-
<text class="m-node__role" x="
|
|
136
|
+
<rect x="2736.00" y="558.25" width="220.00" height="94.00" rx="10" ry="10" />
|
|
137
|
+
<text class="m-node__title" x="2846.00" y="588.25" text-anchor="middle">pr-reporter</text>
|
|
138
|
+
<text class="m-node__kind" x="2846.00" y="604.25" text-anchor="middle">Service</text>
|
|
139
|
+
<text class="m-node__role" x="2846.00" y="624.25" text-anchor="middle">PR評論回報評測結果</text>
|
|
114
140
|
</a>
|
|
115
141
|
<a class="m-node m-node--service" href="features/eval-isolation/tool-dispatcher.html" data-feature="eval-isolation" data-submodule="tool-dispatcher" tabindex="0" aria-label="tool-dispatcher — 工具調用攔截系統:讀取工具在workspace內真實執行、寫入工具模擬回傳、路徑穿越防護 — open sub-module page">
|
|
116
142
|
<title>tool-dispatcher — 工具調用攔截系統:讀取工具在workspace內真實執行、寫入工具模擬回傳、路徑穿越防護</title>
|
|
117
|
-
<rect x="
|
|
118
|
-
<text class="m-node__title" x="
|
|
119
|
-
<text class="m-node__kind" x="
|
|
120
|
-
<text class="m-node__role" x="
|
|
143
|
+
<rect x="3280.00" y="1064.75" width="492.00" height="94.00" rx="10" ry="10" />
|
|
144
|
+
<text class="m-node__title" x="3526.00" y="1094.75" text-anchor="middle">tool-dispatcher</text>
|
|
145
|
+
<text class="m-node__kind" x="3526.00" y="1110.75" text-anchor="middle">Service</text>
|
|
146
|
+
<text class="m-node__role" x="3526.00" y="1130.75" text-anchor="middle">工具調用攔截系統:讀取工具在workspace內真實執行、寫入工具模擬回傳、路徑穿越防護</text>
|
|
121
147
|
</a>
|
|
122
148
|
<a class="m-node m-node--service" href="features/eval-question/question-loader.html" data-feature="eval-question" data-submodule="question-loader" tabindex="0" aria-label="question-loader — 題目載入與JSON Schema驗證 — open sub-module page">
|
|
123
149
|
<title>question-loader — 題目載入與JSON Schema驗證</title>
|
|
124
|
-
<rect x="
|
|
125
|
-
<text class="m-node__title" x="
|
|
126
|
-
<text class="m-node__kind" x="
|
|
127
|
-
<text class="m-node__role" x="
|
|
150
|
+
<rect x="2947.00" y="64.00" width="220.00" height="94.00" rx="10" ry="10" />
|
|
151
|
+
<text class="m-node__title" x="3057.00" y="94.00" text-anchor="middle">question-loader</text>
|
|
152
|
+
<text class="m-node__kind" x="3057.00" y="110.00" text-anchor="middle">Service</text>
|
|
153
|
+
<text class="m-node__role" x="3057.00" y="130.00" text-anchor="middle">題目載入與JSON Schema驗證</text>
|
|
128
154
|
</a>
|
|
129
155
|
<a class="m-node m-node--service" href="features/eval-question/variant-generator.html" data-feature="eval-question" data-submodule="variant-generator" tabindex="0" aria-label="variant-generator — LLM變體生成,保留評分標準 — open sub-module page">
|
|
130
156
|
<title>variant-generator — LLM變體生成,保留評分標準</title>
|
|
131
|
-
<rect x="
|
|
132
|
-
<text class="m-node__title" x="
|
|
133
|
-
<text class="m-node__kind" x="
|
|
134
|
-
<text class="m-node__role" x="
|
|
157
|
+
<rect x="2947.00" y="174.00" width="220.00" height="94.00" rx="10" ry="10" />
|
|
158
|
+
<text class="m-node__title" x="3057.00" y="204.00" text-anchor="middle">variant-generator</text>
|
|
159
|
+
<text class="m-node__kind" x="3057.00" y="220.00" text-anchor="middle">Service</text>
|
|
160
|
+
<text class="m-node__role" x="3057.00" y="240.00" text-anchor="middle">LLM變體生成,保留評分標準</text>
|
|
135
161
|
</a>
|
|
136
162
|
<a class="m-node m-node--service" href="features/eval-executor/trace-recorder.html" data-feature="eval-executor" data-submodule="trace-recorder" tabindex="0" aria-label="trace-recorder — 多輪tool-use loop軌跡記錄:tool_call/tool_result事件序列、JSONL行號標記、.done完成標記 — open sub-module page">
|
|
137
163
|
<title>trace-recorder — 多輪tool-use loop軌跡記錄:tool_call/tool_result事件序列、JSONL行號標記、.done完成標記</title>
|
|
138
|
-
<rect x="
|
|
139
|
-
<text class="m-node__title" x="
|
|
140
|
-
<text class="m-node__kind" x="
|
|
141
|
-
<text class="m-node__role" x="
|
|
142
|
-
<text class="m-node__role" x="
|
|
143
|
-
<text class="m-node__role" x="
|
|
164
|
+
<rect x="2718.00" y="885.25" width="290.00" height="126.00" rx="10" ry="10" />
|
|
165
|
+
<text class="m-node__title" x="2863.00" y="915.25" text-anchor="middle">trace-recorder</text>
|
|
166
|
+
<text class="m-node__kind" x="2863.00" y="931.25" text-anchor="middle">Service</text>
|
|
167
|
+
<text class="m-node__role" x="2863.00" y="951.25" text-anchor="middle">多輪tool-use loop軌跡記錄:</text>
|
|
168
|
+
<text class="m-node__role" x="2863.00" y="967.25" text-anchor="middle">tool_call/tool_result事件序列、JSONL行號標</text>
|
|
169
|
+
<text class="m-node__role" x="2863.00" y="983.25" text-anchor="middle">記、.done完成標記</text>
|
|
144
170
|
</a>
|
|
145
171
|
<a class="m-node m-node--api" href="features/eval-executor/exec-api-client.html" data-feature="eval-executor" data-submodule="exec-api-client" tabindex="0" aria-label="exec-api-client — Exec Model HTTP client with retry — open sub-module page">
|
|
146
172
|
<title>exec-api-client — Exec Model HTTP client with retry</title>
|
|
147
|
-
<rect x="
|
|
148
|
-
<text class="m-node__title" x="
|
|
149
|
-
<text class="m-node__kind" x="
|
|
150
|
-
<text class="m-node__role" x="
|
|
173
|
+
<rect x="2749.50" y="775.25" width="227.00" height="94.00" rx="10" ry="10" />
|
|
174
|
+
<text class="m-node__title" x="2863.00" y="805.25" text-anchor="middle">exec-api-client</text>
|
|
175
|
+
<text class="m-node__kind" x="2863.00" y="821.25" text-anchor="middle">API</text>
|
|
176
|
+
<text class="m-node__role" x="2863.00" y="841.25" text-anchor="middle">Exec Model HTTP client with retry</text>
|
|
151
177
|
</a>
|
|
152
178
|
<a class="m-node m-node--service" href="features/eval-scorer/judge-prompt-builder.html" data-feature="eval-scorer" data-submodule="judge-prompt-builder" tabindex="0" aria-label="judge-prompt-builder — 評分提示詞構建:trace事件摘要含JSONL行號(L{N})引用、三維度評分指示 — open sub-module page">
|
|
153
179
|
<title>judge-prompt-builder — 評分提示詞構建:trace事件摘要含JSONL行號(L{N})引用、三維度評分指示</title>
|
|
154
|
-
<rect x="
|
|
155
|
-
<text class="m-node__title" x="
|
|
156
|
-
<text class="m-node__kind" x="
|
|
157
|
-
<text class="m-node__role" x="
|
|
180
|
+
<rect x="3306.00" y="737.75" width="419.00" height="94.00" rx="10" ry="10" />
|
|
181
|
+
<text class="m-node__title" x="3515.50" y="767.75" text-anchor="middle">judge-prompt-builder</text>
|
|
182
|
+
<text class="m-node__kind" x="3515.50" y="783.75" text-anchor="middle">Service</text>
|
|
183
|
+
<text class="m-node__role" x="3515.50" y="803.75" text-anchor="middle">評分提示詞構建:trace事件摘要含JSONL行號(L{N})引用、三維度評分指示</text>
|
|
158
184
|
</a>
|
|
159
185
|
<a class="m-node m-node--api" href="features/eval-scorer/judge-api-client.html" data-feature="eval-scorer" data-submodule="judge-api-client" tabindex="0" aria-label="judge-api-client — Judge Model HTTP client with parse fallback — open sub-module page">
|
|
160
186
|
<title>judge-api-client — Judge Model HTTP client with parse fallback</title>
|
|
161
|
-
<rect x="
|
|
162
|
-
<text class="m-node__title" x="
|
|
163
|
-
<text class="m-node__kind" x="
|
|
164
|
-
<text class="m-node__role" x="
|
|
187
|
+
<rect x="3372.00" y="847.75" width="287.00" height="94.00" rx="10" ry="10" />
|
|
188
|
+
<text class="m-node__title" x="3515.50" y="877.75" text-anchor="middle">judge-api-client</text>
|
|
189
|
+
<text class="m-node__kind" x="3515.50" y="893.75" text-anchor="middle">API</text>
|
|
190
|
+
<text class="m-node__role" x="3515.50" y="913.75" text-anchor="middle">Judge Model HTTP client with parse fallback</text>
|
|
165
191
|
</a>
|
|
166
192
|
<a class="m-node m-node--service" href="features/eval-reporter/report-composer.html" data-feature="eval-reporter" data-submodule="report-composer" tabindex="0" aria-label="report-composer — Markdown報告組合與渲染 — open sub-module page">
|
|
167
193
|
<title>report-composer — Markdown報告組合與渲染</title>
|
|
168
|
-
<rect x="
|
|
169
|
-
<text class="m-node__title" x="
|
|
170
|
-
<text class="m-node__kind" x="
|
|
171
|
-
<text class="m-node__role" x="
|
|
194
|
+
<rect x="4031.00" y="773.25" width="220.00" height="94.00" rx="10" ry="10" />
|
|
195
|
+
<text class="m-node__title" x="4141.00" y="803.25" text-anchor="middle">report-composer</text>
|
|
196
|
+
<text class="m-node__kind" x="4141.00" y="819.25" text-anchor="middle">Service</text>
|
|
197
|
+
<text class="m-node__role" x="4141.00" y="839.25" text-anchor="middle">Markdown報告組合與渲染</text>
|
|
172
198
|
</a>
|
|
173
|
-
<g class="m-edge m-edge--
|
|
174
|
-
<path d="
|
|
175
|
-
<text class="m-edge__label" x="
|
|
176
|
-
<tspan x="
|
|
199
|
+
<g class="m-edge m-edge--data-row m-edge--cross" data-edge="cg-e-001">
|
|
200
|
+
<path d="M409.00,185.40 L419.00,185.40 L419.00,182.77 L663.00,182.77 L663.00,191.67 L681.00,191.67" fill="none" marker-end="url(#arrow-data-row)" />
|
|
201
|
+
<text class="m-edge__label" x="545.00" y="200.77" text-anchor="middle">
|
|
202
|
+
<tspan x="545.00">survey/list-apis 依賴已索引的資料庫</tspan>
|
|
203
|
+
</text>
|
|
204
|
+
</g>
|
|
205
|
+
<g class="m-edge m-edge--data-row m-edge--cross" data-edge="cg-e-002">
|
|
206
|
+
<path d="M1080.00,191.67 L1090.00,191.67 L1090.00,182.77 L1314.00,182.77 L1314.00,174.93 L1332.00,174.93" fill="none" marker-end="url(#arrow-data-row)" />
|
|
207
|
+
<text class="m-edge__label" x="1206.00" y="200.77" text-anchor="middle">
|
|
208
|
+
<tspan x="1206.00">verify 使用 discovery 的搜尋能力</tspan>
|
|
209
|
+
</text>
|
|
210
|
+
</g>
|
|
211
|
+
<g class="m-edge m-edge--call m-edge--cross" data-edge="cg-e-003">
|
|
212
|
+
<path d="M429.00,522.20 L439.00,522.20 L439.00,551.00 L2129.00,551.00" fill="none" marker-end="url(#arrow-call)" />
|
|
213
|
+
<text class="m-edge__label" x="1951.00" y="569.00" text-anchor="middle">
|
|
214
|
+
<tspan x="1951.00">codegraph init --index 與 eval-cli 共用</tspan>
|
|
215
|
+
<tspan x="1951.00" dy="14">CLI 工具基礎架構</tspan>
|
|
216
|
+
</text>
|
|
217
|
+
</g>
|
|
218
|
+
<g class="m-edge m-edge--call m-edge--cross" data-edge="eval-cli-exec">
|
|
219
|
+
<path d="M2404.00,598.00 L2435.00,598.00 L2435.00,948.25 L2718.00,948.25" fill="none" marker-end="url(#arrow-call)" />
|
|
220
|
+
<text class="m-edge__label" x="2541.00" y="966.25" text-anchor="middle">
|
|
221
|
+
<tspan x="2541.00">evalHandler 觸發 runSingleTest</tspan>
|
|
222
|
+
</text>
|
|
223
|
+
</g>
|
|
224
|
+
<g class="m-edge m-edge--call m-edge--cross" data-edge="eval-exec-iso">
|
|
225
|
+
<path d="M3008.00,969.25 L3039.00,969.25 L3039.00,1111.75 L3280.00,1111.75" fill="none" marker-end="url(#arrow-call)" />
|
|
226
|
+
<text class="m-edge__label" x="3124.00" y="1129.75" text-anchor="middle">
|
|
227
|
+
<tspan x="3124.00">執行隔離環境中的工具調用</tspan>
|
|
228
|
+
</text>
|
|
229
|
+
</g>
|
|
230
|
+
<g class="m-edge m-edge--data-row m-edge--cross" data-edge="eval-exec-scorer">
|
|
231
|
+
<path d="M3008.00,927.25 L3049.00,927.25 L3049.00,784.75 L3306.00,784.75" fill="none" marker-end="url(#arrow-data-row)" />
|
|
232
|
+
<text class="m-edge__label" x="3157.00" y="802.75" text-anchor="middle">
|
|
233
|
+
<tspan x="3157.00">trace events 送入評分</tspan>
|
|
234
|
+
</text>
|
|
235
|
+
</g>
|
|
236
|
+
<g class="m-edge m-edge--data-row m-edge--cross" data-edge="eval-scorer-reporter">
|
|
237
|
+
<path d="M3741.00,792.75 L4015.00,792.75" fill="none" marker-end="url(#arrow-data-row)" />
|
|
238
|
+
<text class="m-edge__label" x="3878.00" y="810.75" text-anchor="middle">
|
|
239
|
+
<tspan x="3878.00">ScoreResult 送入報告組合</tspan>
|
|
240
|
+
</text>
|
|
241
|
+
</g>
|
|
242
|
+
<g class="m-edge m-edge--data-row m-edge--cross" data-edge="eval-exec-optimizer">
|
|
243
|
+
<path d="M3024.00,917.25 L3039.00,917.25 L3039.00,430.25 L3243.00,430.25" fill="none" marker-end="url(#arrow-data-row)" />
|
|
244
|
+
<text class="m-edge__label" x="3130.00" y="448.25" text-anchor="middle">
|
|
245
|
+
<tspan x="3130.00">執行結果觸發優化</tspan>
|
|
246
|
+
</text>
|
|
247
|
+
</g>
|
|
248
|
+
<g class="m-edge m-edge--call m-edge--cross" data-edge="eval-cli-ci">
|
|
249
|
+
<path d="M2420.00,588.00 L2475.00,588.00 L2475.00,522.75 L2675.00,522.75" fill="none" marker-end="url(#arrow-call)" />
|
|
250
|
+
<text class="m-edge__label" x="2550.00" y="512.75" text-anchor="middle">
|
|
251
|
+
<tspan x="2550.00">CI 模式下觸發 PR 回報</tspan>
|
|
252
|
+
</text>
|
|
253
|
+
</g>
|
|
254
|
+
<g class="m-edge m-edge--data-row" data-edge="cg-fe-001">
|
|
255
|
+
<path d="M429.00,484.60 L439.00,484.60 L439.00,478.33 L701.00,478.33" fill="none" marker-end="url(#arrow-data-row)" />
|
|
256
|
+
<text class="m-edge__label" x="565.00" y="468.33" text-anchor="middle">
|
|
257
|
+
<tspan x="565.00">survey/list-apis 依賴已索引的資料庫</tspan>
|
|
177
258
|
</text>
|
|
178
259
|
</g>
|
|
179
|
-
<g class="m-edge m-edge--
|
|
180
|
-
<path d="
|
|
181
|
-
<text class="m-edge__label" x="
|
|
182
|
-
<tspan x="
|
|
260
|
+
<g class="m-edge m-edge--data-row" data-edge="cg-fe-002">
|
|
261
|
+
<path d="M1100.00,478.33 L1334.00,478.33 L1334.00,469.43 L1352.00,469.43" fill="none" marker-end="url(#arrow-data-row)" />
|
|
262
|
+
<text class="m-edge__label" x="1226.00" y="468.33" text-anchor="middle">
|
|
263
|
+
<tspan x="1226.00">verify 使用 discovery 的搜尋能力</tspan>
|
|
183
264
|
</text>
|
|
184
265
|
</g>
|
|
185
|
-
<g class="m-edge m-edge--
|
|
186
|
-
<path d="
|
|
187
|
-
<text class="m-edge__label" x="
|
|
188
|
-
<tspan x="
|
|
266
|
+
<g class="m-edge m-edge--data-row" data-edge="cg-fe-003">
|
|
267
|
+
<path d="M1352.00,445.93 L1334.00,445.93 L1334.00,430.00 L439.00,430.00 L439.00,465.80 L429.00,465.80" fill="none" marker-end="url(#arrow-data-row)" />
|
|
268
|
+
<text class="m-edge__label" x="900.50" y="406.00" text-anchor="middle">
|
|
269
|
+
<tspan x="900.50">apply 非索引操作,不需 lifecycle — 但</tspan>
|
|
270
|
+
<tspan x="900.50" dy="14">template 可搭配 list-apis</tspan>
|
|
189
271
|
</text>
|
|
190
272
|
</g>
|
|
191
273
|
</g>
|
|
@@ -201,6 +283,30 @@
|
|
|
201
283
|
<section class="atlas-index" aria-label="Submodule index">
|
|
202
284
|
<h2>Submodule index</h2>
|
|
203
285
|
<ul class="atlas-submodule-index">
|
|
286
|
+
<li class="atlas-submodule-index__item">
|
|
287
|
+
<a href="features/codegraph/cg-lifecycle.html">
|
|
288
|
+
<span class="atlas-submodule-index__feature">CodeGraph Integration</span>
|
|
289
|
+
<span class="atlas-submodule-index__sub">cg-lifecycle</span>
|
|
290
|
+
<span class="atlas-submodule-index__kind">Service</span>
|
|
291
|
+
</a>
|
|
292
|
+
<p class="atlas-submodule-index__role">Manage CodeGraph index lifecycle — init, sync, status, search</p>
|
|
293
|
+
</li>
|
|
294
|
+
<li class="atlas-submodule-index__item">
|
|
295
|
+
<a href="features/codegraph/cg-discovery.html">
|
|
296
|
+
<span class="atlas-submodule-index__feature">CodeGraph Integration</span>
|
|
297
|
+
<span class="atlas-submodule-index__sub">cg-discovery</span>
|
|
298
|
+
<span class="atlas-submodule-index__kind">Service</span>
|
|
299
|
+
</a>
|
|
300
|
+
<p class="atlas-submodule-index__role">Explore and survey code structure — explore, survey, list-apis</p>
|
|
301
|
+
</li>
|
|
302
|
+
<li class="atlas-submodule-index__item">
|
|
303
|
+
<a href="features/codegraph/cg-validation.html">
|
|
304
|
+
<span class="atlas-submodule-index__feature">CodeGraph Integration</span>
|
|
305
|
+
<span class="atlas-submodule-index__sub">cg-validation</span>
|
|
306
|
+
<span class="atlas-submodule-index__kind">Service</span>
|
|
307
|
+
</a>
|
|
308
|
+
<p class="atlas-submodule-index__role">Verify architecture proposals and batch-apply atlas mutations</p>
|
|
309
|
+
</li>
|
|
204
310
|
<li class="atlas-submodule-index__item">
|
|
205
311
|
<a href="features/eval-optimizer/issue-extractor.html">
|
|
206
312
|
<span class="atlas-submodule-index__feature">優化引擎</span>
|