Commit Graph
380 Commits
Author SHA1 Message Date
Manav Shrivastava 76dbfaef39 Merge 2cd2f4bed6 into 9e145d9ceb 2026-08-29 17:04:26 -07:00
Rohit Prasad 9e145d9ceb Merge pull request #350 from rkfshakti/fix/repair-tool-pairing-on-load-331
fix: repair tool-call/result pairing on load to prevent unrecoverable 400 errors
2026-08-29 17:03:32 -07:00
Rohit Prasad fbf57149fa Merge pull request #70 from lifrary/fix/atomic-conversation-shrink
Make the conversation-log shrink rewrite atomic (prevent history loss on a mid-write crash)
2026-08-29 17:00:12 -07:00
Rohit Prasad ccc845ded4 Merge pull request #56 from Saidheerajgollu/tolerate-corrupt-jsonl-on-load
Tolerate a corrupt line when loading a conversation .jsonl
2026-08-28 22:53:29 -07:00
Rohit Prasad 5c8f6dd1c2 Merge pull request #219 from hacksics/unparsed-tool-calls-upstream
Recover truncated tool calls, and never pass a leaked one off as an answer
2026-08-28 22:37:03 -07:00
Rohit Prasad e8824ab1f0 Merge pull request #55 from Saidheerajgollu/harden-session-id-path-traversal
Reject path-traversal session ids in the conversation store
2026-08-28 22:35:57 -07:00
Rohit Prasad 6dfd1a4f3b Merge pull request #24 from Saidheerajgollu/fix-inbox-reply-substring-intent
Parse inbox reply intent from the leading word, not substrings
2026-08-28 22:09:53 -07:00
Rohit Prasad d20dd624bb Merge pull request #379 from Saidheerajgollu/fix/scheduler-stale-tick-double-run
fix: scheduled task can run twice when an approval lands on a tick
2026-08-28 22:09:25 -07:00
Rohit Prasad c10485448c Merge pull request #127 from jasmine889966/feat/gui-i18n
Add GUI internationalization with English and Simplified Chinese
2026-08-28 21:46:38 -07:00
Rohit C Prasad 709a9bab90 gui: fix plural forms and notice strings caught by CI e2e
Folder-count summary gets _one/_other; keyboard shortcuts register at commit
so early input isn't dropped during boot; restores main's copy for the
files-location help and the onboarding signed-in line.
2026-08-28 21:13:13 -07:00
Rohit Prasad 03e4a5334b Merge pull request #586 from rakeshutekar/fix/attachment-read-auth
fix(teams): enforce attachment read authorization
2026-08-28 20:55:48 -07:00
Rohit Prasad 5f2a5542e5 Merge pull request #585 from rakeshutekar/fix/worker-board-item-auth
security(teams): enforce worker visibility on board item reads
2026-08-28 19:41:57 -07:00
Rohit C Prasad 086be2a1a6 gui: re-apply and extend i18n wrapping onto current main
Re-applies the react-i18next wrapping onto main's components and covers the
ones added since; count keys use _one/_other plural forms.
Locale tests enforce en/zh key parity and placeholder contracts.
2026-08-28 16:06:05 -07:00
Rohit C Prasad 5392e7ac15 Merge main into feat/gui-i18n 2026-08-28 16:05:58 -07:00
Rakesh Utekar 0939fd6624 fix(teams): authorize attachment reads
Require attachment reads to resolve through an actor-visible item in the requested board space. Record authoritative attachment provenance so forged comment or transition refs cannot grant blob access, while preserving legacy refs through an atomic one-time migration.

BREAKING CHANGE: BoardDialect.attachment and the /v1/board/attachment endpoint now require a board space.
2026-08-28 15:35:55 -07:00
Rakesh Utekar e826b48a90 fix(teams): enforce worker item visibility 2026-08-28 14:47:07 -07:00
Rohit Prasad 86c57f0692 Merge pull request #569 from andrewyng/rp/readme-security
Updating README
2026-08-26 10:29:40 -07:00
Rohit C Prasad ca52cf798e docs: center README header lockup (title, links, badge) 2026-08-26 10:19:51 -07:00
Rohit C Prasad 810edb3ac2 docs: switch to all-languages trendshift badge, centered 2026-08-26 10:14:41 -07:00
Rohit C Prasad 5c799b0363 docs: security-first README (use cases + governed-by-design) and SECURITY.md
README gains a use-cases section led by the security coworkers and a governed-by-design section describing floors, the autonomy ladder, and audit provenance.
SECURITY.md adds vulnerability disclosure via security@openworker.com.
2026-08-26 10:08:45 -07:00
Shakti Prasad Mohapatra 9bad0fdd8e fix: don't inject placeholder for trailing pending tool calls
The repair was synthesising placeholder tool results for any dangling
call, including calls in the last assistant message that are simply
pending (interrupted for approval/question). This broke durable resume
because the provider saw the placeholder and thought the tool already
ran, so resolve_inbox could not re-execute the tool.

Now trailing calls (assistant tool_calls as the last message with no
result) are left untouched — the engine will resume them. Placeholders
are only injected when the thread has moved past the call, proving it
is corrupt rather than pending.

Fixes test_durable_resume_question and
test_durable_resume_approval_executes_tool.
2026-08-26 21:55:48 +05:30
Shakti Prasad Mohapatra 47e82e9336 chore: trigger CI re-run 2026-08-26 21:55:48 +05:30
Shakti Prasad Mohapatra 1789a0fd86 fix: repair tool-call/result pairing on load to prevent unrecoverable 400 errors
When a turn is interrupted at the wrong moment, the append-only JSONL can
end up with a user message between an assistant tool_calls block and its
tool result. Providers reject this ordering (Anthropic 400/2013, OpenAI
'tool_call_ids did not have response messages'), making the session
permanently unrecoverable from the UI.

_repair_tool_pairing() runs in ConversationStore.load() and:
- moves a real tool result found later in the thread to sit right after its call
- synthesises a placeholder result for a call with no matching tool message
- is idempotent — well-formed threads pass through unchanged

Fixes #331
2026-08-26 21:55:48 +05:30
Rohit Prasad 7fc3ee68e6 Merge pull request #544 from andrewyng/rp/ox-alpha
Add Ox Alpha via OpenRouter; bump to 0.2.1
v0.2.1
2026-08-25 09:18:06 -07:00
Rohit C Prasad 26a51c9fcc Prepare app release 0.2.1: version bump 2026-08-25 09:02:24 -07:00
Rohit C Prasad 6fbd0f995f Add Ox Alpha (stealth preview) via OpenRouter
Catalog-checked: 1,048,576 ctx, tool calling; matrix cap 60->65.
2026-08-25 09:00:15 -07:00
Rohit Prasad 44538a780a Merge pull request #541 from andrewyng/rp/minor-fixes
Pre-release fixes from the 0.2.0 walkthrough
v0.2.0
2026-08-24 16:04:36 -07:00
Rohit C Prasad eaba00184e First contact asks via ask_user; titles read the first reply
Specialists offer starting points as an ask_user (free text stays available) so a picked option briefs the reviewer; title generation adds the agent first reply as evidence with a third attempt window.
2026-08-24 15:44:43 -07:00
Rohit C Prasad eae1ed315f Auto-title at turn start, not turn completion
The title rides the user message the moment it lands — a long agentic turn no longer holds the session name hostage; an opener signature keeps the completion hook (background turns) from burning duplicate attempts.
2026-08-24 15:12:56 -07:00
Rohit C Prasad 5c8a60e7ee Fix session auto-titling on plan-backed sessions
The plan backend 400s on max_output_tokens/temperature/top_p — strip them in the provider; autotitle failures now log at warning, not invisible debug.
2026-08-24 14:48:21 -07:00
Rohit C Prasad a25274e683 Bookkeeping saves keep their place in Recents
Store save gains touch=False (updated_at means last worked on, never last saved); the banner migration and message-less mode switches use it.
2026-08-24 14:34:12 -07:00
Rohit C Prasad 40990da5e2 Persist approval provenance and server-authored mode notices
Approval origins (reviewer/user/bypass, notes, grants) ride the tool message display sidecar so chips and deny blocks survive reload.
The Auto-Approve explainer is persisted once per session server-side with new shorter copy; later switches persist one-line markers.
2026-08-24 14:14:51 -07:00
Rohit C Prasad 6d0d60b1f2 Show the reviewer hesitation on unsure-escalated approval cards
PERMISSION_REQUIRED carries reviewer_unsure when an unsure verdict raised the card; both card layouts render it as a quiet line.
2026-08-24 13:39:56 -07:00
Rohit C Prasad 2c843cb54e Surface the reviewer pause on the composer mode chip
Auto-approve shows a quiet "· paused" while the breaker is tripped; clears on turn end, question answers, and session switches.
2026-08-24 13:22:30 -07:00
Rohit C Prasad f1345bdfe2 Auto-approve: 5-deny streak breaker with notice, question-aware reviewer evidence, provenance chips
Breaker pauses loudly and resets on non-deny verdicts and ask_user answers; replies reach the judge with the agent question marked as data.
Cardless runs annotate quietly: auto-approved (reviewer reason) or approval bypassed.
2026-08-24 13:16:31 -07:00
Rohit C Prasad 50c2b04678 Restore live-turn state on session reconnect
ws ready now carries running (server truth); the GUI restores Stop + the waiting row and never shows the intro hero mid-turn.
2026-08-24 12:23:29 -07:00
Rohit C Prasad ed75ab4b57 Pre-release fixes from the 0.2.0 walkthrough
Onboarding Next now accepts OAuth sign-in; an explicit draft folder pick survives a coworker change.
Composer shows context-window figures only (session totals on hold); specialists introduce themselves on first contact.
2026-08-24 12:01:30 -07:00
Rohit C Prasad 58a39839ea Prepare app release 0.2.0: version bump 2026-08-24 09:59:53 -07:00
Rohit Prasad c5b377c279 Merge pull request #345 from manavshrivastavagit/feature/ollama-vision-fix
fix: detect Ollama vision models from naming conventions
2026-08-23 21:51:33 -07:00
Rohit Prasad 48f10ff295 Merge pull request #138 from Amagah/fix/131-sidecar-resource-dir
Create the sidecar resource dir in build.rs so a fresh clone builds
2026-08-23 21:50:01 -07:00
Rohit Prasad 47f26dd90c Merge pull request #50 from asklokesh/fix/automation-schedule-dst-and-weekday
Fix automation scheduling: DST-correct 'local' times and off-by-one weekday labels
2026-08-23 21:45:04 -07:00
Rohit Prasad 941337d212 Merge pull request #291 from Mr-Neutr0n/security/secrets-created-private
security: create secret files private, never chmod them after (#143)
2026-08-23 21:43:58 -07:00
Rohit Prasad c75add0a70 Merge pull request #536 from andrewyng/rp/project-memory
Named memories, boards tied to project identity, Newer lead agents.
2026-08-23 13:10:36 -07:00
Rohit Prasad 02a6b20eb6 Merge pull request #488 from rkfshakti/fix/github-clone-pull-approval-gate
fix: gate github_clone and github_pull behind approval
2026-08-23 13:05:52 -07:00
Rohit Prasad 85330f6c3e Merge pull request #216 from CyberDefenseOperations/contrib/fix-flaky-shell-background-test
test: fix flaky test_background_task_runs_and_exits near the exit tick
2026-08-23 12:15:57 -07:00
Rohit Prasad d6a17e8783 Merge pull request #210 from CyberDefenseOperations/contrib/fix-flaky-ui-refresh-e2e
test: fix flaky ui-refresh e2e by quiescing the auto-title call before mute assertions
2026-08-23 12:15:14 -07:00
Rohit Prasad 21a301f0f4 Merge pull request #209 from CyberDefenseOperations/contrib/fix-flaky-scheduler-test
test: fix flaky test_scheduler_runs_due_task_and_advances near minute boundaries
2026-08-23 12:14:46 -07:00
Rohit Prasad b686a3b91f Merge pull request #365 from ChakrawarShubham/fix/ws-onmessage-unguarded-parse
fix(gui): guard session WS onmessage JSON.parse against malformed frames
2026-08-23 11:53:36 -07:00
Rohit Prasad ef9a3d8b84 Merge pull request #214 from Osamaali313/fix-attachment-dedup-filename
Fix attachment de-dup stripping real digits from the filename
2026-08-23 11:53:13 -07:00
Rohit Prasad 161e058083 Merge pull request #217 from CyberDefenseOperations/contrib/bump-mcp-security
deps: raise mcp floor to >=1.28.1 (PYSEC-2026-3481/3482/3483)
2026-08-23 11:52:51 -07:00