Implements the producer side of ADR-0001's lazy-loading model: scripts/sync.ts orchestrator plus three Claude Code hooks (SessionStart, FileChanged, CwdChanged) that populate the per-project version cache at ~/.cache/pleaseai-spring/projects/<sha256(project_dir)>.json.
Track
.please/docs/tracks/active/hook-sync-20260429/
Related ADRs
- ADR-0001 (
.please/docs/decisions/0001-lazy-skill-loading-via-hooks.md) — defines the hook-driven sync model
- ADR-0002 (
.please/docs/decisions/0002-three-tier-version-detection.md) — sync.ts orchestrates Tier escalation
- ADR-0003 (
.please/docs/decisions/0003-extended-static-parser-coverage.md) — cache schema embeds the tier/needs_consent fields
Scope
14 functional requirements (FR-1~14), 3 NFRs, 7 acceptance criteria. See spec.md for the full contract.
Dependencies
Depends on:
build-file-detect-20260428 — provides scripts/detect.ts (Tier 1)
spring-ask-skill-20260429 (sibling) — consumes the cache produced here
Tracking
Originating PR: #8 (ADRs + tracks)
Implements the producer side of ADR-0001's lazy-loading model:
scripts/sync.tsorchestrator plus three Claude Code hooks (SessionStart,FileChanged,CwdChanged) that populate the per-project version cache at~/.cache/pleaseai-spring/projects/<sha256(project_dir)>.json.Track
.please/docs/tracks/active/hook-sync-20260429/Related ADRs
.please/docs/decisions/0001-lazy-skill-loading-via-hooks.md) — defines the hook-driven sync model.please/docs/decisions/0002-three-tier-version-detection.md) —sync.tsorchestrates Tier escalation.please/docs/decisions/0003-extended-static-parser-coverage.md) — cache schema embeds the tier/needs_consent fieldsScope
14 functional requirements (FR-1~14), 3 NFRs, 7 acceptance criteria. See spec.md for the full contract.
Dependencies
Depends on:
build-file-detect-20260428— providesscripts/detect.ts(Tier 1)spring-ask-skill-20260429(sibling) — consumes the cache produced hereTracking
Originating PR: #8 (ADRs + tracks)