[2f488f42] Implement: Atomarer 'fertig' Befehl in dev_session.py mit automatischer Notion-Aktualisierung und Git-Operationen.

This commit is contained in:
2026-01-27 10:11:39 +00:00
parent c2b1c3d374
commit d418f48481
2 changed files with 72 additions and 13 deletions

View File

@@ -1,21 +1,32 @@
#!/usr/bin/env python3
import os
import sys
import json
import subprocess
import os
from datetime import datetime # datetime kann direkt importiert werden
# Fügen Sie das Projekt-Stammverzeichnis zum Python-Pfad hinzu
# Das ist das Verzeichnis, in dem sich das Hook-Skript befindet
sys.path.append(os.path.dirname(os.path.abspath(__file__)))
# Ermittle das Git-Projekt-Root-Verzeichnis
try:
from dev_session import append_blocks_to_notion_page, decimal_hours_to_hhmm
from datetime import datetime
except ImportError:
print("Fehler: Konnte dev_session.py nicht importieren.", file=sys.stderr)
PROJECT_ROOT = subprocess.check_output(["git", "rev-parse", "--show-toplevel"]).decode("utf-8").strip()
# Stelle sicher, dass PROJECT_ROOT am Anfang von sys.path steht
if PROJECT_ROOT not in sys.path:
sys.path.insert(0, PROJECT_ROOT)
# DEBUG prints
print(f"DEBUG: PROJECT_ROOT = {PROJECT_ROOT}", file=sys.stderr)
print(f"DEBUG: sys.path = {sys.path}", file=sys.stderr)
except subprocess.CalledProcessError:
print("Fehler: Nicht in einem Git-Repository. Kann notion_commit_hook nicht ausführen.", file=sys.stderr)
sys.exit(1)
SESSION_DIR = ".dev_session"
try:
import dev_session
# Greife auf Funktionen über dev_session.function_name zu
append_blocks_to_notion_page = dev_session.append_blocks_to_notion_page
decimal_hours_to_hhmm = dev_session.decimal_hours_to_hhmm
except ImportError as e:
print(f"Fehler: Konnte dev_session.py nicht importieren. Stelle sicher, dass dev_session.py im Projekt-Root liegt. Details: {e}", file=sys.stderr)
sys.exit(1)
SESSION_DIR = os.path.join(PROJECT_ROOT, ".dev_session")
SESSION_FILE_PATH = os.path.join(SESSION_DIR, "SESSION_INFO")
def get_last_commit_message() -> str: