feat: write 3 files per solo recording (index + transkript + zusammenfassung)

- pipeline: call write_solo_docs() instead of save_transcript(); broadcast paths dict
- router: /open accepts paths list for Obsidian mode, copies all 3 files to vault
- app.js: store _modalPaths from saved event; Obsidian button sends all paths
- tests: test_write_solo_docs_creates_three_files added

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-02 11:10:28 +02:00
parent a37e09fb4e
commit 06f7361004
4 changed files with 58 additions and 17 deletions
+19
View File
@@ -60,6 +60,25 @@ def test_slugify():
assert slugify("test -- foo") == "test-foo"
def test_write_solo_docs_creates_three_files(tmp_path):
from output import write_solo_docs
from datetime import datetime
paths = write_solo_docs(
raw_text="Das ist der rohe Text vom Mikrofon.",
refined="# Projektstatus\n\nDas Projekt läuft gut.\n",
output_dir=str(tmp_path),
dt=datetime(2026, 4, 2, 15, 0),
)
assert set(paths.keys()) == {"index", "transkript", "zusammenfassung"}
assert all(os.path.exists(p) for p in paths.values())
index = open(paths["index"]).read()
assert "Projektstatus" in index
assert "transkript" in index
assert "zusammenfassung" in index
assert "Das ist der rohe Text" in open(paths["transkript"]).read()
assert "Projekt läuft gut" in open(paths["zusammenfassung"]).read()
def test_write_meeting_docs_creates_three_files(tmp_path):
from output import write_meeting_docs
from datetime import datetime