Commit Graph
304 Commits
Author SHA1 Message Date
Devika Verma ec0eb9b804 Merge pull request #534 from andrewyng/feature/permission-modes
Permission modes: add Auto-approve, an LLM reviewer for approval prompts
2026-08-23 01:24:08 -07:00
Rohit C Prasad 5604676333 pytest: put the repo root on sys.path
The reviewer-eval tests import from scripts/; the pytest console script (CI) does not add the root the way python -m pytest does.
2026-08-23 01:13:48 -07:00
Rohit C Prasad ef96fc5b80 Golden matrix: the absolute-escape row uses a POSIX-absolute path
C:/Windows/... is only absolute on Windows; on the platforms CI runs it parses relative and lands inside the root.
2026-08-23 01:02:14 -07:00
Rohit C Prasad 87b4eebc15 Merge main into feature/permission-modes
Union resolutions in the four files both sides touched; approval-card sizes settle on the type-scale tokens.
2026-08-23 01:01:57 -07:00
Rohit Prasad 141d02abaf Merge pull request #533 from andrewyng/internal-branch-aug20
Multiple changes - MCP fixes, Design changes, and subscription.
2026-08-22 18:32:09 -07:00
Devika Verma 97eca9c8ba Mode notice waits for the server-confirmed mode; Auto-approve copy pass
A new session briefly kept the previous session's mode value until the
ready event delivered the real one, so leaving an Auto-approve session
posted its banner into the fresh transcript, then a stray marker. The
notice logic now lives in a pure modeNoticeStep that is a no-op until
ready confirms which session the mode belongs to; tests replay the
reported sequence and the restored-session banner case.

Copy: "Auto-approve" sentence-cased like its sibling entries; picker
description recast as an imperative (owner wording); banner opens with
"classifies each action" to match. Stale approvalSlot comment rewritten.
2026-08-22 14:47:26 +05:30
Devika Verma f7bd1a14ed Auto-Approve picker copy matches the banner 2026-08-22 10:16:41 +05:30
Devika Verma 82aca54fc6 Retire the check-count badge and its polling 2026-08-22 10:14:06 +05:30
Devika Verma 88bc5c5a36 Reviewer follows model switches; retire the dropdown metering line 2026-08-22 10:07:27 +05:30
Devika Verma 36656407ee Carry reviewer cache tokens into the metering badge 2026-08-22 09:51:16 +05:30
Devika Verma 42e8538c61 Cover the provenance line on the approval card 2026-08-22 09:21:15 +05:30
Devika Verma 5cbd3249d2 OPE-130: scope read-only session grants to the session's folders 2026-08-22 09:16:01 +05:30
Devika Verma 0b5294ac41 Merge branch 'main' of https://github.com/andrewyng/openworker into feature/permission-modes
# Conflicts:
#	coworker/agent.py
#	coworker/connectors/tool_defs.py
#	coworker/engine.py
#	coworker/permissions.py
#	coworker/personas/manifest.py
#	coworker/server/manager.py
#	surfaces/gui/src/App.tsx
#	surfaces/gui/src/types.ts
#	tests/test_connectors.py
#	tests/test_send_target_resolution.py
2026-08-22 08:11:32 +05:30
Devika Verma 42da42512c Mark every permission-mode change in the transcript 2026-08-22 07:48:01 +05:30
Devika Verma 81ca80c97d Auto-Approve banner spans the transcript column 2026-08-22 07:38:33 +05:30
Devika Verma 76e9174ef9 Explain Auto-Approve once per session 2026-08-22 07:24:47 +05:30
Rohit C Prasad 59131b0455 Topbar/transcript polish: neutral Artifacts count, wider top gutter, regular-weight session titles 2026-08-21 18:40:52 -07:00
Rohit C Prasad e247997a14 MCP add flow: poll while a probe is in flight; name prefills from the URL
The Testing chip froze forever on guarded servers — the page never refetched
after the probe settled server-side. Opener renamed to Add custom MCP server.
2026-08-21 18:25:57 -07:00
Rohit C Prasad 2733eb84ca Legacy MCP notices collapse too: server name recovered from the persisted text 2026-08-21 17:51:23 -07:00
Devika Verma 805d002031 Subscription provider: settle on the ChatGPT subscription title 2026-08-21 17:36:22 -07:00
Devika Verma 0305a3ee80 Subscription provider: titled Codex subscription, wears the vendor mark 2026-08-21 17:28:43 -07:00
Rohit C Prasad 6bf6018a15 MCP failure notice: one quiet line + Details + Open Connectors; stable dedupe
Per-process noise (0x addresses, pids) no longer defeats the change-detection,
so a relaunch stops re-stamping the same complaint into the session.
2026-08-21 17:18:48 -07:00
Devika Verma 76189b4b55 Whisper chrome + soft canvas edge shadow, both themes (UX-040) 2026-08-21 16:59:28 -07:00
Devika Verma 6780867f20 Sidebar: 300px default width (UX-040 owner call) 2026-08-21 16:53:59 -07:00
Devika Verma 20cd2732a0 Sidebar: New session becomes a quiet nav row; airier rhythm (UX-040) 2026-08-21 16:49:39 -07:00
Devika Verma a217511d50 Responses stream: rebuild the turn when the terminal event's output is empty
Some backends only stream output items and never repeat them on completed;
collect output_item.done as the fallback so text and tool calls survive.
2026-08-21 16:27:25 -07:00
Devika Verma 19561abeb6 Subscription catalog: add the 5.6 tiers (Sol/Terra/Luna); Sol becomes the recommended model 2026-08-21 16:10:51 -07:00
Devika Verma 893b06ea37 Canvas: whisper off-white instead of pure white (owner call) 2026-08-21 16:10:51 -07:00
Devika Verma 91b4ad0702 Settings ▸ Models: sign-in pane for the subscription provider
OAuth providers render connect/sign-out instead of a key form; card shows account.
Fixture rows + flow mock; e2e covers sign-in, sign-out, gallery state.
2026-08-21 15:23:15 -07:00
Devika Verma e4f7e53ebb Provider: ChatGPT-subscription sign-in (OAuth PKCE, tokens local-only)
Browser sign-in on the registered loopback port; tokens in the SecretStore profile.
Rides the Responses provider for conversion/streaming; refresh-on-expiry and on-401.
REST: signin (background + status poll), status, signout; oauth rows in providers list.
2026-08-21 15:18:45 -07:00
Devika Verma bd202ad125 e2e: seedSessionMessages seam + replayed-transcript specs
Seeds rich history per session so the reopen path is testable.
Covers replayed tool groups, filter counts, connector cards, tail-error Retry.
2026-08-21 15:17:14 -07:00
Devika Verma a9c3d884af Design system: bundled Inter + JetBrains Mono, 6-step type scale, bright canvas
Canvas/chrome surface tokens (content brightest, chrome tinted; dark lifts canvas).
Sweep of off-scale font sizes in styles.css and Tailwind arbitrary values.
Light-mode contrast fixes for muted/faint/warn ink.
2026-08-21 15:17:14 -07:00
Rohit Prasad 83ab5bdedd Merge pull request #532 from andrewyng/rp/postmerge-fixes
Post-merge fixes: MCP notices, rail defaults, viewer header, access footer
2026-08-21 14:12:45 -07:00
Rohit C Prasad e7bd499f40 Right rail: hidden by default, toggle persists per-device
Deep links (artifact/board chips, Access) force-show transiently without touching the pref.
Topbar Artifacts chip drops its cowork-only gate (artifacts are universal now).
2026-08-21 13:59:38 -07:00
Rohit C Prasad 3a81c49ede build_dmg: document the venv prereqs a fresh worktree needs 2026-08-21 13:44:56 -07:00
Rohit C Prasad fd1eb65547 Viewer header: breadcrumb back, labeled action menu, close; Access footer one row (UX-038)
Copy contents is the primary copy; path/open/reveal live in the labeled menu.
Access footer: '+ Add a source · Manage →'; mute explainer moves to the toggle tooltip.
2026-08-21 13:35:22 -07:00
Rohit C Prasad 4eefc09a84 Sidebar expand sticks while the artifact viewer is open
Auto-collapse is edge-triggered now: stable callback identity + the rail notifies
only on real open/close transitions, so a manual toggle is never fought.
2026-08-21 12:52:00 -07:00
Rohit C Prasad a6a73419d3 MCP failure notice fires on state change, not every session
First session after a server breaks (or breaks differently) gets the transcript notice;
unchanged-broken stays quiet (Connectors carries it). Personas declaring the server keep
the every-session notice. Dedupe persists across restarts; recovery re-arms it.
2026-08-21 12:30:44 -07:00
Rohit Prasad 2af919c448 Merge pull request #531 from andrewyng/rp/multiple-efforts
Multiple changes - Coworkers, MCP fixes, Teams foundations, UI changes.
2026-08-21 12:23:14 -07:00
Rohit C Prasad b4d1a01faa Remove MCP server: also shut down the live connection and purge OAuth tokens/DCR 2026-08-21 12:02:53 -07:00
Rohit C Prasad 476032e603 MCP Test on a live server actually tests: round-trip + tool refresh, visible receipt
verify() replaces cached-yes ensure for explicit tests; dead connections tear down and reconnect.
Connected rows show 'tested ⟨when⟩' so the click has a visible result.
2026-08-21 11:58:28 -07:00
Rohit C Prasad 87245498cc MCP OAuth: silent refresh actually works across restarts
Storage reports remaining token lifetime (issued_at persisted) and blanks stale access
tokens so the SDK refreshes before the request; discovered AS metadata is persisted and
seeded so refresh targets the real token endpoint, not <origin>/token.
2026-08-21 11:44:23 -07:00
Rohit C Prasad 4ac1e59370 MCP Test: flag authorizing before the background connect; notice copy says Connectors
The GUI's fast poll keyed off a status the task hadn't set yet, so a failing Test
looked dead until the 5s tick.
2026-08-21 10:43:16 -07:00
Rohit C Prasad 76e7276f7a Merge rp/mcp-add-test: custom MCP add/test flow, single Connectors page 2026-08-21 10:28:47 -07:00
Rohit C Prasad d88a196172 Right drawer: retire the More fold — all sections list flat, collapsed by default 2026-08-21 10:14:01 -07:00
Rohit C Prasad 2c9fb7490b Toolset dedup: one windowed reader, sleep_until only, browser trim/rename
files capability adopts the numbered read_file; per-turn Now: line feeds absolute scheduling.
browser_get_text/browser_read_url dropped; browser_snapshot renamed browser_read_page.
2026-08-20 23:06:36 -07:00
Rohit C Prasad 1e564d56eb request_tool: non-catalog names never raise the install card
Fast-fail with a shell steer before any prompt; docstring names the closed catalog
and stops citing semgrep (pip/brew, deliberately unmanaged) as an example.
2026-08-20 22:14:02 -07:00
Rohit C Prasad 3fc782edd7 Security personas: report pages go to the scratch directory, not the audited repo 2026-08-20 21:59:24 -07:00
Rohit C Prasad 4406068629 Files explorer over session roots (UX-037)
More fold gains a Files section listing workspace/scratch/granted roots.
Roots open in the artifact viewer (Files breadcrumb); folder click-through was already there.
2026-08-20 21:56:09 -07:00
Rohit C Prasad ebb97d7643 Root promotion: request_directory gains primary; granted folder can become the workspace
One-way, once, scratch-primary sessions only; consent card says workspace.
Live roots + shell repoint, persisted; engine rebuilds fully anchored after the turn.
2026-08-20 21:37:39 -07:00