workflow 08: v1.1 fixes + docs update

- 08-class-recording-rag-v1.1.json: Whisper URL → 10.5.1.16:8786,
  model → faster-distil-whisper-small.en, auth headers → env vars,
  inputDataFieldName fix, Paperless response format text
- PLAUSIBLEDENABILITY.md: remove Whisper from GPU list (moved to N.O.M.A.D.)
- n8n-workflows/README.md: fix class recordings path to /mnt/tank,
  correct workflow 08 trigger (webhook, not folder watcher),
  add curl upload example and docker-compose setup instructions
This commit is contained in:
Paccoco
2026-05-09 19:07:27 -05:00
parent 2ee549d843
commit 31edbf1970
3 changed files with 567 additions and 16 deletions

View File

@@ -11,7 +11,7 @@
| 05 | Paperless → RAG | `POST /webhook/paperless/rag-ingest` | Auto-ingests Paperless documents into Qdrant for RAG search; notifies via Gotify |
| 06 | RSS Digest | Scheduled (every 6h) + `POST /webhook/scrape/summarize` | Fetches RSS feeds, deduplicates via Postgres, AI-summarizes per-feed, pushes to Gotify |
| 07 | Git Commit Summarizer | `POST /webhook/git/push` | Receives git push webhooks, AI-summarizes changes, notifies via Gotify |
| 08 | Class Recording → RAG | Watches `/mnt/data/class-recordings/` | Auto-transcribes new .wav files, extracts key notes, ingests into RAG by class, saves notes to Paperless, notifies via Gotify |
| 08 | Class Recording → RAG | `POST /webhook/class/upload` | Transcribes uploaded .wav, extracts key notes, ingests into RAG by class, saves notes to Paperless, notifies via Gotify |
| 14 | Paperless Inbox Reminder | Scheduled (Monday 9 AM) | Queries Paperless for untagged documents; sends Gotify reminder with oldest items listed, or a ✅ clear if inbox is empty |
| 15 | n8n Self-Health Monitor | Scheduled (every 15 min) | Checks n8n execution history for failures in the past hour; deduplicates via Postgres; pushes Gotify alert with workflow name and error summary |
| 16 | NFS Mount Watchdog | Scheduled (every 5 min) | Probes NFS mount points on PD; if missing: runs mount script, re-probes, restarts affected containers (Plex, Audiobookshelf, Immich); notifies via Gotify on heal or escalation |
@@ -188,7 +188,7 @@ curl -X POST https://n8n.paccoco.com/webhook/transcribe/summarize \
### Add a class recording (just drop a file):
```
/mnt/data/class-recordings/
/mnt/tank/class-recordings/
├── CS101-Java/
│ ├── lecture-01-intro.wav
│ ├── lecture-02-variables.wav
@@ -199,8 +199,9 @@ curl -X POST https://n8n.paccoco.com/webhook/transcribe/summarize \
└── essay-workshop.wav
```
The workflow detects the class from the subfolder name and the lecture title from the filename.
Just drop a `.wav` file into the right class folder and it auto-processes.
Workflow 08 uses a webhook trigger (`POST /webhook/class/upload`), not a folder watcher. Upload the file via curl and include the class name and lecture title as form fields (see curl example below).
> **Note:** The folder structure above shows suggested organization on disk. The workflow does not watch the folder — you must POST to the webhook.
### Query RAG for class-specific content:
```bash
@@ -213,20 +214,31 @@ The RAG system stores class name metadata with each chunk, so when you mention a
### Class Recordings Setup (Workflow 08)
Requires n8n volume mount to the NFS share. Add to n8n's docker-compose:
```yaml
volumes:
- /mnt/tank/docker/appdata/n8n:/home/node/.n8n
- /mnt/data/class-recordings:/data/class-recordings
```
Create class subfolders:
Create class subfolders on PD (already done for CS101-Java):
```bash
mkdir -p /mnt/data/class-recordings/CS101-Java
mkdir -p /mnt/data/class-recordings/MATH201
sudo mkdir -p /mnt/tank/class-recordings/CS101-Java
sudo mkdir -p /mnt/tank/class-recordings/MATH201
```
Then restart n8n and activate the workflow. Any `.wav` dropped into a subfolder triggers automatic transcription + RAG ingest.
Add to n8n's **automation/.env**:
```
PAPERLESS_TAG_LECTURE_NOTES=11
```
Add to n8n's **automation/docker-compose.yaml** under the n8n `environment:` section:
```yaml
PAPERLESS_TAG_LECTURE_NOTES: ${PAPERLESS_TAG_LECTURE_NOTES}
```
Then restart n8n and import/activate `08-class-recording-rag-v1.1.json`.
To upload a class recording:
```bash
curl -X POST https://n8n.paccoco.com/webhook/class/upload \
-F "data=@lecture-01-intro.wav" \
-F "class_name=CS101-Java" \
-F "lecture_title=lecture-01-intro"
```
### Trigger RSS digest manually:
```bash