1
0
Files
DiAL/openspec/changes/archive/2026-05-09-harden-fullstack-packaging-foundation/tasks.md

2.3 KiB
Raw Blame History

1. 质量门禁配置

  • 1.1 添加 eslint@eslint/jstypescript-eslinteslint-plugin-react-hookseslint-plugin-react-refreshprettier 开发依赖并更新 lockfile
  • 1.2 在 package.json 新增 lintformatformat:checkcheckverify 脚本
  • 1.3 配置 ESLint 检查 TypeScript、React、脚本和测试代码并启用 React Hooks 规则
  • 1.4 配置 ESLint 禁止 src/web 导入 src/server 后端运行时实现
  • 1.5 配置 Prettier 和忽略规则,确保排除 openspec/dist/.build/node_modules/bun.lock 和临时构建产物

2. 开发期配置一致性

  • 2.1 调整全栈开发脚本,使 Vite proxy 端口从文档化的后端端口配置派生
  • 2.2 调整或确认运行配置校验覆盖默认值、CLI 优先级、无效端口和端口边界行为
  • 2.3 补充运行配置测试,覆盖默认端口、PORT 覆盖、CLI 优先级、无效端口和端口边界

3. HTTP 运行时契约

  • 3.1 为 /health/api/demo 实现 GETHEAD 语义,并对不支持 method 返回 JSON 405 和 Allow header
  • 3.2 统一 API 404 和 405 错误响应结构,确保包含 errorstatus 字段
  • 3.3 为生产 HTML、JSON 和静态资源响应添加低风险安全 headers
  • 3.4 明确生产 HTML、静态资源和未知静态资源的缓存与 404 行为
  • 3.5 补充 HTTP handler 单元测试,覆盖 method、HEAD、JSON 错误、缓存 headers、安全 headers 和未知静态资源

4. 构建与 Smoke 验证

  • 4.1 调整生产构建脚本,按稳定顺序生成嵌入静态资源清单
  • 4.2 增强 executable smoke test验证 production runtime mode、未知 API、未知静态资源、SPA fallback、缓存 headers 和低风险安全 headers
  • 4.3 确保 verify 先运行 check,再基于当前源码执行生产构建和 smoke test

5. 文档与最终验证

  • 5.1 更新 README说明 checkverify、lint、format、构建中间产物、运行配置和验证边界
  • 5.2 运行 bun run check 并修复发现的问题
  • 5.3 运行 bun run verify 并修复发现的问题
  • 5.4 修正 openspec/config.yamltasks artifact 规则键名并确认 OpenSpec CLI 不再告警