joywayer
|
2ce936e7ec
|
删除hook,框架改动
|
2026-08-19 08:14:48 +08:00 |
|
 joywayerandClaude Opus 4.8
|
abc6281ec0
|
回迁工具:check-redlines 增量模式(--staged-diff)+ 存量扫描(--scan-all)+ setup 脚本
为「老项目回迁这套强制体系」补三件套,核心是不搞大爆炸清理:
- check-redlines.js:新增 --staged-diff(只查本次新增行,老代码存量违规不阻塞,
新代码从此强制合规)与 --scan-all(可编辑正式代码 ES5 存量违规,只报不挡)。
- .githooks/pre-commit:按本地 git 配置 redlines.stagedmode 选严格(整文件)/增量(新增行)。
- setup-redlines.sh:一键激活+自检——迁移清单、node/权限、set core.hooksPath、
存量扫描;`--diff` 一键切增量模式供老项目用。
- 已测:scan-all 报本仓库 0 存量违规;增量模式放行含老违规文件的干净新增行、
拦新增违规行;严格模式整文件拦;setup 幂等且模板保持严格。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-07-06 13:19:27 +08:00 |
|
 joywayerandClaude Opus 4.8
|
1d9bc049f1
|
硬约束:机械红线校验(PreToolUse 阻断 + git pre-commit)+ PostCompact 重注入
把可机器判定的硬红线从"投喂"升级为"硬拦截",并补上事后/工具无关/压缩三个缺口:
- .claude/hooks/check-redlines.js:校验「可编辑范围」(路径级,禁改平台/
vendor/00_Surface/02_Input/server 平台,app.js 例外) 与「严格 ES5」(运行时
.js 禁箭头/模板串/class/let/const,去注释与字符串后高信号匹配)。双模式:
PreToolUse 读工具入参、命中即 deny 阻止写入;--staged 扫暂存文件、命中即
非零退出阻断提交。
- settings.json:PreToolUse 增挂 check-redlines(在 remind 之前);新增
PostCompact 钩子清空 .spec-injected,使压缩后下次编辑重新全量注入规范。
- .githooks/pre-commit + core.hooksPath=.githooks:提交边界硬闸,工具无关
(Claude Code/别的编辑器/人手改都过)。
- 已校准:81 个现有运行时 js 零 ES5 误报(可编辑的 framework 25 文件全过),
平台文件正确判为禁改;真违规(箭头/模板/const/class/改 vendor/改 class)全拦、
合法 ES5 与注释里的 => 全放行;pre-commit 实测拦住 ES5 违规提交。
判断类规范(职责单一/数据权威设计/房间隔离)机器判不了,不在本层,仍靠投喂
+(可选)改后复审 agent。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-07-06 09:25:59 +08:00 |
|
 joywayerandClaude Opus 4.8
|
57b950cf31
|
降耗①:按区注入排除 README,去掉与 @import 的重复
README(红线速查/一页纸总则)已由 CLAUDE.md 用 @import 常驻每次会话,
按区注入里再读一遍是纯重复。readDirDocs 过滤掉 README.md,只注编号正文。
- server 首注 54,339 → 49,416 字符(省 ~4.9K)
- client 首注(含 client+engineering 两个 README)省 ~5.5K
- 注入文案标注「README 已随 CLAUDE.md 常驻,此处为编号正文」
- 零规范损失(内容未删,只是不重复注入);pipe-test 确认无 README 段、
正文与跨区去重逻辑不变
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-07-06 08:35:15 +08:00 |
|
 joywayerandClaude Opus 4.8
|
ec58d0e584
|
强制遵守升级:编辑区域时按会话注入完整规范全文(非仅红线)
从"红线常驻"升级为"全部规范时刻在场":真正开工某区域时,把该区域的
完整编号文档 + engineering 通则全文自动注入上下文,新会话同样触发。
- remind-docs.js:PreToolUse 时按路径判定区域(server / client),
每会话「首次」编辑相关区域即全量注入对应 docs 目录所有 .md 全文;
同会话再改同区域只给简短「已注入、继续遵守」提醒;跨区域共享的
engineering 通则每会话只注一次。会话级去重用 .spec-injected 哨兵。
- settings.json:新增 SessionStart 钩子,每个新会话清空哨兵目录,
保证新会话必然重新全量注入。
- .gitignore:忽略 .claude/.spec-injected/(会话级临时状态)。
- 已 pipe-test:首注 55K/44K 字符全文、二次简短、跨区去重、docs 免打扰、
SessionStart 清空、settings 结构校验,全部通过。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-07-06 08:03:50 +08:00 |
|
 joywayerandClaude Opus 4.8
|
a931143c1e
|
强制遵守三套开发文档:README @import + PreToolUse 提醒 hook
把"必须严格遵守 docs 三套文档"从软指令变成硬机制,同时消除 SSOT 重复:
- CLAUDE.md 用 @import 把三份 README(含各自红线速查/一页纸总则)
常驻每次会话上下文,删掉手写的红线摘要——红线以 README 权威源为准,
不再在 CLAUDE.md 另抄一份
- 新增 .claude/hooks/remind-docs.js:PreToolUse 钩子,编辑 client/**、
server/** 前按路径把"必须遵守的对应编号文档 + 红线"注入上下文(非阻塞)
- 新增 .claude/settings.json 注册该 hook(matcher Edit|Write|MultiEdit);
已 pipe-test 各路径分支 + sentinel 验证 hook 实际触发
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-07-06 07:57:25 +08:00 |
|