Files
MeetPaprika/working/05-验收证据.md

13 KiB
Raw Blame History

05-验收证据

本文件记录可复查证据命令、页面、job_id、report_id、PDF、截图、部署链接、提交记录等。

E001 - 文档基线盘点

  • 日期2026-07-06
  • 关联任务T001、T002
  • 类型:命令输出摘要
  • 命令:
pwd
rg --files -g '!*node_modules*' -g '!*.png' -g '!*.jpg' -g '!*.jpeg' -g '!*.gif' -g '!*.pdf' | sed -n '1,160p'
sed -n '1,260p' doc/index.html
find working -maxdepth 2 -type f -print | sort
  • 结果摘要:
    • 当前工作目录为 /home/mes123456/MeetPaprika
    • 参考文件存在:doc/index.html
    • working 目录存在。
    • doc/index.html 包含 <main id="app"></main>、内联 CSS、内联 JS。
    • 页面通过 ?page=... 查询参数选择内容。

E002 - 当前路由证据

  • 日期2026-07-06
  • 关联任务T002
  • 类型:源码证据
  • 命令:
rg -n "const pages|function|data-page|render|page:|title:|href=|main.innerHTML|case|pages\\[|\\?page=|<body|<script|</html>|Services|Resources|FAQ|Privacy|Terms|Get Started|Application|Contact" doc/index.html
  • 结果摘要:
    • 导航显式链接:pressjudgingscholarlyserviceswhyresourcesfaqstart
    • Footer 链接:whyfaqtermsprivacydisclaimer
    • pageData 中定义:homepressjudgingscholarlyserviceswhyresourcesfaqblogstartaskthanksabouttermsprivacydisclaimer
    • 路由选择逻辑:未识别页面回退为 home

E003 - 表单 mockup 证据

  • 日期2026-07-06
  • 关联任务T012、T013、T014、T015
  • 类型:源码证据
  • 文件:doc/index.html
  • 结果摘要:
    • start 页面字段使用 <div class="field">,提交入口是 <a class="button primary" href="?page=thanks">Submit Profile</a>
    • ask 页面字段使用 <div class="field">,提交入口是 <a class="button primary" href="?page=thanks">Send Question</a>
    • 当前没有 <form>inputtextareafilemethodaction 或提交接口。
    • 因此当前只能证明视觉流程存在,不能证明真实提交能力。

E004 - R002 源码复核证据

  • 日期2026-07-06
  • 关联任务T028
  • 类型:命令输出摘要
  • 命令:
sed -n '2262,2468p' doc/index.html
sed -n '2469,2765p' doc/index.html
sed -n '2766,3428p' doc/index.html
  • 结果摘要:
    • 复核 header、footer、serviceCardspageDataheroheroWithKickerpressPagejudgingPageo1CriteriaPagefaqPage、legal 页面和最终渲染逻辑。
    • document.getElementById("app").innerHTML = pageData[selected].body;
    • if (["faq", "resources"].includes(selected)) 会高亮 Resources trigger。
    • legal 页面当时日期写为 Last updated: July 10, 2026;后续已在 E024 修复。

E005 - Services contact 路由缺陷证据

  • 日期2026-07-06
  • 关联任务T029
  • 类型:源码证据
  • 文件:doc/index.html
  • 结果摘要:
    • Services 页面卡片 04、05、06 调用:
      • card("04", ..., "Start Here", "contact")
      • card("05", ..., "Start Here", "contact")
      • card("06", ..., "Start Here", "contact")
    • pageData 没有 contact
    • 当前路由逻辑会把未知 contact 回退到 home
    • 结论:这是明确死链/误跳转缺陷;后续已在 E024 修复。

E006 - Git 状态证据

  • 日期2026-07-06
  • 关联任务T033
  • 类型:命令输出摘要
  • 命令:
git status --short
  • 结果摘要:
    • 输出:fatal: not a git repository (or any of the parent directories): .git
    • 结论:当前路径不是 Git 仓库,暂时无法记录 commit hash。

E007 - Working 文档更新证据

  • 日期2026-07-06
  • 关联任务T028、T032
  • 类型:文件证据
  • 文件:
    • working/README.md
    • working/01-项目功能内容.md
    • working/02-项目程序开发详细步骤.md
    • working/03-推进台账.md
    • working/04-任务矩阵.md
    • working/05-验收证据.md
    • working/06-决策记录.md
  • 结果摘要:
    • 已形成 README 索引。
    • 已形成从项目功能、开发步骤、推进台账、任务矩阵、验收证据到决策记录的闭环。

E016 - 源码级对标扫描证据

  • 日期2026-07-06
  • 关联任务T034
  • 类型:命令输出摘要
  • 命令:
wc -l doc/index.html working/*.md
rg -n 'function [A-Za-z0-9_]+\(|const [A-Za-z0-9_]+ =|^[[:space:]]+[A-Za-z0-9_]+: \{|href="\?page=|Last updated|Packages start|@media|--[a-z-]+:' doc/index.html
rg -n '^\s*\.[A-Za-z0-9_-]+|^\s*#[A-Za-z0-9_-]+|^\s*[a-z]+\s*\{|@media|grid-template-columns|width: min|border-radius|background:' doc/index.html
sed -n '2870,3035p' doc/index.html
sed -n '3070,3228p' doc/index.html
  • 结果摘要:
    • doc/index.html 共 3423 行。
    • CSS token 包含 --red--deep-red--ink--text--muted--line--paper--panel--green--header-text
    • 唯一显式断点为 @media (max-width: 1080px)
    • pageData 包含 homepressjudgingscholarlyserviceswhyresourcesfaqblogstartaskthanksabouttermsprivacydisclaimer
    • FAQ 共 4 组 20 个问题。
    • Terms 共 18 个 section但编号缺少 17。
    • Privacy 共 12 个 section。
    • Disclaimer 共 9 个 section。
    • Legal 页面当时日期均为 Last updated: July 10, 2026;后续已在 E024 修复。
    • 发现未调用函数/模块:productPageproductPageWithKickerjudgingNetworkGroupresourcesHubresourceGrouplegalPagestandardGridpressQuality

E017 - 技术架构确认记录

  • 日期2026-07-06
  • 关联任务T035
  • 类型:用户确认 + 文档证据
  • 用户确认:
Next+ React  ,数据库使用 PostGreSQL
  • 结果摘要:
    • 正式开发技术架构已收敛为 Next.js + React + PostgreSQL。
    • 文档默认 ORM 为 Prisma。
    • 表单提交目标改为 Next.js API/Server Actions 写入 PostgreSQL。
    • 生产启动方式改为 npm run start -- -p 8082
    • 新增任务 T036-T039覆盖工程初始化、数据库接入、表单入库、Next.js 部署。

E018 - 服务器 PostgreSQL 安装用户确认

  • 日期2026-07-06
  • 关联任务T040
  • 类型:用户确认
  • 用户确认摘要:
    • PostgreSQL 已在云服务器安装完成。
    • 服务器:170.106.192.152
    • SSH 用户:ubuntu
    • 可用端口:8080-8099
    • 应用目标端口:8082
  • 凭据处理:
    • 用户在对话中提供了 SSH 密码。
    • 长期文档不保存明文密码。
  • 待验证命令:
ssh ubuntu@170.106.192.152
systemctl status postgresql --no-pager
psql --version
sudo -u postgres psql -c '\l'
  • 结论:
    • 当前状态为“用户确认已安装,待远程验证”。

E019 - 邮箱系统账号需求用户确认

  • 日期2026-07-06
  • 关联任务T041、T042、T043
  • 类型:用户确认
  • 用户确认摘要:
    • 普通用户入口:https://mail.paprikalaw.com/webmail/
    • 管理员入口:https://mail.paprikalaw.com/admin/
    • 管理员账号:admin@paprikalaw.com
    • 普通邮箱账号:
      • info@paprikalaw.com
      • contact@paprikalaw.com
      • support@paprikalaw.com
      • sales@paprikalaw.com
      • marketing@paprikalaw.com
      • hr@paprikalaw.com
      • finance@paprikalaw.com
      • billing@paprikalaw.com
      • legal@paprikalaw.com
      • service@paprikalaw.com
  • 凭据处理:
    • 用户在对话中提供了统一初始密码。
    • 长期文档不保存明文密码。
  • 待验证:
    • 管理员登录。
    • 普通邮箱 webmail 登录。
    • MX/SPF/DKIM/DMARC。
    • 内部互发、外部收信、外部发信。
    • Next.js 表单通知 SMTP 配置。

E022 - Next.js 工程初始化和构建证据

  • 日期2026-07-06
  • 关联任务T036、T022
  • 类型:命令输出摘要
  • 命令:
npm install
npm run generate:legacy
npm run lint
npx tsc --noEmit
npm run build
  • 结果摘要:
    • 依赖安装完成。
    • generate:legacydoc/index.html 生成 12 个页面数据。
    • lint 通过。
    • TypeScript --noEmit 通过。
    • next build 通过,生成 //[page]/api/submissions/ask/start/thanks/robots.txt/sitemap.xml

E023 - Prisma schema 和 migration 证据

  • 日期2026-07-06
  • 关联任务T037
  • 类型:文件和命令证据
  • 文件:
    • prisma/schema.prisma
    • prisma/migrations/20260706120000_init/migration.sql
    • .env.example
  • 命令:
npm run prisma:generate
npx prisma migrate diff --from-empty --to-schema-datamodel prisma/schema.prisma --script
  • 结果摘要:
    • Prisma Client 生成成功。
    • schema 包含 SubmissionSubmissionFile
    • .env.example 只保留占位 DATABASE_URL,未写入真实密码。
  • 待补:
    • 生产 PostgreSQL 执行 npx prisma migrate deploy
    • 成功入库后记录 submission_id
  • 日期2026-07-06
  • 关联任务T017、T029
  • 类型:源码和 HTTP 产物证据
  • 命令:
rg -n "contact|Last updated" doc/index.html
curl -s http://localhost:8082/services | rg -n 'href="/start"|Expert consultation|Attorney Referral'
curl -s http://localhost:8082/terms | rg -n "Last updated: July 6, 2026"
  • 结果摘要:
    • doc/index.html 中 Services 04/05/06 已不再指向不存在的 contact
    • /services 产物中 Expert consultation、Agency representation、Attorney Referral 的 CTA 均为 href="/start"
    • legal 页面显示 Last updated: July 6, 2026

E025 - 本地生产 8082 路由冒烟证据

  • 日期2026-07-06
  • 关联任务T003-T011、T015、T020、T039
  • 类型HTTP 状态码证据
  • 命令:
npm run start -- -p 8082
for p in / /press /judging /scholarly /services /why /resources /faq /start /ask /thanks /terms /privacy /disclaimer /robots.txt /sitemap.xml; do
  code=$(curl -s -o /dev/null -w '%{http_code}' http://localhost:8082$p)
  printf '%s %s\n' "$code" "$p"
done
  • 结果摘要:
    • 所有列出的路径均返回 200
    • robots.txt 输出 Sitemap: https://paprikalaw.com/sitemap.xml
    • sitemap.xml 包含核心公开路径。
  • 备注:
    • 这是本地生产服务验收,不等同于远程服务器和 HTTPS 验收。

E026 - 表单 API 校验证据

  • 日期2026-07-06
  • 关联任务T012、T013、T038、T044
  • 类型API 响应证据
  • 命令:
curl -s -X POST http://localhost:8082/api/submissions \
  -H 'Content-Type: application/json' \
  -d '{"type":"ask","name":"","email":"bad","question":"","consentAccepted":false}'
  • 结果摘要:
    • 返回 Validation failed
    • 字段错误包含 nameemailconsentAcceptedquestion
  • 待补:
    • 配置 DATABASE_URL 后提交有效 /start/ask 表单,记录 submission_id 和数据库查询结果。
    • 未配置 DATABASE_URL 时,有效提交会返回 500不能作为入库成功证据。

E027 - npm audit 结果

  • 日期2026-07-06
  • 关联任务T023、T036
  • 类型:安全扫描摘要
  • 命令:
npm audit --audit-level=moderate --json
  • 结果摘要:
    • 剩余 2 个 moderate vulnerability。
    • 来源为 next 依赖链中的 postcss <8.5.10 公告。
    • 当前项目已使用 registry 当前稳定版本 Next 16.2.10
    • npm 给出的 fixAvailable 会降级到 next@9.3.3,属于不合理破坏性修复,未执行。
  • 后续:
    • 等待 Next/PostCSS 依赖链发布可用修复版本后升级。

待补证据清单

编号 关联任务 需要补充的证据
E008 T003-T011 桌面浏览器截图,覆盖 home、press、judging、scholarly、services、why、resources、faq
E009 T018 移动端截图,至少 390px 宽度覆盖 home、services、faq、start
E010 T012/T013 表单提交成功记录、submission id、后台记录截图或 webhook job_id
E011 T016/T017 法务审核记录、确认人、确认日期
E012 T023 自动化测试命令和结果
E013 T024/T025 部署 URL、systemd 状态、Nginx 测试、证书、job_id、commit hash
E014 T026 PDF 或截图归档路径
E015 T030 SSH key 或密钥管理方式确认,不能包含明文密码
E020 T041/T042 邮箱后台截图、DNS 查询输出、收发测试截图
E021 T043 表单通知邮件 message id 或测试截图
E028 T044 PostgreSQL DATABASE_URL 配置后的真实表单提交、submission_id 和数据库查询结果

证据模板

EXXX - 标题

  • 日期:
  • 关联任务:
  • 类型:
  • 命令或页面:
  • 结果:
  • 文件或链接:
  • job_id/report_id/submission_id
  • 备注: