docs: update n8n handoff - all 6 implementation items completed
This commit is contained in:
+34
-29
@@ -14,13 +14,16 @@ related: [[Infrastructure/Automation/n8n Workflows]], [[Infrastructure/Automatio
|
|||||||
|
|
||||||
n8n is running on `n8n-agent` at `http://127.0.0.1:18808`.
|
n8n is running on `n8n-agent` at `http://127.0.0.1:18808`.
|
||||||
|
|
||||||
Last verified on 2026-05-13:
|
Last verified on 2026-05-13 (evening):
|
||||||
|
|
||||||
- Container: `n8n-agent` running and healthy.
|
- Container: `n8n-agent` running and healthy.
|
||||||
- Health endpoint: `GET /healthz` returns `{"status":"ok"}`.
|
- Health endpoint: `GET /healthz` returns `{"status":"ok"}`.
|
||||||
- Workflow export: `n8n export:workflow --all` succeeds.
|
- Workflow export: `n8n export:workflow --all` succeeds.
|
||||||
- Active workflows: 11.
|
- Active workflows: 12.
|
||||||
|
- Inactive workflows: 1 (Nightly Obsidian Vault Sync replaced by Evening Digest).
|
||||||
- Archived workflows: 2 unrecoverable duplicate IMAP workflows archived after SQLite recovery.
|
- Archived workflows: 2 unrecoverable duplicate IMAP workflows archived after SQLite recovery.
|
||||||
|
- Docker health endpoint: `GET :18809/health` returns container state for 7 services.
|
||||||
|
- Systemd user service `docker-health-endpoint.service` active and enabled.
|
||||||
|
|
||||||
## Implemented and active
|
## Implemented and active
|
||||||
|
|
||||||
@@ -44,8 +47,12 @@ Last verified on 2026-05-13:
|
|||||||
- Uses `127.0.0.1:5678` for n8n self-health.
|
- Uses `127.0.0.1:5678` for n8n self-health.
|
||||||
- Alerts Telegram and Discord after two consecutive failures.
|
- Alerts Telegram and Discord after two consecutive failures.
|
||||||
- Sends recovery messages when a previously-alerted service becomes healthy again.
|
- Sends recovery messages when a previously-alerted service becomes healthy again.
|
||||||
|
- Docker health enrichment: implemented 2026-05-13.
|
||||||
|
- Host-side Python HTTP endpoint at `~/lab/swarm/scripts/docker-health-server.py` on port `18809`.
|
||||||
|
- Systemd user service `docker-health-endpoint.service`.
|
||||||
|
- Watchdog now calls `http://172.19.0.1:18809/health` and includes container status/health/restarts in alerts.
|
||||||
- Remaining improvement:
|
- Remaining improvement:
|
||||||
- Add Docker health-state enrichment. This requires either mounting Docker socket read-only or adding a host-side helper endpoint/script. Do not mount the Docker socket casually; decide the safer boundary first.
|
- Tune alert deduplication thresholds after observing real failure patterns.
|
||||||
|
|
||||||
### n8n Failure Digest
|
### n8n Failure Digest
|
||||||
|
|
||||||
@@ -56,8 +63,9 @@ Last verified on 2026-05-13:
|
|||||||
- Queries recent failed n8n executions.
|
- Queries recent failed n8n executions.
|
||||||
- Groups failures by workflow/node/error.
|
- Groups failures by workflow/node/error.
|
||||||
- Sends a concise Telegram digest.
|
- Sends a concise Telegram digest.
|
||||||
|
- Discord delivery: implemented 2026-05-13.
|
||||||
|
- Now delivers to both Telegram and Discord #ops-alerts in parallel.
|
||||||
- Remaining improvement:
|
- Remaining improvement:
|
||||||
- Add Discord delivery to ops channel.
|
|
||||||
- Tune grouping/windowing after observing real failure volume.
|
- Tune grouping/windowing after observing real failure volume.
|
||||||
- Add first-seen/last-seen persistence if the current digest is too repetitive.
|
- Add first-seen/last-seen persistence if the current digest is too repetitive.
|
||||||
|
|
||||||
@@ -73,6 +81,7 @@ Last verified on 2026-05-13:
|
|||||||
- Archived duplicates:
|
- Archived duplicates:
|
||||||
- `xjUoQf97TkBrawc8` — `IMAP Inbox Triage + Obsidian Notes (squareffect)`
|
- `xjUoQf97TkBrawc8` — `IMAP Inbox Triage + Obsidian Notes (squareffect)`
|
||||||
- `kHDK9QdUSiAJ8rCM` — `IMAP Inbox Triage + Obsidian Notes (wills-portal)`
|
- `kHDK9QdUSiAJ8rCM` — `IMAP Inbox Triage + Obsidian Notes (wills-portal)`
|
||||||
|
- Container URLs fixed 2026-05-13: stale `192.168.153.130` replaced with Docker bridge `172.19.0.1`.
|
||||||
- Remaining improvement:
|
- Remaining improvement:
|
||||||
- Rebuild any needed second-mailbox triage flows from scratch instead of unarchiving the corrupted duplicates.
|
- Rebuild any needed second-mailbox triage flows from scratch instead of unarchiving the corrupted duplicates.
|
||||||
- Add draft-reply generation for reply-needed messages.
|
- Add draft-reply generation for reply-needed messages.
|
||||||
@@ -105,16 +114,21 @@ Last verified on 2026-05-13:
|
|||||||
- Add meeting-prep note template.
|
- Add meeting-prep note template.
|
||||||
- Add after-meeting follow-up path that collects event + notes + transcript and produces action items.
|
- Add after-meeting follow-up path that collects event + notes + transcript and produces action items.
|
||||||
|
|
||||||
### Nightly Obsidian Vault Sync
|
### Evening Digest (replaces Nightly Obsidian Vault Sync)
|
||||||
|
|
||||||
- Workflow ID: `75JCevkdgkyCr2qH`
|
- Old workflow ID: `75JCevkdgkyCr2qH` (deactivated)
|
||||||
|
- New workflow ID: `PlZywwqL8MRNEAN6`
|
||||||
- Status: active
|
- Status: active
|
||||||
- Trigger: nightly
|
- Trigger: daily at 21:00 America/Los_Angeles
|
||||||
- Current behavior:
|
- Current behavior:
|
||||||
- Generates nightly operational note using local LLM and live service context.
|
- Queries n8n executions API for today's successes and failures.
|
||||||
|
- Checks Docker container health via `172.19.0.1:18809`.
|
||||||
|
- Lists new Obsidian notes created today.
|
||||||
|
- Synthesizes with local gemma-4-26B LLM.
|
||||||
|
- Delivers to Telegram, Discord #ops-alerts, and Obsidian.
|
||||||
- Remaining improvement:
|
- Remaining improvement:
|
||||||
- Align with the desired evening digest shape: jobs run today, failed jobs, reminders, short summaries.
|
- Add systemd timer health once a host-side endpoint exists.
|
||||||
- Add n8n Failure Digest summary as an input.
|
- Add reminders and task queue summary.
|
||||||
|
|
||||||
### Daily OpenClaw Session Digest
|
### Daily OpenClaw Session Digest
|
||||||
|
|
||||||
@@ -279,36 +293,27 @@ Recommended implementation:
|
|||||||
|
|
||||||
## Recommended next order of work
|
## Recommended next order of work
|
||||||
|
|
||||||
1. Observe Gmail IMAP fallback.
|
1. ~~Fix Gmail Trigger warning.~~ Done 2026-05-13: replaced with IMAP fallback.
|
||||||
- Goal: confirm the next real Gmail ingestion produces the expected Telegram digest and Obsidian note.
|
2. ~~Add Docker health-state enrichment to Swarm Health Watchdog.~~ Done 2026-05-13: host-side endpoint on 18809, systemd service.
|
||||||
- If output shape is wrong, adjust the shared triage/formatting nodes; do not return to the broken OAuth trigger unless Google OAuth is re-authorized.
|
3. ~~Build Morning Brief v1.~~ Done 2026-05-13: workflow `g3IdGZCK1EtTsv9T`, daily 06:30 PT.
|
||||||
|
4. ~~Extend Evening Digest.~~ Done 2026-05-13: workflow `PlZywwqL8MRNEAN6`, daily 21:00 PT.
|
||||||
|
5. ~~Add Discord delivery to n8n Failure Digest.~~ Done 2026-05-13.
|
||||||
|
6. ~~Fix stale container URLs in IMAP workflow.~~ Done 2026-05-13.
|
||||||
|
|
||||||
2. Add Docker health-state enrichment to Swarm Health Watchdog.
|
7. Implement Obsidian Semantic Index.
|
||||||
- Prefer safe host-side helper over raw Docker socket mount.
|
|
||||||
- Include last Docker health state and suggested fix in alerts.
|
|
||||||
|
|
||||||
3. Build Morning Brief v1.
|
|
||||||
- Start small: calendar + weather + email highlights + swarm/n8n health.
|
|
||||||
- Deliver to Telegram/Discord and save to Obsidian.
|
|
||||||
|
|
||||||
4. Extend Evening Digest.
|
|
||||||
- Use n8n Failure Digest plus workflow/timer run summary.
|
|
||||||
- Include failed jobs and next recommended action.
|
|
||||||
|
|
||||||
5. Implement Obsidian Semantic Index.
|
|
||||||
- Decide canonical vector store first.
|
- Decide canonical vector store first.
|
||||||
- Use Ollama embeddings on `18807`.
|
- Use Ollama embeddings on `18807`.
|
||||||
- Add incremental update path.
|
- Add incremental update path.
|
||||||
|
|
||||||
6. Upgrade Web-to-Notes Capture.
|
8. Upgrade Web-to-Notes Capture.
|
||||||
- Add PDF and YouTube transcript support.
|
- Add PDF and YouTube transcript support.
|
||||||
- Add source metadata and claim extraction.
|
- Add source metadata and claim extraction.
|
||||||
|
|
||||||
7. Upgrade Voice Memo Pipeline.
|
9. Upgrade Voice Memo Pipeline.
|
||||||
- Add native Telegram/Discord voice ingestion.
|
- Add native Telegram/Discord voice ingestion.
|
||||||
- Add optional Kokoro audio summary.
|
- Add optional Kokoro audio summary.
|
||||||
|
|
||||||
8. Define webhook action bus catalog.
|
10. Define webhook action bus catalog.
|
||||||
- Document stable endpoints and schemas.
|
- Document stable endpoints and schemas.
|
||||||
- Add `process_url`, `summarize_pdf`, `add_reminder`, `sync_vault`, `run_health_check`.
|
- Add `process_url`, `summarize_pdf`, `add_reminder`, `sync_vault`, `run_health_check`.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user