# Dev Changelog — Full 完整的开发改动记录,按时间倒序排列。作为主动 RAG 的数据源,用户手动唤醒时读取。 > 本文件由 `tools/changelog_build.py` 从 `entries/` 自动生成,请勿手改;新增/修改请编辑 `entries//.md` 后重跑生成器。 ## 记录 ### [CL-20260727-1322-nostars] 2026-07-27 13:22 — 安全接入 Roblox 项目类型 Bundle - **merge_source**: FOR_Roblox_Main - **author**: nostars (Nostars Developer) - **type**: feat - **tags**: cursor-init, roblox, skills, local-env, open-cloud, security - **affected_files**: - .cursor/bootstrap/catalog.json - .cursor/bootstrap/skills.json - .cursor/bootstrap/tools/cursor_init.py - .cursor/bootstrap/tests/test_cursor_init.py - .cursor/bootstrap/types/roblox/manifest.json - .cursor/bootstrap/types/roblox/fragments/roblox.gitignore - .cursor/bootstrap/types/roblox/fragments/roblox.gitattributes - .cursor/bootstrap/types/roblox/payload/rules/project/roblox-luau-guardrails.mdc - .cursor/bootstrap/types/roblox/payload/skills/roblox-project-initializer/SKILL.md - .cursor/bootstrap/types/roblox/payload/skills/roblox-vibe-project-framework/SKILL.md - .cursor/bootstrap/types/roblox/payload/skills/roblox-ui-producer/SKILL.md - .cursor/bootstrap/types/roblox/payload/skills/building-3d-objects/SKILL.md - .cursor/bootstrap/types/roblox/payload/skills/building-maps/SKILL.md - .cursor/bootstrap/types/roblox/payload/skills/roblox-camera-cinematics/SKILL.md - .cursor/bootstrap/types/roblox/payload/skills/roblox-vfx-designer/SKILL.md - .cursor/bootstrap/types/roblox/payload/skills/roblox-animation-producer/SKILL.md - .cursor/bootstrap/types/roblox/payload/skills/roblox-commonkit-usage/SKILL.md - .cursor/bootstrap/types/roblox/payload/skills/roblox-asset-uploader/SKILL.md - .cursor/bootstrap/types/roblox/payload/skills/roblox-asset-uploader/scripts/upload.py - .cursor/bootstrap/types/roblox/payload/skills/roblox-asset-uploader/scripts/test_upload.py - .cursor/skills/cursor-init/SKILL.md - .cursor/skills/cursor-init/reference.md - .cursor/hooks/tests/test_check_changelog.py - .cursor/pitfalls/pitfalls.md - **what**: 建立 Roblox 自包含 payload、manifest、Registry 元数据、扫描/Git 片段与类型专属本机字段;去除 Codex 配置、个人路径、项目 API 残留,并合并 Guardrails、Design Consultant 与 Retrospective 的有效能力。 - **why**: Roblox 候选来自特定 Codex/SwordnWizard 环境,原样接入会提前加载错误 Skill、泄漏环境假设,并让 API key 和外部上传缺少安全边界。 - **decisions**: Roblox 选择时才物化十个 Skill;CommonKit 与 Asset Uploader 保持条件触发;Guardrails 转 always-on 项目 Rule;敏感字段禁止 `--set` 且不参与 drift;不保存密码、Cookie 或会话令牌;上传器不新增第三方依赖。 - **tests**: 初始化 18 项、Hook 7 项、上传器 6 项测试通过;真实 payload 在临时目标完成 Roblox → General → Godot → Roblox 切换并逐段 `--check`;三个类型实仓 dry-run 无 blocker;敏感 key 命令行输入被拒绝且轮换不改变计划摘要;IDE lint 无错误。 - **notes**: 验证成功后删除 `roblox_skills_waitingforprocessing`,`.cursor/bootstrap/types/roblox/payload` 成为唯一 canonical。另修复 WindowsApps `bash.exe` 探测可能无限挂起的问题并记录 PF-20260727-1322。 - **source_chat**: [Roblox Bundle 安全接入](540edfb7-b92d-4680-b9d4-3b506604993d) ### [CL-20260727-1213-nostars] 2026-07-27 12:13 — 建立多项目类型 Cursor 初始化架构 - **merge_source**: FOR_Roblox_Main - **author**: nostars (Nostars Developer) - **type**: feat - **tags**: cursor-init, multi-project, manifest, hooks, godot, roblox - **affected_files**: - .cursor-init-source - .cursor/bootstrap/catalog.json - .cursor/bootstrap/common.manifest.json - .cursor/bootstrap/skills.json - .cursor/bootstrap/tools/cursor_init.py - .cursor/bootstrap/tests/test_cursor_init.py - .cursor/bootstrap/types/general/manifest.json - .cursor/bootstrap/types/godot/manifest.json - .cursor/bootstrap/types/roblox/manifest.json - .cursor/bootstrap/types/godot/payload/rules/project/godot-architecture.mdc - .cursor/bootstrap/types/godot/payload/rules/project/godot-assets.mdc - .cursor/bootstrap/types/godot/payload/rules/project/godot-data-systems.mdc - .cursor/bootstrap/types/godot/payload/rules/project/godot-gdscript-style.mdc - .cursor/bootstrap/types/godot/payload/rules/project/godot-scene-conventions.mdc - .cursor/bootstrap/types/godot/payload/rules/project/godot-testing.mdc - .cursor/hooks/changelog-scan.json - .cursor/hooks/check-changelog.ps1 - .cursor/hooks/check-changelog.sh - .cursor/hooks/tests/test_check_changelog.py - .cursor/local-env.example.json - .cursor/rules/common/baserule.mdc - .cursor/rules/common/cursor-init-recall.mdc - .cursor/rules/common/epee-orchestrator.mdc - .cursor/skills/cursor-init/SKILL.md - .cursor/skills/cursor-init/reference.md - .cursor/skills/epee-orchestrator/SKILL.md - .cursor/skills/epee-orchestrator/registry.md - .cursor/README.md - .gitignore - .gitattributes - **what**: 将固定 Godot 白名单重构为 common + 单选项目类型的 manifest 驱动初始化系统,加入摘要确认、所有权 hash、foreign/conflict 阻断、状态重置与 sentinel 验证。 - **why**: 原结构在未初始化时就加载 Godot Rule,并把 Rule/Skill 数量、环境字段、Hook 扫描和 Git 配置写死,无法安全扩展通用或 Roblox 项目。 - **decisions**: common 只保留活动副本;项目类型 payload 自包含保存在 `.cursor/bootstrap/types/`;使用 JSON 与 Python 3.10 标准库;`general` 为 common-only;Roblox 通过 readiness 门槛后才能从 draft 切为 ready。 - **tests**: 初始化引擎 11 项 unittest 与 PowerShell/Bash Hook 6 项回归测试通过;catalog `--check`、ready 类型门控、general/Godot 实仓 dry-run、changelog `--check`、`git diff --check` 和 IDE lint 均通过。 - **notes**: 保留并泛化此前 Hook 的 session + Git + mtime 防误报守卫;新增根 `.cursor-init-source`,避免本初始化源码仓被自身自动初始化。 - **source_chat**: [多类型初始化架构重构](540edfb7-b92d-4680-b9d4-3b506604993d)