Night shift: tweet analyzer, data connectors, feed monitor, market watch portal
This commit is contained in:
@ -76,6 +76,37 @@ Major KIPP infrastructure session with D J.
|
||||
- Results persistence (timer created in chat → appears on dashboard)
|
||||
- Proximity-aware layout (different for close vs far viewing)
|
||||
|
||||
### KIPP HTTPS + Voice Fixed
|
||||
- Self-signed cert generated (10yr, SAN for 192.168.86.100)
|
||||
- UI server switched to HTTPS on port 8080
|
||||
- socat WSS proxy on port 18790 → gateway 18789 (systemd kipp-wss-proxy.service)
|
||||
- Browser TTS fallback removed — Piper only
|
||||
- Double-voice mystery: D J had 2 tabs open 😂
|
||||
- Gateway config fixed: `allowedOrigins` was at root level (invalid), moved to `gateway.controlUi.allowedOrigins`
|
||||
- Added `https://192.168.86.100:8080` to allowedOrigins
|
||||
|
||||
### @milesdeutscher Tweet Analysis
|
||||
- Polymarket copy-trading GitHub bot going viral (23K views)
|
||||
- Our take: validates our kch123 approach but we're ahead — we have whale selection, they just have execution code
|
||||
- Edge erodes with adoption; not actionable for us
|
||||
|
||||
### Night Shift — Ambient Mode
|
||||
- Built ambient/idle mode for KIPP UI (sub-agent)
|
||||
- Activates after 60s idle: large glowing clock, weather icon, dark gradient background
|
||||
- Rotating content: tuxedo cat facts, quotes, trivia (every 30s)
|
||||
- Tap anywhere to return to dashboard
|
||||
- Verified with Playwright: both ambient and dashboard modes render correctly
|
||||
|
||||
### Late Night — KIPP Local-Only Switch
|
||||
- **D J decided KIPP stays local-only** — no external exposure, direct IP access
|
||||
- Switched UI WebSocket URL from `wss://kipp.host.letsgetnashty.com` to `ws://192.168.86.100:18789`
|
||||
- UI renders visually at `http://192.168.86.100:8080/` (Playwright confirmed: green dot, weather, clock)
|
||||
- **But WS still broken**: origin-allowed errors persist, old domain URLs not fully stripped from JS fallback/retry code
|
||||
- Hundreds of failed reconnect attempts every ~3s in console logs
|
||||
- TTS and weather fetch endpoints still referencing old HTTPS domain paths
|
||||
- **Next**: fully clean UI JS code of all old domain refs, fix origin-allowed, re-test with Playwright
|
||||
- **Network issue on Case's VM** (192.168.86.45): persistent "TypeError: fetch failed" every ~10s — Telegram polling, ChromaDB auto-recall broken. D J communicating via webchat as workaround.
|
||||
|
||||
### Caddy Config (D J's reverse proxy)
|
||||
```
|
||||
kippui.host.letsgetnashty.com {
|
||||
|
||||
61
memory/2026-02-11.md
Normal file
61
memory/2026-02-11.md
Normal file
@ -0,0 +1,61 @@
|
||||
# 2026-02-11
|
||||
|
||||
## KIPP Voice Pipeline — Major Build Session
|
||||
|
||||
### Built & Deployed (feature/wake-word branch)
|
||||
- **Always-on wake word detection** via OpenWakeWord (hey_jarvis model as placeholder)
|
||||
- **Faster Whisper** (base.en) for speech-to-text on KIPP VM
|
||||
- **Voice WebSocket server** on port 8082 (TLS) — `kipp-voice.service`
|
||||
- **Python venv** at `/home/wdjones/kipp-venv` with openwakeword, faster-whisper, websockets, aiohttp
|
||||
- **Male TTS voice** — switched from Amy to Ryan (Piper en_US)
|
||||
- **Hero panel chat** — voice interaction happens inside the greeting/hero card, not a separate overlay
|
||||
- **Widget state system** — JSON file + CLI tool + REST API + dashboard polling
|
||||
- `tools/widgets.py` for shopping list, timers, reminders
|
||||
- API endpoints on UI server: GET/POST /api/widgets
|
||||
- Dashboard loads real data, polls every 10s
|
||||
- KIPP agent instructed in SOUL.md to use widget CLI
|
||||
|
||||
### Key Bugs Fixed
|
||||
1. **CSS injected inside JS** — patch script found `/* CHAT OVERLAY */` in both CSS and JS sections
|
||||
2. **Gateway challenge-response** — must answer `connect.challenge` with `req` method `connect`
|
||||
3. **Client ID must be `openclaw-control-ui`** — gateway validates this
|
||||
4. **Origin header required** — voice server needs `Origin: https://192.168.86.100:8080`
|
||||
5. **Lifecycle event detection** — gateway sends `phase="end"` not `state="end"` — THIS was the 60-second hang bug
|
||||
6. **Audio suppressed during wake state** — browser stopped sending mic data when it should have been recording
|
||||
7. **Race condition** — server sent `ready` before TTS finished, mic picked up speaker audio
|
||||
8. **Self-triggering wake word** — KIPP's own TTS voice triggered "hey jarvis" — fixed with 2s cooldown
|
||||
9. **voiceState stuck on speaking** — client must set listening before server's ready msg arrives
|
||||
10. **Duplicate JS blocks** — sub-agent inserted widget code twice
|
||||
|
||||
### Voice State Machine (final)
|
||||
```
|
||||
listening → (wake word) → recording → (silence) → processing → (gateway) → speaking → (done_speaking) → cooldown (2s) → listening
|
||||
```
|
||||
|
||||
### Timing Config
|
||||
- 4s grace period after wake word before silence timeout
|
||||
- 1.5s silence after speech to end recording
|
||||
- 30s max recording time
|
||||
- 2s cooldown after TTS to prevent self-trigger
|
||||
|
||||
### KIPP Model Switch
|
||||
- Switched from `llamacpp/glm-4.7-flash` (83s responses!) to `anthropic/claude-sonnet-4-20250514` (~3s responses)
|
||||
- GLM-4 Flash as fallback
|
||||
- Config at `/home/wdjones/.openclaw/openclaw.json` on KIPP VM
|
||||
|
||||
### 15 Playwright Tests
|
||||
- `kipp-ui/tests/test_voice.py` — UI elements, state transitions, chat flow, server connectivity
|
||||
|
||||
## anoin123 Investigation
|
||||
- @browomo tweet about anoin123 Polymarket wallet: $1.6M in 57 days
|
||||
- **2-4 AM EST claim is FALSE** — trades peak at 3 PM EST
|
||||
- Strategy: "No harvester" — buys No at 90-99¢ on time-bounded events, collects spread
|
||||
- $2.2M volume, $7K avg trade, concentrated on Iran strikes + government shutdown
|
||||
- Monitor set up: `anoin123-monitor.py` + systemd timer every 5min
|
||||
- Analysis at `data/investigations/anoin123-analysis.md`
|
||||
- Copy-trade verdict: medium value — strategy is mechanical and replicable independently
|
||||
|
||||
## Infrastructure Notes
|
||||
- KIPP VM services: kipp-ui, kipp-voice, kipp-tts, kipp-wss-proxy, openclaw-gateway
|
||||
- Widget data: `/home/wdjones/.openclaw/workspace/kipp-ui/data/widgets.json`
|
||||
- All changes on `feature/wake-word` branch in kipp/workspace repo
|
||||
14
memory/2026-02-12.md
Normal file
14
memory/2026-02-12.md
Normal file
@ -0,0 +1,14 @@
|
||||
# 2026-02-12
|
||||
|
||||
## KIPP Voice Pipeline Fixes
|
||||
- False wake word triggers after KIPP speaks — wake model picking up speaker audio
|
||||
- Patch 1: Increased cooldown 2s → 4s, added silence flushing during cooldown (feed zeros through wake model to clear internal buffers), added RMS energy gate on wake detection
|
||||
- RMS gate of 200 was too aggressive — blocked ALL real wake attempts (real RMS was 45-157)
|
||||
- Lowered RMS gate to 30 — just filters literal silence false positives
|
||||
- Voice server restarted, D J testing
|
||||
|
||||
## Tweet Analyses
|
||||
- **@jollygreenmoney / $SHL.V** — Homeland Nickel (TSX-V penny stock). Promoted junior miner, already ran 2,300% from $0.03→$0.72, pulled back to $0.41. Collapsing volume = distribution phase. Coordinated promotion with @Levi_Researcher. Nickel bull thesis has merit but this specific stock is exit liquidity. Verdict: stay away.
|
||||
- **@MoonDevOnYT** — "Fastest growing quant repo on GitHub" AI trading agents. 875 followers, self-proclaimed "#1 quant on X." Content marketing funnel → paid private streams at moondev.com. No verifiable P&L, buzzword soup, fantasy architecture. Verdict: course seller, skip.
|
||||
|
||||
## D J signed off ~midnight
|
||||
Reference in New Issue
Block a user