docs: update standalone LS, MITM, and panel stream investigation
- Add panel-stream-investigation.md documenting dead end - Update KNOWN_ISSUES: move polling and panel stream to resolved - Update GEMINI.md with standalone LS section and new MITM setup - Fix standalone-ls-todo to reflect default mode
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
# Known Issues & Future Work
|
||||
|
||||
All critical blockers have been resolved. MITM interception is fully working
|
||||
in standalone mode with UID-scoped iptables redirection.
|
||||
All critical blockers have been resolved. Standalone LS with MITM interception
|
||||
is fully working. Reactive streaming is implemented with polling fallback.
|
||||
|
||||
---
|
||||
|
||||
@@ -11,8 +11,8 @@ in standalone mode with UID-scoped iptables redirection.
|
||||
|
||||
**Status: SOLVED (2026-02-14)**
|
||||
|
||||
Previously the #1 blocker. The standalone LS (`--standalone` flag) now routes
|
||||
all LLM API traffic through the MITM proxy with full decryption.
|
||||
Previously the #1 blocker. The standalone LS (`--standalone` flag, now default)
|
||||
routes all LLM API traffic through the MITM proxy with full decryption.
|
||||
|
||||
**Solution:**
|
||||
|
||||
@@ -28,6 +28,23 @@ all LLM API traffic through the MITM proxy with full decryption.
|
||||
|
||||
**Verified:** `/v1/usage` returns per-model token usage from intercepted traffic.
|
||||
|
||||
### ~~Polling-Based Cascade Updates~~
|
||||
|
||||
**Status: SOLVED (2026-02-14)**
|
||||
|
||||
`StreamCascadeReactiveUpdates` is now used for real-time cascade state
|
||||
notifications. Falls back to timer-based polling if the streaming RPC is
|
||||
unavailable. Reactive diffs also carry progressive response text and thinking
|
||||
content (see `docs/panel-stream-investigation.md`).
|
||||
|
||||
### ~~StreamCascadePanelReactiveUpdates — Dead End~~
|
||||
|
||||
**Status: INVESTIGATED & CLOSED (2026-02-14)**
|
||||
|
||||
`CascadePanelState` only contains `plan_status` and `user_settings` — not
|
||||
thinking text. The panel reactive component uses a workspace-scoped ID, not
|
||||
cascade IDs. See `docs/panel-stream-investigation.md`.
|
||||
|
||||
---
|
||||
|
||||
## 🟡 Medium (Architecture / Future Work)
|
||||
@@ -56,29 +73,17 @@ prompts, modifying model selection).
|
||||
|
||||
---
|
||||
|
||||
### 3. Polling-Based Cascade Updates vs Streaming RPC
|
||||
|
||||
**File:** `src/api/polling.rs`
|
||||
|
||||
We poll `GetCascadeTrajectorySteps` on a timer. The LS has a
|
||||
`StreamCascadeReactiveUpdates` streaming gRPC method that pushes updates
|
||||
in real-time. Polling works but adds latency.
|
||||
|
||||
**Status:** Functional but suboptimal.
|
||||
|
||||
---
|
||||
|
||||
## 🟢 Low
|
||||
|
||||
### 4. MITM Integration Tests
|
||||
### 3. MITM Integration Tests
|
||||
|
||||
Unit tests cover protobuf decoding and intercept parsing (18 tests pass).
|
||||
Integration tests for the full MITM pipeline (TLS interception, response
|
||||
parsing, usage recording) would be valuable now that interception works.
|
||||
|
||||
### 5. MITM for Main Antigravity Session
|
||||
### 4. MITM for Main Antigravity Session
|
||||
|
||||
The current MITM only works for the standalone LS (`--standalone` mode).
|
||||
The current MITM only works for the standalone LS (default mode).
|
||||
Intercepting the main Antigravity session's LS is harder because:
|
||||
|
||||
- The main LS is managed by the Antigravity app, not by us
|
||||
@@ -86,4 +91,11 @@ Intercepting the main Antigravity session's LS is harder because:
|
||||
- The `mitm-wrapper.sh` approach sets env vars but the LLM client ignores
|
||||
`HTTPS_PROXY` unless `detect_and_use_proxy` is ENABLED via init metadata
|
||||
|
||||
**Workaround:** Use `--standalone` mode for all proxy traffic.
|
||||
**Workaround:** Use standalone mode (default) for all proxy traffic.
|
||||
|
||||
### 5. Progressive Thinking Streaming
|
||||
|
||||
For extended-thinking models (Opus), thinking text may arrive progressively
|
||||
across multiple reactive diffs. Currently thinking is captured atomically via
|
||||
polling. Progressive streaming would require parsing reactive diff field numbers
|
||||
to extract incremental thinking deltas. See `docs/panel-stream-investigation.md`.
|
||||
|
||||
Reference in New Issue
Block a user