Commit Graph

9 Commits

Author SHA1 Message Date
baozaotumao 48bacdbed6 feat: 生成项目自带 /new-feature 命令(AI 引导,纯结构+契约)
- template/.claude/commands/new-feature.md.jinja:项目内 Claude Code 命令
- 模式为纯结构+契约:只生成目录/文件/端口/方法签名/依赖注入/错误码登记,
  方法体留 NotImplementedError,不猜业务逻辑、不写假断言测试
- 自检只跑 ruff+mypy(验证结构编译/类型自洽),不跑 pytest
- 按 include_backend/agent/frontend 裁剪生成的层
- 末尾给出待填充 TODO 清单;业务逻辑由开发者按 testing-tdd 自填
- README 加 /new-feature 章节 + 文件树补 .claude/commands/
2026-06-01 23:38:14 -07:00
baozaotumao c09c754983 fix: 补全前端最小可运行入口 + 修前端配置缺陷
- 新增 index.html / src/main.tsx / src/App.tsx / src/index.css 最小入口
- 补 tsconfig.node.json(tsconfig 引用却缺失,导致 tsc 失败)
- package.json 加 type:module + 缺失的 eslint 依赖
  (@eslint/js / globals / typescript-eslint),eslint.config.js 此前 import 即崩
- 验证:pnpm build / lint / typecheck 三门禁全过,dist 正常产出

至此 backend / agent / frontend 三服务最小骨架均可运行。
2026-06-01 23:21:57 -07:00
baozaotumao df48c36422 refactor: 规则中性化——剥离 PPT 业务,统一为订单示范域
把规则从原 ppt-gen 项目泛化为通用脚手架,覆盖 19 个文件:
- ddd/architecture/design-discipline/error-codes/communication-* 等:
  领域术语、错误码、消息示例、扩展点、状态流统一为「订单」示范域
- agent-dag/agent.md/agent-concurrency/agent-llm-*:DAG 节点、配置、并发、
  LLM 适配从「对话→预览→生成→截图→合成」改为「intake→process→validate→finalize」
- backend-db:Session 实体/状态机/ORM/仓储/checkpoint 对齐新流水线
- 移除幻灯片专属依赖与产物:agent 去 playwright/python-pptx,
  Dockerfile 去 Chromium 系统库,.gitignore 去 *.pptx
- 保留合法通用项:ANSI(PTY 处理)、Playwright(E2E 测试工具)、Gemini CLI(真实 provider)

验证:gemini-cli/openai-api 两变体生成退出 0,生成项目零 PPT 残留,
backend/agent 骨架均可 import 运行。
2026-06-01 23:15:05 -07:00
baozaotumao bb6503c3f8 fix: 补全最小可运行骨架(core/config + core/logging)
- main.py 此前 import 不存在的 .core.config/.core.logging,生成项目一 import 即崩
- 补 backend/agent 的 core/config.py(pydantic-settings)+ core/logging.py(loguru)
  + 各级 __init__.py,按服务/数据库/LLM 选型渲染配置字段
- 路线 A:仅补可运行的 plumbing,业务分层仍由 Claude 按规则现写
- 验证:生成 backend 后 uv sync + import app 成功,/health 路由就位
2026-06-01 22:48:08 -07:00
baozaotumao 4a25ab3049 feat: 模板自带 .vscode/settings.json + extensions.json(编辑器实时护栏)
- settings.json:formatOnSave + ruff(保存修复/整理import) + eslint onType;
  Pylance basic 即时反馈,权威 strict 交 mypy 扩展读 pyproject,与 pre-commit 同源
- extensions.json:按服务推荐 ruff/pylance/mypy/eslint/prettier 扩展
- 始终生成(不挂 vscode_auto_watch 开关),按 include_backend/agent/frontend 裁剪
- 测试覆盖 全栈/仅后端/仅前端 三配置,条件填充正确、JSON 合法
2026-06-01 21:49:51 -07:00
baozaotumao f927bd4b7a feat: 新增 vscode_auto_watch 开关,打开项目自动起 watch 任务
- copier.yml 加 vscode_auto_watch 问题(默认 false)+ 条件排除 .vscode/tasks.json
- template/.vscode/tasks.json.jinja:按服务生成 watch 任务,runOn folderOpen
  前端 tsc --watch、后端/agent ruff --watch,均为工具自带 watch,无新依赖
- frontend 加 typecheck:watch 脚本
- README 问卷表补该项
2026-06-01 21:46:27 -07:00
baozaotumao 4c7dbb56eb fix: pre-commit 任务容错 + gitleaks 钩子 + pnpm 构建门禁
- _tasks 的 pre-commit install 改为容错:未装时跳过而非让 copier 失败
- .pre-commit-config 增加 gitleaks 钩子(git-workflow/security 规则均已声明)
- 新增 frontend/pnpm-workspace.yaml 的 allowBuilds: esbuild,解决 pnpm 11
  ERR_PNPM_IGNORED_BUILDS 致 install 非零退出而中断生成的问题

端到端验证:copier 退出 0,git/uv.lock/pnpm-lock/node_modules 齐全,
verify.sh 零失败。
2026-06-01 21:38:12 -07:00
baozaotumao 2a959f2e61 fix: 修复 copier 生成的三个致命 bug,端到端跑通
- copier.yml 补 _subdirectory: template(此前把整个仓库当模板,
  生成项目里混入 template/、scripts/、README、.claude/skills)
- _exclude 去掉 .jinja 后缀(copier 按渲染后路径匹配,原 agent.md.jinja
  等条件排除从未生效,agent=false 仍会带入 agent 规则)
- 新增 template/.copier-answers.yml.jinja(此前缺失,导致 copier update
  无法追踪、verify.sh 读不到 llm_provider/database 而误判)
2026-06-01 21:27:01 -07:00
baozaotumao 39fe248f9f feat: 重组为标准 skill 包结构 + 修复 verify.sh bash 3.2 兼容
- 新增 .claude/skills/new-project/SKILL.md(标准 skill 格式)
- install-skill.sh 安装时组装 SKILL.md + verify.sh,单一源无重复
- verify.sh 改用索引数组替代 declare -A,兼容 macOS bash 3.2
- log_pass/log_skip 显式 return 0,避免 set -e 下非 verbose 误退出
- README 改为 skill 优先;补全 copier.yml/scripts/template 入库
2026-06-01 21:19:45 -07:00