Commit Graph
1508 Commits
Author SHA1 Message Date
wushenghuaandCodex a435ea5cb8 feat(team): add scoped onboarding tokens and guide
Co-Authored-By: Codex <noreply@anthropic.com>
2026-09-16 09:19:26 +08:00
wushenghua 7972dd347c fix(team): allow namespaced codex history import; chinese thread-occupied prompt 2026-09-15 14:41:55 +08:00
weishu 6d44996a59 Release version 0.30.6 2026-09-14 15:05:49 +08:00
weishu 5280a3b165 fix(chat): dismiss Codex plan actions when continuing planning 2026-09-14 14:30:08 +08:00
AnanovoandGitHub a815230886 fix(web): support bracket-delimited LaTeX in Markdown and share exports (#1846)
* fix(web): support bracket-delimited LaTeX in Markdown and share exports

* fix(web): preserve Markdown containers around LaTeX

* fix(web): handle list fences and math comparisons

* fix(web): cover Markdown metadata edge cases

* fix(web): protect Markdown metadata around LaTeX

* fix(web): preserve reference metadata around LaTeX

* fix(web): preserve quoted formulas after prose

* fix(web): normalize nested Markdown containers

* fix(web): preserve existing dollar math

* fix(web): stop LaTeX matching at protected ranges
2026-09-14 14:24:33 +08:00
weishu 733a960ede refactor(ios): simplify scratchlist UI and interactions 2026-09-14 13:19:21 +08:00
weishu ee46cd6fea feat(ios): integrate scratchlist with the chat composer 2026-09-14 11:55:46 +08:00
weishu 10ac8157bb fix(ios): improve manual pairing input and paste handling 2026-09-14 11:13:11 +08:00
weishu 9c4e6dad6c fix(ios): refine approval cards and inline action styling 2026-09-14 09:48:19 +08:00
weishu b7e892b99e fix(release): sync iOS and Android versions 2026-09-14 09:48:19 +08:00
AnanovoandGitHub b41b9293e9 fix(web): render cold sessions from a small initial page (#1809)
* fix(web): speed up cold session first paint

* test(web): update pagination fixtures for cold page

* test(web): wait for cold page before loading history

* feat(native): match cold session pagination

* test(native): cover cached re-entry page size
2026-09-14 09:07:14 +08:00
weishu c9eb90e928 fix(ios): refine Codex plan action button styling 2026-09-14 08:53:24 +08:00
weishu 40b6ac462c fix: align directory browsing and iOS session creation 2026-09-14 08:44:02 +08:00
weishu 93e9c5ac65 fix: restore Codex titles and iOS collaboration controls 2026-09-14 08:44:02 +08:00
de6c9dee20 fix(web): keep pin dividers coherent under search relevance sort (#1848)
* fix(web): keep pin dividers coherent under search relevance sort

Address tiann's #1842 review: preserve project-pinned sections when
ranking, drop ineffective single-term IDF, add title phrase bonus.

Co-authored-by: Cursor <cursoragent@cursor.com>

* test(web): add component regression for search pin dividers

Render tiann's four-session repro under query "home" and assert the
session list draws at most one project pin divider.

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-13 17:24:11 +01:00
b6d0fa563c feat(web): rank session list search by field weight and IDF (#1842)
* feat(web): rank session list search by field weight and IDF

Boolean match + recency buried distinctive title hits under ubiquitous
path segments like /home/. Keep paths searchable; score title higher and
down-weight terms that match most of the corpus. Boundary match so home
does not hit homelab.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(web): use boundary match as search score bonus, not a gate

sessionMatchesQuery is shared with @-mentions and the share picker; keeping
substring inclusion restores as-you-type. Boundary affinity multiplies the
field×IDF score instead. Path parts stay separate for wildcards; match set
is explicit so filtering never reads score > 0.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(web): pick search field hit by post-bonus contribution

Raw field weight could beat a lighter boundary hit that scores higher
after the ×1.75 multiplier. Compare contribution after the bonus.

Co-authored-by: Cursor <cursoragent@cursor.com>

* test(web): drop invalid updatedAt from summary fixture

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-13 16:09:10 +01:00
weishu 8cefb0f04c Release version 0.30.4 2026-09-13 21:22:11 +08:00
weishu 6675c4db95 feat(ios): simplify home session rows and status indicators 2026-09-13 21:13:23 +08:00
weishu e9be050729 feat(ios): redesign session settings sheet 2026-09-13 19:48:14 +08:00
weishu 0a9f15a9a7 fix: align request_user_input other answers across clients 2026-09-13 19:48:14 +08:00
weishu a6880fe592 fix(native): add Codex plan proposal actions
Add current-proposal decoding, dedicated implementation requests and composer-only continuation on iOS and Android. Keep pending/errors across row recycling, reject stale actions and prevent duplicate submissions.

Include native regression tests and localized plan controls.
2026-09-13 19:48:14 +08:00
weishu 93d89c7cf4 fix(ios): keep latest button hidden after tool inspection at bottom 2026-09-13 19:48:14 +08:00
AnanovoandGitHub 7e7b16767b fix(android): stabilize tool group inspection on API 36 (#1843) 2026-09-13 18:56:56 +08:00
weishu 95b06bd502 Release version 0.30.3 2026-09-13 13:04:33 +08:00
weishu e0db9c6815 fix(notifications): distinguish user questions from permission requests 2026-09-13 12:41:38 +08:00
weishu 6ac1a72014 feat(ci): review PR requirements and approach before code 2026-09-13 12:09:39 +08:00
weishu 917baf1201 fix(codex): sync shared plan proposals and web actions 2026-09-13 12:09:39 +08:00
weishu 2e37419a7d fix(ios): reduce back-to-latest button sensitivity 2026-09-13 11:46:10 +08:00
weishu 051dbbd7da docs: refresh native app guides and contracts 2026-09-13 10:43:59 +08:00
092a2259c8 fix(web): force-dismiss indeterminate queued rows on cancel/edit (#1840)
* fix(web): force-dismiss indeterminate queued rows on cancel/edit

When cancel returns busy for an already-indeterminate QueuedMessagesBar
row, keep the optimistic removal instead of re-sticking the row so Edit/X
cannot leave the UI dead. Upgrade busy to invoked when queued-state
reconcile shows the steer already landed, so Edit toasts instead of
prefilling a duplicate.

Fixes #1839

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(web): never prefill Edit when queued cancel returns busy

Indeterminate rows can still be a live dispatch. Prefilling on busy
risked a duplicate send if the original steer later landed. Keep
force-dismiss for Cancel; toast on Edit+busy without restoring the draft.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(web): keep force-dismissed indeterminate rows for late consume

Hide abandoned outcome-unknown rows from the queued bar via
queueDismissed so Cancel/Edit still clear the stuck chip, while leaving
the message in the window for a later messages-consumed SSE.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(web): close queueDismissed races on cancel busy and requeue

Restore the hidden hold before getQueuedState so concurrent consume
SSE can land, skip overwriting it in onSuccess, and clear dismissal
when markMessagesRequeued confirms FIFO again.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(web): undismiss force-held row when cancel busy finds FIFO

If getQueuedState reports the localId is queued again after a failed
steer, clear queueDismissed so Edit/Cancel return without prefilling.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(web): preserve queueDismissed across refresh and merges

Force-dismiss of indeterminate rows survived Cancel, but latest-page
refetch and same-ID merges dropped the client-only flag. Carry it while
the authoritative row remains uninvoked and indeterminate.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(web): clear queueDismissed on reconnect FIFO reconcile

Reconnect queued-state reconciliation now markMessagesRequeued for
confirmed queuedLocalIds so force-dismissed rows regain Edit/Cancel
after a missed messages-requeued SSE.

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-12 21:02:32 +01:00
weishu 9f54e12c4f docs: streamline agent guidance and scope verification 2026-09-12 22:19:32 +08:00
weishu 1de9613df6 docs: align documentation with current implementation 2026-09-12 22:19:32 +08:00
weishu dd9cfdcee5 Release version 0.30.2 2026-09-12 19:44:56 +08:00
weishu 26fddff038 fix(chat): restore grouping for shared Codex commands
Group ordinary Codex commands with default tools across web, iOS and Android while preserving exploration and user-shell boundaries.

Add regression tests, generated protocol fixtures and shared-command coverage in the iOS transcript UI suite.
2026-09-12 19:14:46 +08:00
weishu 7fded0a137 fix(android): align home toolbar and compact code actions 2026-09-12 19:14:46 +08:00
weishu d1f4972079 fix(codex): restore shared sessions after heartbeat and archive 2026-09-12 18:29:57 +08:00
4d92afaf36 fix(hub): stop fcmAuth mock.module from poisoning later tests (#1833)
Inject getAccessToken into FcmService for unit tests instead of a
process-wide mock.module that stubbed loadServiceAccount without
project_id and broke resolveFcmConfig / androidPushConfig when the
suite ran after fcmService.

Fixes #1832

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-12 18:24:54 +08:00
weishu 2c738b6730 Release version 0.30.1 2026-09-12 18:01:49 +08:00
weishu 6f4aacce6b feat(android): enable default push through official relay 2026-09-12 17:52:53 +08:00
weishu 32ca6f543a feat(android): improve native chat reading and navigation 2026-09-12 16:56:41 +08:00
weishu f48b14a312 test(cli): render agent picker output in CI 2026-09-12 16:40:20 +08:00
weishu d29713aeda fix(native): render plan proposals inline
Render ExitPlanMode and exit_plan_mode Markdown from input.plan in iOS and Android conversations. Preserve approvals, raw source and diagnostics while hiding empty output placeholders and prewarming plan documents.

Add generated protocol fixtures and native regression coverage for long plans, live updates, recycling, themes and typography.
2026-09-12 16:06:16 +08:00
weishu 418f11f80e feat(ios): improve inline question answering 2026-09-12 15:20:01 +08:00
weishu 18c454fb87 fix(cli): remove Codex startup warning and banner 2026-09-12 14:56:13 +08:00
weishu d18c01b4b6 revert(codex): remove Luna Reserve fallback (#1780)
Revert 8357da0a9d and its later shared-runtime integration.

Remove automatic model fallback, account usage polling, and the related UI, protocol fields, tests, and documentation without adding replacement quota handling.

Keep generic model pagination and method probing required by the current shared-session architecture. Cover idle sessions staying online without usage polling or agent-state churn.
2026-09-12 14:36:45 +08:00
weishu c75cf8154f Release version 0.30.0 2026-09-12 13:38:58 +08:00
weishu 0c7f557ba3 feat(ios): browse tool groups in a native inspector 2026-09-12 13:03:27 +08:00
weishu f0fe2f2775 fix(ios): clean up localization catalog extraction
Translate the unknown delivery state, keep decorative content verbatim, and pin integer interpolation formats to existing catalog keys.
2026-09-12 12:07:54 +08:00
weishu fc2fdfc25b feat(cli): add agent picker and remove Claude default
Separate top-level help and version flags from agent arguments. Require explicit agents in scripts and preserve command argument boundaries.

Validation: bun typecheck, bun run test, targeted runner integration tests, and PTY/source/compiled argv smoke checks.
2026-09-12 12:03:59 +08:00
weishu 23e1cdde78 chore(ios): track privacy manifest and dependency lockfile
Keep App Store configuration, metadata, and screenshots local.
2026-09-12 11:45:40 +08:00