Expand model tag support: add GLM-5.1, simplify Anthropic IDs, scan tags anywhere in message

- Flink update_bars debouncing
- update_bars subscription idempotency bugfix
- Price decimal correction bugfix of previous commit
- Add GLM-5.1 model tag alongside renamed GLM-5
- Use short Anthropic model IDs (sonnet/haiku/opus) instead of full version strings
- Allow @tags anywhere in message content, not just at start
- Return hasOtherContent flag instead of trimmed rest string
- Only trigger greeting stream when tag has no other content
- Update workspace knowledge base references to platform/workspace and platform/shapes
- Hierarchical knowledge base catalog
- 151 Trading Strategies knowledge base articles
- Shapes knowledge base article
- MutateShapes tool instead of workspace patch
This commit is contained in:
2026-04-28 15:05:15 -04:00
parent d41fcd0499
commit 47471b7700
184 changed files with 9044 additions and 170 deletions

View File

@@ -89,6 +89,26 @@ To switch symbol and period (period is in seconds: 60=1m, 300=5m, 900=15m, 3600=
After patching, confirm the change to the user.
## Drawing Shapes on the Chart
To add or modify chart drawings (trend lines, Fibonacci retracements, rectangles, etc.), use `WorkspacePatch` directly on the `shapes` store. Use `MemoryLookup({page: "platform/shapes"})` for the full type reference including point counts and override properties.
Read `chartState` first to get the current symbol and visible time range for placing points accurately.
**Pattern for adding a shape:**
```json
[{
"op": "add",
"path": "/shapes/<unique-id>",
"value": { }
}]
```
The shape object structure and all type-specific details are in `platform/shapes`.
To delete: `[{ "op": "remove", "path": "/shapes/<id>" }]`
To update a property: `[{ "op": "replace", "path": "/shapes/<id>/color", "value": "#FF0000" }]`
## Symbol Resolution
Always use `SymbolLookup` to resolve tickers before passing them to research or chart tools. Symbols must be in `SYMBOL.EXCHANGE` format (e.g., `BTC/USDT.BINANCE`). If the user says "ETHUSDT", "ETH", or any ambiguous ticker, resolve it first. `SymbolLookup` results are sorted by 24h volume descending — pick the top result when the user hasn't specified an exchange.