chore: sync marketing pages, CMS extensions, tests and project docs
同步工作区剩余变更,主要包括: - 营销页面组件与布局持续优化(about/news/services/solutions/team 等) - 详情页四层叙事组件、布局组件、UI 组件调整 - CMS 数据模型、API 路由、权限、工作流、站内通知、媒体管理扩展 - 新增/补充单元测试与 E2E 测试(cms-workflow.spec.ts 等) - ESLint 9 迁移、jest/tsconfig 配置更新、依赖调整 - 新增 ADR、CMS 评估文档、Release Review / Acceptance 报告 - 移除水墨装饰组件与大体积未使用字体文件
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
# 依赖漏洞修复决策记录
|
||||
|
||||
## 决策背景
|
||||
|
||||
用户选择 **C**:尝试全部修复依赖漏洞,包括将 `next` 升级到 16。
|
||||
|
||||
## 执行结果
|
||||
|
||||
1. `npm audit fix --force` 失败:
|
||||
- `@lhci/cli` 被降级到 `0.1.0`,该版本尝试通过 `git+ssh://git@github.com/GoogleChrome/lighthouse.git` 拉取依赖。
|
||||
- 当前环境无 GitHub SSH 访问权限,导致 `npm error code 128`。
|
||||
- `eslint-config-next@16.2.11` 要求 `eslint@>=9.0.0`,与当前 `eslint@8.57.1` 冲突。
|
||||
|
||||
2. 按执行计划回退策略:
|
||||
- 恢复原始 `package-lock.json`。
|
||||
- 运行 `npm install` 回到原始依赖状态。
|
||||
- 执行 `npm audit fix`(非 `--force`)修复可向后兼容的漏洞。
|
||||
|
||||
3. 回退后验证:
|
||||
- `npm run build:clean` ✅ 通过
|
||||
- `npm run type-check` ✅ 通过
|
||||
- `npm run lint` ✅ 通过
|
||||
|
||||
## 当前状态
|
||||
|
||||
- 运行 `npm audit --audit-level moderate` 仍报告 **12 个漏洞**(3 low / 3 moderate / 6 high)。
|
||||
- 未修复的核心漏洞涉及 `next`、`postcss`、`@lhci/cli` 等,修复均需 breaking change。
|
||||
- 由于封版阶段不适合引入 major version 升级与 @lhci/cli 的 git 依赖问题,决定将剩余漏洞记录为**已知遗留风险**,不在本次封版前强制修复。
|
||||
|
||||
## 建议后续行动
|
||||
|
||||
- 上线后安排专项升级:`next` → 16.x、`eslint` → 9.x、`@lhci/cli` → 兼容版本。
|
||||
- 在 `RELEASE_ACCEPTANCE_REPORT.md` 中明确列出未修复漏洞清单与风险等级。
|
||||
@@ -0,0 +1,31 @@
|
||||
# 视觉回归人工抽检记录
|
||||
|
||||
## 抽检时间
|
||||
|
||||
2026-07-22
|
||||
|
||||
## 抽检样本
|
||||
|
||||
从 `e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/` 中抽取 5 张关键全页截图:
|
||||
|
||||
| 序号 | 页面 | 文件名 |
|
||||
|---|---|---|
|
||||
| 1 | 首页 | `home-fullpage-visual-chromium-desktop.png` |
|
||||
| 2 | 产品列表 | `products-fullpage-visual-chromium-desktop.png` |
|
||||
| 3 | 产品详情-ERP | `product-erp-fullpage-visual-chromium-desktop.png` |
|
||||
| 4 | 联系我们 | `contact-fullpage-visual-chromium-desktop.png` |
|
||||
| 5 | 新闻详情 | `news-detail-fullpage-visual-chromium-desktop.png` |
|
||||
|
||||
## 抽检结论
|
||||
|
||||
| 页面 | 检查结果 | 说明 |
|
||||
|---|---|---|
|
||||
| 首页 | ✅ 通过 | Hero 区域、数据指标、服务模块、案例模块、CTA 区域布局正常;品牌红 `#C41E3A` 用于关键词、CTA 按钮等关键触达点,未出现大面积滥用。 |
|
||||
| 产品列表 | ✅ 通过 | 企业套装与专业产品分类清晰,产品卡片排列整齐,推荐产品组合区域正常。 |
|
||||
| 产品详情-ERP | ✅ 通过 | 核心功能、产品价值、实施流程、可衡量成果、客户案例、资质认证、CTA 等四层叙事结构完整,未发现文字截断或元素重叠。 |
|
||||
| 联系我们 | ✅ 通过 | 联系信息与表单左右布局清晰,表单字段完整,提交按钮使用品牌红色,底部备案信息可见。 |
|
||||
| 新闻详情 | ✅ 通过 | 标题、日期、分类、正文、配图、返回/CTA 按钮布局正常,无内容溢出。 |
|
||||
|
||||
## 总体结论
|
||||
|
||||
5 张关键页面截图均未发现布局错乱、文字截断、品牌色滥用或明显视觉异常。视觉回归基线更新可接受。
|
||||
@@ -0,0 +1 @@
|
||||
d2a4e702dac62d31791b611dc748485ab18f180e
|
||||
@@ -0,0 +1,238 @@
|
||||
M .env.example
|
||||
M CONTEXT.md
|
||||
M README.md
|
||||
M config/test/jest.config.js
|
||||
M e2e/playwright.config.ts
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/about-fullpage-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/contact-fullpage-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/footer-section-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/header-navigation-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/home-fullpage-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/news-detail-fullpage-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/news-fullpage-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/product-erp-fullpage-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/products-fullpage-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/service-software-fullpage-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/services-fullpage-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/solution-manufacturing-fullpage-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/solutions-fullpage-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/team-fullpage-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/theme-dark-main-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-desktop/visual-regression.spec.ts/theme-light-main-visual-chromium-desktop.png
|
||||
M e2e/visual-snapshots/visual-chromium-mobile/visual-regression.spec.ts/about-fullpage-visual-chromium-mobile.png
|
||||
M e2e/visual-snapshots/visual-chromium-mobile/visual-regression.spec.ts/contact-fullpage-visual-chromium-mobile.png
|
||||
M e2e/visual-snapshots/visual-chromium-mobile/visual-regression.spec.ts/footer-section-visual-chromium-mobile.png
|
||||
M e2e/visual-snapshots/visual-chromium-mobile/visual-regression.spec.ts/home-fullpage-visual-chromium-mobile.png
|
||||
M e2e/visual-snapshots/visual-chromium-mobile/visual-regression.spec.ts/news-detail-fullpage-visual-chromium-mobile.png
|
||||
M e2e/visual-snapshots/visual-chromium-mobile/visual-regression.spec.ts/news-fullpage-visual-chromium-mobile.png
|
||||
M e2e/visual-snapshots/visual-chromium-mobile/visual-regression.spec.ts/product-erp-fullpage-visual-chromium-mobile.png
|
||||
M e2e/visual-snapshots/visual-chromium-mobile/visual-regression.spec.ts/products-fullpage-visual-chromium-mobile.png
|
||||
M e2e/visual-snapshots/visual-chromium-mobile/visual-regression.spec.ts/service-software-fullpage-visual-chromium-mobile.png
|
||||
M e2e/visual-snapshots/visual-chromium-mobile/visual-regression.spec.ts/services-fullpage-visual-chromium-mobile.png
|
||||
M e2e/visual-snapshots/visual-chromium-mobile/visual-regression.spec.ts/solution-manufacturing-fullpage-visual-chromium-mobile.png
|
||||
M e2e/visual-snapshots/visual-chromium-mobile/visual-regression.spec.ts/solutions-fullpage-visual-chromium-mobile.png
|
||||
M e2e/visual-snapshots/visual-chromium-mobile/visual-regression.spec.ts/team-fullpage-visual-chromium-mobile.png
|
||||
M e2e/visual-snapshots/visual-chromium-mobile/visual-regression.spec.ts/theme-dark-main-visual-chromium-mobile.png
|
||||
M e2e/visual-snapshots/visual-chromium-mobile/visual-regression.spec.ts/theme-light-main-visual-chromium-mobile.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/about-fullpage-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/contact-fullpage-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/footer-section-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/header-navigation-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/home-fullpage-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/news-detail-fullpage-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/news-fullpage-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/product-erp-fullpage-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/products-fullpage-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/service-software-fullpage-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/services-fullpage-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/solution-manufacturing-fullpage-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/solutions-fullpage-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/team-fullpage-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/theme-dark-main-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-chromium-tablet/visual-regression.spec.ts/theme-light-main-visual-chromium-tablet.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/about-fullpage-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/contact-fullpage-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/footer-section-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/header-navigation-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/home-fullpage-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/news-detail-fullpage-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/news-fullpage-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/product-erp-fullpage-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/products-fullpage-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/service-software-fullpage-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/services-fullpage-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/solution-manufacturing-fullpage-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/solutions-fullpage-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/team-fullpage-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/theme-dark-main-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-firefox-desktop/visual-regression.spec.ts/theme-light-main-visual-firefox-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/about-fullpage-visual-webkit-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/contact-fullpage-visual-webkit-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/footer-section-visual-webkit-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/header-navigation-visual-webkit-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/home-fullpage-visual-webkit-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/news-detail-fullpage-visual-webkit-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/news-fullpage-visual-webkit-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/product-erp-fullpage-visual-webkit-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/products-fullpage-visual-webkit-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/service-software-fullpage-visual-webkit-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/services-fullpage-visual-webkit-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/solution-manufacturing-fullpage-visual-webkit-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/solutions-fullpage-visual-webkit-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/team-fullpage-visual-webkit-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/theme-dark-main-visual-webkit-desktop.png
|
||||
M e2e/visual-snapshots/visual-webkit-desktop/visual-regression.spec.ts/theme-light-main-visual-webkit-desktop.png
|
||||
M nginx-static-production.conf
|
||||
M package-lock.json
|
||||
M package.json
|
||||
M prisma/schema.prisma
|
||||
M prisma/seed.ts
|
||||
M scripts/utils/check-heading-hierarchy.ts
|
||||
M src/app/(marketing)/about/about-content-v2.tsx
|
||||
M src/app/(marketing)/about/about-content-v3.tsx
|
||||
M src/app/(marketing)/about/about-content-v4.tsx
|
||||
M src/app/(marketing)/cases/[slug]/page.tsx
|
||||
D src/app/(marketing)/cases/cases-content-v1.tsx
|
||||
D src/app/(marketing)/cases/cases-content-v2.tsx
|
||||
M src/app/(marketing)/cases/client.tsx
|
||||
M src/app/(marketing)/cases/page.tsx
|
||||
M src/app/(marketing)/contact/contact-content-v2.tsx
|
||||
M src/app/(marketing)/home-content-v11.tsx
|
||||
M src/app/(marketing)/home-content-v12.tsx
|
||||
M src/app/(marketing)/home-content-v13.tsx
|
||||
M src/app/(marketing)/news/[slug]/NewsDetailClient.tsx
|
||||
M src/app/(marketing)/news/[slug]/page.tsx
|
||||
M src/app/(marketing)/news/news-content-v3.tsx
|
||||
M src/app/(marketing)/news/page.tsx
|
||||
M src/app/(marketing)/page.tsx
|
||||
M src/app/(marketing)/products/[id]/page.test.tsx
|
||||
M src/app/(marketing)/products/[id]/page.tsx
|
||||
M src/app/(marketing)/products/page.tsx
|
||||
M src/app/(marketing)/products/product-detail-content-v3.tsx
|
||||
M src/app/(marketing)/products/products-content-v3.tsx
|
||||
M src/app/(marketing)/products/standalone/[id]/client.tsx
|
||||
M src/app/(marketing)/products/standalone/[id]/page.tsx
|
||||
M src/app/(marketing)/services/[id]/page.tsx
|
||||
M src/app/(marketing)/services/page.tsx
|
||||
M src/app/(marketing)/services/service-detail-content-v2.tsx
|
||||
M src/app/(marketing)/services/service-detail-content-v4.tsx
|
||||
M src/app/(marketing)/services/services-content-v3.tsx
|
||||
M src/app/(marketing)/solutions/[id]/page.tsx
|
||||
M src/app/(marketing)/solutions/page.tsx
|
||||
M src/app/(marketing)/team/page.tsx
|
||||
M src/app/(marketing)/team/team-content-v3.tsx
|
||||
M src/app/api/admin/items/route.ts
|
||||
M src/app/api/admin/media/route.ts
|
||||
M src/app/api/admin/models/route.ts
|
||||
M src/app/api/admin/zones/route.ts
|
||||
M src/app/api/cms/revalidate/route.ts
|
||||
M src/app/api/contact/route.ts
|
||||
M src/app/globals.css
|
||||
M src/app/privacy/page.test.tsx
|
||||
M src/app/privacy/page.tsx
|
||||
M src/app/terms/page.test.tsx
|
||||
M src/app/terms/page.tsx
|
||||
M src/components/admin/admin-layout.tsx
|
||||
M src/components/content/sections.tsx
|
||||
M src/components/detail/brand-elements.tsx
|
||||
M src/components/detail/detail-cross-recommend.tsx
|
||||
M src/components/detail/detail-cta-section.tsx
|
||||
M src/components/detail/detail-hero.tsx
|
||||
M src/components/detail/detail-product-value.tsx
|
||||
M src/components/detail/detail-trust-section.tsx
|
||||
M src/components/detail/detail.test.tsx
|
||||
M src/components/detail/index.ts
|
||||
M src/components/detail/micro-interactions.tsx
|
||||
M src/components/detail/service-value.tsx
|
||||
M src/components/detail/solution-value.tsx
|
||||
M src/components/layout/footer.tsx
|
||||
M src/components/layout/header.tsx
|
||||
M src/components/layout/mega-dropdown.tsx
|
||||
M src/components/sections/hero-section-v2.tsx
|
||||
M src/components/sections/methodology-section.tsx
|
||||
M src/components/sections/sections.test.tsx
|
||||
M src/components/ui/challenge-card.tsx
|
||||
D src/components/ui/hero-ink-background.tsx
|
||||
M src/components/ui/index.ts
|
||||
D src/components/ui/ink-glow-card.tsx
|
||||
D src/components/ui/ink-wash/InkCard.tsx
|
||||
D src/components/ui/ink-wash/InkWashBackground.tsx
|
||||
D src/components/ui/ink-wash/index.ts
|
||||
M src/components/ui/page-decoration.tsx
|
||||
M src/components/ui/product-card.tsx
|
||||
D src/hooks/use-focus-trap.test.ts
|
||||
D src/hooks/use-mouse-glow.test.ts
|
||||
D src/hooks/use-mouse-glow.ts
|
||||
M src/hooks/use-reduced-motion.test.ts
|
||||
M src/lib/admin-api.ts
|
||||
M src/lib/animations.test.tsx
|
||||
M src/lib/animations.tsx
|
||||
M src/lib/auth.ts
|
||||
M src/lib/cms/content-types.ts
|
||||
M src/lib/cms/data-server.test.ts
|
||||
M src/lib/cms/data-server.ts
|
||||
M src/lib/cms/types.ts
|
||||
M src/lib/constants.ts
|
||||
M src/lib/constants/cases.test.ts
|
||||
M src/lib/constants/cases.ts
|
||||
M src/lib/constants/hero-themes.ts
|
||||
M src/lib/constants/index.ts
|
||||
M src/lib/constants/products.ts
|
||||
M src/lib/constants/services.ts
|
||||
M src/lib/constants/solutions.ts
|
||||
M src/lib/constants/team.ts
|
||||
M src/middleware.ts
|
||||
M tailwind.config.js
|
||||
M tsconfig.json
|
||||
?? .lighthouseci/
|
||||
?? RELEASE_REVIEW_REPORT.md
|
||||
?? accessibility-report.json
|
||||
?? docs/adr/0006-remove-ink-elements-pure-consulting.md
|
||||
?? docs/adr/0007-hybrid-rendering-for-cms.md
|
||||
?? docs/cms-evaluation.md
|
||||
?? docs/superpowers/specs/2026-07-17-cms-implementation-prd.md
|
||||
?? docs/superpowers/specs/2026-07-17-cms-implementation-tasks.md
|
||||
?? e2e/cms-workflow.spec.ts
|
||||
?? e2e/storageState.json
|
||||
?? e2e/visual-regression.spec.ts-snapshots/
|
||||
?? heading-hierarchy-report.json
|
||||
?? prisma/migrations/20260717034113_add_locale_to_content_item/
|
||||
?? prisma/migrations/20260717035951_add_rbac_models/
|
||||
?? prisma/migrations/20260717041418_add_media_derivatives/
|
||||
?? prisma/migrations/20260717044101_add_notification_model/
|
||||
?? prisma/seeds/
|
||||
?? release-acceptance-reports/
|
||||
?? scripts/accessibility-test.js
|
||||
?? src/app/(marketing)/about/brand/
|
||||
?? src/app/(marketing)/cases/[slug]/page.test.tsx
|
||||
?? src/app/(marketing)/cases/page.test.tsx
|
||||
?? src/app/(marketing)/home-content-v14.tsx
|
||||
?? src/app/(marketing)/news/[slug]/page.test.tsx
|
||||
?? src/app/(marketing)/news/page.test.tsx
|
||||
?? src/app/(marketing)/page.test.tsx
|
||||
?? src/app/(marketing)/products/page.test.tsx
|
||||
?? src/app/(marketing)/products/standalone/[id]/page.test.tsx
|
||||
?? src/app/(marketing)/services/[id]/page.test.tsx
|
||||
?? src/app/(marketing)/services/page.test.tsx
|
||||
?? src/app/(marketing)/solutions/[id]/page.test.tsx
|
||||
?? src/app/(marketing)/solutions/page.test.tsx
|
||||
?? src/app/(marketing)/team/page.test.tsx
|
||||
?? src/app/admin/roles/
|
||||
?? src/app/api/admin/items/[id]/
|
||||
?? src/app/api/admin/items/route.test.ts
|
||||
?? src/app/api/admin/media/route.test.ts
|
||||
?? src/app/api/admin/models/route.test.ts
|
||||
?? src/app/api/admin/notifications/
|
||||
?? src/app/api/admin/roles/
|
||||
?? src/app/api/admin/zones/route.test.ts
|
||||
?? src/app/api/cms/revalidate/route.test.ts
|
||||
?? src/components/content/sections.test.tsx
|
||||
?? src/components/content/testimonials.test.tsx
|
||||
?? src/hooks/use-focus-trap.test.tsx
|
||||
?? src/lib/cms/notifications.test.ts
|
||||
?? src/lib/cms/notifications.ts
|
||||
?? src/lib/cms/workflow.test.ts
|
||||
?? src/lib/cms/workflow.ts
|
||||
?? src/lib/media/
|
||||
?? src/lib/permissions.test.ts
|
||||
?? src/lib/permissions.ts
|
||||
@@ -0,0 +1,258 @@
|
||||
{
|
||||
"root_group": {
|
||||
"checks": [
|
||||
{
|
||||
"name": "status is 200",
|
||||
"path": "::status is 200",
|
||||
"id": "6210a8cd14cd70477eba5c5e4cb3fb5f",
|
||||
"passes": 49965,
|
||||
"fails": 0
|
||||
},
|
||||
{
|
||||
"fails": 741,
|
||||
"name": "response time < 500ms",
|
||||
"path": "::response time < 500ms",
|
||||
"id": "3e02485a995423a591645f4eee6c60eb",
|
||||
"passes": 49224
|
||||
}
|
||||
],
|
||||
"name": "",
|
||||
"path": "",
|
||||
"id": "d41d8cd98f00b204e9800998ecf8427e",
|
||||
"groups": []
|
||||
},
|
||||
"options": {
|
||||
"summaryTrendStats": [
|
||||
"avg",
|
||||
"min",
|
||||
"med",
|
||||
"max",
|
||||
"p(90)",
|
||||
"p(95)"
|
||||
],
|
||||
"summaryTimeUnit": "",
|
||||
"noColor": false
|
||||
},
|
||||
"state": {
|
||||
"isStdOutTTY": false,
|
||||
"isStdErrTTY": false,
|
||||
"testRunDurationMs": 962658.702
|
||||
},
|
||||
"metrics": {
|
||||
"data_sent": {
|
||||
"contains": "data",
|
||||
"values": {
|
||||
"count": 3764992,
|
||||
"rate": 3911.035128210995
|
||||
},
|
||||
"type": "counter"
|
||||
},
|
||||
"iteration_duration": {
|
||||
"type": "trend",
|
||||
"contains": "time",
|
||||
"values": {
|
||||
"p(90)": 3722.7300336000003,
|
||||
"p(95)": 3873.9589084,
|
||||
"avg": 2527.2848934033836,
|
||||
"min": 1001.968792,
|
||||
"med": 2525.472625,
|
||||
"max": 6837.841
|
||||
}
|
||||
},
|
||||
"iterations": {
|
||||
"values": {
|
||||
"count": 49965,
|
||||
"rate": 51.90313025394539
|
||||
},
|
||||
"type": "counter",
|
||||
"contains": "default"
|
||||
},
|
||||
"http_reqs": {
|
||||
"type": "counter",
|
||||
"contains": "default",
|
||||
"values": {
|
||||
"count": 49965,
|
||||
"rate": 51.90313025394539
|
||||
}
|
||||
},
|
||||
"errors": {
|
||||
"type": "rate",
|
||||
"contains": "default",
|
||||
"values": {
|
||||
"rate": 0.01483038126688682,
|
||||
"passes": 741,
|
||||
"fails": 49224
|
||||
},
|
||||
"thresholds": {
|
||||
"rate<0.01": {
|
||||
"ok": false
|
||||
}
|
||||
}
|
||||
},
|
||||
"vus_max": {
|
||||
"type": "gauge",
|
||||
"contains": "default",
|
||||
"values": {
|
||||
"value": 200,
|
||||
"min": 200,
|
||||
"max": 200
|
||||
}
|
||||
},
|
||||
"data_received": {
|
||||
"type": "counter",
|
||||
"contains": "data",
|
||||
"values": {
|
||||
"count": 3961756724,
|
||||
"rate": 4115432.308220074
|
||||
}
|
||||
},
|
||||
"checks": {
|
||||
"type": "rate",
|
||||
"contains": "default",
|
||||
"values": {
|
||||
"rate": 0.9925848093665566,
|
||||
"passes": 99189,
|
||||
"fails": 741
|
||||
}
|
||||
},
|
||||
"http_req_duration{expected_response:true}": {
|
||||
"type": "trend",
|
||||
"contains": "time",
|
||||
"values": {
|
||||
"avg": 26.06650855598932,
|
||||
"min": 0.753,
|
||||
"med": 2.816,
|
||||
"max": 2929.839,
|
||||
"p(90)": 7.505200000000002,
|
||||
"p(95)": 19.182799999999997
|
||||
}
|
||||
},
|
||||
"http_req_connecting": {
|
||||
"type": "trend",
|
||||
"contains": "time",
|
||||
"values": {
|
||||
"avg": 0.002444411087761432,
|
||||
"min": 0,
|
||||
"med": 0,
|
||||
"max": 39.483,
|
||||
"p(90)": 0,
|
||||
"p(95)": 0
|
||||
}
|
||||
},
|
||||
"http_req_sending": {
|
||||
"contains": "time",
|
||||
"values": {
|
||||
"p(90)": 0.038,
|
||||
"p(95)": 0.054,
|
||||
"avg": 0.38694616231355866,
|
||||
"min": 0.002,
|
||||
"med": 0.015,
|
||||
"max": 2581.801
|
||||
},
|
||||
"type": "trend"
|
||||
},
|
||||
"http_req_tls_handshaking": {
|
||||
"values": {
|
||||
"avg": 0,
|
||||
"min": 0,
|
||||
"med": 0,
|
||||
"max": 0,
|
||||
"p(90)": 0,
|
||||
"p(95)": 0
|
||||
},
|
||||
"type": "trend",
|
||||
"contains": "time"
|
||||
},
|
||||
"http_req_blocked": {
|
||||
"type": "trend",
|
||||
"contains": "time",
|
||||
"values": {
|
||||
"avg": 0.040382988091649086,
|
||||
"min": 0.001,
|
||||
"med": 0.005,
|
||||
"max": 164.793,
|
||||
"p(90)": 0.012,
|
||||
"p(95)": 0.018
|
||||
}
|
||||
},
|
||||
"http_req_receiving": {
|
||||
"type": "trend",
|
||||
"contains": "time",
|
||||
"values": {
|
||||
"med": 0.097,
|
||||
"max": 275.669,
|
||||
"p(90)": 0.265,
|
||||
"p(95)": 0.37,
|
||||
"avg": 0.2240320224157011,
|
||||
"min": 0.017
|
||||
}
|
||||
},
|
||||
"response_time": {
|
||||
"type": "trend",
|
||||
"contains": "default",
|
||||
"values": {
|
||||
"avg": 26.06650855598932,
|
||||
"min": 0.753,
|
||||
"med": 2.816,
|
||||
"max": 2929.839,
|
||||
"p(90)": 7.505200000000002,
|
||||
"p(95)": 19.182799999999997
|
||||
}
|
||||
},
|
||||
"vus": {
|
||||
"type": "gauge",
|
||||
"contains": "default",
|
||||
"values": {
|
||||
"value": 2,
|
||||
"min": 1,
|
||||
"max": 200
|
||||
}
|
||||
},
|
||||
"http_req_duration": {
|
||||
"type": "trend",
|
||||
"contains": "time",
|
||||
"values": {
|
||||
"med": 2.816,
|
||||
"max": 2929.839,
|
||||
"p(90)": 7.505200000000002,
|
||||
"p(95)": 19.182799999999997,
|
||||
"avg": 26.06650855598932,
|
||||
"min": 0.753
|
||||
},
|
||||
"thresholds": {
|
||||
"p(95)<500": {
|
||||
"ok": true
|
||||
},
|
||||
"p(99)<1000": {
|
||||
"ok": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"http_req_waiting": {
|
||||
"type": "trend",
|
||||
"contains": "time",
|
||||
"values": {
|
||||
"med": 2.675,
|
||||
"max": 2697.224,
|
||||
"p(90)": 7.156600000000001,
|
||||
"p(95)": 18.122599999999963,
|
||||
"avg": 25.45553037125965,
|
||||
"min": 0.724
|
||||
}
|
||||
},
|
||||
"http_req_failed": {
|
||||
"values": {
|
||||
"rate": 0,
|
||||
"passes": 0,
|
||||
"fails": 49965
|
||||
},
|
||||
"thresholds": {
|
||||
"rate<0.01": {
|
||||
"ok": true
|
||||
}
|
||||
},
|
||||
"type": "rate",
|
||||
"contains": "default"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,258 @@
|
||||
{
|
||||
"metrics": {
|
||||
"vus": {
|
||||
"values": {
|
||||
"value": 3,
|
||||
"min": 1,
|
||||
"max": 300
|
||||
},
|
||||
"type": "gauge",
|
||||
"contains": "default"
|
||||
},
|
||||
"iteration_duration": {
|
||||
"type": "trend",
|
||||
"contains": "time",
|
||||
"values": {
|
||||
"avg": 1534.6807611100153,
|
||||
"min": 501.543042,
|
||||
"med": 1528.326104,
|
||||
"max": 5473.78825,
|
||||
"p(90)": 2333.1592920000003,
|
||||
"p(95)": 2436.328104
|
||||
}
|
||||
},
|
||||
"http_reqs": {
|
||||
"type": "counter",
|
||||
"contains": "default",
|
||||
"values": {
|
||||
"count": 90926,
|
||||
"rate": 108.17247060304018
|
||||
}
|
||||
},
|
||||
"errors": {
|
||||
"type": "rate",
|
||||
"contains": "default",
|
||||
"values": {
|
||||
"rate": 0.6675978268042144,
|
||||
"passes": 60702,
|
||||
"fails": 30224
|
||||
},
|
||||
"thresholds": {
|
||||
"rate<0.05": {
|
||||
"ok": false
|
||||
}
|
||||
}
|
||||
},
|
||||
"http_req_duration{expected_response:true}": {
|
||||
"type": "trend",
|
||||
"contains": "time",
|
||||
"values": {
|
||||
"max": 1539.616,
|
||||
"p(90)": 18.2867,
|
||||
"p(95)": 74.03604999999997,
|
||||
"avg": 17.305976028303114,
|
||||
"min": 1.626,
|
||||
"med": 3.692
|
||||
}
|
||||
},
|
||||
"http_req_tls_handshaking": {
|
||||
"values": {
|
||||
"avg": 0,
|
||||
"min": 0,
|
||||
"med": 0,
|
||||
"max": 0,
|
||||
"p(90)": 0,
|
||||
"p(95)": 0
|
||||
},
|
||||
"type": "trend",
|
||||
"contains": "time"
|
||||
},
|
||||
"vus_max": {
|
||||
"type": "gauge",
|
||||
"contains": "default",
|
||||
"values": {
|
||||
"max": 300,
|
||||
"value": 300,
|
||||
"min": 300
|
||||
}
|
||||
},
|
||||
"data_received": {
|
||||
"type": "counter",
|
||||
"contains": "data",
|
||||
"values": {
|
||||
"rate": 5001557.828241273,
|
||||
"count": 4204134791
|
||||
}
|
||||
},
|
||||
"response_time": {
|
||||
"type": "trend",
|
||||
"contains": "default",
|
||||
"values": {
|
||||
"max": 3169.685,
|
||||
"p(90)": 35.98750000000002,
|
||||
"p(95)": 123.48124999999973,
|
||||
"avg": 34.95255878406595,
|
||||
"min": 0.234,
|
||||
"med": 5.161
|
||||
}
|
||||
},
|
||||
"http_req_blocked": {
|
||||
"type": "trend",
|
||||
"contains": "time",
|
||||
"values": {
|
||||
"med": 0.004,
|
||||
"max": 122.794,
|
||||
"p(90)": 0.011,
|
||||
"p(95)": 0.016,
|
||||
"avg": 0.015810527241928326,
|
||||
"min": 0
|
||||
}
|
||||
},
|
||||
"http_req_connecting": {
|
||||
"values": {
|
||||
"p(95)": 0,
|
||||
"avg": 0.0013084156346919462,
|
||||
"min": 0,
|
||||
"med": 0,
|
||||
"max": 21.333,
|
||||
"p(90)": 0
|
||||
},
|
||||
"type": "trend",
|
||||
"contains": "time"
|
||||
},
|
||||
"http_req_receiving": {
|
||||
"type": "trend",
|
||||
"contains": "time",
|
||||
"values": {
|
||||
"avg": 0.9055066207685241,
|
||||
"min": 0.007,
|
||||
"med": 0.125,
|
||||
"max": 671.322,
|
||||
"p(90)": 0.479,
|
||||
"p(95)": 0.797
|
||||
}
|
||||
},
|
||||
"data_sent": {
|
||||
"contains": "data",
|
||||
"values": {
|
||||
"count": 11781549,
|
||||
"rate": 14016.224873642055
|
||||
},
|
||||
"type": "counter"
|
||||
},
|
||||
"http_req_failed": {
|
||||
"contains": "default",
|
||||
"values": {
|
||||
"rate": 0.6673778677166047,
|
||||
"passes": 60682,
|
||||
"fails": 30244
|
||||
},
|
||||
"thresholds": {
|
||||
"rate<0.05": {
|
||||
"ok": false
|
||||
}
|
||||
},
|
||||
"type": "rate"
|
||||
},
|
||||
"http_req_duration": {
|
||||
"type": "trend",
|
||||
"contains": "time",
|
||||
"values": {
|
||||
"min": 0.234,
|
||||
"med": 5.161,
|
||||
"max": 3169.685,
|
||||
"p(90)": 35.98750000000002,
|
||||
"p(95)": 123.48124999999973,
|
||||
"avg": 34.95255878406595
|
||||
},
|
||||
"thresholds": {
|
||||
"p(95)<1000": {
|
||||
"ok": true
|
||||
},
|
||||
"p(99)<2000": {
|
||||
"ok": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"iterations": {
|
||||
"type": "counter",
|
||||
"contains": "default",
|
||||
"values": {
|
||||
"rate": 108.17247060304018,
|
||||
"count": 90926
|
||||
}
|
||||
},
|
||||
"checks": {
|
||||
"type": "rate",
|
||||
"contains": "default",
|
||||
"values": {
|
||||
"passes": 120528,
|
||||
"fails": 61324,
|
||||
"rate": 0.6627807227855619
|
||||
}
|
||||
},
|
||||
"http_req_waiting": {
|
||||
"type": "trend",
|
||||
"contains": "time",
|
||||
"values": {
|
||||
"p(90)": 35.302,
|
||||
"p(95)": 122.24524999999988,
|
||||
"avg": 34.01092915117785,
|
||||
"min": 0.219,
|
||||
"med": 4.974,
|
||||
"max": 3166.458
|
||||
}
|
||||
},
|
||||
"http_req_sending": {
|
||||
"type": "trend",
|
||||
"contains": "time",
|
||||
"values": {
|
||||
"avg": 0.03612301211974778,
|
||||
"min": 0.002,
|
||||
"med": 0.014,
|
||||
"max": 117.522,
|
||||
"p(90)": 0.038,
|
||||
"p(95)": 0.053
|
||||
}
|
||||
}
|
||||
},
|
||||
"root_group": {
|
||||
"name": "",
|
||||
"path": "",
|
||||
"id": "d41d8cd98f00b204e9800998ecf8427e",
|
||||
"groups": [],
|
||||
"checks": [
|
||||
{
|
||||
"name": "status is 200 or 201",
|
||||
"path": "::status is 200 or 201",
|
||||
"id": "84a4ddb4484a5d859d169f8c46a575bf",
|
||||
"passes": 30244,
|
||||
"fails": 60682
|
||||
},
|
||||
{
|
||||
"path": "::response time < 1000ms",
|
||||
"id": "20fb4e832cf064157637fa0f29b41aa6",
|
||||
"passes": 90284,
|
||||
"fails": 642,
|
||||
"name": "response time < 1000ms"
|
||||
}
|
||||
]
|
||||
},
|
||||
"options": {
|
||||
"summaryTrendStats": [
|
||||
"avg",
|
||||
"min",
|
||||
"med",
|
||||
"max",
|
||||
"p(90)",
|
||||
"p(95)"
|
||||
],
|
||||
"summaryTimeUnit": "",
|
||||
"noColor": false
|
||||
},
|
||||
"state": {
|
||||
"isStdOutTTY": false,
|
||||
"isStdErrTTY": false,
|
||||
"testRunDurationMs": 840565.067
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user