mirror of
https://github.com/Alkatrazz24/Funk-lab.git
synced 2026-07-08 18:14:42 +02:00
docs(n8n): rapports portefeuille — news en FR + piège apostrophe JS + édition via API
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
047785be1a
commit
22d40023e1
1 changed files with 8 additions and 0 deletions
|
|
@ -300,7 +300,15 @@ Deux workflows (rapport commenté du portefeuille : données exactes via API, na
|
|||
- **Auth durable** : nœud `Auth Ghostfolio` = `POST /api/v1/auth/anonymous` avec le **jeton de sécurité** (compte anonyme) → renvoie un JWT frais à chaque run (les nœuds GET utilisent `=Bearer {{ $('Auth Ghostfolio').first().json.authToken }}`). **Plus d'expiration à gérer.** Le jeton de sécurité est stocké dans le body du nœud Auth (base n8n, non versionné).
|
||||
- **Préparer Données** (Code) : exclut `assetClass=LIQUIDITY` (cash/Livret A) ; calcule valeur, perf, top/flop, concentration (poids **relatifs au portefeuille actions**) ; **récupère les actus par action** (top 6 par poids) via Yahoo RSS `feeds.finance.yahoo.com/rss/2.0/headline?s=<sym>` avec `this.helpers.httpRequest` (wrap try/catch → si échec, le rapport part sans news).
|
||||
- **Analyse LLM** : LiteLLM `:4000`, modèle `hermes-default` (Qwen). Le prompt autorise des **recommandations/pistes** + signale bonne/mauvaise nouvelle par action, en s'appuyant UNIQUEMENT sur données + news fournies.
|
||||
- **News en français** : les titres Yahoo RSS arrivent **en anglais**. Le prompt système force la traduction : *« Les titres d'actualité fournis sont en anglais : traduis ou résume chaque news en français (ne recopie aucun titre en anglais). »* (sans ça, Qwen recopie les titres en anglais).
|
||||
- ⚠️ **Caveat précision** : Qwen 8B **peut se tromper sur les chiffres** dans sa prose. L'email inclut donc TOUJOURS le **tableau de positions exact** (calculé par n8n) : se fier au tableau pour les nombres, à la prose pour le contexte. Le LLM ne navigue pas — c'est n8n qui apporte les news.
|
||||
- ⚠️ **Caveat tokens** : Qwen3 « réfléchit » avant de répondre, et la réflexion consomme le budget `max_tokens`. Si un digest paraît tronqué (`finish_reason: length`, `content` vide), augmenter `max_tokens` du nœud `Analyse LLM`.
|
||||
|
||||
> ⚠️ **Piège apostrophe JS — corrigé le 2026-06-16.** Dans le nœud `Préparer Données`, `aujourd'hui` était écrit dans une chaîne entre **apostrophes simples** (`'...aujourd'hui...'`) → l'apostrophe fermait la chaîne → `SyntaxError: Unexpected identifier 'hui'`. Règle : tout texte FR avec apostrophe (`l'`, `d'`, `aujourd'hui`) dans un Code node doit être **échappé** (`\'`) ou placé entre guillemets doubles `"..."` / backticks. À noter : `node --check` brut signale un faux positif `await is only valid in async functions` car n8n enveloppe le code d'un Code node dans une fonction async — vérifier en l'enveloppant soi-même.
|
||||
|
||||
### Édition des workflows via l'API
|
||||
|
||||
PUT `/api/v1/workflows/:id` n'accepte que `{name, nodes, connections, settings}`, et `settings` **rejette les clés non whitelistées** (`binaryMode` → HTTP 400 `must NOT have additional properties`). Filtrer `settings` sur : `saveExecutionProgress`, `saveManualExecutions`, `saveDataErrorExecution`, `saveDataSuccessExecution`, `executionTimeout`, `errorWorkflow`, `timezone`, `executionOrder`. Le PUT **désactive** le workflow → réactiver via `POST /api/v1/workflows/:id/activate` (avec `Content-Type: application/json`).
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue