بنقرة واحدة
evolve-bug-fix-may18
Root cause analysis and fix for KeyError on strategy_name during trade logging
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Root cause analysis and fix for KeyError on strategy_name during trade logging
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Use the browse.sh open-source skill catalog (171+ skills) to interact with websites via their documented APIs or browser automation. Provides precise, token-efficient workflows for weather, flights, jobs, shopping, research, GitHub, and more. Requires `browse` CLI (npm) and Browserbase API key for browser-requiring skills.
Design, curate, secure, and ship a Hermes community skills marketplace with a polished skills.sh-style UX.
Morning briefing pattern combining session rehash, tech news, and Polymarket alpha scanning
Generates daily notes for wiki-llm with summary, tasks, focus, token usage, and model tracking
Inspect, verify, and troubleshoot Hermes Agent installation state — profiles, memory files, database integrity, configuration, and session logs.
MODEL ROUTING IS DEPRECATED. Cobuddy routing was stripped from root config and chief config during 2026-05-18 hardening. Chief now uses deepseek/deepseek-v4-flash:free. This skill exists for historical reference only.
| name | evolve-bug-fix-may18 |
| title | Evolve Bug Fix — strategy_name Key Mismatch |
| description | Root cause analysis and fix for KeyError on strategy_name during trade logging |
| version | 1.0.0 |
| type | reference |
| status | active |
| created | "2026-05-18T00:00:00.000Z" |
| category | development |
| license | MIT |
| tested | runtime |
| tested_note | Skill documents a verified production fix; creator provenance needs manual review. |
| tags | ["bug-fix","strategy-learner","key-mismatch","sandbox"] |
strategy_name Key Mismatch (May 18, 2026)The strategy_learner.py log_trade() function extracted the strategy name with:
strategy_name = trade.get("strategy_name", "default")
But the sandbox (sandbox.py) and unified launcher (hermes_trading.py) passed the key as "strategy":
{"action": "log", "trade": {"strategy": "owl-alpha-v3", ...}}
Result: Every trade landed in the "default" bucket. When evolve was called with "owl-alpha-v3", it returned:
{"status": "not_found", "message": "Strategy 'owl-alpha-v3' not found in database."}
Accept either key with fallback chain:
strategy_name = trade.get("strategy_name") or trade.get("strategy", "default")
When multiple modules share trade data via JSON, explicitly document the expected key names. Use a shared schema or at minimum a comment listing accepted key variants.