16 lines
713 B
Bash
16 lines
713 B
Bash
#!/usr/bin/env bash
|
|
# 会话开始:快照工作区状态(status 哈希 + diff 内容哈希)与 active.md 内容哈希,供 Stop 收口检查对比
|
|
# 2026-09-18 强判据升级:active.md 判据由 mtime 改内容哈希——touch/意外改时间不再蒙混,内容真变才算登记
|
|
proj="${ZCODE_PROJECT_DIR:-$PWD}"
|
|
sid="${CLAUDE_SESSION_ID:-default}"
|
|
state="/tmp/zcode-active-md-guard"
|
|
mkdir -p "$state"
|
|
{
|
|
date +%s
|
|
git -C "$proj" status --porcelain 2>/dev/null | sort | sha1sum | cut -d' ' -f1
|
|
git -C "$proj" diff HEAD 2>/dev/null | sha1sum | cut -d' ' -f1
|
|
sha1sum "$proj/production/session-state/active.md" 2>/dev/null | cut -d' ' -f1 || echo 0
|
|
} > "$state/$sid.snap"
|
|
rm -f "$state/$sid.reminded"
|
|
exit 0
|