Harden Chrome bridge framing and preserve panel state for IDE beta 7
This commit is contained in:
1 parent
fb6f57cd36
commit
57876d11f0
8 files changed
+192
-18
No files matched your search
@@ -0,0 +1,52 @@
|
||||
# AITURK Chrome beta
|
||||
|
||||
Windows / Chrome MV3 side panel for existing local AITURK IDE conversations.
|
||||
Requires AITURK IDE 1.0.0-beta.7 or later; see `KURULUM.txt` for Turkish setup.
|
||||
|
||||
The extension talks only to `online.turkservis.aiturk` using Chrome native
|
||||
messaging. The per-user .NET Framework host authenticates to Electron's random
|
||||
named pipe with a separate capability from the user-local discovery file.
|
||||
Electron retains the gateway token, allows only six semantic operations and
|
||||
reuses the existing local backend. It resumes the stored conversation, maps its
|
||||
runtime identity, then submits only the new prompt. No parallel agent backend,
|
||||
history reconstruction, model API key in the browser or telemetry is involved.
|
||||
|
||||
Only the active local profile is supported. The list searches titles among
|
||||
desktop sessions in the most recent 200 records. The transcript shows the last
|
||||
40 records, with up to 8,000 characters per visible message; the model's existing
|
||||
context is not truncated by this display policy. Approvals and clarifications
|
||||
remain in the IDE. A backend event is stamped once and delivered to every
|
||||
attached viewer so the desktop can still show and answer these requests.
|
||||
|
||||
## Build and verification
|
||||
|
||||
From the repository root, on Windows:
|
||||
|
||||
```powershell
|
||||
./scripts/build-chrome.ps1 -OutputDirectory C:/path/to/new-output-directory
|
||||
$env:AITURK_TEST_NATIVE_HOST = 'C:/path/printed/by/build/AITURK Chrome Kur.exe'
|
||||
node --test apps/chrome/tests/bridge.test.mjs
|
||||
```
|
||||
|
||||
The build uses the Windows .NET Framework C# compiler, not a downloaded binary.
|
||||
`AITURK_TEST_NATIVE_HOST` enables the real framing / named-pipe / HTTP / WebSocket
|
||||
integration test against a disposable fixture, without installing registry
|
||||
entries or invoking a paid model. Without it the native host test is skipped.
|
||||
|
||||
UI tests require the existing desktop workspace's jsdom dependency:
|
||||
|
||||
```powershell
|
||||
npm ci --workspace apps/desktop --include-workspace-root
|
||||
node --test apps/chrome/tests/panel.test.mjs
|
||||
```
|
||||
|
||||
Run backend fan-out and replay tests with the canonical hermetic runner:
|
||||
|
||||
```bash
|
||||
scripts/run_tests.sh -j 1 --paths tests/tui_gateway/test_chrome_viewer_fanout.py:tests/test_tui_gateway_event_replay.py
|
||||
```
|
||||
|
||||
Publish an IDE installer from the same clean commit (including the backend
|
||||
change), the Chrome ZIP and their SHA-256 checksums together. Update the download
|
||||
page only after the immutable release assets are available. This is an unsigned
|
||||
developer-mode beta, not a Chrome Web Store or signed Windows release.
|
||||
Reference in new issue
Block a user