metrics-report
Scan an entire codebase, discover and run all test types, compute hybrid coverage, evaluate quality, and generate a full metrics report website with trends and charts.
- License 许可
- Unlicense
- 最近更新
- 2026-11-07
- Stars
- ★ 21
- Forks
- 9
01 前言 Front Matter
- name
- metrics-report
- description
- Scan an entire codebase, discover and run all test types, compute hybrid coverage, evaluate quality, and generate a full metrics report website with trends and charts.
- allowed-tools
- [ "Glob", "Grep", "Read", "Write", "Edit", "Bash", "Agent" ]
02 资源文件 491
- 参考文档design-doc.md20.6 KB
- 脚本install.sh758 B
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T03-24-20-864Z.yml40 B
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T03-24-54-612Z.yml40 B
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T03-26-54-125Z.yml4.9 KB
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T03-27-00-047Z.yml21.7 KB
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T03-28-25-604Z.yml4.4 KB
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T03-28-32-463Z.yml2.3 KB
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T03-28-38-798Z.yml2.6 KB
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T03-28-45-085Z.yml1.6 KB
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T03-28-51-686Z.yml1.7 KB
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T03-28-58-248Z.yml1.6 KB
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T03-29-04-988Z.yml2.2 KB
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T03-46-09-444Z.yml7.0 KB
- 资产文件metrics-report/.playwright-mcp/page-2026-04-01T03-46-26-001Z.png76.9 KB
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T03-59-54-453Z.yml5.4 KB
- 资产文件metrics-report/.playwright-mcp/page-2026-04-01T03-59-58-459Z.png99.2 KB
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T04-00-02-974Z.yml4.9 KB
- 资产文件metrics-report/.playwright-mcp/page-2026-04-01T04-00-07-350Z.png58.8 KB
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T04-06-20-908Z.yml7.1 KB
- 资产文件metrics-report/.playwright-mcp/page-2026-04-01T04-06-25-126Z.png99.2 KB
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T04-07-12-970Z.yml5.5 KB
- 资产文件metrics-report/.playwright-mcp/page-2026-04-01T04-07-17-164Z.png118.2 KB
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T04-07-41-626Z.yml7.3 KB
- 资产文件metrics-report/.playwright-mcp/page-2026-04-01T04-07-46-065Z.png127.1 KB
- 参考文档metrics-report/.playwright-mcp/page-2026-04-01T04-08-40-324Z.yml7.3 KB
- 资产文件metrics-report/.playwright-mcp/page-2026-04-01T04-08-44-224Z.png93.6 KB
- 参考文档metrics-report/metrics-application/index.html479 B
- 参考文档metrics-report/metrics-application/package-lock.json75.8 KB
- 参考文档metrics-report/metrics-application/package.json521 B
- 脚本metrics-report/metrics-application/run.sh611 B
- 其他metrics-report/metrics-application/src/App.tsx6.2 KB
- 其他metrics-report/metrics-application/src/components/AuthorLeaderboard.tsx3.4 KB
- 其他metrics-report/metrics-application/src/components/charts/PassFailDonut.tsx1.5 KB
- 其他metrics-report/metrics-application/src/components/charts/ScoreRadar.tsx1.1 KB
- 其他metrics-report/metrics-application/src/components/charts/StackedAreaChart.tsx2.5 KB
- 其他metrics-report/metrics-application/src/components/charts/TrendLineChart.tsx3.2 KB
- 其他metrics-report/metrics-application/src/components/charts/TypeBarChart.tsx986 B
- 其他metrics-report/metrics-application/src/components/CoverageTable.tsx4.0 KB
- 其他metrics-report/metrics-application/src/components/FailureList.tsx6.1 KB
- 其他metrics-report/metrics-application/src/components/QualityCard.tsx1.9 KB
- 其他metrics-report/metrics-application/src/components/ScoreGauge.tsx2.7 KB
- 其他metrics-report/metrics-application/src/components/SearchBar.tsx1.3 KB
- 其他metrics-report/metrics-application/src/components/TestTable.tsx7.8 KB
- 其他metrics-report/metrics-application/src/index.css24.4 KB
- 其他metrics-report/metrics-application/src/main.tsx317 B
- 其他metrics-report/metrics-application/src/pages/Authors.tsx650 B
- 其他metrics-report/metrics-application/src/pages/Coverage.tsx1.5 KB
- 其他metrics-report/metrics-application/src/pages/Dashboard.tsx4.3 KB
- 其他metrics-report/metrics-application/src/pages/Failures.tsx1.1 KB
- 其他metrics-report/metrics-application/src/pages/Quality.tsx1.8 KB
- 其他metrics-report/metrics-application/src/pages/Tests.tsx1.6 KB
- 其他metrics-report/metrics-application/src/pages/Trends.tsx1.6 KB
- 脚本metrics-report/metrics-application/src/types/metrics.ts2.7 KB
- 脚本metrics-report/metrics-application/src/vite-env.d.ts38 B
- 脚本metrics-report/metrics-application/stop.sh174 B
- 参考文档metrics-report/metrics-application/tsconfig.app.json178 B
- 参考文档metrics-report/metrics-application/tsconfig.json557 B
- 参考文档metrics-report/metrics-application/tsconfig.node.json311 B
- 其他metrics-report/metrics-application/tsconfig.tsbuildinfo759 B
- 脚本metrics-report/metrics-application/vite.config.ts164 B
- 参考文档metrics-report/metrics-config.json307 B
- 参考文档metrics-report/README.md—
- 脚本metrics-report/run.sh631 B
- 脚本metrics-report/stop.sh175 B
- 参考文档README.md4.9 KB
- 参考文档references/errors.md165 B
- 参考文档references/examples.md67 B
- 参考文档references/testing-configuration.md858 B
- 脚本sample-app/django-6-python313/backend/api/__init__.py—
- 脚本sample-app/django-6-python313/backend/api/admin.py63 B
- 脚本sample-app/django-6-python313/backend/api/apps.py81 B
- 脚本sample-app/django-6-python313/backend/api/migrations/__init__.py—
- 脚本sample-app/django-6-python313/backend/api/models.py57 B
- 脚本sample-app/django-6-python313/backend/api/serializers.py665 B
- 脚本sample-app/django-6-python313/backend/api/service.py6.3 KB
- 脚本sample-app/django-6-python313/backend/api/tests.py2.3 KB
- 脚本sample-app/django-6-python313/backend/api/urls.py186 B
- 脚本sample-app/django-6-python313/backend/api/views.py837 B
- 其他sample-app/django-6-python313/backend/db.sqlite3—
- 脚本sample-app/django-6-python313/backend/manage.py674 B
- 脚本sample-app/django-6-python313/backend/retirement_planner/__init__.py—
- 脚本sample-app/django-6-python313/backend/retirement_planner/asgi.py413 B
- 脚本sample-app/django-6-python313/backend/retirement_planner/settings.py2.2 KB
- 脚本sample-app/django-6-python313/backend/retirement_planner/urls.py177 B
- 脚本sample-app/django-6-python313/backend/retirement_planner/wsgi.py413 B
- 参考文档sample-app/django-6-python313/frontend/package-lock.json653.3 KB
- 参考文档sample-app/django-6-python313/frontend/package.json910 B
- 其他sample-app/django-6-python313/frontend/public/favicon.ico3.8 KB
- 参考文档sample-app/django-6-python313/frontend/public/index.html1.7 KB
- 资产文件sample-app/django-6-python313/frontend/public/logo192.png5.2 KB
- 资产文件sample-app/django-6-python313/frontend/public/logo512.png9.4 KB
- 参考文档sample-app/django-6-python313/frontend/public/manifest.json492 B
- 参考文档sample-app/django-6-python313/frontend/public/robots.txt67 B
- 参考文档sample-app/django-6-python313/frontend/README.md3.3 KB
- 脚本sample-app/django-6-python313/frontend/src/__tests__/App.test.js722 B
- 脚本sample-app/django-6-python313/frontend/src/__tests__/HomePage.test.js915 B
- 脚本sample-app/django-6-python313/frontend/src/__tests__/ResultsPage.test.js619 B
- 其他sample-app/django-6-python313/frontend/src/App.css6.2 KB
- 脚本sample-app/django-6-python313/frontend/src/App.js1.6 KB
- 其他sample-app/django-6-python313/frontend/src/index.css634 B
- 脚本sample-app/django-6-python313/frontend/src/index.js254 B
- 资产文件sample-app/django-6-python313/frontend/src/logo.svg2.6 KB
- 脚本sample-app/django-6-python313/frontend/src/pages/AboutPage.js2.7 KB
- 脚本sample-app/django-6-python313/frontend/src/pages/HomePage.js2.3 KB
- 脚本sample-app/django-6-python313/frontend/src/pages/ResultsPage.js6.8 KB
- 脚本sample-app/django-6-python313/frontend/src/pages/SimulationPage.js4.4 KB
- 脚本sample-app/django-6-python313/frontend/src/reportWebVitals.js362 B
- 脚本sample-app/django-6-python313/frontend/src/setupTests.js241 B
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T03-24-20-864Z.yml40 B
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T03-24-54-612Z.yml40 B
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T03-26-54-125Z.yml4.9 KB
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T03-27-00-047Z.yml21.7 KB
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T03-28-25-604Z.yml4.4 KB
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T03-28-32-463Z.yml2.3 KB
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T03-28-38-798Z.yml2.6 KB
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T03-28-45-085Z.yml1.6 KB
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T03-28-51-686Z.yml1.7 KB
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T03-28-58-248Z.yml1.6 KB
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T03-29-04-988Z.yml2.2 KB
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T03-46-09-444Z.yml7.0 KB
- 资产文件sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T03-46-26-001Z.png76.9 KB
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T03-59-54-453Z.yml5.4 KB
- 资产文件sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T03-59-58-459Z.png99.2 KB
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T04-00-02-974Z.yml4.9 KB
- 资产文件sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T04-00-07-350Z.png58.8 KB
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T04-06-20-908Z.yml7.1 KB
- 资产文件sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T04-06-25-126Z.png99.2 KB
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T04-07-12-970Z.yml5.5 KB
- 资产文件sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T04-07-17-164Z.png118.2 KB
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T04-07-41-626Z.yml7.3 KB
- 资产文件sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T04-07-46-065Z.png127.1 KB
- 参考文档sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T04-08-40-324Z.yml7.3 KB
- 资产文件sample-app/django-6-python313/metrics-report/.playwright-mcp/page-2026-04-01T04-08-44-224Z.png93.6 KB
- 参考文档sample-app/django-6-python313/metrics-report/metrics-application/index.html479 B
- 参考文档sample-app/django-6-python313/metrics-report/metrics-application/package-lock.json75.8 KB
- 参考文档sample-app/django-6-python313/metrics-report/metrics-application/package.json521 B
- 脚本sample-app/django-6-python313/metrics-report/metrics-application/run.sh611 B
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/App.tsx6.2 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/components/AuthorLeaderboard.tsx3.4 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/components/charts/PassFailDonut.tsx1.5 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/components/charts/ScoreRadar.tsx1.1 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/components/charts/StackedAreaChart.tsx2.5 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/components/charts/TrendLineChart.tsx3.2 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/components/charts/TypeBarChart.tsx986 B
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/components/CoverageTable.tsx4.0 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/components/FailureList.tsx6.1 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/components/QualityCard.tsx1.9 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/components/ScoreGauge.tsx2.7 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/components/SearchBar.tsx1.3 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/components/TestTable.tsx7.8 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/index.css24.4 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/main.tsx317 B
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/pages/Authors.tsx650 B
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/pages/Coverage.tsx1.5 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/pages/Dashboard.tsx4.3 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/pages/Failures.tsx1.1 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/pages/Quality.tsx1.8 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/pages/Tests.tsx1.6 KB
- 其他sample-app/django-6-python313/metrics-report/metrics-application/src/pages/Trends.tsx1.6 KB
- 脚本sample-app/django-6-python313/metrics-report/metrics-application/src/types/metrics.ts2.7 KB
- 脚本sample-app/django-6-python313/metrics-report/metrics-application/src/vite-env.d.ts38 B
- 脚本sample-app/django-6-python313/metrics-report/metrics-application/stop.sh174 B
- 参考文档sample-app/django-6-python313/metrics-report/metrics-application/tsconfig.app.json178 B
- 参考文档sample-app/django-6-python313/metrics-report/metrics-application/tsconfig.json557 B
- 参考文档sample-app/django-6-python313/metrics-report/metrics-application/tsconfig.node.json311 B
- 其他sample-app/django-6-python313/metrics-report/metrics-application/tsconfig.tsbuildinfo759 B
- 脚本sample-app/django-6-python313/metrics-report/metrics-application/vite.config.ts164 B
- 参考文档sample-app/django-6-python313/metrics-report/metrics-config.json307 B
- 脚本sample-app/django-6-python313/metrics-report/run.sh631 B
- 脚本sample-app/django-6-python313/metrics-report/stop.sh175 B
- 脚本sample-app/django-6-python313/run.sh350 B
- 脚本sample-app/django-6-python313/stop.sh355 B
- 参考文档sample-app/java-react/.playwright-mcp/page-2026-04-01T03-31-41-310Z.yml9.2 KB
- 资产文件sample-app/java-react/.playwright-mcp/page-2026-04-01T03-31-44-786Z.png81.1 KB
- 参考文档sample-app/java-react/.playwright-mcp/page-2026-04-01T03-32-23-335Z.yml—
- 资产文件sample-app/java-react/.playwright-mcp/page-2026-04-01T03-32-26-365Z.png4.4 KB
- 参考文档sample-app/java-react/.playwright-mcp/page-2026-04-01T04-26-26-754Z.yml7.3 KB
- 参考文档sample-app/java-react/.playwright-mcp/page-2026-04-01T04-26-53-593Z.yml5.1 KB
- 参考文档sample-app/java-react/.playwright-mcp/page-2026-04-01T04-27-01-430Z.yml9.9 KB
- 参考文档sample-app/java-react/.playwright-mcp/page-2026-04-01T04-27-09-594Z.yml2.0 KB
- 参考文档sample-app/java-react/.playwright-mcp/page-2026-04-01T04-27-17-081Z.yml2.4 KB
- 参考文档sample-app/java-react/.playwright-mcp/page-2026-04-01T04-27-25-281Z.yml4.9 KB
- 参考文档sample-app/java-react/.playwright-mcp/page-2026-04-01T04-27-33-365Z.yml2.2 KB
- 参考文档sample-app/java-react/.playwright-mcp/page-2026-04-01T04-39-19-576Z.yml10.3 KB
- 参考文档sample-app/java-react/.playwright-mcp/page-2026-04-01T04-42-18-727Z.yml10.3 KB
- 参考文档sample-app/java-react/.playwright-mcp/page-2026-04-01T04-45-25-867Z.yml3.9 KB
- 其他sample-app/java-react/backend.pid6 B
- 其他sample-app/java-react/backend/.mvn/wrapper/maven-wrapper.properties168 B
- 其他sample-app/java-react/backend/mvnw11.5 KB
- 其他sample-app/java-react/backend/mvnw.cmd8.3 KB
- 其他sample-app/java-react/backend/pom.xml1.5 KB
- 脚本sample-app/java-react/backend/src/main/java/com/retirement/config/CorsConfig.java780 B
- 脚本sample-app/java-react/backend/src/main/java/com/retirement/config/GlobalExceptionHandler.java1.0 KB
- 脚本sample-app/java-react/backend/src/main/java/com/retirement/controller/RetirementController.java1.2 KB
- 脚本sample-app/java-react/backend/src/main/java/com/retirement/model/RetirementInput.java3.1 KB
- 脚本sample-app/java-react/backend/src/main/java/com/retirement/model/RetirementResult.java2.8 KB
- 脚本sample-app/java-react/backend/src/main/java/com/retirement/model/YearlyProjection.java932 B
- 脚本sample-app/java-react/backend/src/main/java/com/retirement/RetirementPlannerApplication.java339 B
- 脚本sample-app/java-react/backend/src/main/java/com/retirement/service/RetirementCalculationService.java7.3 KB
- 其他sample-app/java-react/backend/src/main/resources/application.properties60 B
- 脚本sample-app/java-react/backend/src/test/java/com/retirement/service/RetirementCalculationServiceTest.java3.2 KB
- 其他sample-app/java-react/frontend.pid6 B
- 其他sample-app/java-react/frontend/.gitignore310 B
- 参考文档sample-app/java-react/frontend/package-lock.json653.3 KB
- 参考文档sample-app/java-react/frontend/package.json910 B
- 其他sample-app/java-react/frontend/public/favicon.ico3.8 KB
- 参考文档sample-app/java-react/frontend/public/index.html1.7 KB
- 资产文件sample-app/java-react/frontend/public/logo192.png5.2 KB
- 资产文件sample-app/java-react/frontend/public/logo512.png9.4 KB
- 参考文档sample-app/java-react/frontend/public/manifest.json492 B
- 参考文档sample-app/java-react/frontend/public/robots.txt67 B
- 参考文档sample-app/java-react/frontend/README.md3.3 KB
- 脚本sample-app/java-react/frontend/src/__tests__/App.test.js722 B
- 脚本sample-app/java-react/frontend/src/__tests__/HomePage.test.js915 B
- 脚本sample-app/java-react/frontend/src/__tests__/ResultsPage.test.js619 B
- 其他sample-app/java-react/frontend/src/App.css6.2 KB
- 脚本sample-app/java-react/frontend/src/App.js1.6 KB
- 其他sample-app/java-react/frontend/src/index.css634 B
- 脚本sample-app/java-react/frontend/src/index.js254 B
- 资产文件sample-app/java-react/frontend/src/logo.svg2.6 KB
- 脚本sample-app/java-react/frontend/src/pages/AboutPage.js2.7 KB
- 脚本sample-app/java-react/frontend/src/pages/HomePage.js2.3 KB
- 脚本sample-app/java-react/frontend/src/pages/ResultsPage.js6.8 KB
- 脚本sample-app/java-react/frontend/src/pages/SimulationPage.js4.4 KB
- 脚本sample-app/java-react/frontend/src/reportWebVitals.js362 B
- 脚本sample-app/java-react/frontend/src/setupTests.js241 B
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T03-24-20-864Z.yml40 B
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T03-24-54-612Z.yml40 B
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T03-26-54-125Z.yml4.9 KB
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T03-27-00-047Z.yml21.7 KB
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-25-604Z.yml4.4 KB
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-32-463Z.yml2.3 KB
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-38-798Z.yml2.6 KB
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-45-085Z.yml1.6 KB
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-51-686Z.yml1.7 KB
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-58-248Z.yml1.6 KB
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T03-29-04-988Z.yml2.2 KB
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T03-46-09-444Z.yml7.0 KB
- 资产文件sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T03-46-26-001Z.png76.9 KB
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T03-59-54-453Z.yml5.4 KB
- 资产文件sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T03-59-58-459Z.png99.2 KB
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T04-00-02-974Z.yml4.9 KB
- 资产文件sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T04-00-07-350Z.png58.8 KB
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T04-06-20-908Z.yml7.1 KB
- 资产文件sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T04-06-25-126Z.png99.2 KB
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T04-07-12-970Z.yml5.5 KB
- 资产文件sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T04-07-17-164Z.png118.2 KB
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T04-07-41-626Z.yml7.3 KB
- 资产文件sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T04-07-46-065Z.png127.1 KB
- 参考文档sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T04-08-40-324Z.yml7.3 KB
- 资产文件sample-app/java-react/metrics-report/.playwright-mcp/page-2026-04-01T04-08-44-224Z.png93.6 KB
- 参考文档sample-app/java-react/metrics-report/metrics-application/index.html479 B
- 参考文档sample-app/java-react/metrics-report/metrics-application/package-lock.json75.8 KB
- 参考文档sample-app/java-react/metrics-report/metrics-application/package.json521 B
- 脚本sample-app/java-react/metrics-report/metrics-application/run.sh611 B
- 其他sample-app/java-react/metrics-report/metrics-application/src/App.tsx6.2 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/components/AuthorLeaderboard.tsx3.4 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/components/charts/PassFailDonut.tsx1.5 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/components/charts/ScoreRadar.tsx1.1 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/components/charts/StackedAreaChart.tsx2.5 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/components/charts/TrendLineChart.tsx3.2 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/components/charts/TypeBarChart.tsx986 B
- 其他sample-app/java-react/metrics-report/metrics-application/src/components/CoverageTable.tsx4.0 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/components/FailureList.tsx6.1 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/components/QualityCard.tsx1.9 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/components/ScoreGauge.tsx2.7 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/components/SearchBar.tsx1.3 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/components/TestTable.tsx7.8 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/index.css24.4 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/main.tsx317 B
- 其他sample-app/java-react/metrics-report/metrics-application/src/pages/Authors.tsx650 B
- 其他sample-app/java-react/metrics-report/metrics-application/src/pages/Coverage.tsx1.5 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/pages/Dashboard.tsx4.3 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/pages/Failures.tsx1.1 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/pages/Quality.tsx1.8 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/pages/Tests.tsx1.6 KB
- 其他sample-app/java-react/metrics-report/metrics-application/src/pages/Trends.tsx1.6 KB
- 脚本sample-app/java-react/metrics-report/metrics-application/src/types/metrics.ts2.7 KB
- 脚本sample-app/java-react/metrics-report/metrics-application/src/vite-env.d.ts38 B
- 脚本sample-app/java-react/metrics-report/metrics-application/stop.sh174 B
- 参考文档sample-app/java-react/metrics-report/metrics-application/tsconfig.app.json178 B
- 参考文档sample-app/java-react/metrics-report/metrics-application/tsconfig.json557 B
- 参考文档sample-app/java-react/metrics-report/metrics-application/tsconfig.node.json311 B
- 其他sample-app/java-react/metrics-report/metrics-application/tsconfig.tsbuildinfo759 B
- 脚本sample-app/java-react/metrics-report/metrics-application/vite.config.ts164 B
- 参考文档sample-app/java-react/metrics-report/metrics-config.json307 B
- 脚本sample-app/java-react/metrics-report/run.sh631 B
- 脚本sample-app/java-react/metrics-report/stop.sh175 B
- 参考文档sample-app/java-react/README.md2.6 KB
- 脚本sample-app/java-react/run.sh325 B
- 资产文件sample-app/java-react/screenshots/01-dashboard.png91.2 KB
- 资产文件sample-app/java-react/screenshots/02-tests.png55.8 KB
- 资产文件sample-app/java-react/screenshots/03-coverage-fixed.png94.3 KB
- 资产文件sample-app/java-react/screenshots/03-coverage.png94.3 KB
- 资产文件sample-app/java-react/screenshots/04-failures.png34.3 KB
- 资产文件sample-app/java-react/screenshots/05-authors.png30.3 KB
- 资产文件sample-app/java-react/screenshots/06-trends.png73.7 KB
- 资产文件sample-app/java-react/screenshots/07-quality.png50.4 KB
- 脚本sample-app/java-react/stop.sh351 B
- 其他sample-app/rust-react/backend.pid6 B
- 其他sample-app/rust-react/backend/Cargo.lock38.1 KB
- 其他sample-app/rust-react/backend/Cargo.toml212 B
- 脚本sample-app/rust-react/backend/src/main.rs1.2 KB
- 脚本sample-app/rust-react/backend/src/models.rs1.4 KB
- 脚本sample-app/rust-react/backend/src/service.rs9.2 KB
- 其他sample-app/rust-react/frontend.pid6 B
- 脚本sample-app/rust-react/frontend/eslint.config.js18 B
- 参考文档sample-app/rust-react/frontend/index.html298 B
- 参考文档sample-app/rust-react/frontend/package-lock.json119.3 KB
- 参考文档sample-app/rust-react/frontend/package.json659 B
- 其他sample-app/rust-react/frontend/src/__tests__/App.test.jsx636 B
- 其他sample-app/rust-react/frontend/src/__tests__/HomePage.test.jsx605 B
- 其他sample-app/rust-react/frontend/src/__tests__/ResultsPage.test.jsx1.1 KB
- 其他sample-app/rust-react/frontend/src/App.css6.1 KB
- 其他sample-app/rust-react/frontend/src/App.jsx1.7 KB
- 其他sample-app/rust-react/frontend/src/index.css99 B
- 其他sample-app/rust-react/frontend/src/main.jsx508 B
- 其他sample-app/rust-react/frontend/src/pages/AboutPage.jsx2.3 KB
- 其他sample-app/rust-react/frontend/src/pages/HomePage.jsx1.2 KB
- 其他sample-app/rust-react/frontend/src/pages/ResultsPage.jsx5.0 KB
- 其他sample-app/rust-react/frontend/src/pages/SimulationPage.jsx3.8 KB
- 脚本sample-app/rust-react/frontend/src/setupTests.js120 B
- 脚本sample-app/rust-react/frontend/vite.config.js232 B
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T03-24-20-864Z.yml40 B
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T03-24-54-612Z.yml40 B
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T03-26-54-125Z.yml4.9 KB
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T03-27-00-047Z.yml21.7 KB
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-25-604Z.yml4.4 KB
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-32-463Z.yml2.3 KB
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-38-798Z.yml2.6 KB
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-45-085Z.yml1.6 KB
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-51-686Z.yml1.7 KB
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-58-248Z.yml1.6 KB
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T03-29-04-988Z.yml2.2 KB
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T03-46-09-444Z.yml7.0 KB
- 资产文件sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T03-46-26-001Z.png76.9 KB
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T03-59-54-453Z.yml5.4 KB
- 资产文件sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T03-59-58-459Z.png99.2 KB
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T04-00-02-974Z.yml4.9 KB
- 资产文件sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T04-00-07-350Z.png58.8 KB
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T04-06-20-908Z.yml7.1 KB
- 资产文件sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T04-06-25-126Z.png99.2 KB
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T04-07-12-970Z.yml5.5 KB
- 资产文件sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T04-07-17-164Z.png118.2 KB
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T04-07-41-626Z.yml7.3 KB
- 资产文件sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T04-07-46-065Z.png127.1 KB
- 参考文档sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T04-08-40-324Z.yml7.3 KB
- 资产文件sample-app/rust-react/metrics-report/.playwright-mcp/page-2026-04-01T04-08-44-224Z.png93.6 KB
- 参考文档sample-app/rust-react/metrics-report/metrics-application/index.html479 B
- 参考文档sample-app/rust-react/metrics-report/metrics-application/package-lock.json75.8 KB
- 参考文档sample-app/rust-react/metrics-report/metrics-application/package.json521 B
- 脚本sample-app/rust-react/metrics-report/metrics-application/run.sh611 B
- 其他sample-app/rust-react/metrics-report/metrics-application/src/App.tsx6.2 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/components/AuthorLeaderboard.tsx3.4 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/components/charts/PassFailDonut.tsx1.5 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/components/charts/ScoreRadar.tsx1.1 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/components/charts/StackedAreaChart.tsx2.5 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/components/charts/TrendLineChart.tsx3.2 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/components/charts/TypeBarChart.tsx986 B
- 其他sample-app/rust-react/metrics-report/metrics-application/src/components/CoverageTable.tsx4.0 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/components/FailureList.tsx6.1 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/components/QualityCard.tsx1.9 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/components/ScoreGauge.tsx2.7 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/components/SearchBar.tsx1.3 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/components/TestTable.tsx7.8 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/index.css24.4 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/main.tsx317 B
- 其他sample-app/rust-react/metrics-report/metrics-application/src/pages/Authors.tsx650 B
- 其他sample-app/rust-react/metrics-report/metrics-application/src/pages/Coverage.tsx1.5 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/pages/Dashboard.tsx4.3 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/pages/Failures.tsx1.1 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/pages/Quality.tsx1.8 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/pages/Tests.tsx1.6 KB
- 其他sample-app/rust-react/metrics-report/metrics-application/src/pages/Trends.tsx1.6 KB
- 脚本sample-app/rust-react/metrics-report/metrics-application/src/types/metrics.ts2.7 KB
- 脚本sample-app/rust-react/metrics-report/metrics-application/src/vite-env.d.ts38 B
- 脚本sample-app/rust-react/metrics-report/metrics-application/stop.sh174 B
- 参考文档sample-app/rust-react/metrics-report/metrics-application/tsconfig.app.json178 B
- 参考文档sample-app/rust-react/metrics-report/metrics-application/tsconfig.json557 B
- 参考文档sample-app/rust-react/metrics-report/metrics-application/tsconfig.node.json311 B
- 其他sample-app/rust-react/metrics-report/metrics-application/tsconfig.tsbuildinfo759 B
- 脚本sample-app/rust-react/metrics-report/metrics-application/vite.config.ts164 B
- 参考文档sample-app/rust-react/metrics-report/metrics-config.json307 B
- 脚本sample-app/rust-react/metrics-report/run.sh631 B
- 脚本sample-app/rust-react/metrics-report/stop.sh175 B
- 脚本sample-app/rust-react/run.sh384 B
- 脚本sample-app/rust-react/stop.sh351 B
- 其他sample-app/scala3-react/backend.pid6 B
- 其他sample-app/scala3-react/backend/.mvn/wrapper/maven-wrapper.properties168 B
- 其他sample-app/scala3-react/backend/mvnw11.5 KB
- 其他sample-app/scala3-react/backend/mvnw.cmd8.3 KB
- 其他sample-app/scala3-react/backend/pom.xml3.0 KB
- 其他sample-app/scala3-react/backend/src/main/resources/application.properties66 B
- 其他sample-app/scala3-react/backend/src/main/scala/com/retirement/config/CorsConfig.scala546 B
- 其他sample-app/scala3-react/backend/src/main/scala/com/retirement/config/GlobalExceptionHandler.scala954 B
- 其他sample-app/scala3-react/backend/src/main/scala/com/retirement/config/JacksonConfig.scala299 B
- 其他sample-app/scala3-react/backend/src/main/scala/com/retirement/controller/RetirementController.scala923 B
- 其他sample-app/scala3-react/backend/src/main/scala/com/retirement/model/RetirementInput.scala1.9 KB
- 其他sample-app/scala3-react/backend/src/main/scala/com/retirement/model/RetirementResult.scala844 B
- 其他sample-app/scala3-react/backend/src/main/scala/com/retirement/model/YearlyProjection.scala318 B
- 其他sample-app/scala3-react/backend/src/main/scala/com/retirement/RetirementPlannerApplication.scala351 B
- 其他sample-app/scala3-react/backend/src/main/scala/com/retirement/service/RetirementCalculationService.scala6.2 KB
- 其他sample-app/scala3-react/backend/src/test/scala/com/retirement/service/RetirementCalculationServiceTest.scala2.7 KB
- 其他sample-app/scala3-react/frontend.pid6 B
- 其他sample-app/scala3-react/frontend/bun.lock37.5 KB
- 参考文档sample-app/scala3-react/frontend/index.html298 B
- 参考文档sample-app/scala3-react/frontend/package.json426 B
- 其他sample-app/scala3-react/frontend/src/App.css6.2 KB
- 其他sample-app/scala3-react/frontend/src/App.jsx900 B
- 其他sample-app/scala3-react/frontend/src/index.css634 B
- 其他sample-app/scala3-react/frontend/src/main.jsx391 B
- 其他sample-app/scala3-react/frontend/src/pages/AboutPage.jsx2.7 KB
- 其他sample-app/scala3-react/frontend/src/pages/HomePage.jsx2.2 KB
- 其他sample-app/scala3-react/frontend/src/pages/ResultsPage.jsx6.9 KB
- 其他sample-app/scala3-react/frontend/src/pages/SimulationPage.jsx4.4 KB
- 其他sample-app/scala3-react/frontend/src/routeTree.jsx910 B
- 脚本sample-app/scala3-react/frontend/src/store.js408 B
- 脚本sample-app/scala3-react/frontend/vite.config.js133 B
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T03-24-20-864Z.yml40 B
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T03-24-54-612Z.yml40 B
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T03-26-54-125Z.yml4.9 KB
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T03-27-00-047Z.yml21.7 KB
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-25-604Z.yml4.4 KB
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-32-463Z.yml2.3 KB
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-38-798Z.yml2.6 KB
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-45-085Z.yml1.6 KB
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-51-686Z.yml1.7 KB
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T03-28-58-248Z.yml1.6 KB
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T03-29-04-988Z.yml2.2 KB
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T03-46-09-444Z.yml7.0 KB
- 资产文件sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T03-46-26-001Z.png76.9 KB
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T03-59-54-453Z.yml5.4 KB
- 资产文件sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T03-59-58-459Z.png99.2 KB
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T04-00-02-974Z.yml4.9 KB
- 资产文件sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T04-00-07-350Z.png58.8 KB
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T04-06-20-908Z.yml7.1 KB
- 资产文件sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T04-06-25-126Z.png99.2 KB
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T04-07-12-970Z.yml5.5 KB
- 资产文件sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T04-07-17-164Z.png118.2 KB
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T04-07-41-626Z.yml7.3 KB
- 资产文件sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T04-07-46-065Z.png127.1 KB
- 参考文档sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T04-08-40-324Z.yml7.3 KB
- 资产文件sample-app/scala3-react/metrics-report/.playwright-mcp/page-2026-04-01T04-08-44-224Z.png93.6 KB
- 参考文档sample-app/scala3-react/metrics-report/metrics-application/index.html479 B
- 参考文档sample-app/scala3-react/metrics-report/metrics-application/package-lock.json75.8 KB
- 参考文档sample-app/scala3-react/metrics-report/metrics-application/package.json521 B
- 脚本sample-app/scala3-react/metrics-report/metrics-application/run.sh611 B
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/App.tsx6.2 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/components/AuthorLeaderboard.tsx3.4 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/components/charts/PassFailDonut.tsx1.5 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/components/charts/ScoreRadar.tsx1.1 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/components/charts/StackedAreaChart.tsx2.5 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/components/charts/TrendLineChart.tsx3.2 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/components/charts/TypeBarChart.tsx986 B
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/components/CoverageTable.tsx4.0 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/components/FailureList.tsx6.1 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/components/QualityCard.tsx1.9 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/components/ScoreGauge.tsx2.7 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/components/SearchBar.tsx1.3 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/components/TestTable.tsx7.8 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/index.css24.4 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/main.tsx317 B
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/pages/Authors.tsx650 B
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/pages/Coverage.tsx1.5 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/pages/Dashboard.tsx4.3 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/pages/Failures.tsx1.1 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/pages/Quality.tsx1.8 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/pages/Tests.tsx1.6 KB
- 其他sample-app/scala3-react/metrics-report/metrics-application/src/pages/Trends.tsx1.6 KB
- 脚本sample-app/scala3-react/metrics-report/metrics-application/src/types/metrics.ts2.7 KB
- 脚本sample-app/scala3-react/metrics-report/metrics-application/src/vite-env.d.ts38 B
- 脚本sample-app/scala3-react/metrics-report/metrics-application/stop.sh174 B
- 参考文档sample-app/scala3-react/metrics-report/metrics-application/tsconfig.app.json178 B
- 参考文档sample-app/scala3-react/metrics-report/metrics-application/tsconfig.json557 B
- 参考文档sample-app/scala3-react/metrics-report/metrics-application/tsconfig.node.json311 B
- 其他sample-app/scala3-react/metrics-report/metrics-application/tsconfig.tsbuildinfo759 B
- 脚本sample-app/scala3-react/metrics-report/metrics-application/vite.config.ts164 B
- 参考文档sample-app/scala3-react/metrics-report/metrics-config.json307 B
- 脚本sample-app/scala3-react/metrics-report/run.sh631 B
- 脚本sample-app/scala3-react/metrics-report/stop.sh175 B
- 脚本sample-app/scala3-react/run.sh327 B
- 脚本sample-app/scala3-react/stop.sh351 B
- 资产文件screenshots/01-dashboard.png91.2 KB
- 资产文件screenshots/02-tests.png55.8 KB
- 资产文件screenshots/03-coverage.png94.3 KB
- 资产文件screenshots/04-failures.png34.3 KB
- 资产文件screenshots/05-authors.png30.3 KB
- 资产文件screenshots/06-trends.png73.7 KB
- 资产文件screenshots/07-quality.png50.4 KB
- 脚本uninstall.sh225 B
03 SKILL.md 正文
Metrics Report Skill
You are a metrics analysis agent. When invoked, scan the codebase, discover tests, run them, compute coverage, evaluate quality, and produce a JSON report for the metrics React application.
IMPORTANT: Optimize for speed. Use Agent tool to parallelize independent work. Use Grep/Glob instead of reading files when possible. Batch shell commands.
Progress Reporting (MANDATORY)
You MUST print progress to the user at every phase transition and every test type execution. Use this exact format:
- Phase transitions:
[Phase X/7] <phase name>... - Agent 3 test steps:
[Test X/Y] Running <type> tests (<backend|frontend>)...then[Test X/Y] <type> tests: <N> passed, <M> failed - Phase completion:
[Phase X/7] Done. <one-line summary of result>
This is NON-NEGOTIABLE. The user must always know what is happening and where we are in the process. Never go silent for more than one tool call without printing status.
Phase 0: Install Metrics Report Site
Print: [Phase 0/7] Installing metrics report site...
Check if metrics-report/metrics-application/ exists. If NOT, copy it from the skill installation directory and run npm install:
SKILL_DIR="$HOME/.claude/skills/metrics-report"
if [ ! -d "metrics-report/metrics-application" ]; then
mkdir -p metrics-report
cp -r "$SKILL_DIR/metrics-report/"* metrics-report/
cd metrics-report/metrics-application && npm install && cd ../..
fi
If metrics-report/metrics-application/ already exists but node_modules is missing, just run npm install:
if [ -d "metrics-report/metrics-application" ] && [ ! -d "metrics-report/metrics-application/node_modules" ]; then
cd metrics-report/metrics-application && npm install && cd ../..
fi
Print: [Phase 0/7] Done. Metrics report site ready.
Phase 1: Setup and Detection (do all at once)
Print: [Phase 1/7] Setup and detection...
Run these in a SINGLE Bash call chained with &&:
git remote get-url origin 2>/dev/null || echo ""; git rev-parse --abbrev-ref HEAD 2>/dev/null || echo "main"; git rev-parse --short HEAD 2>/dev/null || echo "unknown"
Check if metrics-report/metrics-config.json exists. If not, create it:
{
"port": 3737,
"testTypes": {
"unit": true,
"integration": true,
"contract": true,
"e2e": true,
"css": false,
"stress": false,
"chaos": false,
"mutation": false,
"observability": true,
"fuzzy": false,
"propertybased": false
},
"githubRemote": "origin"
}
Detect stacks using Glob (one call, check results):
pom.xmlorbuild.gradleorbuild.gradle.kts= Java/Spring Bootpackage.jsonwith react = React/Nodemanage.pyor django inpyproject.toml= Django/PythonCargo.tomlwith actix/axum/tokio = Rust
Print: [Phase 1/7] Done. Detected stacks: <list stacks found>
Phase 2: Scan and Run Tests
Print: [Phase 2/7] Scanning codebase and running tests...
Launch 2 background agents for read-only scanning, then run tests DIRECTLY with Bash (no agent).
Background Agent 1: File Count and Test Discovery
Use Glob to count all source files (skip node_modules, target, dist, build, .git, pycache, venv, .venv, metrics-report). Split by frontend/backend using file extension and path.
Then use Grep to find all test files in ONE pass per pattern:
Grep pattern="@Test|@ParameterizedTest" for Java
Grep pattern="def test_|class Test" for Python
Grep pattern="#\[test\]|#\[cfg\(test\)\]" for Rust
Grep pattern="describe\(|it\(|test\(" for JS/TS
Classify each test file by type using these Grep checks (batch them):
- Integration: Grep for
@SpringBootTest|@Testcontainers|@DataJpaTest|IntegrationTest|supertestacross test files - E2E: Grep for
@playwright/test|playwrightacross test files - Contract: Grep for
Pact|Contract|pactacross test files - Stress: Grep for
k6/http|k6/wsor files matching*.k6.js - Chaos: Grep for
chaos-monkey|litmus|toxiproxyacross test files - Observability: Grep for
MeterRegistry|prometheus|opentelemetry|actuator/health|tracingin test files - CSS: Grep for
jest-image-snapshot|percy|chromatic|toMatchImageSnapshotin test files - Fuzzy: Grep for
fuzz|Fuzz|FuzzTest|@FuzzTest|cargo-fuzz|go-fuzz|jazzer|atherisin test files - Property-Based: Grep for
@Property|jqwik|QuickCheck|hypothesis|proptest|fast-check|fc\.propertyin test files - Everything else in test dirs = unit
For each test file, extract test method names and line numbers using Grep (not Read):
- Java:
Grep pattern="@Test" -A 1to get method names - Python:
Grep pattern="def test_" - Rust:
Grep pattern="fn test_|#\[test\]" -A 1 - JS/TS:
Grep pattern="(it|test)\('"
Return: file counts, test file list with types and test names.
Background Agent 2: Git Attribution (batch)
Run a SINGLE bash command to get all test file authors at once:
for f in $(find . -path '*/test*' -name '*.java' -o -name '*.py' -o -name '*.rs' -o -name '*.ts' -o -name '*.tsx' -o -name '*.js' | grep -v node_modules | grep -v target | grep -v dist); do echo "$f:$(git log --format='%an' --diff-filter=A -- "$f" 2>/dev/null | head -1)"; done
Return: map of file path to author.
Run Tests Directly (NO agent — use Bash directly)
CRITICAL: Do NOT delegate test execution to an agent. Run tests DIRECTLY using Bash tool calls from the main conversation. Agent overhead adds massive latency for fast-running tests.
First use Grep to quickly check which test types actually exist:
- Grep for
@SpringBootTest|@Testcontainersin backend test files for integration - Grep for
Pact|Contractfor contract tests - Grep for
MeterRegistry|prometheus|actuatorfor observability tests - Grep for
@playwright/testfor e2e tests
Only run test types that have actual test files. Skip types with zero tests immediately.
Run each test type sequentially with Bash. Print progress before and after each:
[Test X/Y] Running <type> tests (<backend|frontend>)...
[Test X/Y] <type> tests done: <N> passed, <M> failed (<duration>s)
Commands per stack:
Java (Maven): cd backend && ./mvnw test jacoco:report 2>&1 | tail -20
Java (Gradle): cd backend && ./gradlew test jacocoTestReport -q 2>&1 | tail -20
Scala (Maven): cd backend && ./mvnw test jacoco:report 2>&1 | tail -20
Scala (sbt): cd backend && sbt jacoco 2>&1 | tail -20
Python: cd backend && python -m pytest --tb=short -v --cov=. --cov-report=json 2>&1 | tail -30
Rust: cd backend && cargo test 2>&1 | tail -20 then cargo tarpaulin --out json 2>&1 if available
Node: cd frontend && npx react-scripts test --watchAll=false --coverage 2>&1 | tail -40
E2E: cd frontend && npx playwright test 2>&1 | tail -20
Parse test results from output after each run. Parse coverage from report files:
- Java/Scala (Maven):
backend/target/site/jacoco/jacoco.csv - Scala (sbt):
backend/target/scala-*/jacoco/report/jacoco.csv - Python:
backend/coverage.json - Rust:
backend/tarpaulin-report.json - Node:
frontend/coverage/coverage-summary.json
When done, print: [Phase 2/7] Done. Found <N> test files, <M> source files, ran <K> test types.
Phase 3: LLM Coverage Mapping and Tool Coverage Parsing
Print: [Phase 3/7] Mapping test coverage to source files...
Step A: Parse tool coverage reports for per-file percentages
For backend files, parse the coverage report generated in Phase 2:
Java/Scala (JaCoCo CSV): Read backend/target/site/jacoco/jacoco.csv with Bash:
cat backend/target/site/jacoco/jacoco.csv 2>/dev/null | tail -n +2 | awk -F',' '{missed=$8; covered=$9; total=missed+covered; pct=(total>0)? int(covered*100/total) : 0; print $3","pct}'
This gives CLASS_NAME,COVERAGE_PCT. Map each class name to its source file path.
Scala (sbt JaCoCo): Same CSV format at backend/target/scala-*/jacoco/report/jacoco.csv.
Python (coverage.json): Read with Bash:
python3 -c "import json,sys; d=json.load(open('backend/coverage.json')); [print(f'{k},{int(v[\"summary\"][\"percent_covered\"])}') for k,v in d.get('files',{}).items()]" 2>/dev/null
Rust (tarpaulin): Read with Bash:
cat backend/tarpaulin-report.json 2>/dev/null | python3 -c "import json,sys; d=json.load(sys.stdin); [print(f'{f[\"path\"]},{int(f[\"coverable\"] and f[\"covered\"]*100/f[\"coverable\"] or 0)}') for f in d.get('files',[])]"
Node/React (coverage-summary.json): Read with Bash:
cat frontend/coverage/coverage-summary.json 2>/dev/null | python3 -c "import json,sys; d=json.load(sys.stdin); [print(f'{k},{int(v[\"lines\"][\"pct\"])}') for k,v in d.items() if k != 'total']"
If the coverage report file does not exist (tool not available), set tool: null and proceed to Step B for LLM mapping.
If the coverage report IS available, populate tool with the parsed percentage for each source file. Files not in the report get tool: 0.
Step B: LLM import mapping (for files missing tool coverage)
For each test file, use Grep to extract imports:
Grep pattern="^import " path="test-file.java"
Map imports to source files. For E2E tests, Grep for route URLs (page.goto, http.get) and map to controllers. Keep it to direct imports only — no full call chains.
Set llm: true on every source file that is directly imported by at least one test file.
Building the coverage array
For EVERY backend source file and EVERY frontend source file, create a coverage entry. Each entry must include ALL test types that have tests (not just unit). For test types with no tests, omit them from the coverage object.
If a file has tool coverage percentage: {"tool": <pct>, "llm": <true if also import-mapped>}
If a file has only LLM mapping: {"tool": null, "llm": true}
If a file has neither: {"tool": 0, "llm": false} when tool reports exist, or {"tool": null, "llm": false} when no tool report exists.
Print: [Phase 3/7] Done. Mapped <N> test files to <M> source files.
Phase 4: Quality Evaluation (fast)
Print: [Phase 4/7] Evaluating test quality...
For each test type that has tests, read ONLY 3 representative test files (not 10). Evaluate quickly:
- Assertion quality (meaningful vs trivial)
- Edge case coverage
- Test naming quality
Rate: poor/fair/good/excellent with one sentence justification.
Print: [Phase 4/7] Done. Quality ratings: <list each type and its rating>
Phase 5: Compute Score and Generate JSON
Print: [Phase 5/7] Computing score and generating report JSON...
Score (0-10):
| Criteria | Max | Calculation |
|---|---|---|
| Coverage breadth | 3 | (covered files / total source files) * 3 |
| Type diversity | 2 | 11 types=2.0, 9-10=1.7, 7-8=1.5, 5-6=1.2, 3-4=1.0, 1-2=0.5 |
| Pass rate | 2 | (passing / total) * 2 |
| Test quality | 2 | Average ratings: poor=0, fair=0.7, good=1.5, excellent=2.0 |
| Code-to-test ratio | 1 | test LOC / source LOC: >0.8=1.0, >0.5=0.7, >0.3=0.4, <0.3=0.1 |
Generate metrics-report/data/metrics-latest.json with the full schema:
{
"timestamp": "ISO-8601",
"repository": { "name": "", "url": "", "branch": "", "commit": "" },
"stacks": [],
"files": { "total": 0, "backend": 0, "frontend": 0, "testFiles": 0, "byExtension": {} },
"tests": {
"total": 0, "passing": 0, "failing": 0,
"byType": {
"unit": { "total": 0, "passing": 0, "failing": 0, "duration": 0, "files": [] },
"integration": { "total": 0, "passing": 0, "failing": 0, "duration": 0, "files": [] },
"contract": { "total": 0, "passing": 0, "failing": 0, "duration": 0, "files": [] },
"e2e": { "total": 0, "passing": 0, "failing": 0, "duration": 0, "files": [] },
"css": { "total": 0, "passing": 0, "failing": 0, "duration": 0, "files": [] },
"stress": { "total": 0, "passing": 0, "failing": 0, "duration": 0, "files": [] },
"chaos": { "total": 0, "passing": 0, "failing": 0, "duration": 0, "files": [] },
"mutation": { "total": 0, "passing": 0, "failing": 0, "duration": 0, "files": [] },
"observability": { "total": 0, "passing": 0, "failing": 0, "duration": 0, "files": [] },
"fuzzy": { "total": 0, "passing": 0, "failing": 0, "duration": 0, "files": [] },
"propertybased": { "total": 0, "passing": 0, "failing": 0, "duration": 0, "files": [] }
}
},
"failures": { "byType": {}, "details": [] },
"coverage": { "backend": [], "frontend": [] },
"authors": {},
"quality": { "byType": {} },
"score": { "total": 0, "breakdown": { "coverageBreadth": 0, "typeDiversity": 0, "passRate": 0, "testQuality": 0, "codeToTestRatio": 0 } }
}
Test file shape: { "path": "", "type": "", "testCount": 0, "passing": 0, "failing": 0, "author": "", "githubUrl": "", "tests": [{ "name": "", "status": "pass|fail", "duration": 0, "error": "", "line": 0, "githubUrl": "" }] }
Coverage file shape: { "file": "", "layer": "backend|frontend", "githubUrl": "", "coverage": { "unit": { "tool": 85, "llm": true }, "integration": { "tool": null, "llm": false } } } — include an entry for every test type that has tests. tool is a 0-100 integer from the coverage report (or null if no tool report), llm is true if the file is import-mapped by a test.
GitHub URL pattern: https://github.com/{owner}/{repo}/blob/{branch}/{filepath}#L{line}
Print: [Phase 5/7] Done. Score: <total>/10 (coverage: <X>, diversity: <X>, pass rate: <X>, quality: <X>, ratio: <X>)
Phase 6: History and Finalize
Print: [Phase 6/7] Saving history and finalizing...
Run in ONE Bash call:
mkdir -p metrics-report/data/history
cp metrics-report/data/metrics-latest.json "metrics-report/data/history/metrics-$(date -u +%Y-%m-%dT%H-%M-%S).json"
ls metrics-report/data/history/*.json | xargs -I{} basename {} | sort -r | head -50
Write the history-index.json with the file list from above.
If metrics-report/metrics-application/ exists, copy data:
mkdir -p metrics-report/metrics-application/public/data/history
cp metrics-report/data/metrics-latest.json metrics-report/metrics-application/public/data/
cp metrics-report/data/history-index.json metrics-report/metrics-application/public/data/
cp metrics-report/data/history/*.json metrics-report/metrics-application/public/data/history/
Print: [Phase 6/7] Done. History saved.
Print final summary:
=== METRICS REPORT COMPLETE ===
Score: <total>/10
Tests: <passing> passed / <failing> failed / <total> total
Coverage: <backend>% backend, <frontend>% frontend
Stacks: <list>
Then run the website:
cd metrics-report && bash run.sh
Print: Metrics report running at http://localhost:3737
Rules
- Do NOT fabricate results. Use real test output and real file analysis.
- Do NOT invent files that do not exist.
- If a test type has zero tests, report zeros.
- Preserve previous history snapshots.
- JSON must be valid.
- ALWAYS print progress. Never go more than 1 tool call without telling the user what is happening. Use [Phase X/6] and [Test X/Y] format.
- MAXIMIZE parallelism for codebase scanning (Agents 1, 2). Use Agent tool ONLY for read-only scanning work.
- NEVER delegate test execution to agents. Run tests DIRECTLY with Bash tool calls. Agent overhead adds massive latency for fast tests.
- NEVER parallelize test execution. Run test types sequentially: backend first, then frontend.
- MINIMIZE file reads. Use Grep/Glob over Read when possible.
- BATCH shell commands. One Bash call with chained commands over many calls.
04 同仓库更多 Skills
word-count
Counts the words, lines and characters of a text or a file.
slugify
Turns a title or a sentence into a URL slug, lowercase words joined by hyphens with accents removed.
json-format
Validates a JSON file and pretty prints it with two space indentation, or reports where the JSON is invalid.
commit-message
Writes a conventional commit message for the staged git changes.
skills-gateway
Gateway and router to a catalog of skills that are not registered directly. Use it before any task a specialized skill could handle, such as text, JSON or git chores. It finds the right skill and loads its instructions.
decision-log
Record, list, show and supersede architecture decisions that persist across sessions in the shared agent infra state store. Use when the user says "record this decision", "log an ADR", "what did we decide about", "list decisions", or "supersede decision".