@tony01/astroneum 0.4.1-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +237 -0
- package/LICENSE +21 -0
- package/README.md +198 -0
- package/dist/Indicator-BBI3L_lx.d.ts +1181 -0
- package/dist/ar-SA-AEPUSRMF.js +2 -0
- package/dist/astroneum.css +1 -0
- package/dist/chunk-2SN3RH42.js +2 -0
- package/dist/chunk-2YYGUSVX.js +3 -0
- package/dist/chunk-3GJSZFLM.js +2 -0
- package/dist/chunk-4YOLQ5DC.js +2 -0
- package/dist/chunk-I4YQBP2M.js +3 -0
- package/dist/chunk-OOMZRONH.js +35 -0
- package/dist/chunk-PV2GAINM.js +2 -0
- package/dist/chunk-SDXH2WAI.js +3 -0
- package/dist/chunk-YFPXTHZX.js +2 -0
- package/dist/chunk-YW3STIPY.js +653 -0
- package/dist/de-DE-4PR3NRQ7.js +2 -0
- package/dist/entries/alerts.d.ts +93 -0
- package/dist/entries/alerts.js +2 -0
- package/dist/entries/datafeeds/crypto.d.ts +65 -0
- package/dist/entries/datafeeds/crypto.js +2 -0
- package/dist/entries/datafeeds/polygon.d.ts +113 -0
- package/dist/entries/datafeeds/polygon.js +2 -0
- package/dist/entries/multichart.d.ts +96 -0
- package/dist/entries/multichart.js +2 -0
- package/dist/entries/portfolio.d.ts +55 -0
- package/dist/entries/portfolio.js +2 -0
- package/dist/entries/replay.d.ts +141 -0
- package/dist/entries/replay.js +2 -0
- package/dist/entries/script.d.ts +68 -0
- package/dist/entries/script.js +2 -0
- package/dist/entries/watchlist.d.ts +43 -0
- package/dist/entries/watchlist.js +2 -0
- package/dist/es-ES-HNDVPSLW.js +2 -0
- package/dist/fr-FR-Y7XWRGF2.js +2 -0
- package/dist/hi-IN-KEGIKIMV.js +2 -0
- package/dist/id-ID-QXDIUQUZ.js +2 -0
- package/dist/index.d.ts +1434 -0
- package/dist/index.js +2 -0
- package/dist/it-IT-UDTDFSRB.js +2 -0
- package/dist/ja-JP-NIODTBW3.js +2 -0
- package/dist/ko-KR-DQHPXKBA.js +2 -0
- package/dist/nl-NL-BB3ZHCXS.js +2 -0
- package/dist/pl-PL-I5MZDLFD.js +2 -0
- package/dist/pt-BR-MAMRTOYR.js +2 -0
- package/dist/ru-RU-F43D6B7G.js +2 -0
- package/dist/th-TH-KTFIUAD6.js +2 -0
- package/dist/tr-TR-WFTKJ22Y.js +2 -0
- package/dist/vi-VN-CD3WI2FQ.js +2 -0
- package/dist/zh-CN-Y2C6RSOI.js +3 -0
- package/docs/STRUCTURE.md +231 -0
- package/docs/TODO-DESIGN.md +261 -0
- package/docs/TODO.md +222 -0
- package/docs/api.md +528 -0
- package/docs/datafeed-guide.md +311 -0
- package/docs/design-astroneum.md +479 -0
- package/docs/plugin-development.md +565 -0
- package/docs/tv-functions-skill.md +706 -0
- package/package.json +147 -0
package/docs/TODO.md
ADDED
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
# Astroneum — TODO & Feature-Gap Backlog
|
|
2
|
+
|
|
3
|
+
> **Actionable gap index.** One row per gap with status + next action. Shipped items (no gap) are omitted — they live in `docs/tv-functions-skill.md` §3 as `widget-native` / `api-bridged`.
|
|
4
|
+
> **Last updated:** 2026-07-08
|
|
5
|
+
> Deployed at: `https://72.62.73.180/astroneum/` · Library `astroneum` v0.4.1-beta.2 · Demo app `astroneum-demo-next`
|
|
6
|
+
>
|
|
7
|
+
> **Authority:** TV-vs-Astroneum status lives in `docs/tv-functions-skill.md` §3 (6-bucket taxonomy). This file is the scannable gap index. When statuses conflict, tv-functions-skill.md wins.
|
|
8
|
+
> **Update this file on every functional change** (see §Maintenance).
|
|
9
|
+
|
|
10
|
+
## How to read
|
|
11
|
+
|
|
12
|
+
**Status legend**
|
|
13
|
+
|
|
14
|
+
| Symbol | Meaning |
|
|
15
|
+
|---|---|
|
|
16
|
+
| ✅ | Shipped and working |
|
|
17
|
+
| 🔧 | Partial — exists but incomplete |
|
|
18
|
+
| ⏳ | v1-in-scope — spec'd to build now |
|
|
19
|
+
| 🟦 | v1.1 — library supports, app surface deferred |
|
|
20
|
+
| ⟫ | v2-future — not in v1 |
|
|
21
|
+
| ❌ | Missing — not in library or app |
|
|
22
|
+
| ⚠️ | Risk / tech debt — needs attention |
|
|
23
|
+
|
|
24
|
+
**Companion docs (source of truth for detail):**
|
|
25
|
+
- `docs/tv-functions-skill.md` — authoritative TV→Astroneum function catalog (§3)
|
|
26
|
+
- `docs/STRUCTURE.md` — where things live
|
|
27
|
+
- `docs/design-astroneum.md` — UX/UI spec (§11 in-scope, §12 deferred)
|
|
28
|
+
- `docs/TODO-DESIGN.md` — design/layout gap backlog
|
|
29
|
+
- `INDICATOR_COMPARISON.md` — indicator parity table
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## 1. Alerts & notifications → `tv-functions-skill.md` §3.11
|
|
34
|
+
|
|
35
|
+
| # | Feature | Status | Gap / next action |
|
|
36
|
+
|---|---|---|---|
|
|
37
|
+
| 1.5 | Email notify | 🔧 | **Stub** — `demo/src/app/api/alerts/email/route.ts` logs only. Wire Nodemailer/SES + env |
|
|
38
|
+
| 1.11 | Indicator-condition alerts | ❌ | Only price alerts today. Extend `AlertManager` to read indicator outputs |
|
|
39
|
+
| 1.12 | Drag-to-set price alert line | ❌ | Needs chart drawing integration |
|
|
40
|
+
| 1.13 | Alert log/history (server-side) | 🔧 | `/alerts` page reads localStorage only. Needs DB (#8) |
|
|
41
|
+
| 1.14 | Alert persistence across devices | ❌ | localStorage only. Needs auth + DB (#8) |
|
|
42
|
+
|
|
43
|
+
## 2. Webhook (outbound + inbound) → `tv-functions-skill.md` §3.12, §4
|
|
44
|
+
|
|
45
|
+
| # | Feature | Status | Gap / next action |
|
|
46
|
+
|---|---|---|---|
|
|
47
|
+
| 2.2 | Inbound ingestion (receive TV `alert()` POST) | ❌ | TV-style route + token. Build new in `demo/src/app/api/` (Trading-Bot-V2's route is a separate project — do NOT reuse) |
|
|
48
|
+
| 2.3 | Webhook token management | ❌ | UI + API for issue/revoke tokens |
|
|
49
|
+
| 2.4 | Delivery log (status, HTTP code, timestamp) | 🔧 | Status shown in UI; not persisted. Needs DB (#8) |
|
|
50
|
+
| 2.5 | v21 25-event schema support | ❌ | Reference-only in `tv-functions-skill.md` §3.12. Astroneum has no ingestion to consume them |
|
|
51
|
+
| 2.6 | Retry policy config | 🔧 | Hardcoded 1 retry / 3s. Make configurable |
|
|
52
|
+
|
|
53
|
+
## 3. Pine Script → `tv-functions-skill.md` §3.13–3.14
|
|
54
|
+
|
|
55
|
+
| # | Feature | Status | Gap / next action |
|
|
56
|
+
|---|---|---|---|
|
|
57
|
+
| 3.4 | `ta.*` subset (sma/ema/rsi/macd/bbands) | 🔧 | Limited set. Expand per §3.14 |
|
|
58
|
+
| 3.5 | `strategy()` + `strategy.*` family | ❌ | No backtest runtime. Blocks #4 |
|
|
59
|
+
| 3.6 | `request.security` (multi-TF) | ❌ | Library has `resampleBars`/`mtfIndicator` — expose in script |
|
|
60
|
+
| 3.7 | `request.financial / quandl / seed / splits / dividends` | ❌ | v2-future |
|
|
61
|
+
| 3.8 | `table.new / table.cell / merge_cells` | ❌ | Needed for strategy dashboard (#4) |
|
|
62
|
+
| 3.9 | `array.* / matrix.* / map.*` | ❌ | — |
|
|
63
|
+
| 3.10 | `label.* / line.* / box.* / plotshape / plotchar / plotcandle / fill / hline / bgcolor / barcolor` | ❌ | Library has overlay/drawing primitives — bridge to script |
|
|
64
|
+
| 3.11 | `log.info / warning / error` + console pane | ❌ | No console. Add output pane in `PineEditorPanel` |
|
|
65
|
+
| 3.12 | Full `input.*` (color/source/timeframe/symbol/session/text_area/price/time/enum) | 🔧 | Only float/int/string/bool |
|
|
66
|
+
| 3.13 | Script library / save / version | ❌ | No persistence. Needs DB (#8) or localStorage |
|
|
67
|
+
| 3.14 | Pine v6 features | ❌ | v5 only |
|
|
68
|
+
| 3.15 | Monaco/CodeMirror editor (syntax highlight, autocomplete) | 🔧 | Plain textarea. Upgrade editor |
|
|
69
|
+
|
|
70
|
+
## 4. Strategy Tester & report → `tv-functions-skill.md` §3.15–3.16
|
|
71
|
+
|
|
72
|
+
| # | Feature | Status | Gap / next action |
|
|
73
|
+
|---|---|---|---|
|
|
74
|
+
| 4.1 | Strategy Tester panel | ❌ | `StrategyTesterPanel` = stub ("No strategy running") |
|
|
75
|
+
| 4.2 | Backtest engine (replay trades on history) | ❌ | Needs `strategy()` runtime (#3.5) |
|
|
76
|
+
| 4.3 | Performance summary (net profit, PF, expected payoff, B&H, DD, sharpe, sortino) | ❌ | — |
|
|
77
|
+
| 4.4 | Trade list (entry/exit/P&L) | ❌ | — |
|
|
78
|
+
| 4.5 | Equity curve | ❌ | — |
|
|
79
|
+
| 4.6 | Drawdown curve | ❌ | — |
|
|
80
|
+
| 4.7 | Trade markers on chart | ❌ | Library has overlay API — add entry/exit arrows |
|
|
81
|
+
| 4.8 | Strategy properties (commission/slippage/capital/sizing) | ❌ | Config UI for `strategy()` args |
|
|
82
|
+
| 4.9 | 38-row on-chart dashboard | ❌ | Needs `table.*` (#3.8). Spec in §3.16 |
|
|
83
|
+
| 4.10 | Currency conversion | ❌ | v2 |
|
|
84
|
+
|
|
85
|
+
## 5. Trading panel / broker → `tv-functions-skill.md` §3.20
|
|
86
|
+
|
|
87
|
+
| # | Feature | Status | Gap / next action |
|
|
88
|
+
|---|---|---|---|
|
|
89
|
+
| 5.1 | Trading panel | ❌ | `TradingPanel` = stub ("No broker connected") |
|
|
90
|
+
| 5.2 | Paper trading engine | ❌ | Build new in `demo/src/app/api/` (do NOT reuse Trading-Bot-V2) |
|
|
91
|
+
| 5.3 | Broker OAuth connections | ❌ | v2-future |
|
|
92
|
+
| 5.4 | Order ticket (market/limit/stop/stop-limit) | ❌ | — |
|
|
93
|
+
| 5.5 | Positions list | 🔧 | `PortfolioTracker` is read-only display, no execution |
|
|
94
|
+
| 5.6 | Orders list (working) | ❌ | — |
|
|
95
|
+
| 5.7 | History (filled/closed) | ❌ | — |
|
|
96
|
+
| 5.8 | DOM / depth of market surface | 🟦 | Library supports (`domPlugin`); app surface deferred v1.1 |
|
|
97
|
+
| 5.9 | On-chart order dragging (SL/TP) | ❌ | v2 — needs drawing event integration |
|
|
98
|
+
| 5.10 | Account summary | 🔧 | `PortfolioTracker` read-only |
|
|
99
|
+
|
|
100
|
+
## 6. Indicators → `INDICATOR_COMPARISON.md`
|
|
101
|
+
|
|
102
|
+
| # | Feature | Status | Gap / next action |
|
|
103
|
+
|---|---|---|---|
|
|
104
|
+
| 6.2 | Remaining TV indicators (~50 niche) | ❌ | Stoch RSI, AC, CVI, A/D Line, Williams Fractal, BB %B, ALMA, SWMA, TSI, etc. Track in comparison table |
|
|
105
|
+
| 6.3 | Community indicators marketplace | ❌ | v2 |
|
|
106
|
+
| 6.4 | Indicator templates (save/load presets) | ❌ | `ChartTemplateManager` covers chart state; indicator-only presets missing |
|
|
107
|
+
| 6.5 | Indicator settings dialog (Inputs/Style/Visibility tabs) | 🔧 | Partial via `ChartPlugin`. Native modal deferred |
|
|
108
|
+
|
|
109
|
+
## 7. UX / UI → `design-astroneum.md` §11–12, `TODO-DESIGN.md`
|
|
110
|
+
|
|
111
|
+
| # | Feature | Status | Gap / next action |
|
|
112
|
+
|---|---|---|---|
|
|
113
|
+
| 7.1 | Chart right-click context menu | ⏳ | v1-in-scope (design §11). Not built. `ContextMenu.tsx` |
|
|
114
|
+
| 7.2 | Crosshair OHLC legend / data window | ⏳ | v1-in-scope (design §11). Not built. `OhlcLegend.tsx` |
|
|
115
|
+
| 7.3 | TopBar (symbol/timeframe/chart-type/indicators) | 🔧 | Library `PeriodBar` + demo brand bar. Hotkeys: `/` `Alt+A` `Shift+F` `Ctrl+Z/Y`. Undo/redo (`UndoManager`) + Save/Load (`SaveLoadMenu`) wired. Remaining gap: 1.5 `,` interval dropdown (library `PeriodBar` pass). See `TODO-DESIGN.md` §1 |
|
|
116
|
+
| 7.4 | LeftToolbar (drawing tools dock) | 🔧 | Library has 20 tools; dock UI partial. See `TODO-DESIGN.md` §2 |
|
|
117
|
+
| 7.5 | RightRail (watchlist + details) | ✅ | `SidebarContent` toggle bar (7 tabs) + `WatchlistPanel`/`AlertsPanel`/`StubPanel`. See `TODO-DESIGN.md` §3 |
|
|
118
|
+
| 7.6 | Multi-chart grid (2/4/8/16) | ✅ | `LayoutPicker` in demo topbar (1/2/4/8/16). `MultiChartView` renders grid. See `TODO-DESIGN.md` §1.15 |
|
|
119
|
+
| 7.7 | Multi-period stacked | 🟦 | Library supports (`MultiPeriodLayout`); app deferred v1.1 |
|
|
120
|
+
| 7.8 | Compare / overlay | 🟦 | Library supports (`createCompareIndicator`); app deferred v1.1 |
|
|
121
|
+
| 7.9 | Command palette (Cmd/Ctrl-K) | ✅ | `CommandPalette.tsx` — symbol search + timeframe + actions. Ctrl+K wired in demo |
|
|
122
|
+
| 7.10 | Object tree / layers panel | ⟫ | v2 |
|
|
123
|
+
| 7.11 | Light theme | ⟫ | Library supports; v1 dark-only |
|
|
124
|
+
| 7.13 | Full mobile/touch UX | ⟫ | v1 collapses to chart-only <lg |
|
|
125
|
+
| 7.14 | Logo / brand mark | ⟫ | Separate design pass |
|
|
126
|
+
| 7.15 | Drawing tools (20 vs TV ~50) | 🔧 | Missing: brush/freehand, text/note/label, some fib variants. See `TODO-DESIGN.md` §2 |
|
|
127
|
+
| 7.16 | Bottom dock tab bar | ✅ | `DockContent` tab bar (Pine/Strategy/Trading) + collapse toggle. See `TODO-DESIGN.md` §4 |
|
|
128
|
+
| 7.17 | Footer date-range navigator | ✅ | `DateRangeNavigator` — 7 presets + live visible-range readout. Engine bridge via `ChartPlugin`. See `TODO-DESIGN.md` §6 |
|
|
129
|
+
| 7.18 | Shell collapse persistence + responsive <lg | ✅ | `TerminalShell` sidebar/dock collapse state in `localStorage` key `astroneum:shell` (decoupled from chart `serializeState`). `@media(max-width:1024px)` hides rail, forces sidebar+dock collapsed, slims topbar. FAB overlay deferred v1.1. See `TODO-DESIGN.md` §0 |
|
|
130
|
+
| 7.28 | Pattern dialog / auto-detection | 🔧 | `PatternDialog` exists; auto-detection via `zigzagPlugin` |
|
|
131
|
+
|
|
132
|
+
## 8. DB / persistence / auth → (no existing doc — new territory)
|
|
133
|
+
|
|
134
|
+
| # | Feature | Status | Gap / next action |
|
|
135
|
+
|---|---|---|---|
|
|
136
|
+
| 8.1 | Database | ❌ | None. All localStorage. Add Postgres/SQLite + Prisma if server-side wanted |
|
|
137
|
+
| 8.2 | Server-side alert persistence | ❌ | localStorage only. Blocked on #8.1 |
|
|
138
|
+
| 8.3 | Server-side watchlist persistence | ❌ | localStorage only. Blocked on #8.1 |
|
|
139
|
+
| 8.4 | Server-side chart template persistence | ❌ | localStorage only. Blocked on #8.1 |
|
|
140
|
+
| 8.5 | Trade history persistence | ❌ | Blocked on #8.1 + #5.2 |
|
|
141
|
+
| 8.6 | User accounts / auth | ❌ | No auth. Add NextAuth or similar |
|
|
142
|
+
| 8.7 | Multi-user support | ❌ | Blocked on #8.6 |
|
|
143
|
+
| 8.8 | Server-side state recovery | ❌ | Blocked on #8.1 |
|
|
144
|
+
|
|
145
|
+
## 9. Structure / deploy / nginx / PM2 / CI → `STRUCTURE.md`
|
|
146
|
+
|
|
147
|
+
| # | Feature | Status | Gap / next action |
|
|
148
|
+
|---|---|---|---|
|
|
149
|
+
| 9.1 | Git on server | ✅ | Server is now a clone of `Tony1185/Astroneum`. Deploy via `git pull` → build → PM2 restart |
|
|
150
|
+
| 9.2 | nginx config cleanup | ⚠️ | 3 overlapping server blocks in `sites-enabled` (STRUCTURE.md §7). Consolidate |
|
|
151
|
+
| 9.3 | PM2 stability | ⚠️ | `astroneum-demo` high restart count. Investigate memory/restart loop |
|
|
152
|
+
| 9.4 | Automated deploy pipeline | ❌ | Manual ssh + `pnpm build` + `pm2 restart`. Add CI deploy |
|
|
153
|
+
| 9.5 | Staging environment | ❌ | Production only |
|
|
154
|
+
| 9.6 | Error monitoring (Sentry) | ❌ | — |
|
|
155
|
+
| 9.7 | Analytics | ❌ | — |
|
|
156
|
+
| 9.8 | CI workflows | 🔧 | `.github/workflows/`: auto-version-bump, benchmark, npm-publish. No deploy / test-on-PR for demo |
|
|
157
|
+
|
|
158
|
+
## 10. Testing / i18n / datafeeds
|
|
159
|
+
|
|
160
|
+
| # | Feature | Status | Gap / next action |
|
|
161
|
+
|---|---|---|---|
|
|
162
|
+
| 10.1 | Library unit tests | 🔧 | 8 test files + perf. No React RTL component tests |
|
|
163
|
+
| 10.2 | Playwright visual regression | ❌ | Deferred (CHANGELOG §0.3.0) |
|
|
164
|
+
| 10.3 | Mobile audit | ❌ | Deferred |
|
|
165
|
+
| 10.4 | Storybook site | ❌ | Deferred |
|
|
166
|
+
| 10.5 | i18n — 19 locales | 🔧 | Only en-US + zh-CN carry new alert keys; 16 fall back to en-US. Translate |
|
|
167
|
+
| 10.8 | Datafeed — WebTransport (HTTP/3) | 🔧 | Experimental `WebTransportDatafeed` |
|
|
168
|
+
| 10.9 | Datafeed — stock/forex/futures (beyond Polygon) | ❌ | — |
|
|
169
|
+
| 10.10 | BYO datafeed docs / examples | 🔧 | 4-method interface exists; `datafeed-guide.md` present. More examples |
|
|
170
|
+
|
|
171
|
+
## 11. Out of scope (v2-future — noted, not tracked)
|
|
172
|
+
|
|
173
|
+
Not part of v1. Listed for completeness; do not build.
|
|
174
|
+
|
|
175
|
+
- Screener (stock / crypto / forex / ETF) — `tv-functions-skill.md` §3.18
|
|
176
|
+
- Markets: heatmaps, top gainers/losers, sector performance — §3.19
|
|
177
|
+
- Economic calendar, earnings / dividends / splits calendars — §3.19
|
|
178
|
+
- News feed, ideas / social — §3.19
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## Maintenance policy
|
|
183
|
+
|
|
184
|
+
Mirrors `STRUCTURE.md` §10. **Update this file on every functional change.**
|
|
185
|
+
|
|
186
|
+
### Triggers — re-scan and patch when any of these change
|
|
187
|
+
|
|
188
|
+
- New / removed / renamed file under `src/`, `demo/src/`, `docs/`
|
|
189
|
+
- New / renamed export in `package.json` `exports`, or entry in `tsup.config.ts`
|
|
190
|
+
- New indicator / drawing tool / widget / engine module / extension
|
|
191
|
+
- New PM2 process, port, or nginx route
|
|
192
|
+
- New API route in `demo/src/app/api/`
|
|
193
|
+
- New DB table / auth provider / persistence layer
|
|
194
|
+
- New locale / i18n key batch
|
|
195
|
+
- New CI workflow / deploy step
|
|
196
|
+
- Version bump in `package.json`
|
|
197
|
+
- Alert / webhook / Pine / strategy / trading feature added or changed
|
|
198
|
+
- **When a gap is closed** — remove the row from this file (it graduates to `tv-functions-skill.md` §3 as `widget-native` / `api-bridged`)
|
|
199
|
+
|
|
200
|
+
### Re-scan model
|
|
201
|
+
|
|
202
|
+
On invocation ("refresh todo"), re-scan the live tree (`/opt/astroneum` + `demo/`), diff against this file, patch rows, then append a dated entry to the changelog below.
|
|
203
|
+
|
|
204
|
+
### Consistency check (each refresh)
|
|
205
|
+
|
|
206
|
+
- Every `❌` / `🔧` row hasn't been silently fixed (if fixed, remove row)
|
|
207
|
+
- `INDICATOR_COMPARISON.md` count matches `src/engine/extension/indicator/`
|
|
208
|
+
- `package.json` exports match `tsup.config.ts` entries match `dist/` files
|
|
209
|
+
- PM2 processes match `ecosystem.config.cjs`
|
|
210
|
+
- Cross-links to `tv-functions-skill.md` §3 still resolve
|
|
211
|
+
- Cross-links to `TODO-DESIGN.md` still resolve
|
|
212
|
+
|
|
213
|
+
---
|
|
214
|
+
|
|
215
|
+
## Changelog
|
|
216
|
+
|
|
217
|
+
- **2026-07-08 (d)** — §1 top toolbar: undo/redo + save/load (demo-side, no library/`tsup`). `UndoManager` wired: brand-bar buttons + `Ctrl+Z`/`Ctrl+Y`/`Ctrl+Shift+Z` in `ChartTerminal` hotkey effect (input-field guard). `record()` via 600ms poll (`drawing-end` not emitted — `EventBus` defined but uninstantiated, no overlay `ActionType`). New `SaveLoadMenu.tsx` backed by `ChartTemplateManager`: "Unnamed" label + Save-as/Load/Clear/Delete dropdown — folds 1.9/1.16/1.17. Closes `TODO-DESIGN.md` 1.9/1.12/1.13/1.16/1.17. 1.5 (`,` interval dropdown) stays 🔧 — deferred to a library `PeriodBar` pass. Built (6.2s, types valid) + restarted + verified (HTTP 200, undo button SSR-rendered, PM2 error log empty).
|
|
218
|
+
- **2026-07-08 (c)** — §0 shell grid/behavior aligned to `design-astroneum.md` §4. Added 7.18 (Shell collapse persistence + responsive <lg) ✅. `globals.css` dimension tokens 48/60/300/300px+200ms → 44/48/260/220px+240ms. Fixed sidebar collapse animation (removed inline `display:none` that defeated the grid-track slide). `TerminalShell` now persists sidebar+dock collapse to `localStorage` `astroneum:shell`. `@media(max-width:1024px)` hides rail + forces sidebar/dock collapsed + slims topbar. FAB overlay deferred v1.1. See `TODO-DESIGN.md` §0 changelog.
|
|
219
|
+
- **2026-07-08 (b)** — §1 top toolbar audit + build. Wired 3 modal hotkeys in library `AstroneumChart.tsx`: 1.7 `/` (indicators), 1.10 `Alt+A` (alerts), 1.20 `Shift+F` (fullscreen). Built 7.9 Command palette (Ctrl+K) — `CommandPalette.tsx`: symbol search + timeframe + actions. Promoted 7.6 (multi-chart grid) 🟦→✅ (LayoutPicker already built). Patched `AstroneumHandle` `useImperativeHandle` (local clone behind server). Library + demo rebuilt, deployed, verified.
|
|
220
|
+
- **2026-07-08** — Shell regions audit + build. Promoted 7.5 (RightRail) 🔧→✅ (toggle bar already shipped as `SidebarContent`). Added 7.16 (Bottom dock tab bar) ✅ — `DockContent` already shipped. Added 7.17 (Footer date-range navigator) ✅ — built `DateRangeNavigator.tsx`: 7 presets + live visible-range readout, engine bridge via `ChartPlugin`. Deployed + verified.
|
|
221
|
+
- **2026-07-07** — Initial draft. Sourced from `STRUCTURE.md`, `tv-functions-skill.md`, `design-astroneum.md`, `INDICATOR_COMPARISON.md`, `CHANGELOG.md`, and live source (`/opt/astroneum` + `demo/`). 8 gap sections + out-of-scope + maintenance policy. ~110 rows (full mirror).
|
|
222
|
+
- **2026-07-07 (b)** — Refactored to gap-only index. Dropped ~50 no-gap ✅ rows (they live in `tv-functions-skill.md` §3 as `widget-native`/`api-bridged`). Stripped redundant "TV" column. Added authority note deferring to `tv-functions-skill.md` §3. ~85 gap rows remain. Cross-linked to `TODO-DESIGN.md` for design/layout gaps.
|