diff --git a/plugin/.claude-plugin/plugin.json b/plugin/.claude-plugin/plugin.json index 6799e70..9249e08 100644 --- a/plugin/.claude-plugin/plugin.json +++ b/plugin/.claude-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "scribe", "description": "Scribe system-of-record for Claude Code: MCP tools over your notes/tasks/projects/rules, a session-start push channel that surfaces your always-on rules + active-project context, process-skills (writing-plans, systematic-debugging, verification, brainstorming, reusing-code), and your saved Scribe Processes auto-surfaced as skills (/scribe:sync). Replaces superpowers + file-memory with one app-backed plugin.", - "version": "0.1.41", + "version": "0.1.42", "author": { "name": "Bryan Van Deusen" }, "mcpServers": { "scribe": { diff --git a/plugin/hooks/scribe_after_write.sh b/plugin/hooks/scribe_after_write.sh index 8f6ac67..9a49ffc 100644 --- a/plugin/hooks/scribe_after_write.sh +++ b/plugin/hooks/scribe_after_write.sh @@ -177,7 +177,12 @@ while IFS= read -r rel_path; do [ -n "$derive_seen" ] && derive_exclude_q="&exclude_derive=${derive_seen}" fi if [ -n "$path_enc" ]; then - body=$(curl -fsS --max-time 4 \ + # 8s, not the pre-write hook's 5: this hook runs AFTER the tool, so it + # gates nothing the session is waiting on, and the first prior-art call + # after a redeploy is a cold start (embedding warm-up, ~4.6s observed) + # that a 4s cap turned into a silent fail-open — the one write a + # session most wants the ledger's word on lost it. + body=$(curl -fsS --max-time 8 \ -H "Authorization: Bearer ${token}" \ "${url%/}/api/plugin/prior-art?path=${path_enc}&code=${code_enc}${repo_q}${exclude_q}${sync_exclude_q}${derive_exclude_q}${shapes_q}" 2>/dev/null) || body="" fi