#!/usr/bin/env bash
# brain-distribuable: oui
# post-commit — installé par scripts/install-brain-hooks.sh, source versionnée
#
#   1. signe de vie du claim : tout commit prouve que la session travaille
#   2. la base suit les handoffs — dans le checkout PRINCIPAL seulement

source "$(dirname "${BASH_SOURCE[0]}")/_racines.sh"

bash "$BRAIN_MAIN/scripts/bsi-claim.sh" touch --quiet 2>/dev/null || true

# Un commit dans un worktree est une branche, pas la prod : la synchroniser
# écrirait l'état d'une PR non relue dans la base que le brain lit — ou, sans
# .env.local, une base SQLite neuve dans le worktree. La fusion, elle, passe
# par post-merge.
brain_dans_un_worktree && exit 0

# `HEAD~1 HEAD`, les deux : `git diff HEAD~1` seul compare au DISQUE, et un
# handoff modifié non commité — celui d'une autre session — déclenchait la
# synchro pour un commit qui n'en touchait aucun.
if git diff --name-only HEAD~1 HEAD 2>/dev/null | grep -qE '^(handoffs/|BRAIN-INDEX\.md)'; then
    bash "$BRAIN_MAIN/scripts/brain-db-sync.sh" --quiet || true
fi
